Class AFPResourceManager


  • public class AFPResourceManager
    extends java.lang.Object
    Manages the creation and storage of document resources
    • Field Detail

      • includeCached

        protected boolean includeCached
    • Method Detail

      • createDataStream

        public DataStream createDataStream​(AFPPaintingState paintingState,
                                           java.io.OutputStream outputStream)
                                    throws java.io.IOException
        Sets the outputstream
        Parameters:
        paintingState - the AFP painting state
        outputStream - the outputstream
        Returns:
        a new AFP DataStream
        Throws:
        java.io.IOException - thrown if an I/O exception of some sort has occurred
      • getDataStream

        public DataStream getDataStream()
        Returns the AFP DataStream
        Returns:
        the AFP DataStream
      • writeToStream

        public void writeToStream()
                           throws java.io.IOException
        Tells the streamer to write
        Throws:
        java.io.IOException - thrown if an I/O exception of some sort has occurred.
      • setDefaultResourceGroupUri

        public void setDefaultResourceGroupUri​(java.net.URI uri)
        Sets the default resource group URI.
        Parameters:
        uri - the default resource group URI
      • tryIncludeObject

        public boolean tryIncludeObject​(AFPDataObjectInfo dataObjectInfo)
                                 throws java.io.IOException
        Tries to create an include of a data object that has been previously added to the AFP data stream. If no such object was available, the method returns false which serves as a signal that the object has to be created.
        Parameters:
        dataObjectInfo - the data object info
        Returns:
        true if the inclusion succeeded, false if the object was not available
        Throws:
        java.io.IOException - thrown if an I/O exception of some sort has occurred.
      • createObject

        public void createObject​(AFPDataObjectInfo dataObjectInfo)
                          throws java.io.IOException
        Creates a new data object in the AFP datastream
        Parameters:
        dataObjectInfo - the data object info
        Throws:
        java.io.IOException - thrown if an I/O exception of some sort has occurred.
      • isObjectCached

        public boolean isObjectCached​(AFPResourceInfo resourceInfo)
        Returns true if the passed AFPResourceInfo instance is already cached.
        Parameters:
        resourceInfo - the resource info to check
        Returns:
        true if the object is cached
      • includeCachedObject

        public boolean includeCachedObject​(AFPResourceInfo resourceInfo,
                                           AFPObjectAreaInfo areaInfo)
        Parameters:
        resourceInfo - the resource info to check
        areaInfo - the area info to check
        Returns:
        true if ...
      • embedFont

        public void embedFont​(AFPFont afpFont,
                              CharacterSet charSet)
                       throws java.io.IOException
        Handles font embedding. If a font is embeddable and has not already been embedded it will be.
        Parameters:
        afpFont - the AFP font to be checked for embedding
        charSet - the associated character set
        Throws:
        java.io.IOException - if there's a problem while embedding the external resources
      • createIncludedResource

        public void createIncludedResource​(java.lang.String resourceName,
                                           AFPResourceAccessor accessor,
                                           byte resourceObjectType)
                                    throws java.io.IOException
        Creates an included resource object by loading the contained object from a file.
        Parameters:
        resourceName - the name of the resource
        accessor - resource accessor to access the resource with
        resourceObjectType - the resource object type (ResourceObject.*)
        Throws:
        java.io.IOException - if an I/O error occurs while loading the resource
      • createIncludedResource

        public void createIncludedResource​(java.lang.String resourceName,
                                           java.net.URI uri,
                                           AFPResourceAccessor accessor,
                                           byte resourceObjectType,
                                           boolean truetype,
                                           java.lang.String ttc)
                                    throws java.io.IOException
        Creates an included resource object by loading the contained object from a file.
        Parameters:
        resourceName - the name of the resource
        uri - the URI for the resource
        accessor - resource accessor to access the resource with
        resourceObjectType - the resource object type (ResourceObject.*)
        Throws:
        java.io.IOException - if an I/O error occurs while loading the resource
      • createIncludedResourceFromExternal

        public void createIncludedResourceFromExternal​(java.lang.String resourceName,
                                                       java.net.URI uri,
                                                       AFPResourceAccessor accessor)
                                                throws java.io.IOException
        Creates an included resource extracting the named resource from an external source.
        Parameters:
        resourceName - the name of the resource
        uri - the URI for the resource
        accessor - resource accessor to access the resource with
        Throws:
        java.io.IOException - if an I/O error occurs while loading the resource
      • setResourceLevelDefaults

        public void setResourceLevelDefaults​(AFPResourceLevelDefaults defaults)
        Sets resource level defaults. The existing defaults over merged with the ones passed in as parameter.
        Parameters:
        defaults - the new defaults
      • getResourceLevelDefaults

        public AFPResourceLevelDefaults getResourceLevelDefaults()
        Returns the resource level defaults in use with this resource manager.
        Returns:
        the resource level defaults