org.silverpeas.attachment.mock
Class SimpleDocumentServiceWrapper

java.lang.Object
  extended by org.silverpeas.attachment.mock.SimpleDocumentServiceWrapper
All Implemented Interfaces:
AttachmentService

@Default
@Service
@Named(value="simpleDocumentService")
public class SimpleDocumentServiceWrapper
extends Object
implements AttachmentService


Field Summary
 
Fields inherited from interface org.silverpeas.attachment.AttachmentService
NO_UPDATE_MODE, UPDATE_DIRECT_MODE, UPDATE_SHORTCUT_MODE, VERSION_MODE
 
Constructor Summary
SimpleDocumentServiceWrapper()
           
SimpleDocumentServiceWrapper(AttachmentService realService)
           
 
Method Summary
 void addXmlForm(SimpleDocumentPK pk, String language, String xmlFormName)
           
 SimpleDocumentPK changeVersionState(SimpleDocumentPK pk, String comment)
          Change the management of versions of the document.
 SimpleDocumentPK cloneDocument(SimpleDocument original, String foreignCloneId)
          Clone the document to a cloned container.
 List<SimpleDocumentPK> copyAllDocuments(WAPrimaryKey resourceSourcePk, WAPrimaryKey targetDestinationPk)
          Copies all the attachment linked to a resource to another one.
 SimpleDocumentPK copyDocument(SimpleDocument original, ForeignPK targetPk)
          Copies the attachment.
 SimpleDocument createAttachment(SimpleDocument document, File content)
          Create file attached to an object who is identified by the foreignId.
 SimpleDocument createAttachment(SimpleDocument document, File content, boolean indexIt)
          Create file attached to an object who is identified by the foreignId.
 SimpleDocument createAttachment(SimpleDocument document, File content, boolean indexIt, boolean invokeCallback)
          Create file attached to an object who is identified by the foreignId.
 SimpleDocument createAttachment(SimpleDocument document, InputStream content)
          Create file attached to an object who is identified by the foreignId.
 SimpleDocument createAttachment(SimpleDocument document, InputStream content, boolean indexIt)
          Create file attached to an object who is identified by the foreignId.
 SimpleDocument createAttachment(SimpleDocument document, InputStream content, boolean indexIt, boolean invokeCallback)
          Create file attached to an object who is identified by the foreignId.
 void createIndex(SimpleDocument document)
           
 void createIndex(SimpleDocument document, Date startOfVisibilityPeriod, Date endOfVisibilityPeriod)
           
 void deleteAllAttachments(String componentInstanceId)
          Deletes all the documents related to the component instance identified by the specified identifier.
 void deleteAllAttachments(String resourceId, String componentInstanceId)
          Deletes all the document attached to a component resource.
 void deleteAttachment(SimpleDocument document)
          Delete a given attachment.
 void deleteAttachment(SimpleDocument document, boolean invokeCallback)
          Delete a given attachment.
 void deleteIndex(SimpleDocument document)
           
 SimpleDocument findExistingDocument(SimpleDocumentPK pk, String fileName, ForeignPK foreign, String lang)
          Find documents with the same name attached to the specified foreign id.
 void getBinaryContent(File file, SimpleDocumentPK pk, String lang)
          Writes the binary content into the specified File.
 void getBinaryContent(OutputStream output, SimpleDocumentPK pk, String lang)
          Writes the binary content into the specified OutputStream.
 void getBinaryContent(OutputStream output, SimpleDocumentPK pk, String lang, long contentOffset, long contentLength)
          Writes the binary content contained between begin and end indexes into the specified OutputStream.
 AttachmentService getRealService()
           
 void indexAllDocuments(WAPrimaryKey fk, Date startOfVisibilityPeriod, Date endOfVisibilityPeriod)
          Indexes all the documents (whatever their type) of a container.
 SimpleDocumentList<SimpleDocument> listAllDocumentsByForeignKey(WAPrimaryKey foreignKey, String lang)
          Search all documents (files, xmlform content, wysiwyg) attached to a foreign object.
 SimpleDocumentList<SimpleDocument> listDocumentsByForeignKey(WAPrimaryKey foreignKey, String lang)
          Search all files attached to a foreign object.
 SimpleDocumentList<SimpleDocument> listDocumentsByForeignKeyAndType(WAPrimaryKey foreignKey, DocumentType type, String lang)
          Search all file attached to a foreign object.
 List<SimpleDocument> listDocumentsLockedByUser(String usedId, String language)
          Search all the documents locked by a specific user.
 List<SimpleDocument> listDocumentsRequiringWarning(Date alertDate, String language)
          Search all the documents in an instance which are locked at the alert date.
 List<SimpleDocument> listDocumentsToUnlock(Date expiryDate, String language)
          Search all the documents in an instance requiring to be unlocked at the specified date.
 List<SimpleDocument> listExpiringDocuments(Date alertDate, String language)
          Search all the documents in an instance which require an alert at the specified date.
 boolean lock(String attachmentId, String userId, String language)
          Checkout a file to be updated by user.
 Map<String,String> mergeDocuments(ForeignPK originalForeignKey, ForeignPK cloneForeignKey, DocumentType type)
          Merges the documents of cloned container with the original documents.
 List<SimpleDocumentPK> moveAllDocuments(WAPrimaryKey resourceSourcePk, WAPrimaryKey targetDestinationPk)
           
 SimpleDocumentPK moveDocument(SimpleDocument document, ForeignPK destination)
          Moves the attachment.
 void removeContent(SimpleDocument document, String lang, boolean invokeCallback)
          To remove the content of the document in the specified language.
 void reorderAttachments(List<SimpleDocumentPK> pks)
          Reorder the attachments according to the order in the list.
 void reorderDocuments(List<SimpleDocument> documents)
          Reorder the attachments according to the order in the list.
 SimpleDocument searchDocumentById(SimpleDocumentPK primaryKey, String lang)
          Search the document.
 void setRealService(AttachmentService realService)
           
 void switchAllowingDownloadForReaders(SimpleDocumentPK pk, boolean allowing)
          Allows or forbids the download for readers.
 void switchComponentBehaviour(String componentId, boolean toVersionning)
          Change the management of versions of the documents of a whole component (only attachments are taken into account).
 void unindexAttachmentsOfExternalObject(WAPrimaryKey foreignKey)
           
 boolean unlock(UnlockContext context)
          Release a locked file.
 void updateAttachment(SimpleDocument document, boolean indexIt, boolean invokeCallback)
          To update the document : status, metadata but not its content.
 void updateAttachment(SimpleDocument document, File content, boolean indexIt, boolean invokeCallback)
          To update a document content by updating or adding some content.
 void updateAttachment(SimpleDocument document, InputStream in, boolean indexIt, boolean invokeCallback)
          To update a document content by updating or adding some content.
 void updateIndexEntryWithDocuments(FullIndexEntry indexEntry)
          Add the documents to the index.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleDocumentServiceWrapper

