public class PDefViewObject extends PDefRow implements ViewCriteriaManager, CategoryManagerOwner, PDefViewObjectInterface, PDefViewObjectLayoutInterface, CustomizableViewDef
PersistableDefObject.CustomizationType, PersistableDefObject.PersonalizationTypeAPPLY_PERS_DB, APPLY_PERS_DEFAULT, APPLY_PERS_EVENTS, APPLY_PERS_PROPS, APPLY_PERS_QUERY, APPLY_PERS_STRUCT, APPLY_PERS_TO_BASE_DEF, APPLY_PERS_VALS, mUserPDefLoggerJIT_PACKAGE_NAME, mDebugToSkipEmptyDocForBug24949961, mEditedProperties, mEditedPropertyExprsDEF_MDS_CLIENT_KEY, DEF_SCOPE_ALL, DEF_SCOPE_PERS, DEF_SCOPE_SESSION, DEF_SCOPE_SHARED, DEF_SCOPE_SITE, DEF_SCOPE_USER, mBaseDefObject, mExtendedDefObjects, mObjectResolved, PERSDEF_MDS_CLIENT_KEY, PROPERTY_EXPRMAPmFullName, mObjName, mParent, mProperties, RES_ID_SUFFIX, RESID_SUFFIXDFLT_VIEW_CRITERIA_NAME, IMPLICIT_VIEW_CRITERIA_NAME, QUICKSEARCH_VIEW_CRITERIA_NAMEALLOWEDHINTSFLAG_DIRTY, FLAG_EDITABLE, FLAG_FROM_TIP, FLAG_LOAD_BASE, FLAG_LOAD_HL_DEFS, FLAG_MAJOR_VERSION_CHANGED, FLAG_MINOR_VERSION_CHANGED, FLAG_NEW, FLAG_NEW_RECURSE, FLAG_SKIP_WRITE, XML_STATEMENT| Constructor and Description |
|---|
PDefViewObject() |
PDefViewObject(ViewDefImpl viewDef) |
| Modifier and Type | Method and Description |
|---|---|
AttributeDefImpl |
addCustomEntityAttribute(java.lang.String attrName,
java.lang.String entityUsageName,
java.lang.String entityAttrName,
boolean isPersistent) |
ViewAttributeDefImpl |
addEntityAttribute(java.lang.String attrName,
java.lang.String entityUsageName,
java.lang.String entityAttrName,
boolean isPersistent)
Adds the named attribute to the view definition.
|
void |
addRowFinder(RowFinder finder) |
ViewAttributeDefImpl |
addViewAttribute(java.lang.String attrName,
java.lang.String expression,
java.lang.Class javaType) |
ViewAttributeDefImpl |
addViewLinkAccessor(java.lang.String accName,
java.lang.String vlName,
java.lang.Class javaType) |
ViewAttributeDefImpl |
addViewLinkAccessor(java.lang.String accName,
java.lang.String vlName,
java.lang.Class javaType,
AssociationDefBase.IntersectExpandEnd mtomEnd) |
void |
addViewLinkDef(ViewLinkDefImpl vlDef) |
protected java.util.HashMap |
adjustPropertyMapForWrite() |
void |
applyDiffChildren(DifferDetails dif,
DiffResolver resolver)
Applies changes to children defs.
|
void |
applyDiffContents(DifferDetails dif,
DiffResolver resolver)
When diff/merge operation is requested, we have the following
three def objects:
|
void |
applyPersonalization(int mode,
java.lang.Object instance) |
void |
applyPersonalization(java.lang.Object instance,
boolean vcAppend) |
void |
applyPersonalizationToBaseDef() |
void |
applyViewCriteria(ViewCriteria criteria)
Apply the view criteria passed as the argument.
|
void |
applyViewCriteria(ViewCriteria criteria,
boolean bAppend)
Apply the view crtieria passed as the argument.
|
DifferDetails |
beginDiffObjects(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
This method is the entry point call when the diffing process
begins on the document-level def.
|
CriteriaClauses |
buildViewCriteriaClauses(ViewCriteria vc)
This method is used by the framework to generate a query clause for a
particular view criteria.
|
void |
clearViewCriterias()
Clear all view criteria, both applied and unapplied help by this
manager
|
ViewCriteria |
createViewCriteria() |
void |
criteriaChanged(ViewCriteria vc)
The criteria manager can track changes to applied view criteria.
|
DifferDetails |
diffChildren(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
Performs diff of children defs.
|
DifferDetails |
diffContents(DiffMergeable docDef,
DiffMergeable orgDef,
DifferDetails difDetails)
Performs diff of scalar values.
|
CategoryManager |
ensureCategoryManager()
Internal use only.
|
VariableValueManager |
ensureVariableManager()
Returns this object's Variable Value Manager.
|
static PDefViewObject |
findDefObject(java.lang.String persDefName) |
static PDefViewObject |
findDefObjectNoSub(java.lang.String persDefName) |
RowFinder |
findRowFinder(java.lang.String name) |
DefinitionObject |
findStaticDefinitionObject(java.lang.String fullName) |
static PDefViewObject |
findUserDefObject(java.lang.String persDefName) |
ViewAttributeDefImpl |
findViewAttrDefByBaseAttr(AttributeDefImpl attr) |
ViewLinkDefImpl |
findViewLinkDef(java.lang.String name) |
ViewLinkDefImpl |
findViewLinkDefImpl(ViewAttributeDefImpl attrDef) |
void |
flushChanges()
This method is used to write and save this object
|
byte |
getAccessMode() |
static java.lang.String[] |
getAllDefNames() |
java.util.HashMap |
getAllProperties(java.util.HashMap map,
LocaleContext locale) |
java.lang.String[] |
getAllViewCriteriaNames()
Returns a list of both applied and unapplied view criterias managed
by this object.
|
ViewCriteria[] |
getAllViewCriterias()
Returns a list of both applied and unapplied view criterias managed
by this object.
|
java.lang.String[] |
getApplyViewCriteriaNames() |
ViewCriteria[] |
getApplyViewCriterias(int criteriaMode)
Return a list of applied view criteria that have the mode passed in the argument
turned on.
|
java.lang.String[] |
getAvailableViewCriteriaNames()
Returns a list of view criteria names that are unapplied and managed
by this object
|
CategoryManager |
getCategoryManager()
Internal use only.
|
SortCriteria[] |
getDBSortCriteria() |
java.lang.String |
getDefFullName() |
java.lang.String |
getDefXMLNameSpace() |
java.lang.String |
getEditVersionsAsString() |
byte |
getFetchMode() |
short |
getFetchSize() |
int |
getFromClauseFlags() |
java.lang.Object |
getHint(java.lang.String attrName,
java.lang.String hintName)
Use this method to get the value of a hint
|
oracle.jbo.server.InheritPersonalization |
getInheritPersonalizationValue() |
protected int |
getLoadSubclassLevel() |
int |
getMajorVersion() |
int |
getMaxFetchSize() |
int |
getMinorVersion() |
int |
getNestedSelectForFullSqlValue() |
protected java.lang.String |
getNoPersDefObjectName(java.lang.String metaObjectName) |
java.lang.String |
getOrderByClause() |
ViewCriteria |
getPersonalizedViewCriteria(java.lang.String name)
Returns the VC if present only from the list of personalized VCs.
|
java.lang.String |
getQueryHint() |
int |
getQueryMode() |
int |
getRangePagingCacheFactor() |
int |
getRangeSize() |
ViewCriteria |
getReqdVC() |
java.util.List<RowFinder> |
getRowFinderList() |
java.lang.String |
getRowMatch() |
java.lang.String |
getSelectClause() |
int |
getSelectClauseFlags() |
java.lang.String |
getSortBy() |
java.lang.String |
getUserDefinedQuery() |
ViewCriteria |
getViewCriteria()
Returns the default view criteria of the manager.
|
ViewCriteria |
getViewCriteria(java.lang.String name)
Returns a reference to the view criteria with a specific name
if it is found.
|
java.lang.String |
getViewCriteriaClause(boolean forQuery)
This method is used by the framework to generate a query clause for the
applied view criterias.
|
ViewCriteriaManager |
getViewCriteriaManager() |
int |
getViewLinkAccessorRetainedValue() |
java.util.List<ViewLinkDefImpl> |
getViewLinkDefs() |
java.lang.String |
getViewLinkPackage() |
java.lang.String |
getWhereClause() |
int |
getWhereClauseFlags() |
boolean |
isCustIntoStaticDef() |
boolean |
isNamedViewLinkAccessorRetained(java.lang.String accName)
Deprecated.
since 11.1.1.6.0
For framework internal use only.
This api name may change in future builds, so if any consuming layer uses this method, it will require a code-change and recompile. Used to return retained flag for a specific viewlink accessor in this ViewDef. If the accessor is not overridden, this method returns false. |
boolean |
isNestedSelectForFullSql() |
boolean |
isRemoveDBSortCriteria() |
boolean |
isViewLinkAccessorRetained() |
PersistableDefObject |
loadDefObject(boolean forTip,
boolean forEditOrig,
boolean resolveDef) |
protected void |
loadDefVersions(DefElement xmlElement) |
void |
loadXMLAccessorDefContents(DefElement elem) |
void |
loadXMLAttrDefContents(DefElement elem) |
void |
loadXMLContents(DefElement xmlElement,
java.lang.String fullName) |
void |
loadXMLDeclarativeWhereClause(DefElement elem) |
void |
loadXMLRowFinders(DefElement xmlElement) |
void |
loadXMLSortCriteria(DefElement elem) |
void |
loadXMLViewCriteriaContents(DefElement elem) |
void |
loadXMLViewLinkDefContents(DefElement elem) |
RowFinder |
lookupRowFinder(java.lang.String name) |
ViewLinkDefImpl |
lookupViewLinkDef(java.lang.String name) |
PDefCategory |
personalizeCategory(java.lang.String categoryName) |
protected void |
processAccessors() |
void |
putViewCriteria(java.lang.String name,
ViewCriteria criteria)
Add a view criteria to be managed by this object
|
boolean |
removeApplyViewCriteriaName(java.lang.String name)
Unapplied the view criteria if it is applied.
|
void |
removeAttribute(java.lang.String attrName) |
void |
removePersonalizedCategory(java.lang.String categoryName) |
RowFinder |
removeRowFinder(java.lang.String name) |
ViewCriteria |
removeViewCriteria(java.lang.String name)
Removes the view criteria from this manager.
|
void |
removeViewLinkDef(java.lang.String name) |
void |
resetCriteria(ViewCriteria vc)
Resets a view criteria to the state as defined in the View Definition.
|
protected java.lang.Object |
resolvePropertyRaw(java.lang.String property,
LocaleContext locale) |
void |
saveLayoutChanges()
Use this method to save the layout changes for attribute hints
|
void |
saveXMLContents() |
void |
setAccessMode(byte accessMode) |
void |
setApplyViewCriteriaName(java.lang.String name)
Apply the view criteria name passed as the argument.
|
void |
setApplyViewCriteriaName(java.lang.String name,
boolean bAppend)
Apply the view crtieria name passed as the argument.
|
void |
setApplyViewCriteriaNames(java.lang.String[] names)
Apply a set of view criteria names passed as the argument.
|
void |
setCurrentUnionViewCriteriaName(java.lang.String vcName) |
void |
setCustIntoStaticDef(boolean b) |
void |
setDBSortCriteria(SortCriteria[] sortCrit) |
void |
setEditable(boolean b) |
void |
setFetchMode(byte fetchMode) |
void |
setFetchSize(short fetchSize) |
void |
setFromClauseFlags(int flags) |
void |
setFullName(java.lang.String fullName,
boolean setStaticDef) |
boolean |
setHint(java.lang.String attrName,
java.lang.String hintName,
java.lang.Object hintValue)
Use this method to personalize hints on the attribute.
|
void |
setInheritPersonalizationStrValue(java.lang.String s) |
void |
setMaxFetchSize(int maxFetchSize) |
void |
setMaxFetchSizeString(java.lang.String strVal) |
void |
setNamedViewLinkAccessorRetained(java.lang.String accName,
boolean b)
Deprecated.
since 11.1.1.6.0
For framework internal use only.
This api name may change in future builds, so if any consuming layer uses this method, it will require a code-change and recompile. Used to set retained flag for a specific viewlink accessor in this ViewDef. If the accessor is not overridden, this method does nothing. |
void |
setNestedSelectForFullSql(boolean b) |
void |
setOrderByClause(java.lang.String orderByClause) |
void |
setQueryHint(java.lang.String queryHint) |
void |
setQueryMode(int queryMode) |
void |
setRangePagingCacheFactor(int rangePagingCacheFactor) |
void |
setRangeSize(int rangeSize) |
void |
setRemoveDBSortCriteria(boolean bRemove) |
void |
setReqdVC(ViewCriteria vc) |
void |
setRowMatch(java.lang.String rowMatch) |
void |
setSelectClause(java.lang.String selectClause) |
void |
setSelectClauseFlags(int flags) |
void |
setSortBy(java.lang.String sortBy) |
void |
setStaticDefPublic(java.lang.String viewDefName) |
void |
setUserDefinedQuery(java.lang.String userDefinedQuery) |
void |
setViewLinkAccessorRetained(boolean b) |
void |
setWhereClause(java.lang.String whereClause) |
void |
setWhereClauseFlags(int flags) |
void |
writeChildren(DefWriter jos)
Writes the Object's children to the Persistent storage
|
void |
writeContents(DefWriter jos)
Objects should write their persistence output in this method
|
void |
writeXMLContents() |
addListBindingDef, addRowOperation, addScriptRowOperation, addValidator, addViewAccessorDef, findAttributeDef, findListBindingDef, findRowOperationDefinition, findViewAccessorDef, getAttrDefsMap, getAttributeCount, getAttributeDef, getAttributeDefs, getAttributeDefs2, getAttributeIndexOf, getChildDefOwner, getColumnNameForQuery, getHiddenAttributes, getHiddenAttributesList, getListBindingDefs, getPersonalizedAttributes, getResourceBundleDef, getScriptRowOperationDefinitions, getScriptRowOperationDefinitions, getStructureDef, getValidators, getViewAccessorDefs, hideAttribute, isObjectResolved, lookupAttributeDef, lookupExprDef, lookupListBindingDef, lookupPersonalizedAttribute, lookupRowOperationDefinition, lookupViewAccessorDef, personalizeAttribute, removeHiddenAttribute, removeListBindingDef, removePersonalizedAttribute, removeRowOperation, removeViewAccessorDef, resolveDefObject, setWholeDefDirty, setWholeDefNewaddOperation, addScriptOperation, applyDiffChildrenPDefComponentOperations, diffChildrenPDefComponentOperations, editCodeSource, ensureCodeSource, findOperationDefinition, getMessageBundleClass, getOperationDefinitions, getPersonalizedVariables, getResourceBundleDef, getResourcePrefix, getRowOperationDefinitions, getScriptOperationDefinitions, getVariableManager, hasPersonalizedComponentOperations, hasVariables, isDynamicCodeSourceEnabled, lookupCodeSource, lookupOperationDefinition, lookupPersonalizedVariable, lookupRowOperationDefinition, personalizeOperations, personalizeVariable, reapplyChanges, removeOperation, removePersonalizedVariable, setReapplyMerge, setVariableManager, updateMdsKeyFromTipapplyPersonalization, applyPropertiesPersonalization, deregisterDefObject, deregisterSessionObject, getBasePackage, getFileName, getStaticDef, getStaticDefWithCheck, getTrimmedFullName, getTrimmedFullNameForDef, hasStaticDefElem, isAuditEnabled, isAuditEnabled, isAutoMerged, isDeprecated, loadSubclassXMLContents, loadXMLContents, mergePropertyMap, raiseCustomAuditEvent, registerDefObject, registerSessionDefObject, removeProperty, setDefinitionState, setFullName, setProperty, setPropertyExpression, setPropertyMap, setStaticDef, setStaticDefPublicaddChildren, addDefImport, addExtendedDefObject, addSavedDocName, allocatePDef, allocatePropertyMap, allocatePropertyMapForEdits, baseIsWriteObject, buildChildName, buildFileName, callFinishedLoading, checkEditable, checkEditableWithDefWriter, checkStructWithOld, close, createEditPDef, createFromXML, deregisterHLDef, diffChildrenHLDefs, diffChildrenProperties, diffObjects, ensureDifferDetails, ensureDifferSkip, extractCustIntoPDef, findDefImport, finishedLoading, forgetChanges, getBaseDir, getChildren, getDefImports, getDefManager, getDefTypeName, getDefWriter, getDefXMLElementTag, getDifferSkip, getEditedPropertiesMap, getEditedPropertyExpressionsMap, getEditedPropertyMap, getEditObject, getExtendedDefObjectsInternal, getFullDirName, getFullFileName, getHLDefMap, getIdentificationAttributeName, getMergeableFullName, getMergeableName, getOrigObject, getPropertyMap, getPropertyNamesSet, getSavedDocNames, getSessionSyncLock, getSubstitutedNames, getSyncLock, getXMLElementTag, guaranteePath, hasExtendedDefObjects, includeCustomizationLayerInfo, isCreateEditPDef, isCustomizationEnabled, isCustomizationEnabled, isDirty, isEditable, isFromTip, isInheritPolicyStrict, isLoadBase, isLoadHLDefs, isMajorVersionChanged, isMinorVersionChanged, isNew, isNewRecurse, isPersonalizationEnabled, isPersonalizationEnabled, isPropertyExpression, isSaveToJSON, isSkipWrite, isWriteObject, loadDefImports, loadXMLContentsNoResolve, lockDefinitionContext, lookupHLDef, makeNew, mergeChanges, mergeEditedPropertiesForJSON, objectRemoved, postSaveContents, readJSONObject, registerClass, registerHLDef, registerSiteDefObject, reloadFromXMLContents, remove, removeAndDelete, removeDefImport, removeExtendedDefObject, saveJSONContents, setCustomizationEnabled, setCustomizationEnabled, setDefaultBaseDir, setDefMgr, setDirty, setEditableFlag, setEditableObject, setForRuntime, setFullNameInternal, setLoadBase, setLoadHLDefs, setMajorVersionChanged, setNew, setNewRecurse, setOrigObject, setPersonalizationEnabled, setPersonalizationEnabled, setSkipWrite, setupDefWriterFromMO, staticUpdateChildrenList, transferDefChangesInto, unlockDefinitionContext, updateChildObject, updateChildrenList, verifyVersion, verifyVersionNullCheck, writeHeaderForNew, writeJSONContents, writeObject, writeVersionaddPropertySetName, enableUpdateCheck, getAllExtendedDefObjects, getBaseDefObject, getContainerDef, getContainerName, getDefinitionState, getDefScope, getExtendedDefObjects, getMdsKey, getMdsReference, getMdsReferenceName, getPropertySetName, getPropertySetNames, getRootBaseDefObject, isBaseDefFor, isComponentDefinition, isDynamicDefinitionObject, isSubtypeOf, isSuppressUpdateCheck, loadCustomProperties, loadProperties, loadPropertiesInMap, loadPropertySetNames, loadSchemaProperties, objectFound, objectInserted, resolveReferences, setBaseDefObject, setBaseDefObject, setDefScope, setMdsKey, setMdsReference, setName, setObjectResolved, setParent, setPropertySetName, staticLoadCustomProperties, staticLoadSchemaProperties, suppressUpdateCheckgetFullName, getName, getParent, getProperties, getPropertiesAsStrings, getPropertiesMap, getProperty, getProperty, getPropertyExpressionDef, getPropertyExpressionsMap, getPropertyExprEval, getRawPropertyValue, getResourcesFromBundle, getStringFromMessageBundle, hasProperty, refreshProperty, removeProperty, requiresNamePrefixedResId, resolveObjectProperty, setPropertiesMap, setPropertiesMap2, setProperty, setPropertyExpressionMap, setRawPropertyValueclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetName, getProperty, getResourceBundleDefaddListBindingDef, getFullName, lookupListBindingDef, registerDefObject, saveXMLContents, setDefScope, writeXMLContentsaddListBindingDef, addRowOperation, addViewAccessorDef, findAttributeDef, findRowOperationDefinition, findViewAccessorDef, getDefManager, getDefScope, getRowOperationDefinitions, getScriptRowOperationDefinitions, lookupAttributeDef, removeRowOperationgetFullName, isDirty, isNew, saveXMLContents, setDirty, writeXMLContentsgetProperty, removeProperty, setPropertygetFullName, getName, getResourceBundleDefgetNamegetDefManager, getDefScope, getFullNamegetFullNamepublic PDefViewObject()
public PDefViewObject(ViewDefImpl viewDef)
public java.lang.String getDefFullName()
getDefFullName in interface CustomizableViewDefpublic static java.lang.String[] getAllDefNames()
public static PDefViewObject findDefObjectNoSub(java.lang.String persDefName)
public static PDefViewObject findDefObject(java.lang.String persDefName)
public static PDefViewObject findUserDefObject(java.lang.String persDefName)
public void setEditable(boolean b)
setEditable in interface PDefViewObjectInterfacesetEditable in interface CustomizableMetaObjectsetEditable in class PDefRowpublic void setFullName(java.lang.String fullName,
boolean setStaticDef)
setFullName in interface PDefViewObjectInterfacesetFullName in class PersDefBasepublic DefinitionObject findStaticDefinitionObject(java.lang.String fullName)
findStaticDefinitionObject in interface PersonalizableDeffindStaticDefinitionObject in class PersDefBasepublic java.lang.String getUserDefinedQuery()
public void setUserDefinedQuery(java.lang.String userDefinedQuery)
public int getSelectClauseFlags()
public void setSelectClauseFlags(int flags)
public int getFromClauseFlags()
public void setFromClauseFlags(int flags)
public int getWhereClauseFlags()
public void setWhereClauseFlags(int flags)
public java.lang.String getSelectClause()
public void setSelectClause(java.lang.String selectClause)
public java.lang.String getWhereClause()
public void setWhereClause(java.lang.String whereClause)
public java.lang.String getOrderByClause()
public void setOrderByClause(java.lang.String orderByClause)
public java.lang.String getRowMatch()
public void setRowMatch(java.lang.String rowMatch)
public java.lang.String getSortBy()
public void setSortBy(java.lang.String sortBy)
public java.lang.String getQueryHint()
public void setQueryHint(java.lang.String queryHint)
public int getMaxFetchSize()
public void setMaxFetchSize(int maxFetchSize)
public void setMaxFetchSizeString(java.lang.String strVal)
public short getFetchSize()
public void setFetchSize(short fetchSize)
public byte getFetchMode()
public void setFetchMode(byte fetchMode)
public int getRangeSize()
public void setRangeSize(int rangeSize)
public byte getAccessMode()
public void setAccessMode(byte accessMode)
public int getRangePagingCacheFactor()
public void setRangePagingCacheFactor(int rangePagingCacheFactor)
public int getQueryMode()
public void setQueryMode(int queryMode)
public int getNestedSelectForFullSqlValue()
public boolean isNestedSelectForFullSql()
public void setNestedSelectForFullSql(boolean b)
public int getViewLinkAccessorRetainedValue()
public boolean isViewLinkAccessorRetained()
public void setViewLinkAccessorRetained(boolean b)
@Concealed public boolean isNamedViewLinkAccessorRetained(java.lang.String accName)
This api name may change in future builds, so if any consuming layer uses this method, it will require a code-change and recompile.
Used to return retained flag for a specific viewlink accessor in this ViewDef. If the accessor is not overridden, this method returns false.
@Concealed
public void setNamedViewLinkAccessorRetained(java.lang.String accName,
boolean b)
This api name may change in future builds, so if any consuming layer uses this method, it will require a code-change and recompile.
Used to set retained flag for a specific viewlink accessor in this ViewDef. If the accessor is not overridden, this method does nothing.
public ViewAttributeDefImpl addViewLinkAccessor(java.lang.String accName, java.lang.String vlName, java.lang.Class javaType, AssociationDefBase.IntersectExpandEnd mtomEnd)
public ViewAttributeDefImpl addViewLinkAccessor(java.lang.String accName, java.lang.String vlName, java.lang.Class javaType)
addViewLinkAccessor in interface CustomizableViewDefpublic void removeAttribute(java.lang.String attrName)
removeAttribute in interface CustomizableViewDefremoveAttribute in class PDefRowpublic java.util.List<ViewLinkDefImpl> getViewLinkDefs()
public ViewLinkDefImpl lookupViewLinkDef(java.lang.String name)
public ViewLinkDefImpl findViewLinkDef(java.lang.String name)
public java.lang.String getViewLinkPackage()
public void addViewLinkDef(ViewLinkDefImpl vlDef)
public void removeViewLinkDef(java.lang.String name)
public ViewAttributeDefImpl addViewAttribute(java.lang.String attrName, java.lang.String expression, java.lang.Class javaType)
public AttributeDefImpl addCustomEntityAttribute(java.lang.String attrName, java.lang.String entityUsageName, java.lang.String entityAttrName, boolean isPersistent)
addCustomEntityAttribute in interface CustomizableViewDefpublic ViewAttributeDefImpl addEntityAttribute(java.lang.String attrName, java.lang.String entityUsageName, java.lang.String entityAttrName, boolean isPersistent)
If isPersistent is true, the view object is
to draw the data from its query statement. The underlying entity
attribute may or may not be persistent. In this case, the
attribute must have a valid database table column or expression
in the view object's query statement. If there is a mismatch
between the query statement and the VO attribute definition list,
you may see AttributeLoadException or
DataCreationException.
If the view attribute is marked not persistent and if the underlying
entity attribute is transient, the view attribute will be of the
ATTR_ENTITY_DERIVED kind.
attrName - name of the new attribute.entityUsageName - name of the entity reference (usage) in which
the entity attribute named by entityAttrName is to be found.entityAttrName - name of the entity attribute.isPersistent - a boolean flag indicating whether the view attribute is
persistent or not. See above for explanation.NoDefException - if the entity attribute is not found.public ViewAttributeDefImpl findViewAttrDefByBaseAttr(AttributeDefImpl attr)
public VariableValueManager ensureVariableManager()
VariableManagerOwnerBaseensureVariableManager in interface VariableManagerOwnerBaseensureVariableManager in class PDefComponentObjectBasepublic ViewLinkDefImpl findViewLinkDefImpl(ViewAttributeDefImpl attrDef)
protected void processAccessors()
processAccessors in class PDefRowpublic void applyPersonalization(int mode,
java.lang.Object instance)
applyPersonalization in interface PDefViewObjectInterfaceapplyPersonalization in interface PersonalizableDefapplyPersonalization in class PersDefBasepublic void applyPersonalization(java.lang.Object instance,
boolean vcAppend)
public void writeChildren(DefWriter jos)
PersistentDefinitionwriteChildren in interface PersistentDefinitionwriteChildren in class PDefRowjos - the Output storage for persistencepublic void writeContents(DefWriter jos)
PersistentDefinitionwriteContents in interface PersistentDefinitionwriteContents in class PDefComponentObjectBasejos - the Output storage for persistencepublic void loadXMLContents(DefElement xmlElement, java.lang.String fullName)
loadXMLContents in class PDefComponentObjectBasepublic PDefCategory personalizeCategory(java.lang.String categoryName)
public void removePersonalizedCategory(java.lang.String categoryName)
public void loadXMLAttrDefContents(DefElement elem)
public void loadXMLViewLinkDefContents(DefElement elem)
public void loadXMLAccessorDefContents(DefElement elem)
public void loadXMLViewCriteriaContents(DefElement elem)
public void loadXMLDeclarativeWhereClause(DefElement elem)
public void loadXMLSortCriteria(DefElement elem)
public void loadXMLRowFinders(DefElement xmlElement)
public ViewCriteria createViewCriteria()
createViewCriteria in interface CustomizableViewDefpublic ViewCriteriaManager getViewCriteriaManager()
getViewCriteriaManager in interface CustomizableViewDefpublic ViewCriteria getViewCriteria(java.lang.String name)
ViewCriteriaManagergetViewCriteria in interface PDefViewObjectInterfacegetViewCriteria in interface ViewCriteriaManagername - view criteria namepublic ViewCriteria[] getAllViewCriterias()
ViewCriteriaManagergetAllViewCriterias in interface PDefViewObjectInterfacegetAllViewCriterias in interface ViewCriteriaManagerpublic java.lang.String[] getAllViewCriteriaNames()
ViewCriteriaManagergetAllViewCriteriaNames in interface ViewCriteriaManagerpublic java.lang.String[] getAvailableViewCriteriaNames()
ViewCriteriaManagergetAvailableViewCriteriaNames in interface ViewCriteriaManagerpublic void putViewCriteria(java.lang.String name,
ViewCriteria criteria)
ViewCriteriaManagerputViewCriteria in interface PDefViewObjectInterfaceputViewCriteria in interface ViewCriteriaManagername - Name of the view criteriacriteria - view criteria referencepublic void clearViewCriterias()
ViewCriteriaManagerclearViewCriterias in interface ViewCriteriaManagerpublic ViewCriteria removeViewCriteria(java.lang.String name)
ViewCriteriaManagerremoveApplyViewCriteriaName API.removeViewCriteria in interface PDefViewObjectInterfaceremoveViewCriteria in interface ViewCriteriaManagername - The view criteria name that needs to be removedpublic boolean removeApplyViewCriteriaName(java.lang.String name)
ViewCriteriaManagerremoveApplyViewCriteriaName in interface ViewCriteriaManagername - The view criteria name that need to be unapplied.true if the view criteria was found to be applied,
false otherwise.public void setCurrentUnionViewCriteriaName(java.lang.String vcName)
setCurrentUnionViewCriteriaName in interface ViewCriteriaManagerpublic ViewCriteria getViewCriteria()
ViewCriteriaManagerViewCriteriaManager.DFLT_VIEW_CRITERIA_NAME then it is considered to
be the default. The default name is also assigned when a view criteria with
a null name is applied.getViewCriteria in interface ViewCriteriaManagerpublic void applyViewCriteria(ViewCriteria criteria)
ViewCriteriaManagerapplyViewCriteria in interface ViewCriteriaManagercriteria - the criteria to be applied.public void applyViewCriteria(ViewCriteria criteria, boolean bAppend)
ViewCriteriaManager
bAppend is true the passed view criteria will be applied in addition
to the existing ones. If bAppend is false this method is
identical to ViewCriteriaManager.applyViewCriteria(ViewCriteria)applyViewCriteria in interface ViewCriteriaManagercriteria - the criteria to be appliedbAppend - pass true if the view criteria needs to be appended to
the applied list otherwise the list is cleared out.public void setApplyViewCriteriaName(java.lang.String name)
ViewCriteriaManagersetApplyViewCriteriaName in interface ViewCriteriaManagername - the criteria to be applied.public void setApplyViewCriteriaName(java.lang.String name,
boolean bAppend)
ViewCriteriaManager
bAppend is true the passed view criteria will be applied in addition
to the existing ones. If bAppend is false this method is
identical to ViewCriteriaManager.setApplyViewCriteriaName(String)
If name is null there will be no applied view criteria
(identical to setApplyViewCriteriaName(null);
bAppend will be ignored).
setApplyViewCriteriaName in interface ViewCriteriaManagername - the criteria to be appliedbAppend - pass true if the view criteria needs to be appended to
the applied list otherwise the list is cleared out.public void setApplyViewCriteriaNames(java.lang.String[] names)
ViewCriteriaManagersetApplyViewCriteriaNames in interface ViewCriteriaManagernames - the criterias to be applied.public ViewCriteria[] getApplyViewCriterias(int criteriaMode)
ViewCriteriaManagerViewCriteria.CRITERIA_MODE_CACHE and
ViewCriteria.CRITERIA_MODE_QUERY for more information. View criterias
that have both modes turned on are also qualified.getApplyViewCriterias in interface ViewCriteriaManagercriteriaMode - the mode to match the criteria.public java.lang.String[] getApplyViewCriteriaNames()
getApplyViewCriteriaNames in interface ViewCriteriaManagerpublic java.lang.String getViewCriteriaClause(boolean forQuery)
ViewCriteriaManagergetViewCriteriaClause in interface ViewCriteriaManagerforQuery - true if the clause is needed for a database
query, false for in-memory filtering.public CriteriaClauses buildViewCriteriaClauses(ViewCriteria vc)
ViewCriteriaManagerViewCriteriaManager.getViewCriteriaClause(boolean)buildViewCriteriaClauses in interface ViewCriteriaManagervc - the view criteria whose criteria needs to be generatedpublic void criteriaChanged(ViewCriteria vc)
ViewCriteriaManagercriteriaChanged in interface ViewCriteriaManagervc - the view criteria that has changedpublic void resetCriteria(ViewCriteria vc)
ViewCriteriaManagerresetCriteria in interface ViewCriteriaManagervc - View Criteria to be resetpublic void setReqdVC(ViewCriteria vc)
public ViewCriteria getReqdVC()
public void addRowFinder(RowFinder finder)
public RowFinder removeRowFinder(java.lang.String name)
public RowFinder lookupRowFinder(java.lang.String name)
public RowFinder findRowFinder(java.lang.String name)
public java.util.List<RowFinder> getRowFinderList()
public boolean isRemoveDBSortCriteria()
public void setRemoveDBSortCriteria(boolean bRemove)
public SortCriteria[] getDBSortCriteria()
getDBSortCriteria in interface CustomizableViewDefpublic void setDBSortCriteria(SortCriteria[] sortCrit)
setDBSortCriteria in interface CustomizableViewDefpublic CategoryManager ensureCategoryManager()
ensureCategoryManager in interface CategoryManagerOwnerpublic CategoryManager getCategoryManager()
getCategoryManager in interface CategoryManagerOwnernull if one was not yet initialized.public DifferDetails beginDiffObjects(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
DiffMergeableDiffMergeable's. 'this' object is the
changed definition.
beginDiffObjects in interface DiffMergeablebeginDiffObjects in class PDefComponentObjectBasedocDef - the document-level definitionorgDef - the original definition. It could be
null if the definition did not exist originallydifDetails - the DifferDetails that accumulate
the details of diff from the document-level (top-level) defDifferDetails that has all the details
of diffpublic DifferDetails diffContents(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
DiffMergeableorgDef. Then, help
methods on DifferBase can be used to diff the attr values
and accumulate the details of diff in difDetails.
Here is example code snippet:
private static final String DIFF_STRING_ELEMS[] =
{
"MyStringVal1",
"MyStringVal2"
};
private static final String DIFF_INT_ELEMS[] =
{
"MyIntVal",
}
public DifferDetails diffContents(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
{
<Your-def-class> orgDefImpl = (<Your-def-class>) orgDef;
final String editStringValues[] =
{
this.getMyStringVal1(),
this.getMyStringVal2()
};
String orgStringValues[] = null;
if (orgDef != null)
{
String orgV[] =
{
orgDefImpl.getMyStringVal1(),
orgDefImpl.getMyStringVal2()
};
orgStringValues = orgV;
}
final int editIntValues[] =
{
this.getMyIntVal(),
};
int orgIntValues[] = null;
if (orgDef != null)
{
int orgV[] =
{
orgDefImpl.getMyIntVal()
};
orgIntValues = orgV;
}
difDetails = DifferBase.diffStringArray(this, DIFF_STRING_ELEMS, editStringValues, orgStringValues, difDetails);
difDetails = DifferBase.diffIntArray(this, DIFF_INT_ELEMS, editIntValues, orgIntValues, difDetails);
return difDetails;
}
diffContents in interface DiffMergeabledocDef - the document-level definitionorgDef - the original definition. It could be
null if the definition did not exist originallydifDetails - the DifferDetails that accumulate
the details of diff from the document-level (top-level) defDifferDetails that has all the details
of diffpublic DifferDetails diffChildren(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
DiffMergeabledifDetails and
return it at the end.
For example, if this def has Child1 and Child2, its implementation should look something like:
public DifferDetails diffChildren(DiffMergeable docDef, DiffMergeable orgDef, DifferDetails difDetails)
{
difDetails = diffChildrenChild1(docDef, orgDef, difDetails);
difDetails = diffChildrenChild1(docDef, orgDef, difDetails);
return difDetails;
}
where diffChildrenChild1() uses DifferChildren's
helper method diffChildrenList to diff the child defs.
diffChildren in interface DiffMergeablediffChildren in class PDefRowdocDef - the document-level definitionorgDef - the original definition. It could be
null if the definition did not exist originallydifDetails - the DifferDetails that accumulate
the details of diff from the document-level (top-level) defDifferDetails that has all the details
of diffpublic void applyDiffContents(DifferDetails dif, DiffResolver resolver)
DiffMergeable
orgDef - original def object (from the branch point)
editDef - def object into which changes are to be merge
toMergeDef - def object to be merged (source of changes)
For sandbox refresh operation, orgDef comes from the branch
point, editDef from the sandbox, toMergeDef from the
mainline of the repos. With these three defs, we first diff editDef
against orgDef, producing editDifDetails.
Similarly, toMergeDef is diffed against orgDef,
producing toMergeDifDetails. The diff engine then
walks through these two sets of diffs and identifies conflicts.
After the conflicts are all resolved, we apply appropriate
changes to editDef.
applyDiffContents is called to apply changes to
scalar values. dif contains the changed values to
be applied to 'this' object. Use sample code like
the following:
public void applyDiffContents(DifferDetails dif, DiffResolver resolver)
{
DifferChangeMap detailMap = dif.getDetailMap();
Object[] updValues;
// DIFF_STRING_ELEMS from the above example code
for (int j = 0; j < DIFF_STRING_ELEMS.length; j++)
{
if ((updValues = (Object[]) detailMap.getValue(DIFF_STRING_ELEMS[j])) != null)
{
switch(j)
{
case 0:
setMyStringVal1((String) updValues[0]);
break;
case 1:
setMyStringVal2((String) updValues[0]);
break;
}
}
}
for (int j = 0; j < DIFF_INT_ELEMS.length; j++)
{
if ((updValues = (Object[]) detailMap.getValue(DIFF_INT_ELEMS[j])) != null)
{
switch(j)
{
case 0:
setMyIntVal((Integer) updValues[0]);
break;
}
}
}
}
Notice that the index specified in the case
statement is the array index of the attr in the String, int,
or boolean array.
applyDiffContents in interface DiffMergeabledif - changes to be applied to 'this' defresolver - the diff resolver used in diff/merge operationpublic void applyDiffChildren(DifferDetails dif, DiffResolver resolver)
DiffMergeabledif contains the
changes to be applied to the children. For each child def, this method
should first retrieve the diff details for the child, which is of type
DifferChildren. Then, it should call
DifferChildren.applyDiffChanges(oracle.jbo.mom.DiffChildrenMerge, oracle.jbo.mom.DiffResolver) to perform
the change operation.
applyChanges() requires a
DiffChildrenMerge object, which has the insert,
update, and remove methods. 'this' def object must
provide implmementation of these operations.
Here is a sample:
public void applyDiffChildren(DifferDetails dif, DiffResolver resolver)
{
DifferChangeMap detailMap = dif.getDetailMap();
if (detailMap != null)
{
DifferChildren difChild1 = (DifferChildren) detailMap.getValue(<XML-tag-for-Child1>);
if (difVCs != null)
{
DiffChildrenMerge dm = new DiffChildrenMerge()
{
public void insertChild(Object id, Object value)
{
.. perform insert op for Child1 ..
}
public void updateChild(Object id, Object value, Object oldValue)
{
.. perform update op for Child1 ..
}
public void removeChild(Object id)
{
.. perform remove op for Child1 ..
}
};
difChild1.applyDiffChanges(dm, resolver);
}
// Similarly for Child2
}
}
applyDiffChildren in interface DiffMergeableapplyDiffChildren in class PDefRow@Concealed public void setStaticDefPublic(java.lang.String viewDefName)
setStaticDefPublic in interface PDefViewObjectInterfacepublic ViewCriteria getPersonalizedViewCriteria(java.lang.String name)
getPersonalizedViewCriteria in interface PDefViewObjectInterfacename - - name of VC to look forpublic void flushChanges()
flushChanges in interface PDefViewObjectInterfacepublic boolean setHint(java.lang.String attrName,
java.lang.String hintName,
java.lang.Object hintValue)
setHint in interface PDefViewObjectLayoutInterfaceattrName - - Name of attribute to be personalizedhintName - - Hint namehintValue - - hint valuepublic java.lang.Object getHint(java.lang.String attrName,
java.lang.String hintName)
getHint in interface PDefViewObjectLayoutInterfaceattrName - - name of the attribute whose hint needs to be retrievedhintName - - name of the hintpublic void saveLayoutChanges()
saveLayoutChanges in interface PDefViewObjectLayoutInterfacepublic oracle.jbo.server.InheritPersonalization getInheritPersonalizationValue()
public void setInheritPersonalizationStrValue(java.lang.String s)
public boolean isCustIntoStaticDef()
public void setCustIntoStaticDef(boolean b)
public PersistableDefObject loadDefObject(boolean forTip, boolean forEditOrig, boolean resolveDef)
loadDefObject in class PersistableDefObjectprotected int getLoadSubclassLevel()
public java.lang.String getEditVersionsAsString()
getEditVersionsAsString in class PersistableDefObjectpublic int getMajorVersion()
getMajorVersion in class PersistableDefObjectpublic int getMinorVersion()
getMinorVersion in class PersistableDefObjectprotected void loadDefVersions(DefElement xmlElement)
protected java.lang.String getNoPersDefObjectName(java.lang.String metaObjectName)
public void applyPersonalizationToBaseDef()
public void writeXMLContents()
writeXMLContents in class PersistableDefObjectpublic void saveXMLContents()
saveXMLContents in class PersDefBaseprotected java.lang.Object resolvePropertyRaw(java.lang.String property,
LocaleContext locale)
resolvePropertyRaw in class NamedObjectImplpublic java.util.HashMap getAllProperties(java.util.HashMap map,
LocaleContext locale)
getAllProperties in class NamedObjectImplprotected java.util.HashMap adjustPropertyMapForWrite()
adjustPropertyMapForWrite in class PersistableDefObjectpublic java.lang.String getDefXMLNameSpace()
getDefXMLNameSpace in interface PersistentDefinitiongetDefXMLNameSpace in class PersistableDefObject