public interface PostOperation
PostOperationinterface defines the service API to be implemented by service providers extending the Sling POST servlet. Service providers may register OSGi services of this type to be used by the Sling default POST servlet to handle specific operations.
PostOperation service must be registered with a
PROP_OPERATION_NAME registration property giving the name(s) of the
operations supported by the service. The names will be used to find the
actual operation from the
:operation request parameter.
The Sling POST servlet itself provides various operations (see the
OPERATION_ constants in the
interface.These names should not be used by
Implementors of this interface are advised to extend the
AbstractPostOperation class to benefit from various processings
implemented by that abstract class.
|Modifier and Type||Field and Description|
The name of the service registration property indicating the name(s) of the operation provided by the operation implementation.
The name of the Sling POST operation service.
static final java.lang.String SERVICE_NAME
static final java.lang.String PROP_OPERATION_NAME
java.util.Collectionof Strings. If multiple strings are defined, the service is registered for all operation names.
void run(SlingHttpServletRequest request, PostResponse response, SlingPostProcessor processors) throws PreconditionViolatedPersistenceException, TemporaryPersistenceException, PersistenceException
SlingHttpServletRequestobject providing the request input for the operation.
HtmlResponseinto which the operation steps should be recorded.
SlingPostProcessorservices to be called after applying the operation. This may be
nullif there are none.
PersistenceException- when the commit fails
ResourceNotFoundException- May be thrown if the operation requires an existing request resource. If this exception is thrown the Sling POST servlet sends back a
404/NOT FOUNDresponse to the client.
SlingException- May be thrown if an error Occurs running the operation.
PreconditionViolatedPersistenceException- when a necessary precondition failed, and a retry without further changes doesn't make sense.
TemporaryPersistenceException- when a commit failed, but a retry could make the operation work successfully.
Copyright © 2022 The Apache Software Foundation. All rights reserved.