Oracle® Data Integrator Java API Reference
11g Release 1 (11.1.1.3.0)

E17060-01

oracle.odi.domain.runtime.ess
Interface IJobDefinitionRepository

All Known Implementing Classes:
JobDefinitionRepositoryImpl

public interface IJobDefinitionRepository

Repository interface to manage storage of JobDefinitions.


Method Summary
 oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName, OdiScenario pScenario, StartupParameters pVariables)
          Create an store a new ODI job definition for the given scenario and execution variables.
 oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName, OdiScenario pScenario, StartupParameters pVariables, java.lang.Integer pLogLevel, OdiLogicalAgent pAgent, OdiContext pExecutionContext, java.lang.String pRunAsId, boolean pIsAsync)
          Create an store a new ODI job definition for the given scenario and execution parameters.
 oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName, OdiScenario pScenario, StartupParameters pVariables, java.lang.String pRunAsId, boolean pIsAsync)
          Create an store a new ODI job definition for the given scenario and execution variables.
 oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName, java.lang.String pScenarioName, java.lang.String pScenarioVersion, StartupParameters pVariables)
          Same as createNewJobDefinition(String, OdiScenario, StartupParameters), but allow for specification of the scenario using its name and version (which are unique key for OdiScenarios).
 oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName, java.lang.String pScenarioName, java.lang.String pScenarioVersion, StartupParameters pVariables, java.lang.Integer pLogLevel, java.lang.String pLogicalAgentName, java.lang.String pContextCode, java.lang.String pRunAsId, boolean pIsAsync)
          Same as createNewJobDefinition(String, OdiScenario, StartupParameters, Integer, OdiLogicalAgent, OdiContext, String, Password) but allow for specification of the scenario, agent and context using their unique key and code.
 oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName, java.lang.String pScenarioName, java.lang.String pScenarioVersion, StartupParameters pVariables, java.lang.String pRunAsId, boolean pIsAsync)
          Same as createNewJobDefinition(String, OdiScenario, StartupParameters), but allow for specification of the scenario using its name and version (which are unique key for OdiScenarios).
 java.util.Collection<oracle.as.scheduler.JobDefinition> getAllJobDefinitions()
          Obtain an unmodifiable collection of all job definition this repository instance contains.
 oracle.as.scheduler.JobDefinition getJobDefinitionForId(oracle.as.scheduler.MetadataObjectId pJobId)
          Obtains the job definition with the given ID from this repository instance.
 oracle.as.scheduler.JobDefinition getJobDefinitionForName(java.lang.String pJobName)
          Obtains the job definition with the given name from this repository instance.
 java.util.Collection<oracle.as.scheduler.JobDefinition> getJobDefinitionForScenario(OdiScenario pScenario)
          Obtains an unmodifiable collection of jobs that apply for the given scenario (i.e.
 java.util.Collection<oracle.as.scheduler.JobDefinition> getJobDefinitionsForScenarioNameAndVersion(java.lang.String pName, java.lang.String pVersion)
          Obtains an unmodifiable collection of jobs that apply for the given scenario name and version (i.e.
 void removeJobDefinition(oracle.as.scheduler.JobDefinition pJobDefinition)
          Remove the given job definition from this repository instance.
 void updateJobDefinition(oracle.as.scheduler.JobDefinition pJobDefinition)
          Update the given job definition from this repository instance.
 

Method Detail

createNewJobDefinition

oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName,
                                                         OdiScenario pScenario,
                                                         StartupParameters pVariables)
                                                         throws DuplicateJobDefinitionException
Create an store a new ODI job definition for the given scenario and execution variables.

That is the common method to be used in order to create a design time job definition. Specific execution / runtime parameters like execution agent, execution context, ODI user, etc. have to be defined at job submission time.

Note: for consistency with the current IRepositoryDefinition used to access the domain layer, this method sets job's work repository parameter with the current one using IRepositoryDefinition.getWorkRepositoryName(). However that job parameter can be overrided at job submission time for specific use case where job definitions and scenarios have been exported and imported from an ODI / ESS environment to another one and possibly having another work repository name.

Parameters:
pJobName - the name of the ESS job
pScenario - the ODI scenario to be executed when submitting that job
pVariables - the execution variables to be used during execution of the specified scenario
Returns:
ESS job definition for the given parameters
Throws:
DuplicateJobDefinitionException - if a job with the same name already exist
java.lang.IllegalStateException - if this repository instance cannot define the work repository where execution will occur
java.lang.IllegalArgumentException - if the job name is null or empty
java.lang.IllegalArgumentException - if the scenario is null
java.lang.IllegalArgumentException - if the execution variables is null. Use default constuctor for an empty StartupParameters instance.

createNewJobDefinition

oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName,
                                                         OdiScenario pScenario,
                                                         StartupParameters pVariables,
                                                         java.lang.Integer pLogLevel,
                                                         OdiLogicalAgent pAgent,
                                                         OdiContext pExecutionContext,
                                                         java.lang.String pRunAsId,
                                                         boolean pIsAsync)
                                                         throws DuplicateJobDefinitionException
