public class DocumentServiceImpl extends Object implements DocumentService
Modifier and Type | Field and Description |
---|---|
protected DataDictionaryService |
dataDictionaryService |
protected DateTimeService |
dateTimeService |
protected DocumentAdHocService |
documentAdHocService |
protected DocumentDictionaryService |
documentDictionaryService |
protected DocumentHeaderService |
documentHeaderService |
protected ConfigurationService |
kualiConfigurationService |
protected LegacyDataAdapter |
legacyDataAdapter |
protected NoteService |
noteService |
protected PersonService |
personService |
protected WorkflowDocumentService |
workflowDocumentService |
Constructor and Description |
---|
DocumentServiceImpl() |
Modifier and Type | Method and Description |
---|---|
Document |
acknowledgeDocument(Document document,
String annotation,
List<AdHocRouteRecipient> adHocRecipients)
Acknowledge the document, optionally providing an annotation for the acknowledgement which will show up in the
route log of the document, and optionally providing a list of ad hoc recipients for the document.
|
Document |
approveDocument(Document document,
String annotation,
List<AdHocRouteRecipient> adHocRecipients)
Save and then approve the document, optionally providing an annotation which will show up in the route log
of the document for the action taken, and optionally providing a list of ad hoc recipients for the document.
|
Document |
blanketApproveDocument(Document document,
String annotation,
List<AdHocRouteRecipient> adHocRecipients)
Blanket approve the document which will save the document, approve the document, and stand in for an
approve for all typically generated approval actions requested for this document.
|
Document |
cancelDocument(Document document,
String annotation)
Cancel the document, without saving, optionally providing an annotation for the disapproval which will show
up in the route log of the document for the action taken.
|
protected void |
checkForNulls(Document document) |
Document |
clearDocumentFyi(Document document,
List<AdHocRouteRecipient> adHocRecipients)
Clear the fyi requests for the document, optionally providing a list of ad hoc recipients for the document,
which should be restricted to action requested of fyi as all other actions requested will be discarded.
|
Document |
completeDocument(Document document,
String annotation,
List adHocRecipients)
Save and then complete the document, optionally providing an annotation which will show up in the route log
of the document for the action taken, and optionally providing a list of ad hoc recipients for the document
|
Note |
createNoteFromDocument(Document document,
String text)
This method creates a note from the given document and note text.
|
Document |
disapproveDocument(Document document,
String annotation)
Disapprove the document, without saving, optionally providing an annotation which will show up in the route log
of the document for the action taken.
|
boolean |
documentExists(String documentHeaderId) |
Document |
getByDocumentHeaderId(String documentHeaderId)
This is temporary until workflow 2.0 and reads from a table to get documents whose status has changed to A
(approved - no
outstanding approval actions requested)
|
Document |
getByDocumentHeaderIdSessionless(String documentHeaderId)
get a document based on the document header id which is the primary key for all document types.
|
protected DataDictionaryService |
getDataDictionaryService() |
protected DateTimeService |
getDateTimeService() |
protected DocumentDictionaryService |
getDocumentDictionaryService() |
DocumentHeaderService |
getDocumentHeaderService() |
List<Document> |
getDocumentsByListOfDocumentHeaderIds(Class<? extends Document> documentClass,
List<String> documentHeaderIds)
The default implementation - this retrieves all documents by a list of documentHeader for a given class.
|
protected LegacyDataAdapter |
getLegacyDataAdapter() |
Document |
getNewDocument(Class<? extends Document> documentClass)
Creates a new document by class.
|
Document |
getNewDocument(String documentTypeName)
Creates a new document by document type name.
|
Document |
getNewDocument(String documentTypeName,
String initiatorPrincipalNm)
Creates a new document by document type name.
|
protected NoteService |
getNoteService() |
PersonService |
getPersonService() |
protected WorkflowDocumentService |
getWorkflowDocumentService() |
protected boolean |
isNoteTargetReady(Document document)
Determines if the given document's note target is ready for notes to be
attached and persisted against it.
|
protected void |
loadNotes(Document document)
Loads the Notes for the note target on this Document.
|
void |
prepareWorkflowDocument(Document document)
Sets the title and app document id in the flex document
|
Document |
recallDocument(Document document,
String annotation,
boolean cancel)
Recall the document, optionally providing an annotation for the recall which will show up in the route
log of the document for the action taken.
|
Document |
routeDocument(Document document,
String annotation,
List<AdHocRouteRecipient> adHocRecipients)
Save and then route the document, optionally providing an annotation which will show up in the route log
of the document for the action taken, and optionally providing a list of ad hoc recipients for the document.
|
Document |
saveDocument(Document document)
This is a helper method that performs the same as the
DocumentService.saveDocument(Document, Class) method. |
Document |
saveDocument(Document document,
Class<? extends KualiDocumentEvent> kualiDocumentEventClass)
Saves the passed-in document.
|
boolean |
saveDocumentNotes(Document document)
Saves the notes associated with the given document if they are in a state where they can be
saved.
|
Document |
sendAdHocRequests(Document document,
String annotation,
List<AdHocRouteRecipient> adHocRecipients)
Send ad hoc requests for the given document, optionally providing an annotation which will show up in the route
log of the document.
|
Document |
sendNoteRouteNotification(Document document,
Note note,
Person sender)
Builds an workflow notification request for the note and sends it to note recipient.
|
void |
setDataDictionaryService(DataDictionaryService dataDictionaryService) |
void |
setDateTimeService(DateTimeService dateTimeService) |
void |
setDocumentAdHocService(DocumentAdHocService documentAdHocService) |
void |
setDocumentDictionaryService(DocumentDictionaryService documentDictionaryService) |
void |
setDocumentHeaderService(DocumentHeaderService documentHeaderService) |
void |
setKualiConfigurationService(ConfigurationService kualiConfigurationService) |
void |
setLegacyDataAdapter(LegacyDataAdapter legacyDataAdapter) |
void |
setNoteService(NoteService noteService) |
void |
setWorkflowDocumentService(WorkflowDocumentService workflowDocumentService) |
Document |
superUserApproveDocument(Document document,
String annotation)
Save and then approve the document as a super user, optionally providing an annotation which will show up in the
route log of the document for the action taken.
|
Document |
superUserCancelDocument(Document document,
String annotation)
Save and then cancel the document as a super user, optionally providing an annotation which will show up in the
route log of the document for the action taken.
|
Document |
superUserDisapproveDocument(Document document,
String annotation)
Save and then disapprove the document as a super user, optionally providing an annotation which will show up
in the route log of the document for the action taken.
|
Document |
superUserDisapproveDocumentWithoutSaving(Document document,
String annotation)
Disapprove the document as super user, without saving, optionally providing an annotation which will show
up in the route log of the document for the action taken.
|
Document |
updateDocument(Document document)
This is to allow for updates of document statuses and other related requirements for updates outside of the
initial save and
route
|
Document |
validateAndPersistDocument(Document document,
KualiDocumentEvent event)
Validates and persists a document.
|
protected DateTimeService dateTimeService
protected NoteService noteService
protected WorkflowDocumentService workflowDocumentService
protected LegacyDataAdapter legacyDataAdapter
protected DataDictionaryService dataDictionaryService
protected DocumentDictionaryService documentDictionaryService
protected PersonService personService
protected ConfigurationService kualiConfigurationService
protected DocumentHeaderService documentHeaderService
protected DocumentAdHocService documentAdHocService
public DocumentServiceImpl()
public Document saveDocument(Document document) throws WorkflowException, ValidationException
DocumentService
DocumentService.saveDocument(Document, Class)
method. The
convenience of this method is that the event being used is the standard SaveDocumentEvent.saveDocument
in interface DocumentService
WorkflowException
ValidationException
DocumentService.saveDocument(org.kuali.rice.krad.document.Document)
public Document saveDocument(Document document, Class<? extends KualiDocumentEvent> kualiDocumentEventClass) throws WorkflowException, ValidationException
DocumentService
SaveEvent
interface.
Note that the system does not support passing in Workflow Annotations or AdHoc Route Recipients on a SaveDocument
call. These are sent to workflow on a routeDocument action, or any of the others which actually causes a
routing action to happen in workflow.
Also note that this method will not check the document action flags to check if a save is valid
The calling code should always use the object returned from this method for future operations since a new
object is created when the passed-in document is saved.saveDocument
in interface DocumentService
document
- the document to be savedkualiDocumentEventClass
- the event class to use when saving (class must implement the SaveEvent interface)WorkflowException
ValidationException
public Document routeDocument(Document document, String annotation, List<AdHocRouteRecipient> adHocRecipients) throws ValidationException, WorkflowException
DocumentService
routeDocument
in interface DocumentService
document
- the document to be routedannotation
- the annotation to appear in the route log of the documentadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
ValidationException
DocumentService.routeDocument(org.kuali.rice.krad.document.Document,
java.lang.String, java.util.List)
public Document approveDocument(Document document, String annotation, List<AdHocRouteRecipient> adHocRecipients) throws ValidationException, WorkflowException
DocumentService
approveDocument
in interface DocumentService
document
- the document to be approvedannotation
- the annotation to appear in the route log of the documentadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
ValidationException
DocumentService.approveDocument(org.kuali.rice.krad.document.Document,
java.lang.String,
java.util.List)
public Document superUserApproveDocument(Document document, String annotation) throws WorkflowException
DocumentService
superUserApproveDocument
in interface DocumentService
document
- the document to be super user approvedannotation
- the annotation to appear in the route log of the documentWorkflowException
DocumentService.superUserApproveDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public Document superUserCancelDocument(Document document, String annotation) throws WorkflowException
DocumentService
superUserCancelDocument
in interface DocumentService
document
- the document to be super user canceledannotation
- the annotation to appear in the route log of the documentWorkflowException
DocumentService.superUserCancelDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public Document superUserDisapproveDocument(Document document, String annotation) throws WorkflowException
DocumentService
superUserDisapproveDocument
in interface DocumentService
document
- the document to be super user disapprovedannotation
- the annotation to appear in the route log of the documentWorkflowException
DocumentService.superUserCancelDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public Document superUserDisapproveDocumentWithoutSaving(Document document, String annotation) throws WorkflowException
DocumentService
superUserDisapproveDocumentWithoutSaving
in interface DocumentService
document
- the document to be super user disapprovedannotation
- the annotation to appear in the route log of the documentWorkflowException
DocumentService.superUserCancelDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public Document disapproveDocument(Document document, String annotation) throws Exception
DocumentService
disapproveDocument
in interface DocumentService
document
- the document to be disapprovedannotation
- the annotation to appear in the route log of the documentException
DocumentService.disapproveDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public Document cancelDocument(Document document, String annotation) throws WorkflowException
DocumentService
cancelDocument
in interface DocumentService
document
- the document to be canceledannotation
- the annotation to appear in the route log of the documentWorkflowException
DocumentService.cancelDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public Document recallDocument(Document document, String annotation, boolean cancel) throws WorkflowException
DocumentService
recallDocument
in interface DocumentService
document
- the document to recallannotation
- the annotation to appear in the route log of the documentcancel
- indicates if the document should be canceled as part of the recallWorkflowException
public Document acknowledgeDocument(Document document, String annotation, List<AdHocRouteRecipient> adHocRecipients) throws WorkflowException
DocumentService
acknowledgeDocument
in interface DocumentService
document
- the document to be acknowledgedannotation
- the annotation to appear in the route log of the documentadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
DocumentService.acknowledgeDocument(org.kuali.rice.krad.document.Document,
java.lang.String,
java.util.List)
public Document blanketApproveDocument(Document document, String annotation, List<AdHocRouteRecipient> adHocRecipients) throws ValidationException, WorkflowException
DocumentService
blanketApproveDocument
in interface DocumentService
document
- the document to be blanket approvedannotation
- the annotation to appear in the route log of the documentadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
ValidationException
DocumentService.blanketApproveDocument(org.kuali.rice.krad.document.Document,
java.lang.String,
java.util.List)
public Document clearDocumentFyi(Document document, List<AdHocRouteRecipient> adHocRecipients) throws WorkflowException
DocumentService
clearDocumentFyi
in interface DocumentService
document
- the document to clear of fyi requestsadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
DocumentService.clearDocumentFyi(org.kuali.rice.krad.document.Document,
java.util.List)
public Document completeDocument(Document document, String annotation, List adHocRecipients) throws WorkflowException
DocumentService
completeDocument
in interface DocumentService
document
- the document to completeannotation
- the annotation to appear in the route log of the documentadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
DocumentService.completeDocument(org.kuali.rice.krad.document.Document,
java.lang.String,
java.util.List)
protected void checkForNulls(Document document)
public boolean documentExists(String documentHeaderId)
documentExists
in interface DocumentService
DocumentService.documentExists(java.lang.String)
public Document getNewDocument(Class<? extends Document> documentClass) throws WorkflowException
getNewDocument
in interface DocumentService
WorkflowException
DocumentService.getNewDocument(java.lang.Class)
public Document getNewDocument(String documentTypeName, String initiatorPrincipalNm) throws WorkflowException
getNewDocument
in interface DocumentService
WorkflowException
DocumentService.getNewDocument(String, String)
public Document getNewDocument(String documentTypeName) throws WorkflowException
getNewDocument
in interface DocumentService
WorkflowException
DocumentService.getNewDocument(java.lang.String)
public Document getByDocumentHeaderId(String documentHeaderId) throws WorkflowException
getByDocumentHeaderId
in interface DocumentService
documentHeaderId
- WorkflowException
public Document getByDocumentHeaderIdSessionless(String documentHeaderId) throws WorkflowException
DocumentService
getByDocumentHeaderIdSessionless
in interface DocumentService
WorkflowException
DocumentService.getByDocumentHeaderIdSessionless(java.lang.String)
protected void loadNotes(Document document)
document
- the document for which to load the notespublic List<Document> getDocumentsByListOfDocumentHeaderIds(Class<? extends Document> documentClass, List<String> documentHeaderIds) throws WorkflowException
getDocumentsByListOfDocumentHeaderIds
in interface DocumentService
WorkflowException
DocumentService.getDocumentsByListOfDocumentHeaderIds(java.lang.Class,
java.util.List)
public Document validateAndPersistDocument(Document document, KualiDocumentEvent event) throws ValidationException
validateAndPersistDocument
in interface DocumentService
document
- document to be validated and persistedevent
- indicates which kualiDocumentEvent was requestedValidationException
public void prepareWorkflowDocument(Document document) throws WorkflowException
prepareWorkflowDocument
in interface DocumentService
document
- WorkflowException
public Document updateDocument(Document document)
updateDocument
in interface DocumentService
document
- the document to be updatedpublic Note createNoteFromDocument(Document document, String text)
DocumentService
Document.getNoteType()
. Additionally, it's
remoteObjectId will be set to the object id of the document's note target.createNoteFromDocument
in interface DocumentService
document
- the document from which to use the note type and note target when creating the notetext
- the text value to include in the resulting noteDocumentService.createNoteFromDocument(org.kuali.rice.krad.document.Document,
java.lang.String)
public boolean saveDocumentNotes(Document document)
DocumentService
saveDocumentNotes
in interface DocumentService
document
- the document for which to save notesDocumentService.saveDocumentNotes(org.kuali.rice.krad.document.Document)
public Document sendNoteRouteNotification(Document document, Note note, Person sender) throws WorkflowException
DocumentService
sendNoteRouteNotification
in interface DocumentService
document
- - document that contains the notenote
- - note to notifysender
- - user who is sending the notificationWorkflowException
DocumentService
protected boolean isNoteTargetReady(Document document)
document
- the document on which to check for note target readinesspublic Document sendAdHocRequests(Document document, String annotation, List<AdHocRouteRecipient> adHocRecipients) throws WorkflowException
DocumentService
sendAdHocRequests
in interface DocumentService
document
- the document for which the ad hoc requests are sentannotation
- the annotation to appear in the route log of the documentadHocRecipients
- list of ad hoc recipients to which the document will be routedWorkflowException
DocumentService.sendAdHocRequests(org.kuali.rice.krad.document.Document, String, java.util.List)
public void setDateTimeService(DateTimeService dateTimeService)
protected DateTimeService getDateTimeService()
public void setNoteService(NoteService noteService)
protected NoteService getNoteService()
public void setLegacyDataAdapter(LegacyDataAdapter legacyDataAdapter)
protected LegacyDataAdapter getLegacyDataAdapter()
public void setWorkflowDocumentService(WorkflowDocumentService workflowDocumentService)
protected WorkflowDocumentService getWorkflowDocumentService()
public void setDataDictionaryService(DataDictionaryService dataDictionaryService)
protected DataDictionaryService getDataDictionaryService()
protected DocumentDictionaryService getDocumentDictionaryService()
public void setDocumentDictionaryService(DocumentDictionaryService documentDictionaryService)
public PersonService getPersonService()
public void setKualiConfigurationService(ConfigurationService kualiConfigurationService)
public DocumentHeaderService getDocumentHeaderService()
public void setDocumentHeaderService(DocumentHeaderService documentHeaderService)
public void setDocumentAdHocService(DocumentAdHocService documentAdHocService)
Copyright © 2005–2014 The Kuali Foundation. All rights reserved.