Class AbstractResourceSkinExtensionPlugin

    • Constructor Detail

      • AbstractResourceSkinExtensionPlugin

        public AbstractResourceSkinExtensionPlugin​(String name,
                                                   String className,
                                                   XWikiContext context)
        XWiki plugin constructor.
        Parameters:
        name - The name of the plugin, which can be used for retrieving the plugin API from velocity. Unused.
        className - The canonical classname of the plugin. Unused.
        context - The current request context.
        See Also:
        XWikiDefaultPlugin(String,String,com.xpn.xwiki.XWikiContext)
    • Method Detail

      • getAction

        protected abstract String getAction()
        Get the action which the url should specify for calling this resource.
        Returns:
        String Action name.
      • generateLink

        protected abstract String generateLink​(String url,
                                               String resourceName,
                                               XWikiContext context)
        Takes a URL string and outputs a link which will cause the browser to load the url.
        Parameters:
        url - String representation of the url to load (eg: /res/url.js)
        resourceName - name of the pulled resource
        context - the current request context
        Returns:
        HTML code linking to the pulled resource (eg: <script src="/res/url.js"/>)
      • getLink

        public String getLink​(String resourceName,
                              XWikiContext context)
        Description copied from class: AbstractSkinExtensionPlugin
        Abstract method for obtaining a link that points to the actual pulled resource. Each type of resource has its own format for the link, for example Javascript uses <script src="/path/to/Document">, while CSS uses <link rel="stylesheet" href="/path/to/Document"> (the actual syntax is longer, this is just a simplified example).
        Specified by:
        getLink in class AbstractSkinExtensionPlugin
        Parameters:
        resourceName - the name of the wiki document holding the resource.
        context - the current request context, needed to access the URLFactory.
        Returns:
        A String representation of the linking element that should be printed in the generated HTML.
      • getAlwaysUsedExtensions

        public Set<String> getAlwaysUsedExtensions​(XWikiContext context)
        Returns the list of always used extensions of this type. Which resources are always used depends on the type of resource, for example document based StyleSheet extensions have a property in the object, use, which can have the value always to declare that an extension should always be used.

        There is no support for always used resource-based extensions yet.

        Specified by:
        getAlwaysUsedExtensions in class AbstractSkinExtensionPlugin
        Parameters:
        context - The current request context.
        Returns:
        A set of resource names that should be pulled in the current response. Note that this method is called for each request, as the list might change in time, and it can be different for each wiki in a farm.
        See Also:
        AbstractSkinExtensionPlugin.getAlwaysUsedExtensions(XWikiContext)