Create an store a new ODI job definition for the given scenario and execution parameters.

Overload createNewJobDefinition(String, OdiScenario, StartupParameters) to allow specification of runtime job parameters like execution agent, execution context, ODI user, etc. However those parameters can still be overrided at job submission time.

Parameters:
pJobName - the ESS job name
pScenario - the ODI scenario to be executed
pVariables - the execution variables to be used during execution of the specified scenario
pLogLevel - log level of the execution
pAgent - target logical agent where to execute the specified scenario
pExecutionContext - ODI execution context for the specified agent and scenario
pRunAsId - applicationId to runAs, if null, runs as submitting user
pIsAsync - whether execution is asynchronous or not
Returns:
ESS job definition for the given parameters
Throws:
DuplicateJobDefinitionException - if a job with the same name already exist
java.lang.IllegalStateException - if this repository instance cannot define the work repository where execution will occur
java.lang.IllegalArgumentException - if ESS job name parameter is null or empty
java.lang.IllegalArgumentException - if ODI scenario is null
java.lang.IllegalArgumentException - if execution variables is null (use default constructor for empty execution variables)
See Also:
createNewJobDefinition(String, OdiScenario, StartupParameters)

createNewJobDefinition

oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName,
                                                         OdiScenario pScenario,
                                                         StartupParameters pVariables,
                                                         java.lang.String pRunAsId,
                                                         boolean pIsAsync)
                                                         throws DuplicateJobDefinitionException
Create an store a new ODI job definition for the given scenario and execution variables.

That is the common method to be used in order to create a design time job definition. Specific execution / runtime parameters like execution agent, execution context, ODI user, etc. have to be defined at job submission time.

Note: for consistency with the current IRepositoryDefinition used to access the domain layer, this method sets job's work repository parameter with the current one using IRepositoryDefinition.getWorkRepositoryName(). However that job parameter can be overrided at job submission time for specific use case where job definitions and scenarios have been exported and imported from an ODI / ESS environment to another one and possibly having another work repository name.

Parameters:
pJobName - the name of the ESS job
pScenario - the ODI scenario to be executed when submitting that job
pVariables - the execution variables to be used during execution of the specified scenario
pRunAsId - applicationId to runAs, if null, runs as submitting user
pIsAsync - whether execution is asynchronous or not
Returns:
ESS job definition for the given parameters
Throws:
DuplicateJobDefinitionException - if a job with the same name already exist
java.lang.IllegalStateException - if this repository instance cannot define the work repository where execution will occur
java.lang.IllegalArgumentException - if the job name is null or empty
java.lang.IllegalArgumentException - if the scenario is null
java.lang.IllegalArgumentException - if the execution variables is null. Use default constuctor for an empty StartupParameters instance.

createNewJobDefinition

oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName,
                                                         java.lang.String pScenarioName,
                                                         java.lang.String pScenarioVersion,
                                                         StartupParameters pVariables)
                                                         throws DuplicateJobDefinitionException
Same as createNewJobDefinition(String, OdiScenario, StartupParameters), but allow for specification of the scenario using its name and version (which are unique key for OdiScenarios).

Parameters:
pJobName - the name of the ESS job
pScenarioName - the name of the scenario to be executed when submitting that job
pScenarioVersion - the version of the scenario to be executed when submitting that job
pVariables - the execution variables to be used during execution of the specified scenario
Returns:
ESS job definition for the given parameters
Throws:
DuplicateJobDefinitionException - if a job with the same name already exist
java.lang.IllegalStateException - if this repository instance cannot define the work repository where execution will occur
java.lang.IllegalArgumentException - if the job name is null or empty
java.lang.IllegalArgumentException - if the scenario's name is null or empty
java.lang.IllegalArgumentException - if the scenario's version is null or empty
java.lang.IllegalArgumentException - if the execution variables is null. Use default constructor for an empty StartupParameters instance.
See Also:
createNewJobDefinition(String, OdiScenario, StartupParameters)

createNewJobDefinition

oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName,
                                                         java.lang.String pScenarioName,
                                                         java.lang.String pScenarioVersion,
                                                         StartupParameters pVariables,
                                                         java.lang.Integer pLogLevel,
                                                         java.lang.String pLogicalAgentName,
                                                         java.lang.String pContextCode,
                                                         java.lang.String pRunAsId,
                                                         boolean pIsAsync)
                                                         throws DuplicateJobDefinitionException
Same as createNewJobDefinition(String, OdiScenario, StartupParameters, Integer, OdiLogicalAgent, OdiContext, String, Password) but allow for specification of the scenario, agent and context using their unique key and code.

