/** * Copy data from a service object to a CIMI object. * * @param context The current context * @param dataService Source service object * @param dataCimi Destination CIMI object */ protected void doCopyToCimi( final CimiContext context, final Job dataService, final CimiJob dataCimi) { this.fill(context, dataService, dataCimi); if (true == context.mustBeExpanded(dataCimi)) { dataCimi.setAction(dataService.getAction()); dataCimi.setProgress(dataService.getProgress()); dataCimi.setReturnCode(dataService.getReturnCode()); dataCimi.setStatus(ConverterHelper.toString(dataService.getState())); dataCimi.setStatusMessage(dataService.getStatusMessage()); dataCimi.setTimeOfStatusChange(dataService.getTimeOfStatusChange()); dataCimi.setTargetResource( ConverterHelper.buildTargetResource(context, dataService.getTargetResource())); if ((null != dataService.getAffectedResources()) && (dataService.getAffectedResources().size() > 0)) { TargetResource target; List<TargetResource> list = new ArrayList<TargetResource>(); for (CloudResource resource : dataService.getAffectedResources()) { target = ConverterHelper.buildTargetResource(context, resource); if (null != target) { list.add(target); } } dataCimi.setAffectedResources(list.toArray(new TargetResource[list.size()])); } if (null != dataService.getParentJob()) { dataCimi.setParentJob( new ParentJob(context.makeHref(dataCimi, dataService.getParentJob().getUuid()))); } if ((null != dataService.getNestedJobs()) && (dataService.getNestedJobs().size() > 0)) { List<NestedJob> list = new ArrayList<NestedJob>(); for (Job job : dataService.getNestedJobs()) { list.add(new NestedJob(context.makeHref(dataCimi, job.getUuid()))); } dataCimi.setNestedJobs(list.toArray(new NestedJob[list.size()])); } } }