public interface ProgressControlCmisService extends CmisService
beforeServiceCall()
before the requested
service method is called and calls afterServiceCall()
after the
requested service method is called. Both methods return a ProgressControlCmisService.Progress
enum value. If the return value is ProgressControlCmisService.Progress.CONTINUE
, the server
framework continues processing. If the return value is ProgressControlCmisService.Progress.STOP
,
the server framework stops processing.
If the service method throws an exception, afterServiceCall()
is not
called and the server framework or a service wrapper handles the exception.
The effect of stopping the processing is binding specific. Dealing with
that requires good knowledge of CMIS, HTTP, and SOAP.
If an AtomPub or Browser Binding request is stopped, the framework doesn't
send any HTTP response. It's the responsibility of the CmisService
class or a service wrapper to generate a CMIS compliant HTTP response. If a
Web Service Binding request is stopped, an additional MessageHandler must be
installed that handles the situation. Otherwise the service sends an invalid
response. If a Local Binding request is stopped, the behavior is undefined.
Custom binding implementations might not support this interface at all.
Depending on the binding and the service method, the CmisService
object is called multiple times. Only the method requested by the client is
accompanied by beforeServiceCall()
and afterServiceCall()
calls. The framework might call other service methods before, after, and in
between these two methods.Modifier and Type | Interface and Description |
---|---|
static class |
ProgressControlCmisService.Progress |
Modifier and Type | Method and Description |
---|---|
ProgressControlCmisService.Progress |
afterServiceCall()
Called by the server framework after the requested service method has
been called.
|
ProgressControlCmisService.Progress |
beforeServiceCall()
Called by the server framework before the requested service method is
called.
|
applyAcl, close, create, deleteObjectOrCancelCheckOut, getObjectInfo
createType, deleteType, getRepositoryInfo, getRepositoryInfos, getTypeChildren, getTypeDefinition, getTypeDescendants, updateType
getCheckedOutDocs, getChildren, getDescendants, getFolderParent, getFolderTree, getObjectParents
appendContentStream, bulkUpdateProperties, createDocument, createDocumentFromSource, createFolder, createItem, createPolicy, createRelationship, deleteContentStream, deleteObject, deleteTree, getAllowableActions, getContentStream, getObject, getObjectByPath, getProperties, getRenditions, moveObject, setContentStream, updateProperties
cancelCheckOut, checkIn, checkOut, getAllVersions, getObjectOfLatestVersion, getPropertiesOfLatestVersion
getContentChanges, query
addObjectToFolder, removeObjectFromFolder
getObjectRelationships
applyAcl, getAcl
applyPolicy, getAppliedPolicies, removePolicy
ProgressControlCmisService.Progress beforeServiceCall()
ProgressControlCmisService.Progress.CONTINUE
if the server framework should continue
processing the request, ProgressControlCmisService.Progress.STOP
id the server
framework should stopProgressControlCmisService.Progress afterServiceCall()
ProgressControlCmisService.Progress.CONTINUE
if the server framework should continue
processing the request, ProgressControlCmisService.Progress.STOP
id the server
framework should stopCopyright © 2009–2017 The Apache Software Foundation. All rights reserved.