org.kuali.rice.kew.impl.document
Interface WorkflowDocumentProvider

All Known Implementing Classes:
DefaultWorkflowDocumentProvider

public interface WorkflowDocumentProvider

Service provider interface for creation and loading of WorkflowDocuments. NOTE: WorkflowDocumentFactory constructs a single global instance, so implementations of this interface must be thread-safe.

Author:
Kuali Rice Team (rice.collab@kuali.org)

Method Summary
 WorkflowDocument createDocument(String principalId, String documentTypeName, DocumentUpdate documentUpdate, DocumentContentUpdate documentContentUpdate)
          Creates a new workflow document of the given type with the given initiator.
 WorkflowDocument loadDocument(String principalId, String documentId)
          Loads an existing workflow document.
 

Method Detail

createDocument

WorkflowDocument createDocument(String principalId,
                                String documentTypeName,
                                DocumentUpdate documentUpdate,
                                DocumentContentUpdate documentContentUpdate)
Creates a new workflow document of the given type with the given initiator.

Parameters:
principalId - the document initiator
documentTypeName - the document type
documentUpdate - pre-constructed state with which to initialize the document
documentContentUpdate - pre-constructed document content with which to initialize the document
Returns:
a WorkflowDocument object through which to interact with the new workflow document
Throws:
IllegalArgumentException - if principalId is null or blank
IllegalArgumentException - if documentTypeName is null or blank
IllegalDocumentTypeException - if documentTypeName does not represent a valid document type

loadDocument

WorkflowDocument loadDocument(String principalId,
                              String documentId)
Loads an existing workflow document.

Parameters:
principalId - the principal id under which to perform document actions
documentId - the id of the document to load
Returns:
a WorkflowDocument object through which to interact with the loaded workflow document
Throws:
IllegalArgumentException - if principalId is null or blank
IllegalArgumentException - if documentTypeName is null or blank
IllegalDocumentTypeException - if the specified document type is not active
IllegalDocumentTypeException - if the specified document type does not support document creation (in other words, it's a document type that is only used as a parent)
InvalidActionTakenException - if the supplied principal is not allowed to execute this action
See Also:
loadDocument(String, String)


Copyright © 2005-2014 The Kuali Foundation. All Rights Reserved.