public SimpleDocumentServiceWrapper()

SimpleDocumentServiceWrapper

public SimpleDocumentServiceWrapper(AttachmentService realService)
Method Detail

getRealService

public AttachmentService getRealService()

setRealService

public void setRealService(AttachmentService realService)

deleteAllAttachments

public void deleteAllAttachments(String componentInstanceId)
                          throws AttachmentException
Description copied from interface: AttachmentService
Deletes all the documents related to the component instance identified by the specified identifier.

Specified by:
deleteAllAttachments in interface AttachmentService
Parameters:
componentInstanceId - the component instance identifier.
Throws:
AttachmentException

updateAttachment

public void updateAttachment(SimpleDocument document,
                             InputStream in,
                             boolean indexIt,
                             boolean invokeCallback)
Description copied from interface: AttachmentService
To update a document content by updating or adding some content.

Specified by:
updateAttachment in interface AttachmentService

getBinaryContent

public void getBinaryContent(OutputStream output,
                             SimpleDocumentPK pk,
                             String lang)
Description copied from interface: AttachmentService
Writes the binary content into the specified OutputStream.

Specified by:
getBinaryContent in interface AttachmentService
Parameters:
output - the stream where the content is to be written.
pk - the id of the document.
lang - the language of the content.

getBinaryContent

