Class ZipResourceBundleLoader

  • All Implemented Interfaces:
    org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader

    public class ZipResourceBundleLoader
    extends Object
    implements org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.pentaho.reporting.libraries.resourceloader.ResourceKey deriveKey​(org.pentaho.reporting.libraries.resourceloader.ResourceKey parent, String path, Map<? extends org.pentaho.reporting.libraries.resourceloader.ParameterKey,​? extends Object> factoryKeys)
      Derives a new resource key from the given key.
      org.pentaho.reporting.libraries.resourceloader.ResourceKey deserialize​(org.pentaho.reporting.libraries.resourceloader.ResourceKey bundleKey, String stringKey)  
      boolean equals​(Object obj)  
      int hashCode()  
      boolean isSupportedDeserializer​(String data)  
      boolean isSupportedKey​(org.pentaho.reporting.libraries.resourceloader.ResourceKey key)
      Checks, whether this resource loader implementation was responsible for creating this key.
      org.pentaho.reporting.libraries.resourceloader.ResourceBundleData loadBundle​(org.pentaho.reporting.libraries.resourceloader.ResourceManager resourceManager, org.pentaho.reporting.libraries.resourceloader.ResourceKey key)
      Tries to load the bundle.
      String serialize​(org.pentaho.reporting.libraries.resourceloader.ResourceKey bundleKey, org.pentaho.reporting.libraries.resourceloader.ResourceKey key)  
    • Constructor Detail

      • ZipResourceBundleLoader

        public ZipResourceBundleLoader()
    • Method Detail

      • loadBundle

        public org.pentaho.reporting.libraries.resourceloader.ResourceBundleData loadBundle​(org.pentaho.reporting.libraries.resourceloader.ResourceManager resourceManager,
                                                                                            org.pentaho.reporting.libraries.resourceloader.ResourceKey key)
                                                                                     throws org.pentaho.reporting.libraries.resourceloader.ResourceLoadingException
        Tries to load the bundle. If the key does not point to a usable resource-bundle, this method returns null. The Exception is only thrown if the bundle is not readable because of IO-Errors.

        A resource-bundle loader should only load the bundle for the key itself, never for any of the derived subkeys. It is the ResourceManager's responsibility to search the key's hierachy for the correct key.

        Specified by:
        loadBundle in interface org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
        Parameters:
        key - the resource key pointing to the bundle.
        Returns:
        the loaded bundle or null, if the resource was not understood.
        Throws:
        org.pentaho.reporting.libraries.resourceloader.ResourceLoadingException - if something goes wrong.
      • isSupportedKey

        public boolean isSupportedKey​(org.pentaho.reporting.libraries.resourceloader.ResourceKey key)
        Checks, whether this resource loader implementation was responsible for creating this key.
        Specified by:
        isSupportedKey in interface org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
        Parameters:
        key - the key that should be tested.
        Returns:
        true, if the key is supported.
      • deriveKey

        public org.pentaho.reporting.libraries.resourceloader.ResourceKey deriveKey​(org.pentaho.reporting.libraries.resourceloader.ResourceKey parent,
                                                                                    String path,
                                                                                    Map<? extends org.pentaho.reporting.libraries.resourceloader.ParameterKey,​? extends Object> factoryKeys)
                                                                             throws org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException
        Derives a new resource key from the given key. If neither a path nor new factory-keys are given, the parent key is returned.
        Specified by:
        deriveKey in interface org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
        Parameters:
        parent - the parent
        path - the derived path (can be null).
        factoryKeys - the optional factory keys (can be null).
        Returns:
        the derived key.
        Throws:
        org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException - if the key cannot be derived for any reason.
      • serialize

        public String serialize​(org.pentaho.reporting.libraries.resourceloader.ResourceKey bundleKey,
                                org.pentaho.reporting.libraries.resourceloader.ResourceKey key)
                         throws org.pentaho.reporting.libraries.resourceloader.ResourceException
        Specified by:
        serialize in interface org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
        Throws:
        org.pentaho.reporting.libraries.resourceloader.ResourceException
      • deserialize

        public org.pentaho.reporting.libraries.resourceloader.ResourceKey deserialize​(org.pentaho.reporting.libraries.resourceloader.ResourceKey bundleKey,
                                                                                      String stringKey)
                                                                               throws org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException
        Specified by:
        deserialize in interface org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
        Throws:
        org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException
      • isSupportedDeserializer

        public boolean isSupportedDeserializer​(String data)
                                        throws org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException
        Specified by:
        isSupportedDeserializer in interface org.pentaho.reporting.libraries.resourceloader.ResourceBundleLoader
        Throws:
        org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object