Class ScriptHelper

  • All Implemented Interfaces:
    org.apache.sling.api.scripting.SlingScriptHelper
    Direct Known Subclasses:
    InternalScriptHelper

    public class ScriptHelper
    extends java.lang.Object
    implements org.apache.sling.api.scripting.SlingScriptHelper
    Simple script helper providing access to the (wrapped) response, the on-demand writer and a simple API for request inclusion. Instances of this class are made available to the scripts as the global sling variable. Client code using this object should take care to call cleanup() when the object is not used anymore!
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected org.osgi.framework.BundleContext bundleContext
      The bundle context.
      protected java.util.List<org.osgi.framework.ServiceReference> references
      The list of references - we don't need to synchronize this as we are running in one single request.
      protected java.util.Map<java.lang.String,​java.lang.Object> services
      A map of found services.
    • Constructor Summary

      Constructors 
      Constructor Description
      ScriptHelper​(org.osgi.framework.BundleContext ctx, org.apache.sling.api.scripting.SlingScript script)  
      ScriptHelper​(org.osgi.framework.BundleContext ctx, org.apache.sling.api.scripting.SlingScript script, org.apache.sling.api.SlingHttpServletRequest request, org.apache.sling.api.SlingHttpServletResponse response)  
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      void cleanup()
      Clean up this instance.
      void dispose()
      Deprecated.
      void forward​(java.lang.String path)  
      void forward​(java.lang.String path, java.lang.String options)  
      void forward​(java.lang.String path, org.apache.sling.api.request.RequestDispatcherOptions options)  
      void forward​(org.apache.sling.api.resource.Resource resource)  
      void forward​(org.apache.sling.api.resource.Resource resource, java.lang.String options)  
      void forward​(org.apache.sling.api.resource.Resource resource, org.apache.sling.api.request.RequestDispatcherOptions options)  
      org.apache.sling.api.SlingHttpServletRequest getRequest()  
      org.apache.sling.api.SlingHttpServletResponse getResponse()  
      org.apache.sling.api.scripting.SlingScript getScript()  
      <ServiceType>
      ServiceType
      getService​(java.lang.Class<ServiceType> type)  
      <ServiceType>
      ServiceType[]
      getServices​(java.lang.Class<ServiceType> serviceType, java.lang.String filter)  
      void include​(java.lang.String path)  
      void include​(java.lang.String path, java.lang.String options)  
      void include​(java.lang.String path, org.apache.sling.api.request.RequestDispatcherOptions options)  
      void include​(org.apache.sling.api.resource.Resource resource)  
      void include​(org.apache.sling.api.resource.Resource resource, java.lang.String options)  
      void include​(org.apache.sling.api.resource.Resource resource, org.apache.sling.api.request.RequestDispatcherOptions options)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • bundleContext

        protected final org.osgi.framework.BundleContext bundleContext
        The bundle context.
      • references

        protected java.util.List<org.osgi.framework.ServiceReference> references
        The list of references - we don't need to synchronize this as we are running in one single request.
      • services

        protected java.util.Map<java.lang.String,​java.lang.Object> services
        A map of found services.
    • Constructor Detail

      • ScriptHelper

        public ScriptHelper​(org.osgi.framework.BundleContext ctx,
                            org.apache.sling.api.scripting.SlingScript script)
      • ScriptHelper

        public ScriptHelper​(org.osgi.framework.BundleContext ctx,
                            org.apache.sling.api.scripting.SlingScript script,
                            org.apache.sling.api.SlingHttpServletRequest request,
                            org.apache.sling.api.SlingHttpServletResponse response)
    • Method Detail

      • getScript

        public org.apache.sling.api.scripting.SlingScript getScript()
        Specified by:
        getScript in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.getScript()
      • getRequest

        public org.apache.sling.api.SlingHttpServletRequest getRequest()
        Specified by:
        getRequest in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.getRequest()
      • getResponse

        public org.apache.sling.api.SlingHttpServletResponse getResponse()
        Specified by:
        getResponse in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.getResponse()
      • include

        public void include​(java.lang.String path)
        Specified by:
        include in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.include(java.lang.String)
      • include

        public void include​(java.lang.String path,
                            java.lang.String options)
        Specified by:
        include in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.include(java.lang.String, java.lang.String)
      • include

        public void include​(java.lang.String path,
                            org.apache.sling.api.request.RequestDispatcherOptions options)
        Specified by:
        include in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.include(java.lang.String, org.apache.sling.api.request.RequestDispatcherOptions)
      • forward

        public void forward​(java.lang.String path)
        Specified by:
        forward in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(java.lang.String)
      • forward

        public void forward​(java.lang.String path,
                            java.lang.String options)
        Specified by:
        forward in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(java.lang.String, java.lang.String)
      • forward

        public void forward​(java.lang.String path,
                            org.apache.sling.api.request.RequestDispatcherOptions options)
        Specified by:
        forward in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(java.lang.String, org.apache.sling.api.request.RequestDispatcherOptions)
      • dispose

        @Deprecated
        public void dispose()
        Deprecated.
        Specified by:
        dispose in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.dispose()
      • getService

        public <ServiceType> ServiceType getService​(java.lang.Class<ServiceType> type)
        Specified by:
        getService in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.getService(java.lang.Class)
      • getServices

        public <ServiceType> ServiceType[] getServices​(java.lang.Class<ServiceType> serviceType,
                                                       java.lang.String filter)
                                                throws org.apache.sling.api.scripting.InvalidServiceFilterSyntaxException
        Specified by:
        getServices in interface org.apache.sling.api.scripting.SlingScriptHelper
        Throws:
        org.apache.sling.api.scripting.InvalidServiceFilterSyntaxException
        See Also:
        SlingScriptHelper.getServices(java.lang.Class, java.lang.String)
      • cleanup

        public void cleanup()
        Clean up this instance.
      • forward

        public void forward​(org.apache.sling.api.resource.Resource resource)
        Specified by:
        forward in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(org.apache.sling.api.resource.Resource)
      • forward

        public void forward​(org.apache.sling.api.resource.Resource resource,
                            java.lang.String options)
        Specified by:
        forward in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(org.apache.sling.api.resource.Resource, java.lang.String)
      • forward

        public void forward​(org.apache.sling.api.resource.Resource resource,
                            org.apache.sling.api.request.RequestDispatcherOptions options)
        Specified by:
        forward in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(org.apache.sling.api.resource.Resource, org.apache.sling.api.request.RequestDispatcherOptions)
      • include

        public void include​(org.apache.sling.api.resource.Resource resource)
        Specified by:
        include in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.forward(org.apache.sling.api.resource.Resource)
      • include

        public void include​(org.apache.sling.api.resource.Resource resource,
                            java.lang.String options)
        Specified by:
        include in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.include(org.apache.sling.api.resource.Resource, java.lang.String)
      • include

        public void include​(org.apache.sling.api.resource.Resource resource,
                            org.apache.sling.api.request.RequestDispatcherOptions options)
        Specified by:
        include in interface org.apache.sling.api.scripting.SlingScriptHelper
        See Also:
        SlingScriptHelper.include(org.apache.sling.api.resource.Resource, org.apache.sling.api.request.RequestDispatcherOptions)