public void getBinaryContent(OutputStream output,
                             SimpleDocumentPK pk,
                             String lang,
                             long contentOffset,
                             long contentLength)
Description copied from interface: AttachmentService
Writes the binary content contained between begin and end indexes into the specified OutputStream.

Specified by:
getBinaryContent in interface AttachmentService
Parameters:
output - the stream where the content is to be written.
pk - the id of the document.
lang - the language of the content.
contentOffset - number of bytes to skip from input content before copying into output.
contentLength - number of bytes to copy.

addXmlForm

public void addXmlForm(SimpleDocumentPK pk,
                       String language,
                       String xmlFormName)
Specified by:
addXmlForm in interface AttachmentService

cloneDocument

public SimpleDocumentPK cloneDocument(SimpleDocument original,
                                      String foreignCloneId)
Description copied from interface: AttachmentService
Clone the document to a cloned container.

Specified by:
cloneDocument in interface AttachmentService
Returns:

mergeDocuments

public Map<String,String> mergeDocuments(ForeignPK originalForeignKey,
                                         ForeignPK cloneForeignKey,
                                         DocumentType type)
Description copied from interface: AttachmentService
Merges the documents of cloned container with the original documents.

Specified by:
mergeDocuments in interface AttachmentService
Returns:
a map with the cloned document id as key and the original document id as value.

createAttachment

public SimpleDocument createAttachment(SimpleDocument document,
                                       InputStream content)
                                throws AttachmentException
Description copied from interface: AttachmentService
Create file attached to an object who is identified by the foreignId.

Specified by:
createAttachment in interface AttachmentService
Parameters:
document - the document to be created.
content - the binary content of the document.
Returns:
the stored document.
Throws:
AttachmentException

createAttachment

public SimpleDocument createAttachment(SimpleDocument document,
                                       InputStream content,
                                       boolean indexIt)
Description copied from interface: AttachmentService
Create file attached to an object who is identified by the foreignId.

Specified by:
createAttachment in interface AttachmentService
Parameters:
document - the document to be created.
content - the binary content of the document.
indexIt - true if the document is to be indexed - false otherwhise.
Returns:
the stored document.

createAttachment

public SimpleDocument createAttachment(SimpleDocument document,
                                       InputStream content,
                                       boolean indexIt,
                                       boolean invokeCallback)
Description copied from interface: AttachmentService
Create file attached to an object who is identified by the foreignId.

Specified by:
createAttachment in interface AttachmentService
Parameters:
document - the document to be created.
content - the binary content of the document.
indexIt - true if the document is to be indexed - false otherwise.
invokeCallback - true if the callback methods of the components must be called, false for ignoring thoose callbacks.
Returns:
the stored document.

createIndex

public void createIndex(SimpleDocument document)
Specified by:
createIndex in interface AttachmentService

createIndex

public void createIndex(SimpleDocument document,
                        Date startOfVisibilityPeriod,
                        Date endOfVisibilityPeriod)
Specified by:
createIndex in interface AttachmentService

deleteAttachment

public void deleteAttachment(SimpleDocument document)
Description copied from interface: AttachmentService
Delete a given attachment.

Specified by:
deleteAttachment in interface AttachmentService
Parameters:
document - the document to deleted.

deleteAttachment

public void deleteAttachment(SimpleDocument document,
                             boolean invokeCallback)
Description copied from interface: AttachmentService
Delete a given attachment.

Specified by:
deleteAttachment in interface AttachmentService
Parameters:
document - the document to deleted.
invokeCallback - true if the callback methods of the components must be called, false for ignoring thoose callbacks.

deleteAllAttachments

public void deleteAllAttachments(String resourceId,
                                 String componentInstanceId)
