InfoCenter API doc: http://publib.boulder.ibm.com/infocenter/wchelp/v6r0m0/index.jsp?topic=/com.ibm.commerce.developer.doc/refs/rjsaddjb.htm
从一个commerce command里调度一个schedular的sample code:
Sample1:import catalog data:
TypedProperty req = (TypedProperty) (getRequestProperties().clone());
req.put(ECConstants.EC_SCHED_COMMAND, SCHEDULED_CATALOG_FILE_PROCESS_CMD);
req.put(ECConstants.EC_SCHED_START_TIME, "00:00:00");
req.put(ECConstants.EC_SCHED_NAME, logonId);
req.put(ECConstants.EC_SCHED_PARAMETERS, CatalogImportConstants.PARAMETER_FILE_UPLOAD_ID + "=" + getFileUploadId());
req.put(ECConstants.EC_SCHED_HOST, fileUploadAB.getHostName());
req.put(ECConstants.EC_SCHED_POLICY, "1");
com.ibm.commerce.scheduler.commands.AddJobCmd cmd
= (com.ibm.commerce.scheduler.commands.AddJobCmd) CommandFactory.createCommand(com.ibm.commerce.scheduler.commands.AddJobCmd.NAME, getStoreId());
cmd.setAccCheck(false);
cmd.setCommandContext(getCommandContext());
cmd.setRequestProperties(req);
cmd.execute();
iJobId = cmd.getJobId();
Sample2:deploy contract TC:
// set up the command propertry for AddJobCmd
TypedProperty cmdProp = new TypedProperty();
// add command name
cmdProp.put(ECConstants.EC_SCHED_COMMAND, ContractTCDeployCmd.URLNAME);
// add start time
cmdProp.put(ECConstants.EC_SCHED_START_TIME, "00:00:00");
// add dummy redirect url
cmdProp.put(ECConstants.EC_URL, "/");
// add my request string
cmdProp.put(ECConstants.EC_SCHED_PARAMETERS, myReqString.toString());
AddJobCmd cmd = null;
cmd = (AddJobCmd) CommandFactory.createCommand(AddJobCmd.NAME, getStoreId());
cmd.setCommandContext(getCommandContext());
cmd.setRequestProperties(cmdProp);
// no need to access control
cmd.setAccCheck(false);
cmd.setInterval(new Integer(0));
cmd.setAttempts(new Integer(0));
cmd.setDelay(new Integer(0));
cmd.setSequence(new Integer(0));
cmd.setApplicationType(ECConstants.EC_SCHED_APPTYPE_DEFAULT);
// invoke the command
cmd.execute();