private static void chooseHostForExecution( VdsIdVDSCommandParametersBase parametersBase, Guid storagePoolId, CommandBase<?> cmd, Collection<Guid> executedHosts) { Guid vdsForExecution = getHostForExecution(storagePoolId, executedHosts); parametersBase.setVdsId(vdsForExecution); if (cmd != null) { cmd.getParameters().setVdsRunningOn(vdsForExecution); cmd.persistCommand(cmd.getParameters().getParentCommand(), cmd.getCallback() != null); } }
private static Job getJob(CommandBase<?> command, VdcActionType actionType) { VdcActionParametersBase params = command.getParameters(); Job job; // if Job is external, we had already created the Job by AddExternalJobCommand, so just get it // from DB if (params.getJobId() != null) { job = DbFacade.getInstance().getJobDao().get((Guid) params.getJobId()); } else { job = createJob(actionType, command); JobRepositoryFactory.getJobRepository().saveJob(job); } return job; }