Package org.apache.fop.afp
Class AFPResourceManager
java.lang.Object
org.apache.fop.afp.AFPResourceManager
Manages the creation and storage of document resources
-
Field Summary
-
Constructor Summary
ConstructorDescriptionAFPResourceManager
(InternalResourceResolver resourceResolver) Main constructor -
Method Summary
Modifier and TypeMethodDescriptioncreateDataStream
(AFPPaintingState paintingState, OutputStream outputStream) Sets the outputstreamvoid
createIncludedResource
(String resourceName, URI uri, AFPResourceAccessor accessor, byte resourceObjectType, boolean truetype, String ttc) Creates an included resource object by loading the contained object from a file.void
createIncludedResource
(String resourceName, AFPResourceAccessor accessor, byte resourceObjectType) Creates an included resource object by loading the contained object from a file.void
createIncludedResourceFromExternal
(String resourceName, URI uri, AFPResourceAccessor accessor) Creates an included resource extracting the named resource from an external source.void
createObject
(AFPDataObjectInfo dataObjectInfo) Creates a new data object in the AFP datastreamvoid
embedFont
(AFPFont afpFont, CharacterSet charSet) Handles font embedding.Returns the AFP DataStreamReturns the resource level defaults in use with this resource manager.boolean
includeCachedObject
(AFPResourceInfo resourceInfo, AFPObjectAreaInfo areaInfo) boolean
isObjectCached
(AFPResourceInfo resourceInfo) Returnstrue
if the passedAFPResourceInfo
instance is already cached.void
Sets the default resource group URI.void
Sets resource level defaults.boolean
tryIncludeObject
(AFPDataObjectInfo dataObjectInfo) Tries to create an include of a data object that has been previously added to the AFP data stream.void
Tells the streamer to write
-
Field Details
-
includeCached
protected boolean includeCached
-
-
Constructor Details
-
AFPResourceManager
Main constructor- Parameters:
resourceResolver
- the associatedInternalResourceResolver
instance
-
-
Method Details
-
createDataStream
public DataStream createDataStream(AFPPaintingState paintingState, OutputStream outputStream) throws IOException Sets the outputstream- Parameters:
paintingState
- the AFP painting stateoutputStream
- the outputstream- Returns:
- a new AFP DataStream
- Throws:
IOException
- thrown if an I/O exception of some sort has occurred
-
getDataStream
Returns the AFP DataStream- Returns:
- the AFP DataStream
-
writeToStream
Tells the streamer to write- Throws:
IOException
- thrown if an I/O exception of some sort has occurred.
-
setDefaultResourceGroupUri
Sets the default resource group URI.- Parameters:
uri
- the default resource group URI
-
tryIncludeObject
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:
IOException
- thrown if an I/O exception of some sort has occurred.
-
createObject
Creates a new data object in the AFP datastream- Parameters:
dataObjectInfo
- the data object info- Throws:
IOException
- thrown if an I/O exception of some sort has occurred.
-
isObjectCached
Returnstrue
if the passedAFPResourceInfo
instance is already cached.- Parameters:
resourceInfo
- the resource info to check- Returns:
true
if the object is cached
-
includeCachedObject
- Parameters:
resourceInfo
- the resource info to checkareaInfo
- the area info to check- Returns:
true
if ...
-
embedFont
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 embeddingcharSet
- the associated character set- Throws:
IOException
- if there's a problem while embedding the external resources
-
createIncludedResource
public void createIncludedResource(String resourceName, AFPResourceAccessor accessor, byte resourceObjectType) throws IOException Creates an included resource object by loading the contained object from a file.- Parameters:
resourceName
- the name of the resourceaccessor
- resource accessor to access the resource withresourceObjectType
- the resource object type (ResourceObject
.*)- Throws:
IOException
- if an I/O error occurs while loading the resource
-
createIncludedResource
public void createIncludedResource(String resourceName, URI uri, AFPResourceAccessor accessor, byte resourceObjectType, boolean truetype, String ttc) throws IOException Creates an included resource object by loading the contained object from a file.- Parameters:
resourceName
- the name of the resourceuri
- the URI for the resourceaccessor
- resource accessor to access the resource withresourceObjectType
- the resource object type (ResourceObject
.*)- Throws:
IOException
- if an I/O error occurs while loading the resource
-
createIncludedResourceFromExternal
public void createIncludedResourceFromExternal(String resourceName, URI uri, AFPResourceAccessor accessor) throws IOException Creates an included resource extracting the named resource from an external source.- Parameters:
resourceName
- the name of the resourceuri
- the URI for the resourceaccessor
- resource accessor to access the resource with- Throws:
IOException
- if an I/O error occurs while loading the resource
-
setResourceLevelDefaults
Sets resource level defaults. The existing defaults over merged with the ones passed in as parameter.- Parameters:
defaults
- the new defaults
-
getResourceLevelDefaults
Returns the resource level defaults in use with this resource manager.- Returns:
- the resource level defaults
-