Interface SlingPostOperation

  • All Known Implementing Classes:

    public interface SlingPostOperation
    as of 2.0.8 (Bundle version 2.2.0) and replaced by PostOperation.
    The SlingPostOperation interface defines the service API to be implemented by service providers extending the Sling default POST servlet. Service providers may register OSGi services of this type to be used by the Sling default POST servlet to handle specific operations.

    The SlingPostOperation 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 default POST servlet defines the copy, move and delete operation names. These names should not be used by SlingPostOperation service providers.

    • Field Detail


        static final String SERVICE_NAME
        The name of the Sling POST operation service.
        See Also:
        Constant Field Values

        static final String PROP_OPERATION_NAME
        The name of the service registration property indicating the name(s) of the operation provided by the operation implementation (value is ""). The value of this service property must be a single String or an array or java.util.Collection of Strings. If multiple strings are defined, the service is registered for all operation names.
        See Also:
        Constant Field Values
    • Method Detail

      • run

        void run​(SlingHttpServletRequest request,
                 HtmlResponse response,
                 SlingPostProcessor[] processors)
        Executes the operation provided by this service implementation. This method is called by the Sling default POST servlet.
        request - The SlingHttpServletRequest object providing the request input for the operation.
        response - The HtmlResponse into which the operation steps should be recorded.
        processors - The SlingPostProcessor services to be called after applying the operation. This may be null if there are none.
        Throws: - May be thrown if an error occurs during the operation, for which it makes sense to retry it with the same parameters - May be thrown if an error occurrs during the operation because preconditions are not fulfilled. If the operation should be repeated with the same parameters, it will fail again.
        ResourceNotFoundException - May be thrown if the operation requires an existing request resource. If this exception is thrown the Sling default POST servlet sends back a 404/NOT FOUND response to the client.
        SlingException - May be thrown if an error occurrs running the operation.