Description copied from interface: AttachmentService
Deletes all the document attached to a component resource.

Specified by:
deleteAllAttachments in interface AttachmentService
Parameters:
resourceId - the identifier of the resource.
componentInstanceId - the identifier of the component instance into which the resource is referenced.

removeContent

public void removeContent(SimpleDocument document,
                          String lang,
                          boolean invokeCallback)
Description copied from interface: AttachmentService
To remove the content of the document in the specified language.

Specified by:
removeContent in interface AttachmentService

reorderAttachments

public void reorderAttachments(List<SimpleDocumentPK> pks)
                        throws AttachmentException
Description copied from interface: AttachmentService
Reorder the attachments according to the order in the list.

Specified by:
reorderAttachments in interface AttachmentService
Throws:
AttachmentException

searchDocumentById

public SimpleDocument searchDocumentById(SimpleDocumentPK primaryKey,
                                         String lang)
Description copied from interface: AttachmentService
Search the document.

Specified by:
searchDocumentById in interface AttachmentService
Parameters:
primaryKey - the primary key of document.
lang - the lang of the document.
Returns:
java.util.Vector: a collection of AttachmentDetail

listDocumentsByForeignKey

public SimpleDocumentList<SimpleDocument> listDocumentsByForeignKey(WAPrimaryKey foreignKey,
                                                                    String lang)
Description copied from interface: AttachmentService
Search all files attached to a foreign object.

Specified by:
listDocumentsByForeignKey in interface AttachmentService
Parameters:
foreignKey - : the primary key of foreign object.
lang - the language of the documents.
Returns:
the list of attached documents.

unindexAttachmentsOfExternalObject

public void unindexAttachmentsOfExternalObject(WAPrimaryKey foreignKey)
Specified by:
unindexAttachmentsOfExternalObject in interface AttachmentService

updateAttachment

public void updateAttachment(SimpleDocument document,
                             boolean indexIt,
                             boolean invokeCallback)
Description copied from interface: AttachmentService
To update the document : status, metadata but not its content.

Specified by:
updateAttachment in interface AttachmentService

updateIndexEntryWithDocuments

public void updateIndexEntryWithDocuments(FullIndexEntry indexEntry)
Description copied from interface: AttachmentService
Add the documents to the index.

Specified by:
updateIndexEntryWithDocuments in interface AttachmentService
Parameters:
indexEntry - the entry to be updated with the document indexes.

listDocumentsRequiringWarning

public List<SimpleDocument> listDocumentsRequiringWarning(Date alertDate,
                                                          String language)
Description copied from interface: AttachmentService
Search all the documents in an instance which are locked at the alert date.

Specified by:
listDocumentsRequiringWarning in interface AttachmentService
Parameters:
alertDate - the date when a warning is required.
language - the language in which the documents are required.
Returns:
an ordered list of the documents.

listExpiringDocuments

public List<SimpleDocument> listExpiringDocuments(Date alertDate,
                                                  String language)
Description copied from interface: AttachmentService
Search all the documents in an instance which require an alert at the specified date.

Specified by:
listExpiringDocuments in interface AttachmentService
Parameters:
alertDate - the date when the document reservation should alter.
language - the language in which the documents are required.
Returns:
an ordered list of the documents.

listDocumentsToUnlock

public List<SimpleDocument> listDocumentsToUnlock(Date expiryDate,
                                                  String language)
Description copied from interface: AttachmentService
Search all the documents in an instance requiring to be unlocked at the specified date.

Specified by:
listDocumentsToUnlock in interface AttachmentService
Parameters:
expiryDate - the date when the document reservation should expire.
language - the language in which the documents are required.
Returns:
an ordered list of the documents.

updateAttachment

public void updateAttachment(SimpleDocument document,
                             File content,
                             boolean indexIt,
                             boolean invokeCallback)
Description copied from interface: AttachmentService
To update a document content by updating or adding some content.

Specified by:
updateAttachment in interface AttachmentService

getBinaryContent

