Class BaseFilterProvider

  • All Implemented Interfaces:
    FilterProvider, RestletProvider

    public abstract class BaseFilterProvider
    extends BaseRestletProvider
    implements FilterProvider
    This class provides an implementation of FilterProvider. You register this class as an OSGi declarative service. The service declaration should look like:

     
     <?xml version="1.0" encoding="UTF-8"?>
     <scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" immediate="true" name="org.example.app.filter">
       <implementation class="org.restlet.ext.osgi.BaseFilterProvider"/>
       <service>
         <provide interface="org.restlet.ext.osgi.FilterProvider"/>
       </service>
     </scr:component>
     
     

    The referenced services are:

    • FilterProvider - optional - policy="static" cardinality="1..1"

    The provided services are:

    • FilterProvider

    Since filter providers have a reference to filter provider, filters can be chained together. To get the filters in the desired order, add a service property to a filter, and then place a target filter on the reference declaration. For example:

     
     

    Author:
    Bryan Hunt
    • Constructor Detail

      • BaseFilterProvider

        public BaseFilterProvider()
    • Method Detail

      • createFilter

        protected abstract org.restlet.routing.Filter createFilter​(org.restlet.Context context)
        Called to construct the actual filter instance.
        Returns:
        the newly constructed filter instance.
      • getFilter

        public org.restlet.routing.Filter getFilter()
        Specified by:
        getFilter in interface FilterProvider
        Returns:
        the filter instance
      • getFilteredRestlet

        protected org.restlet.Restlet getFilteredRestlet()
        Description copied from class: BaseRestletProvider
        Called by getInboundRoot() to determine the filtered restlet that is next in the chain.
        Specified by:
        getFilteredRestlet in class BaseRestletProvider
        Returns:
        the restlet to be filtered
      • getInboundRoot

        public org.restlet.Restlet getInboundRoot​(org.restlet.Context context)
        Specified by:
        getInboundRoot in interface RestletProvider
        Overrides:
        getInboundRoot in class BaseRestletProvider
        Parameters:
        context - the Restlet application context
        Returns:
        the node to be used as the inbound root of the handling chain