com.adobe.icc.ddg
Class RenderUtils

java.lang.Object
  extended by com.adobe.icc.ddg.RenderUtils
All Implemented Interfaces:
IRenderUtils

public class RenderUtils
extends java.lang.Object
implements IRenderUtils

Utility class for Rendering related operations.


Constructor Summary
RenderUtils()
           
 
Method Summary
 Letter copyLetter(Letter letter)
          Creates copy of the passed in letter object.
 byte[] extendLayout(Letter letter, java.lang.String dataRootName)
          Extends the layout target areas.
 byte[] extendLayout(Letter letter, java.lang.String dataRootName, ContextData contextData, boolean includeFragmentsUnconditionally)
          Extends the layout target areas.
 Document extendLayout2(Letter letter, java.lang.String dataRootName, ContextData contextData, boolean includeFragmentsUnconditionally)
          Extends the layout target areas.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RenderUtils

public RenderUtils()
Method Detail

extendLayout

public byte[] extendLayout(Letter letter,
                           java.lang.String dataRootName)
                    throws ICCException
Extends the layout target areas. Following extensions are done:

1. Add fragment layout xdp bytes to the layout xdp. 2. Add additions to the XDP's <dataDescription> such that Target Areas (subforms) for which data bindings are generated are appropriately represented, leveraging XFA 3.1's Data Description Injection. This will enable data within the "icc:" space — which is not within the form's optional (corporate) schema — to be imported/exported into/out of the PDF from Reader.

3. Inject XFA Module Object into all subforms identified as Target Areas, such that they can contain and show the Content that they may be related to in the Letter template.

Specified by:
extendLayout in interface IRenderUtils
Parameters:
letter - The Letter Template whose Layout XDP is to be extended. This object may be modified as part of letter extension.
dataRootName - Name of the root node of the data XML which is expected to be merged with this template.
If this is not null, it means that we may have a data XML root name that is not same as the existing data root node's name in the XDP's data description, then the existing data root node's name is updated to match the given dataRootName since the data that will be merged with this Letter is using a different root element than that which was originally used in the Letter's layout; Without this change, Target data SOMs will not resolve properly and module data will not get inserted into the PDF.
If this is null, then the parameter is ignored.
Returns:
Template extended as per the above description.
Throws:
ICCException

extendLayout

public byte[] extendLayout(Letter letter,
                           java.lang.String dataRootName,
                           ContextData contextData,
                           boolean includeFragmentsUnconditionally)
                    throws ICCException
Extends the layout target areas. Following extensions are done:

1. Add fragment layout xdp bytes to the layout xdp. 2. Add additions to the XDP's <dataDescription> such that Target Areas (subforms) for which data bindings are generated are appropriately represented, leveraging XFA 3.1's Data Description Injection. This will enable data within the "icc:" space — which is not within the form's optional (corporate) schema — to be imported/exported into/out of the PDF from Reader.

3. Inject XFA Module Object into all subforms identified as Target Areas, such that they can contain and show the Content that they may be related to in the Letter template.

Specified by:
extendLayout in interface IRenderUtils
Parameters:
letter - The Letter Template whose Layout XDP is to be extended. This object may be modified as part of letter extension.
dataRootName - Name of the root node of the data XML which is expected to be merged with this template.
If this is not null, it means that we may have a data XML root name that is not same as the existing data root node's name in the XDP's data description, then the existing data root node's name is updated to match the given dataRootName since the data that will be merged with this Letter is using a different root element than that which was originally used in the Letter's layout; Without this change, Target data SOMs will not resolve properly and module data will not get inserted into the PDF.
If this is null, then the parameter is ignored.
contextData - context data for evaluating expressions in container layout assignment objects.
includeFragmentsUnconditionally - flag to indicate whether fragments should always be included in rendered letter.
Returns:
Template extended as per the above description.
Throws:
ICCException

extendLayout2

public Document extendLayout2(Letter letter,
                              java.lang.String dataRootName,
                              ContextData contextData,
                              boolean includeFragmentsUnconditionally)
                       throws ICCException
Extends the layout target areas. Following extensions are done:

1. Add fragment layout xdp bytes to the layout xdp. 2. Add additions to the XDP's <dataDescription> such that Target Areas (subforms) for which data bindings are generated are appropriately represented, leveraging XFA 3.1's Data Description Injection. This will enable data within the "icc:" space — which is not within the form's optional (corporate) schema — to be imported/exported into/out of the PDF from Reader.

3. Inject XFA Module Object into all subforms identified as Target Areas, such that they can contain and show the Content that they may be related to in the Letter template.

Specified by:
extendLayout2 in interface IRenderUtils
Parameters:
letter - The Letter Template whose Layout XDP is to be extended. This object may be modified as part of letter extension.
dataRootName - Name of the root node of the data XML which is expected to be merged with this template.
If this is not null, it means that we may have a data XML root name that is not same as the existing data root node's name in the XDP's data description, then the existing data root node's name is updated to match the given dataRootName since the data that will be merged with this Letter is using a different root element than that which was originally used in the Letter's layout; Without this change, Target data SOMs will not resolve properly and module data will not get inserted into the PDF.
If this is null, then the parameter is ignored.
contextData - context data for evaluating expressions in container layout assignment objects.
includeFragmentsUnconditionally - flag to indicate whether fragments should always be included in rendered letter.
Returns:
Template extended as per the above description.
Throws:
ICCException

copyLetter

public Letter copyLetter(Letter letter)
                  throws ICCException
Creates copy of the passed in letter object. This method does not copy layout and fragment layout XDP content. Original and copied letter point to the same layout XDP contents.

Specified by:
copyLetter in interface IRenderUtils
Parameters:
letter - - letter object to copy
Returns:
copy of the passed in letter
Throws:
ICCException


[an error occurred while processing this directive] [an error occurred while processing this directive]