public void getBinaryContent(File file,
                             SimpleDocumentPK pk,
                             String lang)
Description copied from interface: AttachmentService
Writes the binary content into the specified File.

Specified by:
getBinaryContent in interface AttachmentService
Parameters:
file - the file where the content is to be written.
pk - the id of the document.
lang - the language of the content.

createAttachment

public SimpleDocument createAttachment(SimpleDocument document,
                                       File content)
                                throws AttachmentException
Description copied from interface: AttachmentService
Create file attached to an object who is identified by the foreignId.

Specified by:
createAttachment in interface AttachmentService
Parameters:
document - the document to be created.
content - the binary content of the document.
Returns:
the stored document.
Throws:
AttachmentException

createAttachment

public SimpleDocument createAttachment(SimpleDocument document,
                                       File content,
                                       boolean indexIt)
Description copied from interface: AttachmentService
Create file attached to an object who is identified by the foreignId.

Specified by:
createAttachment in interface AttachmentService
Parameters:
document - the document to be created.
content - the binary content of the document.
indexIt - true if the document is to be indexed, false otherwhise.
Returns:
the stored document.

createAttachment

public SimpleDocument createAttachment(SimpleDocument document,
                                       File content,
                                       boolean indexIt,
                                       boolean invokeCallback)
Description copied from interface: AttachmentService
Create file attached to an object who is identified by the foreignId.

Specified by:
createAttachment in interface AttachmentService
Parameters:
document - the document to be created.
content - the binary content of the document.
indexIt - true if the document is to be indexed, false otherwhise.
invokeCallback - true if the callback methods of the components must be called, false for ignoring thoose callbacks.
Returns:
the stored document.

reorderDocuments

public void reorderDocuments(List<SimpleDocument> documents)
                      throws AttachmentException
Description copied from interface: AttachmentService
Reorder the attachments according to the order in the list.

Specified by:
reorderDocuments in interface AttachmentService
Throws:
AttachmentException

lock

public boolean lock(String attachmentId,
                    String userId,
                    String language)
Description copied from interface: AttachmentService
Checkout a file to be updated by user.

Specified by:
lock in interface AttachmentService
Parameters:
attachmentId - the id of the attachemnt to be locked.
userId - : the user locking and modifying the attachment.
language - the language of the attachment.
Returns:
false if the attachment is already checkout - true if the attachment was successfully checked out.

unlock

public boolean unlock(UnlockContext context)
Description copied from interface: AttachmentService
Release a locked file.

Specified by:
unlock in interface AttachmentService
Parameters:
context - : the unlock parameters.
Returns:
false if the file is locked - true if the unlock succeeded.

changeVersionState

public SimpleDocumentPK changeVersionState(SimpleDocumentPK pk,
                                           String comment)
Description copied from interface: AttachmentService
Change the management of versions of the document. If the document is currently with version management, then all history is removed and the document becomes a simple document with no more version management. If the document has no version management then a new public version is created and the document becomes a document with a version history management. F

Specified by:
changeVersionState in interface AttachmentService
Parameters:
pk - the id of the document.
comment - the comment of the versioned documetn if we are switching from simple to versioned.
Returns:
the pk to the document after is state change.

findExistingDocument

public SimpleDocument findExistingDocument(SimpleDocumentPK pk,
                                           String fileName,
                                           ForeignPK foreign,
                                           String lang)
Description copied from interface: AttachmentService
Find documents with the same name attached to the specified foreign id.

Specified by:
findExistingDocument in interface AttachmentService
Parameters:
pk - the id of the document.
fileName - the name of the file.
foreign - the id of the container of the document.
lang - the language of the document.
Returns:
a document with the same filename - null if none is found.

listDocumentsByForeignKeyAndType

public SimpleDocumentList<SimpleDocument> listDocumentsByForeignKeyAndType(WAPrimaryKey foreignKey,
                                                                           DocumentType type,
                                                                           String lang)
Description copied from interface: AttachmentService
Search all file attached to a foreign object.

