public abstract class AbstractComponentKM extends OdiKM implements IKnowledgeModule
IKnowledgeModule.KMType, IKnowledgeModule.LKMType, IKnowledgeModule.ProcessingType
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
SUBTYPE_ALL_LINES
Deprecated.
A subtype value that will pull in all lines defined by the KM, regardless of the subtype
of each line.
|
static java.lang.String |
SUBTYPE_UNDEFINED
A subtype value that indicates that the KM generator delegate AST-producing method is not defined.
|
NAME_MAX_LENGTH
INTG_TYPE_CONTROL_APPEND, INTG_TYPE_INCREMENTAL_UPDATE, INTG_TYPE_INTERMEDIATE_COMPONENT, INTG_TYPE_NONE, INTG_TYPE_SCD, LOCAL_VARIABLES_GROOVY_SCRIPT
Modifier and Type | Method and Description |
---|---|
void |
addClassDeclarationText(java.lang.String text)
Appends some text to the class declaration text.
|
OdiKMTemplateJoin |
addOdiKMTemplate(OdiKMTemplate odiKMTemplate)
Adds the {link OdiKMTemplate}'s reference to this
AbstractComponentKM . |
void |
addOdiKMTemplateList(java.util.List odiKMTemplateList)
Adds the list of {link OdiKMTemplate}'s to this
AbstractComponentKM . |
IProcedureLine |
addProcedureLine(java.lang.Class pLineClass,
java.lang.String pName)
Adds a new procedure line to this procedure.
|
IProcedureLine |
addProcedureLine(java.lang.String pName)
Adds a new procedure line to this procedure.
|
IProcedureOption |
addProcedureOption(java.lang.String pOptionName,
java.lang.Enum pType,
java.lang.Object pDefaultValue)
Adds a procedure option to this KM.
|
void |
addVariableDefScriptText(java.lang.String text)
Appends some texts to the KM-local groovy substitution variable definition script.
|
ProcedureOption |
duplicateOption(ProcedureOption pOption)
Duplicates specified option and adds the new option to the end of list of options.
|
IProcedureLine |
findLine(java.lang.String nameText)
Finds the first KM line contained by this KM, whose name contains the
specified text.
|
java.util.List |
getAllLines(boolean resolved)
Retrieves all the lines held by this AbstractComponentKM along with the non
overridden lines from the base KM if any.
|
java.util.List |
getAllLines(boolean resolved,
IProcedureLine.LineType lineType)
Retrieves all the lines held by this AbstractComponentKM along with the non
overridden lines from the base KM if any.
|
java.util.List |
getAllOptionGroups()
Returns a List of ProcedureOptionGroup of this KM along with those of base KMs, eliminating groups with same name.
|
java.util.List |
getAllOptions()
Returns a List of ProcedureOptions containing all the options which belong to the KM and also all the options of base KM.
|
java.util.List |
getAllOptionsWithNoGroup()
Returns a List of all options from this KM and base KMs which does not belong to any group.
|
java.lang.String |
getASTClassName()
Gets the abstract syntax tree class name that is produced by this KM, if any, else null.
|
AbstractComponentKM |
getBaseComponentKM()
Returns the base component KM for this AbstractComponentKM
|
java.lang.String |
getClassDeclarationText()
Gets class declaration text.
|
java.lang.String |
getComponentType()
Returns the ComponentType of this AbstractComponentKM
|
OdiTechnology |
getDefaultSourceTechnology()
Gets the default source technology of this OdiProcedure.
|
OdiTechnology |
getDefaultTargetTechnology()
Gets the default target technology of this OdiProcedure.
|
OdiIKMLine |
getDerivedSubSelectLine()
Returns the predefined component KM line with derived subselect property
set to true, if any, else return null.
|
java.lang.String |
getDerivedSubSelectTemplate()
Returns the derived subselect template that is defined in an IKM line
owned by this AbstractComponentKM, if any, else return null.
|
java.lang.String |
getExpectedUpstreamASTClassName()
Returns the expected upstream AST class name
|
boolean |
getGenerateMTI()
Returns true if this EKM is set up for the generation of multi-insert
statements.
|
boolean |
getIndExcludeExUnitBegin() |
boolean |
getIndExcludeExUnitEnd() |
boolean |
getIndExcludeExUnitMain() |
boolean |
getIndExcludeMapBegin() |
boolean |
getIndExcludeMapCleanUp() |
boolean |
getIndExcludeMapEnd() |
java.util.List |
getInsertionLines(java.lang.String subtype)
Returns all the lines held by this
AbstractComponentKM that match the subtype. |
java.lang.String |
getIntegrationType()
Gets the integration type for this KM.
|
IKnowledgeModule.KMType |
getKMType()
Gets a string name of the KM type, e.g.
|
java.lang.Class |
getLineType() |
IKnowledgeModule.LKMType |
getLKMType()
Gets the LKM type for this KM.
|
java.lang.String |
getName()
Returns the name of the procedure.
|
java.util.List |
getOdiKMTemplateList()
Returns the list of
OdiKMTemplate 's that are
referred by this AbstractComponentKM . |
OdiProject |
getOdiProject()
Returns the parent OdiProject
|
ProcedureOption |
getOption(java.lang.String pName)
Retrieves the procedure option which name is the parameter name.
|
java.util.List |
getOwnedLines()
Return all the lines that are directly owned by this AbstractComponentKM.
|
java.util.List |
getOwnedLines(IProcedureLine.LineType lineType)
Returns all the lines that are directly owned by this AbstractComponentKM, of the specified line type.
|
java.util.List |
getProcedureLines()
Gets the list of procedure lines for this KM.
|
java.util.List |
getProcedureOptions()
Gets the list of procedure options for this procedure.
|
IKnowledgeModule.ProcessingType |
getProcessingType()
Gets the intended code generation processing type for this AbstractComponentKM.
|
java.lang.String |
getProducedASTClassName()
Gets the abstract syntax tree class name that is produced by this KM, if any, else null.
|
oracle.odi.domain.topology.language.OdiLanguage |
getSourceLanguage()
Gets the source language for this KM.
|
ITechnology |
getSourceTechnology()
Gets the source technology for this KM, or null if source technology is not supported.
|
java.lang.String |
getStaticBaseClassName()
Deprecated.
Use getDelegateClassName, it will return the base static delegate class name if this one doesn't have one, if enableInheritance parameter is true.
|
java.lang.String |
getSubtype()
Get the subtype value for this AbstractComponentKM, for the processing type (SOURCE/TARGET/BOTH) of this KM.
|
java.lang.String |
getSubtype(IKnowledgeModule.ProcessingType procType)
Gets the subtype of this KM, for the specified processing type.
|
oracle.odi.domain.topology.language.OdiLanguage |
getTargetLanguage()
Gets the target language for this KM.
|
ITechnology |
getTargetTechnology()
Gets the target technology for this KM.
|
java.lang.String |
getVariableDefScriptText()
Gets the KM-local groovy substitution variable definition script text.
|
java.lang.String |
getVariableDefScriptText(boolean includeBaseText)
Gets the KM-local groovy substitution variable definition script text.
|
boolean |
hasGeneratorDelegate()
Returns true if this KM has an explicit java or groovy generation delegate.
|
boolean |
is11gKM()
Returns true if this is a 11g-style KM.
|
boolean |
isBaseKMLine(OdiProcedureLine line)
Returns true if the specified line is a baseKM line
|
boolean |
isBaseOnlyKM()
Returns if this
AbstractComponentKM is pure base KM. |
boolean |
isHidden()
If true, indicates that this KM is a 12.1-style KM that is not converted to the newer format,
and if seeded, it should not be visible in the KM tree.
|
boolean |
isMultiConnectIKM()
Returns true if this is a IKM and supports multiConnection
|
boolean |
isMultiConnectLKM()
Returns true if this is a LKM and supports multiConnection
|
boolean |
isProcedureLine(OdiProcedureLine line)
Returns true if the specified line is a procedure line or a baseKM line
|
boolean |
isSeeded()
Return true if this KM is a shipped, seeded 12c (or later) KM.
|
boolean |
isSourceSupported()
Return true if this KM allows source technology and language to be set and retrieved.
|
boolean |
isTransparentLKM()
Returns true if this KM is a transparent LKM
Transparent means LKM can access to source/target attributes as if local
|
void |
moveLineAfter(ComponentKMLine pSource,
ComponentKMLine pAfter)
Moves the given OdiProcedureLine after the line specified.
|
void |
moveLineBefore(ComponentKMLine pSource,
ComponentKMLine pBefore)
Moves the given Procedure Moves the given OdiProcedureLine before the
line specified.
|
void |
moveLineToBottom(ComponentKMLine pLine)
Moves the given OdiProcedureLine to the bottom of the list of lines.
|
void |
moveLineToTop(ComponentKMLine pLine)
Moves the given OdiProcedureLine to the top of the list of lines.
|
ComponentKMLine |
overrideLine(ComponentKMLine line)
Overrides the specified base KM line by copying the line into this KM, and remove
the existing reference line, if any.
|
OdiKMTemplateJoin |
removeOdiKMTemplate(OdiKMTemplate odiKMTemplate)
Removes the {link OdiKMTemplate}'s reference from this
AbstractComponentKM . |
void |
removeProcedureLine(IProcedureLine line)
Removes an existing procedure line.
|
void |
setBaseComponentKM(AbstractComponentKM base)
Sets the base component KM for this AbstractComponentKM
|
void |
setClassDeclarationText(java.lang.String text)
Sets class declaration text
|
void |
setComponentType(java.lang.String compType)
Sets the ComponentType for this AbstractComponentKM
|
void |
setDefaultsFromBaseKM()
Sets this AbstractComponentKM's flags's value (MultiConnectionSupported, LKMType and GenerateMTI), from its base KM.
|
void |
setDefaultSourceTechnology(OdiTechnology pTechnology)
Sets the default source technology of this OdiProcedure.
|
void |
setExpectedUpstreamASTClassName(java.lang.String className)
Sets the expected upstream AST class name
|
void |
setGenerateMTI(boolean pGenerateMTI)
Sets the flag to indicate whether this EKM is set up for the generation of
multi-insert statements.
|
void |
setIndExcludeExUnitBegin(boolean value)
set IndExcludeExUnitBegin flag for Abstract ComponentKM
|
void |
setIndExcludeExUnitEnd(boolean value)
set IndExcludeExUnitEnd flag for Abstract ComponentKM
|
void |
setIndExcludeExUnitMain(boolean value)
set IndExcludeExUnitMain flag for Abstract ComponentKM
|
void |
setIndExcludeMapBegin(boolean value)
set IndExcludeMapBegin flag for Abstract ComponentKM
|
void |
setIndExcludeMapCleanUp(boolean value)
set IndExcludeMapCleanUp flag for Abstract ComponentKM
|
void |
setIndExcludeMapEnd(boolean value)
set IndExcludeMapEnd flag for Abstract ComponentKM
|
void |
setIntegrationType(java.lang.String type)
Sets the integration type for this KM.
|
void |
setLKMType(IKnowledgeModule.LKMType type)
Sets the LKM type for this KM.
|
void |
setMultiConnectionSupported(boolean pMultiConnectionSupported)
Defines whether this OdiProcedure supports mulitConnection or not.
|
void |
setProcessingType(IKnowledgeModule.ProcessingType type)
Sets the intended code generation processing type for this AbstractComponentKM.
|
void |
setProducedASTClassName(java.lang.String name)
Sets the abstract syntax tree class name, that is produced by this KM
|
void |
setSourceLanguage(oracle.odi.domain.topology.language.OdiLanguage sourceLanguage)
Sets source language for this AbstractComponentKM
|
void |
setSourceTechnology(ITechnology techno)
Sets the source technology for this KM
|
void |
setSubtype(IKnowledgeModule.ProcessingType processingType,
java.lang.String subtype)
Set the subtype for this KM, for the specified processing type.
|
void |
setSubtype(java.lang.String subtype)
Set the value of the subtype field for this KM.
|
void |
setTargetLanguage(oracle.odi.domain.topology.language.OdiLanguage targetLanguage)
Sets target language for this AbstractComponentKM
|
void |
setTargetTechnology(ITechnology techno)
Sets the target technology for this KM
|
void |
setVariableDefScriptText(java.lang.String text)
Sets the KM-local groovy substitution variable definition script text.
|
getChecksum, getCustomizationStatus, getKMBuildNumber, getProject, isDefaultKM, isGlobal, isInstanceLevelSecurityNeeded, isSetBasedOperatorSupported, setChecksum, setDefaultKM, setKMBuildNumber, setProject, setSetBasedOperatorSupported, toString
addLine, addLine, addLine, addLine, addOption, addOption, addOptionGroup, addProcedureOption, dumpLineOrder, duplicateLine, getDescription, getFlexFieldsValues, getInternalId, getLines, getOptionGroup, getOptionGroups, getOptionNames, getOptions, getOptionsWithNoGroup, getProcedureId, getProcedureOption, getTopLevelLines, initFlexFields, isMultiConnectionSupported, moveGroupAfterGroup, moveGroupBeforeGroup, moveOptionAfter, moveOptionBefore, moveOptionToBottom, moveOptionToTop, removeLine, removeOption, removeOptionGroup, setDefaultTargetTechnology, setDescription, setName
getFirstDate, getFirstUser, getInternalVersion, getLastDate, getLastUser, isNew, preCommit
equals, getBigNumericId, getGlobalId, getNumericId, getParent, hashCode
addProcedureOption, getDescription, getProcedureOption, isMultiConnectionSupported
addOptionGroup, addProcedureOption, getOptionGroup
getBigNumericId, getGlobalId, getNumericId
getFirstDate, getFirstUser, getLastDate, getLastUser
getGlobalId, getParent
public static final java.lang.String SUBTYPE_ALL_LINES
public static final java.lang.String SUBTYPE_UNDEFINED
public void setDefaultsFromBaseKM()
public void setBaseComponentKM(AbstractComponentKM base)
base
- public OdiProject getOdiProject()
public java.lang.String getComponentType()
public void setComponentType(java.lang.String compType)
compType
- public boolean isSeeded()
OdiKM
public boolean isHidden()
public void setIndExcludeMapBegin(boolean value)
value
- public boolean getIndExcludeMapBegin()
public void setIndExcludeExUnitBegin(boolean value)
value
- public boolean getIndExcludeExUnitBegin()
public void setIndExcludeExUnitMain(boolean value)
value
- public boolean getIndExcludeExUnitMain()
public void setIndExcludeExUnitEnd(boolean value)
value
- public boolean getIndExcludeExUnitEnd()
public void setIndExcludeMapEnd(boolean value)
value
- public boolean getIndExcludeMapEnd()
public void setIndExcludeMapCleanUp(boolean value)
value
- public boolean getIndExcludeMapCleanUp()
public AbstractComponentKM getBaseComponentKM()
public java.lang.String getStaticBaseClassName()
public void setProducedASTClassName(java.lang.String name)
name
- public java.lang.String getProducedASTClassName()
IKnowledgeModule
getProducedASTClassName
in interface IKnowledgeModule
getProducedASTClassName
in class OdiKM
public void setExpectedUpstreamASTClassName(java.lang.String className)
name
- public java.lang.String getExpectedUpstreamASTClassName()
public void setSubtype(java.lang.String subtype)
subtype
- The new subtype field value to be set.public void setSubtype(IKnowledgeModule.ProcessingType processingType, java.lang.String subtype)
processingType
- The processing type (SOURCE or TARGET) for which to set the subtype.subtype
- The subtype to set.public java.lang.String getSubtype()
public java.lang.String getSubtype(IKnowledgeModule.ProcessingType procType)
procType
- public void setLKMType(IKnowledgeModule.LKMType type)
type
- public IKnowledgeModule.LKMType getLKMType()
getLKMType
in interface IKnowledgeModule
public void setProcessingType(IKnowledgeModule.ProcessingType type)
type
- the processing typepublic IKnowledgeModule.ProcessingType getProcessingType()
getProcessingType
in interface IKnowledgeModule
public java.lang.String getIntegrationType()
getIntegrationType
in interface IKnowledgeModule
public void setIntegrationType(java.lang.String type)
type
- the integration type for this KMpublic java.lang.String getASTClassName()
public void setVariableDefScriptText(java.lang.String text)
text
- public void addVariableDefScriptText(java.lang.String text)
text
- public java.lang.String getVariableDefScriptText(boolean includeBaseText)
includeBaseText
- If true, include any base KM variable definition script text as well.public java.lang.String getVariableDefScriptText()
public java.lang.String getClassDeclarationText()
public void addClassDeclarationText(java.lang.String text)
text
- public void setClassDeclarationText(java.lang.String text)
text
- public ITechnology getTargetTechnology()
public void setTargetTechnology(ITechnology techno)
techno
- public ITechnology getSourceTechnology()
public void setMultiConnectionSupported(boolean pMultiConnectionSupported)
OdiProcedure
Setting this will affect source technology. If set to false, source technology will be set to null.
setMultiConnectionSupported
in class OdiProcedure
pMultiConnectionSupported
- true
to make this procedure
supports mutliConnection, false
otherwiseOdiProcedure.isMultiConnectionSupported()
public OdiTechnology getDefaultSourceTechnology()
OdiProcedure
getDefaultSourceTechnology
in class OdiProcedure
OdiProcedure.setDefaultSourceTechnology(oracle.odi.domain.topology.OdiTechnology)
public boolean isSourceSupported()
public OdiTechnology getDefaultTargetTechnology()
OdiProcedure
getDefaultTargetTechnology
in class OdiProcedure
OdiProcedure.setDefaultTargetTechnology(oracle.odi.domain.topology.OdiTechnology)
public ProcedureOption duplicateOption(ProcedureOption pOption)
OdiProcedure
duplicateOption
in class OdiProcedure
pOption
- option to duplicatepublic void setSourceTechnology(ITechnology techno)
techno
- public void setDefaultSourceTechnology(OdiTechnology pTechnology)
OdiProcedure
Mainly used inside ODI Studio when creating commands.
By default this property is set to null
.
setDefaultSourceTechnology
in class OdiProcedure
pTechnology
- the default source technologyOdiProcedure.getDefaultSourceTechnology()
public boolean getGenerateMTI()
public void setGenerateMTI(boolean pGenerateMTI)
pGenerateMTI
- public java.util.List getInsertionLines(java.lang.String subtype) throws oracle.odi.mapping.generation.GenerationException
AbstractComponentKM
that match the subtype.
This also includes the lines that match the subtype from the base KM if any.subtype
- - the subtype of the linesoracle.odi.mapping.generation.GenerationException
public java.util.List getAllLines(boolean resolved)
resolved
- public java.util.List getAllLines(boolean resolved, IProcedureLine.LineType lineType)
resolved
- lineType
- If non-null, then return only lines of the specified line type.public java.util.List getOwnedLines()
public java.util.List getOwnedLines(IProcedureLine.LineType lineType)
lineType
- The type to match.public java.util.List getProcedureLines()
IKnowledgeModule
getProcedureLines
in interface IKnowledgeModule
public IProcedureLine findLine(java.lang.String nameText)
nameText
- The text to look for in the KM line names.public ProcedureOption getOption(java.lang.String pName)
getOption
in class OdiProcedure
pName
- the name of the optionOdiProcedure.addOption(ProcedureOption)
public IKnowledgeModule.KMType getKMType()
IKnowledgeModule
getKMType
in interface IKnowledgeModule
public java.lang.String getName()
OdiProcedure
getName
in interface IFlexFieldUser
getName
in interface IModelObject
getName
in interface IOdiEntity
getName
in class OdiProcedure
OdiProcedure.setName(String)
public java.util.List getProcedureOptions()
IProcedure
getProcedureOptions
in interface IKnowledgeModule
getProcedureOptions
in interface IProcedure
getProcedureOptions
in class OdiProcedure
public java.util.List getAllOptions()
public IProcedureOption addProcedureOption(java.lang.String pOptionName, java.lang.Enum pType, java.lang.Object pDefaultValue)
IKnowledgeModule
addProcedureOption
in interface IKnowledgeModule
pOptionName
- The name of the new option.pType
- The type of the new option.pDefaultValue
- The default value for the new option.public boolean isMultiConnectIKM()
true
if this is a IKM AND supports mutliConnection,
false
otherwisepublic boolean isMultiConnectLKM()
true
if this is a LKM AND supports mutliConnection,
false
otherwisepublic boolean isProcedureLine(OdiProcedureLine line)
isProcedureLine
in class OdiProcedure
line
- The line to check.public boolean isBaseKMLine(OdiProcedureLine line)
public boolean isTransparentLKM()
public boolean hasGeneratorDelegate() throws oracle.odi.mapping.generation.GenerationException
oracle.odi.mapping.generation.GenerationException
public OdiIKMLine getDerivedSubSelectLine()
public java.lang.String getDerivedSubSelectTemplate()
public java.lang.Class getLineType()
getLineType
in class OdiProcedure
public boolean is11gKM()
public java.util.List getAllOptionGroups()
public java.util.List getAllOptionsWithNoGroup()
public oracle.odi.domain.topology.language.OdiLanguage getSourceLanguage()
getSourceLanguage
in interface IKnowledgeModule
getSourceLanguage
in class OdiKM
public void setSourceLanguage(oracle.odi.domain.topology.language.OdiLanguage sourceLanguage)
The
- source language.DomainRuntimeException
- if sourceLanguage is null or if source technology is not set.public oracle.odi.domain.topology.language.OdiLanguage getTargetLanguage()
getTargetLanguage
in interface IKnowledgeModule
getTargetLanguage
in class OdiKM
public boolean isBaseOnlyKM()
AbstractComponentKM
is pure base KM.
A KM is a pure base KM if its Processing Type is NONE, and it is a Component KM.
A pure base KM is not capable of producing any AST object.
It can be a LKM, CKM, IKM, or XKM.public java.util.List getOdiKMTemplateList()
OdiKMTemplate
's that are
referred by this AbstractComponentKM
.OdiKMTemplate
spublic OdiKMTemplateJoin removeOdiKMTemplate(OdiKMTemplate odiKMTemplate)
AbstractComponentKM
.odiKMTemplate
- the KM template to be removedpublic OdiKMTemplateJoin addOdiKMTemplate(OdiKMTemplate odiKMTemplate)
AbstractComponentKM
.odiKMTemplate
- the KM template to be addedpublic void addOdiKMTemplateList(java.util.List odiKMTemplateList)
AbstractComponentKM
.odiKMTemplateList
- the list of KM templates to be addedpublic void setTargetLanguage(oracle.odi.domain.topology.language.OdiLanguage targetLanguage)
target
- language.DomainRuntimeException
- if targetLanguage is null or if target technology is not set.public ComponentKMLine overrideLine(ComponentKMLine line)
line
- The base KM line. Can be a reference line or a base KM line.
If the specified line is not an already included base line, then do nothing and return null.public IProcedureLine addProcedureLine(java.lang.String pName)
IProcedure
addProcedureLine
in interface IProcedure
addProcedureLine
in class OdiProcedure
pName
- the name for the new procedure line.public IProcedureLine addProcedureLine(java.lang.Class pLineClass, java.lang.String pName)
IProcedure
addProcedureLine
in interface IProcedure
addProcedureLine
in class OdiProcedure
pLineClass
- The class type of the new line.pName
- the name of the new line.public void removeProcedureLine(IProcedureLine line)
IProcedure
removeProcedureLine
in interface IProcedure
removeProcedureLine
in class OdiProcedure
line
- the line to be removed.public void moveLineAfter(ComponentKMLine pSource, ComponentKMLine pAfter)
OdiProcedure
moveLineAfter
in class OdiProcedure
pSource
- source linepAfter
- move source line after this linepublic void moveLineBefore(ComponentKMLine pSource, ComponentKMLine pBefore)
OdiProcedure
moveLineBefore
in class OdiProcedure
pSource
- source linepBefore
- move source line before this linepublic void moveLineToBottom(ComponentKMLine pLine)
OdiProcedure
moveLineToBottom
in class OdiProcedure
pLine
- line to movepublic void moveLineToTop(ComponentKMLine pLine)
OdiProcedure
moveLineToTop
in class OdiProcedure
pLine
- line to move