Class MaintenanceDocumentBase
- All Implemented Interfaces:
Serializable,Cloneable,org.eclipse.persistence.descriptors.changetracking.ChangeTracker,org.eclipse.persistence.internal.descriptors.PersistenceEntity,org.eclipse.persistence.internal.descriptors.PersistenceObject,org.eclipse.persistence.internal.weaving.PersistenceWeaved,org.eclipse.persistence.internal.weaving.PersistenceWeavedChangeTracking,org.eclipse.persistence.internal.weaving.PersistenceWeavedFetchGroups,org.eclipse.persistence.internal.weaving.PersistenceWeavedRest,org.eclipse.persistence.queries.FetchGroupTracker,org.kuali.rice.core.api.mo.common.GloballyUnique,org.kuali.rice.core.api.mo.common.Versioned,Document,SessionDocument,MaintenanceDocument
Maintainable that is also used for various callbacks
The maintenance xml structure will be: <maintainableDocumentContents maintainableImplClass="className">
<oldMaintainableObject>... </oldMaintainableObject> <newMaintainableObject>... </newMaintainableObject>
</maintainableDocumentContents> Maintenance Document
- Author:
- Kuali Rice Team (rice.collab@kuali.org)
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.kuali.rice.krad.bo.DocumentAttachmentprotected Stringprotected Stringprotected Stringprotected List<org.kuali.rice.krad.bo.MultiDocumentAttachment> protected booleanprotected booleanstatic final Stringstatic final Stringstatic final Stringprotected Maintainablestatic final Stringstatic final Stringprotected Maintainableprotected static final intprotected StringFields inherited from class org.kuali.rice.krad.document.DocumentBase
adHocRoutePersons, adHocRouteWorkgroups, documentHeader, documentNumber, notes, pessimisticLocksFields inherited from class org.kuali.rice.krad.bo.PersistableBusinessObjectBaseAdapter
extension, newCollectionRecordFields inherited from class org.kuali.rice.krad.bo.DataObjectBase
_persistence_cacheKey, _persistence_fetchGroup, _persistence_href, _persistence_links, _persistence_listener, _persistence_primaryKey, _persistence_relationshipInfo, _persistence_session, _persistence_shouldRefreshFetchGroup, objectId, versionNumber -
Constructor Summary
ConstructorsConstructorDescriptionMaintenanceDocumentBase(String documentTypeName) Initializies the maintainables. -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanprotected booleancheckDeletePermission(Object dataObject) protected voidcheckForLockingDocument(boolean throwExceptionIfLocked) protected booleanvoidDeprecated.voidDeprecated.voiddoRouteStatusChange(org.kuali.rice.kew.framework.postprocessor.DocumentRouteStatusChange statusChangeEvent) Handle the doRouteStatusChange event from the post processorbooleanThis method returns whether or not this document can be copied.org.kuali.rice.krad.bo.DocumentAttachmentList<org.kuali.rice.krad.bo.MultiDocumentAttachment> protected org.kuali.rice.krad.service.BusinessObjectSerializerServicegetCustomLockDescriptor(org.kuali.rice.kim.api.identity.Person user) Returns the custom lock descriptor generated by the new maintainable object, if defined.protected ObjectgetDataObjectFromXML(String maintainableTagName) Get data object from XMLReturn the data object that this MaintenanceDocument is maintainingprotected DocumentDictionaryServiceIf workflowProperties have been defined within the data dictionary for this document, then it returns an instance ofBusinessObjectPropertySerializibilityEvaluatorinitialized with the properties.protected DocumentServiceBuilds out the document title for maintenance documentsprotected StringgetMaintenanceAction(Document xmlDocument, String oldOrNewElementName) This method is a lame containment of ugly DOM walking code.protected MaintenanceDocumentServiceGet the new maintainable objectorg.kuali.rice.core.api.mo.common.GloballyUniqueThe Note target for maintenance documents is determined by whether or not the underlyingMaintainablesupports business object notes or not.org.kuali.rice.krad.util.NoteTypeTheNoteTypefor maintenance documents is determined by whether or not the underlyingMaintainablesupports business object notes or not.Get the old maintainable objectprotected org.kuali.rice.kew.api.document.WorkflowDocumentServiceThe default implementation returns no additional ids for the workflow engine to lock prior to processing.Get the XML representation of the maintenance documentbooleanbooleanbooleanCheck if the topic field should be displayed in the notes sectionbooleanisEdit()Check if maintenance document is editing an existing Business Objectfinal booleanCheck if fields are cleared on copybooleanisNew()Check if maintenance document is creating a new Business ObjectbooleanCheck if maintenance document is creating a new Business Object out of an existing Business ObjectbooleanCheck if maintenance document has old maintenance dataprotected booleanisOldMaintainableInDocument(Document xmlDocument) Check if oldMaintainable is specified in the XML of the maintenance documentbooleanThis method to check whether the document class implements SessionDocument TODO: move to KNS maintenance document basevoidDeprecated.voidDeprecated.voidDeprecated.voidDeprecated.voidDeprecated.voidDeprecated.voidPopulates the old and new maintainables from the xml document contents string.voidPopulates the xml document contents from the maintainables.voidpostProcessSave(DocumentEvent event) this needs to happen after the document itself is saved, to preserve consistency of the ver_nbr and in the case of initial save, because this can't be saved until the document is saved initiallyvoidThis method provides a hook that will be called before the document is saved.voidprepareForSave(DocumentEvent event) Override this method with implementation specific prepareForSave logicvoidThis method provides a hook that will be called after a document is retrieved, but before it is returned from the DocumentService.protected voidDeprecated.protected voidDeprecated.Overridden to avoid serializing the xml twice, because of the xmlDocumentContents property of this objectvoidsetAttachment(org.kuali.rice.krad.bo.DocumentAttachment attachment) voidsetAttachmentCollectionName(String attachmentCollectionName) voidsetAttachmentListPropertyName(String attachmentListPropertyName) voidsetAttachmentPropertyName(String attachmentPropertyName) voidsetAttachments(List<org.kuali.rice.krad.bo.MultiDocumentAttachment> attachments) voidsetDisplayTopicFieldInNotes(boolean displayTopicFieldInNotes) Set the display topic field in notes flagvoidsetDocumentNumber(String documentNumber) setter for document header idfinal voidsetFieldsClearedOnCopy(boolean fieldsClearedOnCopy) Set the keys cleared on copy flagvoidsetNewMaintainableObject(Maintainable newMaintainableObject) Set the new maintainable objectvoidsetOldMaintainableObject(Maintainable oldMaintainableObject) Set the old maintainable objectvoidsetXmlDocumentContents(String xmlDocumentContents) Sets the xml contents of the maintenance documentbooleanReturns whether or not the new maintainable object supports custom lock descriptors.voidExplicitly NOT calling super here.Methods inherited from class org.kuali.rice.krad.document.DocumentBase
addCopyErrorDocumentNote, addNote, addPessimisticLock, afterActionTaken, afterWorkflowEngineProcess, beforeWorkflowEngineProcess, createPropertySerializabilityEvaluator, doActionTaken, doRouteLevelChange, generateSaveEvents, getActionRequests, getAdHocRouteNodeName, getAdHocRoutePersons, getAdHocRouteWorkgroups, getAttachmentService, getBasePathToDocumentDuringSerialization, getDocumentHeader, getDocumentNumber, getLockClearingMethodNames, getLockClearningMethodNames, getNonLockingActionTakenCodes, getNote, getNotes, getNoteService, getPessimisticLocks, getSuperUserAnnotation, getXmlForRouteReport, logErrors, populateDocumentForRouting, postLoad, postRemove, prePersist, refreshPessimisticLocks, refreshReferenceObject, removeNote, setAdHocRoutePersons, setAdHocRouteWorkgroups, setDocumentHeader, setNewDocumentHeader, setNotes, setPessimisticLocks, setSuperUserAnnotation, toCopy, wrapDocumentWithMetadataForXmlSerializationMethods inherited from class org.kuali.rice.krad.bo.PersistableBusinessObjectBaseAdapter
_persistence_get, _persistence_new, _persistence_post_clone, _persistence_set, buildListOfDeletionAwareLists, getExtension, getLegacyDataAdapter, isNewCollectionRecord, linkEditableUserFields, refresh, refreshNonUpdateableReferences, setExtension, setNewCollectionRecordMethods inherited from class org.kuali.rice.krad.bo.DataObjectBase
_persistence_checkFetched, _persistence_checkFetchedForSet, _persistence_get_objectId, _persistence_get_versionNumber, _persistence_getCacheKey, _persistence_getFetchGroup, _persistence_getHref, _persistence_getId, _persistence_getLinks, _persistence_getPropertyChangeListener, _persistence_getRelationships, _persistence_getSession, _persistence_isAttributeFetched, _persistence_propertyChange, _persistence_resetFetchGroup, _persistence_set_objectId, _persistence_set_versionNumber, _persistence_setCacheKey, _persistence_setFetchGroup, _persistence_setHref, _persistence_setId, _persistence_setLinks, _persistence_setPropertyChangeListener, _persistence_setRelationships, _persistence_setSession, _persistence_setShouldRefreshFetchGroup, _persistence_shallow_clone, _persistence_shouldRefreshFetchGroup, generateAndSetObjectIdIfNeeded, getExtensionObject, getObjectId, getVersionNumber, preUpdate, setExtensionObject, setObjectId, setVersionNumber, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.kuali.rice.krad.document.Document
addNote, addPessimisticLock, afterActionTaken, afterWorkflowEngineProcess, beforeWorkflowEngineProcess, doActionTaken, doRouteLevelChange, generateSaveEvents, getActionRequests, getAdHocRouteNodeName, getAdHocRoutePersons, getAdHocRouteWorkgroups, getBasePathToDocumentDuringSerialization, getDocumentHeader, getDocumentNumber, getLockClearingMethodNames, getLockClearningMethodNames, getNote, getNotes, getPessimisticLocks, getSuperUserAnnotation, getXmlForRouteReport, populateDocumentForRouting, refreshPessimisticLocks, removeNote, setAdHocRoutePersons, setAdHocRouteWorkgroups, setDocumentHeader, setNotes, setSuperUserAnnotation, wrapDocumentWithMetadataForXmlSerializationMethods inherited from interface org.kuali.rice.core.api.mo.common.GloballyUnique
getObjectIdMethods inherited from interface org.eclipse.persistence.internal.descriptors.PersistenceObject
_persistence_shallow_clone
-
Field Details
-
SUB_OBJECT_MATERIALIZATION_DEPTH
protected static final int SUB_OBJECT_MATERIALIZATION_DEPTH- See Also:
-
MAINTAINABLE_IMPL_CLASS
- See Also:
-
OLD_MAINTAINABLE_TAG_NAME
- See Also:
-
NEW_MAINTAINABLE_TAG_NAME
- See Also:
-
MAINTENANCE_ACTION_TAG_NAME
- See Also:
-
NOTES_TAG_NAME
- See Also:
-
oldMaintainableObject
-
newMaintainableObject
-
xmlDocumentContents
-
fieldsClearedOnCopy
protected boolean fieldsClearedOnCopy -
displayTopicFieldInNotes
protected boolean displayTopicFieldInNotes -
attachmentPropertyName
-
attachmentListPropertyName
-
attachmentCollectionName
-
attachment
protected org.kuali.rice.krad.bo.DocumentAttachment attachment -
attachments
-
-
Constructor Details
-
MaintenanceDocumentBase
public MaintenanceDocumentBase() -
MaintenanceDocumentBase
Initializies the maintainables.
-
-
Method Details
-
getDocumentTitle
Builds out the document title for maintenance documentsThis will get loaded into the flex doc and passed into workflow. It will be searchable.
- Specified by:
getDocumentTitlein interfaceDocument- Overrides:
getDocumentTitlein classDocumentBase- Returns:
- document title
-
isOldMaintainableInDocument
Check if oldMaintainable is specified in the XML of the maintenance document- Parameters:
xmlDocument- Maintenance document in XML form- Returns:
- true if an oldMainainable exists in the xmlDocument, false otherwise
-
isOldDataObjectInDocument
public boolean isOldDataObjectInDocument()Description copied from interface:MaintenanceDocumentCheck if maintenance document has old maintenance data- Specified by:
isOldDataObjectInDocumentin interfaceMaintenanceDocument- Returns:
- true if this maintenance document has old data, false otherwise
-
isNew
public boolean isNew()Description copied from interface:MaintenanceDocumentCheck if maintenance document is creating a new Business Object- Specified by:
isNewin interfaceMaintenanceDocument- Returns:
- true if this maintenance document is creating a new Business Object, false otherwise
-
isEdit
public boolean isEdit()Description copied from interface:MaintenanceDocumentCheck if maintenance document is editing an existing Business Object- Specified by:
isEditin interfaceMaintenanceDocument- Returns:
- true if this maintenance document is editing an existing Business Object, false otherwise
-
isNewWithExisting
public boolean isNewWithExisting()Description copied from interface:MaintenanceDocumentCheck if maintenance document is creating a new Business Object out of an existing Business ObjectFor example, a new division vendor out of an existing parent vendor.
- Specified by:
isNewWithExistingin interfaceMaintenanceDocument- Returns:
- true if maintenance document is creating a new Business Object out of an existing Business object, false otherwise
-
populateMaintainablesFromXmlDocumentContents
public void populateMaintainablesFromXmlDocumentContents()Description copied from interface:MaintenanceDocumentPopulates the old and new maintainables from the xml document contents string.- Specified by:
populateMaintainablesFromXmlDocumentContentsin interfaceMaintenanceDocument
-
getMaintenanceAction
This method is a lame containment of ugly DOM walking code. This is ONLY necessary because of the version conflicts between Xalan.jar in 2.6.x and 2.7. As soon as we can upgrade to 2.7, this will be switched to using XPath, which is faster and much easier on the eyes.- Parameters:
oldOrNewElementName- - String oldMaintainableObject or newMaintainableObject- Returns:
- the value of the element, or null if none was there
-
getDataObjectFromXML
Get data object from XMLRetrieves substring of document contents from maintainable tag name. Then use xml service to translate xml into a business object.
- Parameters:
maintainableTagName- the xml tag name of the maintainable- Returns:
- data object
-
populateXmlDocumentContentsFromMaintainables
public void populateXmlDocumentContentsFromMaintainables()Populates the xml document contents from the maintainables.- Specified by:
populateXmlDocumentContentsFromMaintainablesin interfaceMaintenanceDocument- See Also:
-
doRouteStatusChange
public void doRouteStatusChange(org.kuali.rice.kew.framework.postprocessor.DocumentRouteStatusChange statusChangeEvent) Description copied from interface:DocumentHandle the doRouteStatusChange event from the post processor- Specified by:
doRouteStatusChangein interfaceDocument- Overrides:
doRouteStatusChangein classDocumentBase- Parameters:
statusChangeEvent- status change event- See Also:
-
getWorkflowEngineDocumentIdsToLock
Description copied from class:DocumentBaseThe default implementation returns no additional ids for the workflow engine to lock prior to processing.- Specified by:
getWorkflowEngineDocumentIdsToLockin interfaceDocument- Overrides:
getWorkflowEngineDocumentIdsToLockin classDocumentBase- Returns:
- additional document IDs to lock prior to processing
-
prepareForSave
public void prepareForSave()Description copied from interface:DocumentThis method provides a hook that will be called before the document is saved. This method is useful for applying document level data to children. For example, if someone changes data at the document level, and that data needs to be propagated to child objects or child lists of objects, you can use this method to update the child object or iterate through the list of child objects and apply the document level data to them. Any document that follows this paradigm will need to make use of this method to apply all of those changes.- Specified by:
prepareForSavein interfaceDocument- Overrides:
prepareForSavein classDocumentBase
-
processAfterRetrieve
public void processAfterRetrieve()Description copied from interface:DocumentThis method provides a hook that will be called after a document is retrieved, but before it is returned from the DocumentService.- Specified by:
processAfterRetrievein interfaceDocument- Overrides:
processAfterRetrievein classDocumentBase
-
getNewMaintainableObject
Description copied from interface:MaintenanceDocumentGet the new maintainable object- Specified by:
getNewMaintainableObjectin interfaceMaintenanceDocument- Returns:
- Maintainable which holds the new maintenance record
-
setNewMaintainableObject
Description copied from interface:MaintenanceDocumentSet the new maintainable object- Specified by:
setNewMaintainableObjectin interfaceMaintenanceDocument- Parameters:
newMaintainableObject- maintainable with the new maintenance record
-
getOldMaintainableObject
Description copied from interface:MaintenanceDocumentGet the old maintainable object- Specified by:
getOldMaintainableObjectin interfaceMaintenanceDocument- Returns:
- Maintainable which holds the old maintenance record
-
setOldMaintainableObject
Description copied from interface:MaintenanceDocumentSet the old maintainable object- Specified by:
setOldMaintainableObjectin interfaceMaintenanceDocument- Parameters:
oldMaintainableObject- maintainable with the old maintenance record
-
setDocumentNumber
Description copied from interface:Documentsetter for document header id- Specified by:
setDocumentNumberin interfaceDocument- Overrides:
setDocumentNumberin classDocumentBase- Parameters:
documentNumber-
-
isFieldsClearedOnCopy
public final boolean isFieldsClearedOnCopy()Description copied from interface:MaintenanceDocumentCheck if fields are cleared on copyFor copy action the primary keys need to be cleared. This flag indicates if the clearing has occurred.
- Specified by:
isFieldsClearedOnCopyin interfaceMaintenanceDocument- Returns:
- true if the primary keys have been cleared already, false otherwise
-
setFieldsClearedOnCopy
public final void setFieldsClearedOnCopy(boolean fieldsClearedOnCopy) Description copied from interface:MaintenanceDocumentSet the keys cleared on copy flag- Specified by:
setFieldsClearedOnCopyin interfaceMaintenanceDocument- Parameters:
fieldsClearedOnCopy-
-
getXmlDocumentContents
Description copied from interface:MaintenanceDocumentGet the XML representation of the maintenance document- Specified by:
getXmlDocumentContentsin interfaceMaintenanceDocument- Returns:
- String containing the xml representation of the maintenance document
-
setXmlDocumentContents
Description copied from interface:MaintenanceDocumentSets the xml contents of the maintenance document- Specified by:
setXmlDocumentContentsin interfaceMaintenanceDocument- Parameters:
xmlDocumentContents- String xml
-
getAllowsCopy
public boolean getAllowsCopy()Description copied from interface:DocumentThis method returns whether or not this document can be copied.- Specified by:
getAllowsCopyin interfaceDocument- Overrides:
getAllowsCopyin classDocumentBase- Returns:
- True if it can be copied, false if not.
-
isDisplayTopicFieldInNotes
public boolean isDisplayTopicFieldInNotes()Description copied from interface:MaintenanceDocumentCheck if the topic field should be displayed in the notes section- Specified by:
isDisplayTopicFieldInNotesin interfaceMaintenanceDocument- Returns:
- true if the topic field should be displayed in the notes section, false otherwise
-
setDisplayTopicFieldInNotes
public void setDisplayTopicFieldInNotes(boolean displayTopicFieldInNotes) Description copied from interface:MaintenanceDocumentSet the display topic field in notes flag- Specified by:
setDisplayTopicFieldInNotesin interfaceMaintenanceDocument
-
serializeDocumentToXml
Overridden to avoid serializing the xml twice, because of the xmlDocumentContents property of this object- Specified by:
serializeDocumentToXmlin interfaceDocument- Overrides:
serializeDocumentToXmlin classDocumentBase- Returns:
- the document serialized to an xml string
-
prepareForSave
Description copied from class:DocumentBaseOverride this method with implementation specific prepareForSave logic- Specified by:
prepareForSavein interfaceDocument- Overrides:
prepareForSavein classDocumentBase- Parameters:
event- - indicates which document event was requested
-
refreshAttachment
Deprecated.The attachment BO is proxied in OJB. For some reason when an attachment does not yet exist, refreshReferenceObject is not returning null and the proxy cannot be materialized. So, this method exists to properly handle the proxied attachment BO. This is a hack and should be removed post JPA migration. -
refreshAttachmentList
Deprecated. -
populateAttachmentForBO
Deprecated. -
populateDocumentAttachment
Deprecated. -
populateAttachmentListForBO
Deprecated. -
populateAttachmentBeforeSave
Deprecated. -
populateDocumentAttachmentList
Deprecated. -
populateBoAttachmentListBeforeSave
Deprecated. -
deleteDocumentAttachment
Deprecated. -
deleteDocumentAttachmentList
Deprecated. -
validateBusinessRules
Explicitly NOT calling super here. This is a complete override of the validation rules behavior.- Specified by:
validateBusinessRulesin interfaceDocument- Overrides:
validateBusinessRulesin classDocumentBase- Parameters:
event- - indicates which document event was requested- See Also:
-
checkForLockingDocument
protected void checkForLockingDocument(boolean throwExceptionIfLocked) -
postProcessSave
this needs to happen after the document itself is saved, to preserve consistency of the ver_nbr and in the case of initial save, because this can't be saved until the document is saved initially- Specified by:
postProcessSavein interfaceDocument- Overrides:
postProcessSavein classDocumentBase- Parameters:
event- - indicates which document event was requested- See Also:
-
getDocumentDataObject
Description copied from interface:MaintenanceDocumentReturn the data object that this MaintenanceDocument is maintaining- Specified by:
getDocumentDataObjectin interfaceMaintenanceDocument- Returns:
- document data object instance
- See Also:
-
getNoteTarget
public org.kuali.rice.core.api.mo.common.GloballyUnique getNoteTarget()The Note target for maintenance documents is determined by whether or not the underlying
Maintainablesupports business object notes or not. This is determined via a call toMaintainable.isNotesEnabled(). The note target is then derived as follows:- If the
Maintainablesupports business object notes, delegate togetDocumentDataObject(). - Otherwise, delegate to the default implementation of
getNoteTarget on the superclass which will effectively return a reference to the
DocumentHeader.
- Specified by:
getNoteTargetin interfaceDocument- Overrides:
getNoteTargetin classDocumentBase- Returns:
- Returns the documentBusinessObject.
- See Also:
- If the
-
getNoteType
public org.kuali.rice.krad.util.NoteType getNoteType()TheNoteTypefor maintenance documents is determined by whether or not the underlyingMaintainablesupports business object notes or not. This is determined via a call toMaintainable.isNotesEnabled(). TheNoteTypeis then derived as follows:- If the
Maintainablesupports business object notes, returnNoteType.BUSINESS_OBJECT. - Otherwise, delegate
to
DocumentBase.getNoteType()
- Specified by:
getNoteTypein interfaceDocument- Overrides:
getNoteTypein classDocumentBase- Returns:
- the note type to use for notes associated with this document
- See Also:
- If the
-
getDocumentPropertySerizabilityEvaluator
Description copied from class:DocumentBaseIf workflowProperties have been defined within the data dictionary for this document, then it returns an instance ofBusinessObjectPropertySerializibilityEvaluatorinitialized with the properties. If none have been defined, then returnsAlwaysTruePropertySerializibilityEvaluator.- Specified by:
getDocumentPropertySerizabilityEvaluatorin interfaceDocument- Overrides:
getDocumentPropertySerizabilityEvaluatorin classDocumentBase- Returns:
- a fully initialized evaluator object, ready to be used for workflow routing
- See Also:
-
getAttachment
public org.kuali.rice.krad.bo.DocumentAttachment getAttachment() -
setAttachment
public void setAttachment(org.kuali.rice.krad.bo.DocumentAttachment attachment) -
getAttachments
-
setAttachments
-
getAttachmentPropertyName
-
isAttachmentPropertyNameRootLevel
public boolean isAttachmentPropertyNameRootLevel() -
isAttachmentListPropertyNameRootLevel
public boolean isAttachmentListPropertyNameRootLevel() -
setAttachmentPropertyName
-
getAttachmentListPropertyName
-
setAttachmentListPropertyName
-
getAttachmentCollectionName
-
setAttachmentCollectionName
-
isSessionDocument
public boolean isSessionDocument()This method to check whether the document class implements SessionDocument TODO: move to KNS maintenance document base- Returns:
- true if the document is a session document
-
useCustomLockDescriptors
public boolean useCustomLockDescriptors()Returns whether or not the new maintainable object supports custom lock descriptors. Will always return false if the new maintainable is null.- Specified by:
useCustomLockDescriptorsin interfaceDocument- Overrides:
useCustomLockDescriptorsin classDocumentBase- Returns:
- True if the document can generate custom lock descriptors, false otherwise.
- See Also:
-
getCustomLockDescriptor
Returns the custom lock descriptor generated by the new maintainable object, if defined. Will throw a PessimisticLockingException if the new maintainable is null.- Specified by:
getCustomLockDescriptorin interfaceDocument- Overrides:
getCustomLockDescriptorin classDocumentBase- Parameters:
user- The user trying to establish the lock.- Returns:
- A String representing the lock descriptor.
- See Also:
-
getDocumentDictionaryService
-
getMaintenanceDocumentService
-
getDocumentService
-
getWorkflowDocumentService
protected org.kuali.rice.kew.api.document.WorkflowDocumentService getWorkflowDocumentService() -
getBusinessObjectSerializerService
protected org.kuali.rice.krad.service.BusinessObjectSerializerService getBusinessObjectSerializerService()- Returns:
- the service used for serializing maintained business / data objects
-
checkAllowsRecordDeletion
protected boolean checkAllowsRecordDeletion() -
checkMaintenanceAction
protected boolean checkMaintenanceAction() -
checkDeletePermission
-