Specified by:
listDocumentsByForeignKeyAndType in interface AttachmentService
Parameters:
foreignKey - : the primary key of foreign object.
type - : the type of document
lang - the lang for the documents.
Returns:
the list of attached documents.

copyDocument

public SimpleDocumentPK copyDocument(SimpleDocument original,
                                     ForeignPK targetPk)
Description copied from interface: AttachmentService
Copies the attachment.

Specified by:
copyDocument in interface AttachmentService
Returns:

copyAllDocuments

public List<SimpleDocumentPK> copyAllDocuments(WAPrimaryKey resourceSourcePk,
                                               WAPrimaryKey targetDestinationPk)
Description copied from interface: AttachmentService
Copies all the attachment linked to a resource to another one.

Specified by:
copyAllDocuments in interface AttachmentService
Parameters:
resourceSourcePk - the identifier of the resource and its location (component instance) which linked attachments must be copied.
targetDestinationPk - the identifier of the resource and its location (component instance) that will get the copied attachments.
Returns:
le list of copied attachments, empty if nothing is copied.

listDocumentsLockedByUser

public List<SimpleDocument> listDocumentsLockedByUser(String usedId,
                                                      String language)
Description copied from interface: AttachmentService
Search all the documents locked by a specific user.

Specified by:
listDocumentsLockedByUser in interface AttachmentService
Parameters:
usedId - the id of the user.
language - the language in which the documents are required.
Returns:
an ordered list of the documents.

moveDocument

public SimpleDocumentPK moveDocument(SimpleDocument document,
                                     ForeignPK destination)
Description copied from interface: AttachmentService
Moves the attachment.

Specified by:
moveDocument in interface AttachmentService
Parameters:
document - to be moved.
destination - the foreign id to be moved to.
Returns:
the new document id.

moveAllDocuments

public List<SimpleDocumentPK> moveAllDocuments(WAPrimaryKey resourceSourcePk,
                                               WAPrimaryKey targetDestinationPk)
Specified by:
moveAllDocuments in interface AttachmentService

listAllDocumentsByForeignKey

public SimpleDocumentList<SimpleDocument> listAllDocumentsByForeignKey(WAPrimaryKey foreignKey,
                                                                       String lang)
Description copied from interface: AttachmentService
Search all documents (files, xmlform content, wysiwyg) attached to a foreign object.

Specified by:
listAllDocumentsByForeignKey in interface AttachmentService
Parameters:
foreignKey - : the primary key of foreign object.
lang - the language of the documents.
Returns:
the list of attached documents.

indexAllDocuments

public void indexAllDocuments(WAPrimaryKey fk,
                              Date startOfVisibilityPeriod,
                              Date endOfVisibilityPeriod)
Description copied from interface: AttachmentService
Indexes all the documents (whatever their type) of a container.

Specified by:
indexAllDocuments in interface AttachmentService
Parameters:
fk - the id of the container of the document.
startOfVisibilityPeriod - can be null.
endOfVisibilityPeriod - can be null.

deleteIndex

public void deleteIndex(SimpleDocument document)
Specified by:
deleteIndex in interface AttachmentService

switchComponentBehaviour

public void switchComponentBehaviour(String componentId,
                                     boolean toVersionning)
Description copied from interface: AttachmentService
Change the management of versions of the documents of a whole component (only attachments are taken into account). If the document is currently with version management, then all history is removed and the document becomes a simple document with no more version management. If the document has no version management then a new public version is created and the document becomes a document with a version history management.

Specified by:
switchComponentBehaviour in interface AttachmentService
Parameters:
componentId - : the id of the component switching its behaviour.

switchAllowingDownloadForReaders

public void switchAllowingDownloadForReaders(SimpleDocumentPK pk,
                                             boolean allowing)
Description copied from interface: AttachmentService
Allows or forbids the download for readers.

Specified by:
switchAllowingDownloadForReaders in interface AttachmentService
Parameters:
pk - the id of the document.


Copyright © 2016 Silverpeas. All Rights Reserved.