Parameters:
pJobName - the name of the ESS job
pScenarioName - the name of the scenario to be executed when submitting that job
pScenarioVersion - the version of the scenario to be executed when submitting that job
pVariables - the execution variables to be used during execution of the specified scenario
pLogLevel - log level of the execution
pLogicalAgentName - target logical agent where to execute the specified scenario
pContextCode - ODI execution context for the specified agent and scenario
pRunAsId - applicationId to runAs, if null, runs as submitting user
pIsAsync - whether execution is asynchronous or not
Returns:
ESS job definition for the given parameters
Throws:
DuplicateJobDefinitionException - if a job with the same name already exist
java.lang.IllegalStateException - if this repository instance cannot define the work repository where execution will occur
java.lang.IllegalArgumentException - if the job name is null or empty
java.lang.IllegalArgumentException - if the scenario's name is null or empty
java.lang.IllegalArgumentException - if the scenario's version is null or empty
java.lang.IllegalArgumentException - if the execution variables is null. Use default constructor for an empty StartupParameters instance.
See Also:
createNewJobDefinition(String, OdiScenario, StartupParameters, Integer, OdiLogicalAgent, OdiContext, String, Password)

createNewJobDefinition

oracle.as.scheduler.JobDefinition createNewJobDefinition(java.lang.String pJobName,
                                                         java.lang.String pScenarioName,
                                                         java.lang.String pScenarioVersion,
                                                         StartupParameters pVariables,
                                                         java.lang.String pRunAsId,
                                                         boolean pIsAsync)
                                                         throws DuplicateJobDefinitionException
Same as createNewJobDefinition(String, OdiScenario, StartupParameters), but allow for specification of the scenario using its name and version (which are unique key for OdiScenarios).

Parameters:
pJobName - the name of the ESS job
pScenarioName - the name of the scenario to be executed when submitting that job
pScenarioVersion - the version of the scenario to be executed when submitting that job
pVariables - the execution variables to be used during execution of the specified scenario
pRunAsId - applicationId to runAs, if null, runs as submitting user
pIsAsync - whether execution is asynchronous or not
Returns:
ESS job definition for the given parameters
Throws:
DuplicateJobDefinitionException - if a job with the same name already exist
java.lang.IllegalStateException - if this repository instance cannot define the work repository where execution will occur
java.lang.IllegalArgumentException - if the job name is null or empty
java.lang.IllegalArgumentException - if the scenario's name is null or empty
java.lang.IllegalArgumentException - if the scenario's version is null or empty
java.lang.IllegalArgumentException - if the execution variables is null. Use default constructor for an empty StartupParameters instance.
See Also:
createNewJobDefinition(String, OdiScenario, StartupParameters)

getAllJobDefinitions

java.util.Collection<oracle.as.scheduler.JobDefinition> getAllJobDefinitions()
Obtain an unmodifiable collection of all job definition this repository instance contains.

Returns:
all job definitions

getJobDefinitionForId

oracle.as.scheduler.JobDefinition getJobDefinitionForId(oracle.as.scheduler.MetadataObjectId pJobId)
                                                        throws JobDefinitionNotFoundException
Obtains the job definition with the given ID from this repository instance.

Parameters:
pJobId - the ID of the job
Returns:
job definition
Throws:
JobDefinitionNotFoundException - if not job found with the given ID

getJobDefinitionForName

oracle.as.scheduler.JobDefinition getJobDefinitionForName(java.lang.String pJobName)
                                                          throws JobDefinitionNotFoundException
Obtains the job definition with the given name from this repository instance.

Parameters:
pJobName - the name of the job
Returns:
job definition
Throws:
JobDefinitionNotFoundException - if no job found with the given name

getJobDefinitionForScenario

java.util.Collection<oracle.as.scheduler.JobDefinition> getJobDefinitionForScenario(OdiScenario pScenario)
Obtains an unmodifiable collection of jobs that apply for the given scenario (i.e. jobs that define execution of the given scenario).

Parameters:
pScenario - the scenario
Returns:
job definitions

getJobDefinitionsForScenarioNameAndVersion

java.util.Collection<oracle.as.scheduler.JobDefinition> getJobDefinitionsForScenarioNameAndVersion(java.lang.String pName,
                                                                                                   java.lang.String pVersion)
Obtains an unmodifiable collection of jobs that apply for the given scenario name and version (i.e. jobs that define execution of the given scenario).

Parameters:
pName - the scenario name
pVersion - the scenario version
Returns:
job definitions

removeJobDefinition

void removeJobDefinition(oracle.as.scheduler.JobDefinition pJobDefinition)
Remove the given job definition from this repository instance.

Note: if this repository doesn't contains this job, this method will simply return.

Parameters:
pJobDefinition - the job to remove

updateJobDefinition

void updateJobDefinition(oracle.as.scheduler.JobDefinition pJobDefinition)
                         throws JobDefinitionNotFoundException
Update the given job definition from this repository instance.

Parameters:
pJobDefinition - the job to update
Throws:
JobDefinitionNotFoundException - if this repository doesn't contains this job

Oracle® Data Integrator Java API Reference
11g Release 1 (11.1.1.3.0)

E17060-01

Copyright © 2010, Oracle and/or its affiliates. All rights reserved.