Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2012 International Business Machines Corp.
  * 
  * See the NOTICE file distributed with this work for additional information
  * regarding copyright ownership. Licensed under the Apache License, 
  * Version 2.0 (the "License"); you may not use this file except in compliance
  * with the License. You may obtain a copy of the License at
  * 
  *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
*/
package com.ibm.jbatch.container.modelresolver.impl;
    public JobPropertyResolverImpl(boolean isPartitionStep) {
		super(isPartitionStep);
	}

Parameters:
job This method will modify the given job. If you need to hold on to the original job you need to create a clone of the job before passing it to this method.
submittedProps The job parameters associated with this job. null is valid if no parameters are passed.
parentProps Properties that are inherited from parent elements. Job is top level element so it can have no parents, so this paramter is currently ignored. Null is valid.
Returns:
    public JSLJob substituteProperties(final JSLJob jobfinal Properties submittedPropsfinal Properties parentProps) {
        // resolve all the properties used in attributes and update the JAXB
        // model
        job.setId(this.replaceAllProperties(job.getId(), submittedPropsparentProps));
        job.setRestartable(this.replaceAllProperties(job.getRestartable(), submittedPropsparentProps));
        
        // Resolve all the properties defined for a job
        Properties currentProps = null;
        if (job.getProperties() != null) {
            currentProps = this.resolveElementProperties(job.getProperties().getPropertyList(), submittedPropsparentProps);
        }
        // Resolve Listener properties, this is list of listeners List<Listener>
        if (job.getListeners() != null) {
            for (final Listener listener : job.getListeners().getListenerList()) {
                PropertyResolverFactory.createListenerPropertyResolver(this.).substituteProperties(listenersubmittedPropscurrentProps);
            }
        }
        
        for (final ExecutionElement next : job.getExecutionElements()) {
            if (next instanceof Step) {
                PropertyResolverFactory.createStepPropertyResolver(this.).substituteProperties((Step)nextsubmittedPropscurrentProps);
            } else if (next instanceof Decision) {
                PropertyResolverFactory.createDecisionPropertyResolver(this.).substituteProperties((Decision)nextsubmittedPropscurrentProps);
            } else if (next instanceof Split) {
                PropertyResolverFactory.createSplitPropertyResolver(this.).substituteProperties((Split)nextsubmittedPropscurrentProps);
            } else if (next instanceof Flow) {
                PropertyResolverFactory.createFlowPropertyResolver(this.).substituteProperties((Flow)nextsubmittedPropscurrentProps);
            }
        }
        
        
        return job;
    }
    
New to GrepCode? Check out our FAQ X