virtual int processCMD() { StringBuffer s; Owned<IClientWsWorkunits> client = createWsWorkunitsClient(); VStringBuffer url("http://%s:%s/WsWorkunits", optServer.sget(), optPort.sget()); client->addServiceUrl(url.str()); if (optUsername.length()) client->setUsernameToken(optUsername.get(), optPassword.sget(), NULL); Owned<IClientWUQuerySetAliasActionRequest> req = client->createWUQuerysetAliasActionRequest(); IArrayOf<IEspQuerySetAliasActionItem> aliases; Owned<IEspQuerySetAliasActionItem> item = createQuerySetAliasActionItem(); item->setName(optAlias.get()); aliases.append(*item.getClear()); req->setAliases(aliases); req->setAction("Deactivate"); req->setQuerySetName(optQuerySet.get()); Owned<IClientWUQuerySetAliasActionResponse> resp = client->WUQuerysetAliasAction(req); IArrayOf<IConstQuerySetAliasActionResult> &results = resp->getResults(); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); else if (results.empty()) fprintf(stderr, "\nError Empty Result!\n"); else { IConstQuerySetAliasActionResult &item = results.item(0); if (item.getSuccess()) fprintf(stdout, "Deactivated alias %s/%s\n", optQuerySet.sget(), optAlias.sget()); else if (item.getCode()|| item.getMessage()) fprintf(stderr, "Error (%d) %s\n", item.getCode(), item.getMessage()); } return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this); StringBuffer pkgInfo; pkgInfo.loadFile(optFileName); fprintf(stdout, "\n ... adding package map %s now\n\n", optFileName.sget()); Owned<IClientAddPackageRequest> request = packageProcessClient->createAddPackageRequest(); request->setActivate(optActivate); request->setInfo(pkgInfo); request->setTarget(optTarget); request->setPackageMap(optPackageMapId); request->setProcess(optProcess); request->setDaliIp(optDaliIP); request->setOverWrite(optOverWrite); request->setGlobalScope(optGlobalScope); request->setSourceProcess(optSourceProcess); Owned<IClientAddPackageResponse> resp = packageProcessClient->AddPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); StringArray ¬Found = resp->getFilesNotFound(); if (notFound.length()) { fputs("\nFiles defined in package but not found in DFS:\n", stderr); ForEachItemIn(i, notFound) fprintf(stderr, " %s\n", notFound.item(i)); fputs("\n", stderr); } return 0; }
virtual int processCMD() { Owned<IClientWsWorkunits> client = createWsWorkunitsClient(); VStringBuffer url("http://%s:%s/WsWorkunits", optServer.sget(), optPort.sget()); client->addServiceUrl(url.str()); if (optUsername.length()) client->setUsernameToken(optUsername.get(), optPassword.sget(), NULL); StringBuffer wuid; if (optObj.type==eclObjWuid) wuid.set(optObj.value.get()); else if (!doDeploy(client, optObj, optCluster.get(), optName.get(), &wuid)) return 1; StringBuffer descr; fprintf(stdout, "\nPublishing %s\n", wuid.str()); Owned<IClientWUPublishWorkunitRequest> req = client->createWUPublishWorkunitRequest(); req->setWuid(wuid.str()); req->setActivate(optActivate); if (optName.length()) req->setJobName(optName.get()); if (optCluster.length()) req->setCluster(optCluster.get()); Owned<IClientWUPublishWorkunitResponse> resp = client->WUPublishWorkunit(req); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); const char *id = resp->getQueryId(); if (id && *id) fprintf(stdout, "\nPublished\nQuerySet: %s\nQueryName: %s\nQueryId: %s\n", resp->getQuerySet(), resp->getQueryName(), resp->getQueryId()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this); Owned<IClientGetPackageRequest> request = packageProcessClient->createGetPackageRequest(); request->setTarget(optTarget); request->setProcess("*"); Owned<IClientGetPackageResponse> resp = packageProcessClient->GetPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); else printf("%s", resp->getInfo()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this); Owned<IClientDeActivatePackageRequest> request = packageProcessClient->createDeActivatePackageRequest(); request->setTarget(optTarget); request->setPackageMap(optPackageMap); request->setProcess(optProcess); Owned<IClientDeActivatePackageResponse> resp = packageProcessClient->DeActivatePackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); Owned<IClientActivatePackageRequest> request = packageProcessClient->createActivatePackageRequest(); request->setPackageName(optQuerySetName); request->setPackageMapName(optPackageMap); Owned<IClientActivatePackageResponse> resp = packageProcessClient->ActivatePackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); Owned<IClientGetPackageRequest> request = packageProcessClient->createGetPackageRequest(); request->setPackageName(optPkgName); request->setCluster(optCluster); Owned<IClientGetPackageResponse> resp = packageProcessClient->GetPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); else printf("%s", resp->getInfo()); return 0; }
virtual int processCMD() { fprintf(stdout, "\n ... deleting package map %s now\n\n", optPackageMap.sget()); Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this); Owned<IClientDeletePackageRequest> request = packageProcessClient->createDeletePackageRequest(); request->setTarget(optTarget); request->setPackageMap(optPackageMap); request->setProcess(optProcess); Owned<IClientDeletePackageResponse> resp = packageProcessClient->DeletePackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); fprintf(stdout, "\n ... deleting package %s now\n\n", optFileName.sget()); Owned<IClientDeletePackageRequest> request = packageProcessClient->createDeletePackageRequest(); request->setQuerySet(optQuerySet); request->setPackageName(optFileName); Owned<IClientDeletePackageResponse> resp = packageProcessClient->DeletePackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); Owned<IClientGetQueryFileMappingRequest> request = packageProcessClient->createGetQueryFileMappingRequest(); request->setTarget(optTarget); request->setQueryName(optQueryId); request->setPMID(optPMID); request->setGlobalScope(optGlobalScope); Owned<IClientGetQueryFileMappingResponse> resp = packageProcessClient->GetQueryFileMapping(request); if (resp->getExceptions().ordinality()>0) outputMultiExceptions(resp->getExceptions()); StringArray &unmappedFiles = resp->getUnmappedFiles(); if (!unmappedFiles.ordinality()) fputs("No undefined files found.\n", stderr); else { fputs("Files not defined in PackageMap:\n", stderr); ForEachItemIn(i, unmappedFiles) fprintf(stderr, " %s\n", unmappedFiles.item(i)); } IArrayOf<IConstSuperFile> &superFiles = resp->getSuperFiles(); if (!superFiles.ordinality()) fputs("\nNo matching SuperFiles found in PackageMap.\n", stderr); else { fputs("\nSuperFiles defined in PackageMap:\n", stderr); ForEachItemIn(i, superFiles) { IConstSuperFile &super = superFiles.item(i); fprintf(stderr, " %s\n", super.getName()); StringArray &subfiles = super.getSubFiles(); if (subfiles.ordinality()>0) { ForEachItemIn(sbi, subfiles) fprintf(stderr, " > %s\n", subfiles.item(sbi)); } } }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); StringBuffer pkgInfo; pkgInfo.loadFile(optFileName); fprintf(stdout, "\n ... adding package %s now\n\n", optFileName.sget()); Owned<IClientAddPackageRequest> request = packageProcessClient->createAddPackageRequest(); request->setActivate(optActivate); request->setInfo(pkgInfo); request->setQuerySet(optQuerySet); request->setPackageName(optFileName); request->setOverWrite(optOverWrite); Owned<IClientAddPackageResponse> resp = packageProcessClient->AddPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); StringBuffer pkgInfo; pkgInfo.loadFile(optFileName); fprintf(stdout, "\n ... looking up files in package to see what needs copying\n\n"); Owned<IClientCopyFilesRequest> request = packageProcessClient->createCopyFilesRequest(); request->setInfo(pkgInfo); request->setProcess(optProcess); request->setPackageName(optFileName); request->setOverWrite(optOverWrite); if (!optDaliIp.isEmpty()) request->setDaliIp(optDaliIp.get()); Owned<IClientCopyFilesResponse> resp = packageProcessClient->CopyFiles(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this); StringBuffer pkgInfo; pkgInfo.loadFile(optFileName); fprintf(stdout, "\n ... adding package map %s now\n\n", optFileName.sget()); Owned<IClientAddPackageRequest> request = packageProcessClient->createAddPackageRequest(); request->setActivate(optActivate); request->setInfo(pkgInfo); request->setTarget(optTarget); request->setPackageMap(optPackageMapId); request->setProcess(optProcess); request->setDaliIp(optDaliIP); request->setOverWrite(optOverWrite); Owned<IClientAddPackageResponse> resp = packageProcessClient->AddPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); Owned<IClientListPackageRequest> request = packageProcessClient->createListPackageRequest(); request->setCluster(optCluster); Owned<IClientListPackageResponse> resp = packageProcessClient->ListPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); else { IArrayOf<IConstPackageListMapData> &pkgMapInfo = resp->getPkgListMapData(); unsigned int num = pkgMapInfo.ordinality(); for (unsigned i=0; i<num; i++) { IConstPackageListMapData& req = pkgMapInfo.item(i); const char *id = req.getId(); printf("\nPackage Name = %s\n", id); IArrayOf<IConstPackageListData> &pkgInfo = req.getPkgListData(); unsigned int numPkgs = pkgInfo.ordinality(); for (unsigned int j = 0; j <numPkgs; j++) { IConstPackageListData& req = pkgInfo.item(j); const char *id = req.getId(); const char *queries = req.getQueries(); if (queries && *queries) printf("\t\tid = %s queries = %s\n", id, queries); else printf("\t\tid = %s\n", id); } } } return 0; }
bool doDeploy(IClientWsWorkunits *client, EclObjectParameter &optObj, const char *cluster, const char *name, StringBuffer *wuid) { StringBuffer s; fprintf(stdout, "\nDeploying %s\n", optObj.getDescription(s).str()); Owned<IClientWUDeployWorkunitRequest> req = client->createWUDeployWorkunitRequest(); switch (optObj.type) { case eclObjArchive: req->setObjType("archive"); break; case eclObjSharedObject: req->setObjType("shared_object"); break; default: fprintf(stdout, "Can only deploy shared objects and ECL archives\n"); return false; } if (name && *name) req->setName(name); if (cluster && *cluster) req->setCluster(cluster); req->setFileName(optObj.value.sget()); req->setObject(optObj.mb); Owned<IClientWUDeployWorkunitResponse> resp = client->WUDeployWorkunit(req); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); const char *w = resp->getWorkunit().getWuid(); if (w && *w) { if (wuid) wuid->append(w); fprintf(stdout, "Deployed\nwuid: %s\nstate: %s\n", w, resp->getWorkunit().getState()); return true; } return false; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = createCmdClient(WsPackageProcess, *this); Owned<IClientListPackageRequest> request = packageProcessClient->createListPackageRequest(); request->setTarget(optTarget); request->setProcess("*"); Owned<IClientListPackageResponse> resp = packageProcessClient->ListPackage(request); if (resp->getExceptions().ordinality()) outputMultiExceptions(resp->getExceptions()); else { IArrayOf<IConstPackageListMapData> &pkgMapInfo = resp->getPkgListMapData(); unsigned int num = pkgMapInfo.ordinality(); for (unsigned i=0; i<num; i++) { IConstPackageListMapData& req = pkgMapInfo.item(i); printf("\nPackage Id = %s active = %d\n", req.getId(), req.getActive()); IArrayOf<IConstPackageListData> &pkgInfo = req.getPkgListData(); unsigned int numPkgs = pkgInfo.ordinality(); for (unsigned int j = 0; j <numPkgs; j++) { IConstPackageListData& req = pkgInfo.item(j); const char *id = req.getId(); const char *queries = req.getQueries(); if (queries && *queries) printf("\t\tname = %s queries = %s\n", id, queries); else printf("\t\tname = %s\n", id); } } } return 0; }
virtual int processCMD() { Owned<IClientWsPackageProcess> packageProcessClient = getWsPackageSoapService(optServer, optPort, optUsername, optPassword); Owned<IClientValidatePackageRequest> request = packageProcessClient->createValidatePackageRequest(); if (optFileName.length()) { StringBuffer pkgInfo; pkgInfo.loadFile(optFileName); fprintf(stdout, "\nvalidating packagemap file %s\n\n", optFileName.sget()); request->setInfo(pkgInfo); } request->setActive(optValidateActive); request->setPMID(optPMID); request->setTarget(optTarget); request->setQueryIdToVerify(optQueryId); request->setCheckDFS(optCheckDFS); request->setGlobalScope(optGlobalScope); bool validateMessages = false; Owned<IClientValidatePackageResponse> resp = packageProcessClient->ValidatePackage(request); if (resp->getExceptions().ordinality()>0) { validateMessages = true; outputMultiExceptions(resp->getExceptions()); } StringArray &errors = resp->getErrors(); if (errors.ordinality()>0) { validateMessages = true; fputs(" Error(s):\n", stderr); ForEachItemIn(i, errors) fprintf(stderr, " %s\n", errors.item(i)); } StringArray &warnings = resp->getWarnings(); if (warnings.ordinality()>0) { validateMessages = true; fputs(" Warning(s):\n", stderr); ForEachItemIn(i, warnings) fprintf(stderr, " %s\n", warnings.item(i)); } StringArray &unmatchedQueries = resp->getQueries().getUnmatched(); if (unmatchedQueries.ordinality()>0) { validateMessages = true; fputs("\n Queries without matching package:\n", stderr); ForEachItemIn(i, unmatchedQueries) fprintf(stderr, " %s\n", unmatchedQueries.item(i)); } StringArray &unusedPackages = resp->getPackages().getUnmatched(); if (unusedPackages.ordinality()>0) { validateMessages = true; fputs("\n Packages without matching queries:\n", stderr); ForEachItemIn(i, unusedPackages) fprintf(stderr, " %s\n", unusedPackages.item(i)); } StringArray &unusedFiles = resp->getFiles().getUnmatched(); if (unusedFiles.ordinality()>0) { fputs("\n Files without matching package definitions:\n", stderr); ForEachItemIn(i, unusedFiles) fprintf(stderr, " %s\n", unusedFiles.item(i)); } StringArray ¬InDFS = resp->getFiles().getNotInDFS(); if (notInDFS.ordinality()>0) { fputs("\n Packagemap SubFiles not found in DFS:\n", stderr); ForEachItemIn(i, notInDFS) fprintf(stderr, " %s\n", notInDFS.item(i)); } if (!validateMessages) fputs(" Validation was successful\n", stdout); return 0; }