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

E17060-01

oracle.odi.domain.runtime.scenario
Class OdiScenario

java.lang.Object
  extended by oracle.odi.domain.support.BusinessObject
      extended by oracle.odi.domain.support.AbstractRepositoryEntity
          extended by oracle.odi.domain.support.AbstractOdiEntity
              extended by oracle.odi.domain.runtime.scenario.OdiScenario
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, IFlexFieldUser, IExportable, IOdiEntity, IRepositoryEntity, IWorkRuntimeOdiEntity

public final class OdiScenario
extends oracle.odi.domain.support.AbstractOdiEntity
implements IWorkRuntimeOdiEntity, IExportable, IFlexFieldUser

An ODI Scenario is designed to put a source component (interface, package, procedure, variable) into production. It results from the generation of code (SQL, shell, etc) for this component.

OdiScenario is the root entity in OdiScenario - OdiScenarioVariable - OdiScenarioSequence - OdiScenarioReport aggregate, thus implements IOdiEntity interface. It is identified by a unique scenario ID that can be obtained from getScenarioId() method call. Equals / hashCode method are implemented according this identity. An OdiScenario can also be uniquely identified inside a given work repository by its Tag which is made of the scenario name and version.

Life cycle of an OdiScenario begins during design time code generation. Once generated, the scenario is stored inside the work repository (Design-time or Runtime work repository). The scenario can be exported then imported to another repository (remote or not) and executed inside ODI Execution Engine using different contexts (i.e. OdiContext). Also, a scenario is operated from the work repository it is stored in. The same scenario can be executed in several contexts from the same work repository. Life cycle ends when it is removed from runtime repository.

Note: The scenario code (the language generated) is frozen, and all subsequent modifications of the components that contributed to creating it will not change it in any way.

OdiScenario also provides APIs to get source component that serves to generate scenario. Note that in typical use case, scenario is exported from a design time repository and then imported in a runtime repository, and then you will not be able to find that source component from repository.

For now it is not possible to create an OdiScenario.

Since:
11.1.1.3.0
See Also:
Serialized Form

Field Summary
 
Fields inherited from class oracle.odi.domain.support.AbstractOdiEntity
STARTING_INTERNAL_VERSION
 
