CLIENT_SYSTEM, // META_TEMPLATE => TEMPLATE_CLASS_PRODUCT_REG, // mongoDB template META_TEMPLATE => TEMPLATE_CLASS_PROD_REGS, // mySQL template META_CLIENT_IP => STRING_SESSION_HOME, META_EVENT_GUID => guid() // simulate a broker event by generating the event guid ]; // data payload for an internal warehousing request $data = [ MWH_TEST_MODE => 1, WH_TYPE => WH_TYPE_COOL, WH_AUTOMATED => false, WH_FILTER_VALUES => [ '1970-01-01', '2017-02-17' ] // (required) should return 11 records ]; // data payload for an external source request $remoteData = [ MWH_TEST_MODE => 1, WH_TYPE => WH_TYPE_COOL, WH_AUTOMATED => false, WH_SOURCE_IS_REMOTE => true, WH_REMOTE_TABLE => 'product_registrations', WH_REMOTE_CDATE_FIELD => 'kinsert_date', WH_FILTER_VALUES => [ '1970-01-01', '2017-02-17' ] // (required) should return 11 records ]; if ($processing == OBJECT) { // $objTest = new gacMigrations($data, $meta, EVENT_WAREHOUSE); $objTest = new gacMigrations($remoteData, $meta, EVENT_WAREHOUSE); if (!$objTest->status) { echo ERROR_TEMPLATE_INSTANTIATE . TEMPLATE_CLASS_MIGRATIONS . $eos; var_export($objTest->errorStack); exit(1); } // this is what the broker calls: if (!$objTest->whData()) { var_export($objTest->errorStack); exit(1); } echo 'program successfully completed execution' . $eos; echo $objTest->migrationReport; echo $eos . $eos; } elseif ($processing == BROKER) { if (isset($meta[META_EVENT_GUID])) unset($meta[META_EVENT_GUID]); $bc = new gacBrokerClient(BROKER_QUEUE_W, __METHOD__ . AT . __LINE__); if (!$bc->status) { $error = ERROR_BROKER_CLIENT_DECLARE . BROKER_QUEUE_W; echo $error . $eos; exit(1); } $request = [ BROKER_REQUEST => BROKER_REQUEST_WAREHOUSE, BROKER_DATA => $remoteData, BROKER_META_DATA => $meta ]; $response = json_decode(gzuncompress($bc->call(gzcompress(json_encode($request)))), true); var_export($response); } else { echo 'processing type not supported...' . $eos . $eos; }