Method Summary
 java.lang.String getDescription()
          Gets description of this OdiScenario.
 java.util.Collection<IFlexFieldValue> getFlexFieldsValues()
          Obtains flex fields values related to this IFlexFieldUser.
 java.io.Serializable getInternalId()
          Provides a common getter for the persistence layer to obtain an identity, irrespective of the actual type of identity used.
 java.lang.String getName()
          Gets the OdiScenario's tag name.
 java.lang.Number getScenarioId()
          Gets the ID of this OdiScenario.
 java.util.List<OdiScenarioReport> getScenarioReports()
          Obtains an unmodifiable list of this OdiScenario's execution reports.
 java.util.Collection<OdiScenarioSequence> getScenarioSequences()
          Obtains an unmodifiable collection of the sequences that are used inside this OdiScenario.
 java.util.Collection<OdiScenarioVariable> getScenarioVariables()
          Obtains an unmodifiable collection of the variables that are used inside this OdiScenario.
 IRepositoryEntity getSecurityContainer()
          Define a generic way to retrieve container for entities.
 java.io.Serializable getSourceComponentId()
          Gets the ID of the source component (i.e.
 Tag getTag()
          Gets the OdiScenario's tag (name and version).
 java.lang.String getVersion()
          Gets the OdiScenario's tag version.
 void initFlexFields(IOdiFlexFieldFinder pOdiFlexFieldFinder)
          Initialize flex fields related to this IFlexFieldUser.
 boolean isInstanceLevelSecurityNeeded()
          Internal: this method is for internal purpose and must not be considered as part of the public API.
 boolean wasGeneratedFromInterface()
          Returns whether this OdiScenario was generated from an Interface, or not.
 boolean wasGeneratedFromPackage()
          Returns whether this OdiScenario was generated from a Package, or not.
 boolean wasGeneratedFromUserProcedure()
          Returns whether this OdiScenario was generated from a User Procedure, or not.
 boolean wasGeneratedFromVariable()
          Returns whether this OdiScenario was generated from a Variable, or not.
 
Methods inherited from class oracle.odi.domain.support.AbstractOdiEntity
equals, getFirstDate, getFirstUser, getInternalVersion, getLastDate, getLastUser, hashCode, isNew, toString
 
Methods inherited from class oracle.odi.domain.support.BusinessObject
clone
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface oracle.odi.domain.IOdiEntity
getFirstDate, getFirstUser, getLastDate, getLastUser
 

Method Detail

getDescription

public java.lang.String getDescription()
Gets description of this OdiScenario.

Returns:
description of this OdiScenario

getFlexFieldsValues

public java.util.Collection<IFlexFieldValue> getFlexFieldsValues()
Description copied from interface: IFlexFieldUser
Obtains flex fields values related to this IFlexFieldUser.

Specified by:
getFlexFieldsValues in interface IFlexFieldUser
Returns:
an unmodifiable Collection of flex field values

getInternalId

public java.io.Serializable getInternalId()
Description copied from interface: IRepositoryEntity
Provides a common getter for the persistence layer to obtain an identity, irrespective of the actual type of identity used.

Typically a subclass will delegate to a public SomePrimitiveWrapper getId() method. The necessity for the getInternalId() abstract method is solely because the persistence layer needs a way of obtaining the identity irrespective of the actual identity implementation choice.

Returning null from this method will indicate the object has never been saved. This will likely be relied on by some DAO implementations.

Specified by:
getInternalId in interface IRepositoryEntity
Returns:
the persistence identity of this instance

getName

public java.lang.String getName()
Gets the OdiScenario's tag name.

Specified by:
getName in interface IOdiEntity
Overrides:
getName in class oracle.odi.domain.support.AbstractOdiEntity
Returns:
the OdiScenario's tag name

getScenarioId

public java.lang.Number getScenarioId()
Gets the ID of this OdiScenario.

Returns:
the ID of this OdiScenario

getScenarioReports

public java.util.List<OdiScenarioReport> getScenarioReports()
Obtains an unmodifiable list of this OdiScenario's execution reports. The returned list is ordered by execution number.

Returns:
an unmodifiable list of this OdiScenario's execution reports

getScenarioSequences

public java.util.Collection<OdiScenarioSequence> getScenarioSequences()
Obtains an unmodifiable collection of the sequences that are used inside this OdiScenario.

Returns:
an unmodifiable collection of the sequences that are used inside this OdiScenario

getScenarioVariables

public java.util.Collection<OdiScenarioVariable> getScenarioVariables()
Obtains an unmodifiable collection of the variables that are used inside this OdiScenario.

Returns:
an unmodifiable collection of the variables that are used inside this OdiScenario

getSecurityContainer

public IRepositoryEntity getSecurityContainer()
Description copied from interface: IRepositoryEntity
Define a generic way to retrieve container for entities.

Specified by:
getSecurityContainer in interface IRepositoryEntity
Returns:
container entity

getSourceComponentId

public java.io.Serializable getSourceComponentId()
Gets the ID of the source component (i.e. Interface, Package, Variable or User Procedure) that was used to generate this OdiScenario.

Returns:
the ID of the source component

getTag

public Tag getTag()
Gets the OdiScenario's tag (name and version).

Returns:
the OdiScenario's tag (name and version)

getVersion

public java.lang.String getVersion()
Gets the OdiScenario's tag version.

Returns:
the OdiScenario's tag version

initFlexFields

public void initFlexFields(IOdiFlexFieldFinder pOdiFlexFieldFinder)
Description copied from interface: IFlexFieldUser
Initialize flex fields related to this IFlexFieldUser.

Specified by:
initFlexFields in interface IFlexFieldUser
Parameters:
pOdiFlexFieldFinder - OdiFlexField finder to be used to query flex fields

isInstanceLevelSecurityNeeded

public boolean isInstanceLevelSecurityNeeded()
Description copied from interface: IOdiEntity
Internal: this method is for internal purpose and must not be considered as part of the public API.

Defines a method to capture the info on which object needs instance level privilege.

Specified by:
isInstanceLevelSecurityNeeded in interface IOdiEntity
Overrides:
isInstanceLevelSecurityNeeded in class oracle.odi.domain.support.AbstractOdiEntity
Returns:
true if instance level security needed, false otherwise

wasGeneratedFromInterface

public boolean wasGeneratedFromInterface()
Returns whether this OdiScenario was generated from an Interface, or not.

Returns:
whether this OdiScenario was generated from an Interface, or not

wasGeneratedFromPackage

public boolean wasGeneratedFromPackage()
Returns whether this OdiScenario was generated from a Package, or not.

Returns:
whether this OdiScenario was generated from a Package, or not

wasGeneratedFromUserProcedure

public boolean wasGeneratedFromUserProcedure()
Returns whether this OdiScenario was generated from a User Procedure, or not.

Returns:
whether this OdiScenario was generated from a User Procedure, or not

wasGeneratedFromVariable

public boolean wasGeneratedFromVariable()
Returns whether this OdiScenario was generated from a Variable, or not.

Returns:
whether this OdiScenario was generated from a Variable, or not

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.