org.cip4.jdflib.extensions.xjdfwalker
Class XJDFToJDFConverter

java.lang.Object
  extended by org.cip4.jdflib.elementwalker.ElementWalker
      extended by org.cip4.jdflib.elementwalker.BaseElementWalker
          extended by org.cip4.jdflib.extensions.xjdfwalker.XJDFToJDFConverter

public class XJDFToJDFConverter
extends BaseElementWalker

Author:
Rainer Prosi, Heidelberger Druckmaschinen

Nested Class Summary
 class XJDFToJDFConverter.WalkColorantControl
           
 class XJDFToJDFConverter.WalkColorIntent
          TODO discuss and implement varying numcolors for front and back, e.g.
 class XJDFToJDFConverter.WalkContinue
          continue walking on these withot copying e
 class XJDFToJDFConverter.WalkIgnore
          simply stop walking on these
 class XJDFToJDFConverter.WalkIntent
           
 class XJDFToJDFConverter.WalkIntentElement
           
 class XJDFToJDFConverter.WalkIntentResource
           
 class XJDFToJDFConverter.WalkLayoutElement
           
 class XJDFToJDFConverter.WalkMedia
           
 class XJDFToJDFConverter.WalkNodeInfo
           
 class XJDFToJDFConverter.WalkProduct
           
 class XJDFToJDFConverter.WalkProductList
           
 class XJDFToJDFConverter.WalkReplace
           
 class XJDFToJDFConverter.WalkResource
           
 class XJDFToJDFConverter.WalkRunList
           
 class XJDFToJDFConverter.WalkSet
           
 class XJDFToJDFConverter.WalkSpan
           
 class XJDFToJDFConverter.WalkStrippingParams
           
protected  class XJDFToJDFConverter.WalkXElement
           
 class XJDFToJDFConverter.WalkXJDF
           
 class XJDFToJDFConverter.WalkXJDFColorResource
           
 class XJDFToJDFConverter.WalkXJDFColorSet
           
 class XJDFToJDFConverter.WalkXJDFResource
           
 
Field Summary
 boolean convertUnits
           
 boolean createProduct
          if true, create the product, else ignore it
protected  JDFNode currentJDFNode
           
(package private)  boolean firstConvert
           
(package private)  boolean firstproductInList
           
(package private)  boolean foundProduct
           
(package private)  java.util.Map<java.lang.String,IDFinder.IDPart> idMap
           
(package private)  JDFDoc jdfDoc
           
private  JDFElement.EnumVersion version
           
 
Fields inherited from class org.cip4.jdflib.elementwalker.ElementWalker
theFactory
 
Constructor Summary
XJDFToJDFConverter(JDFDoc template)
           
 
Method Summary
protected  void attributesToSpan(KElement e)
           
protected  KElement attributeToSpan(KElement e, java.lang.String name)
           
 boolean canConvert(KElement xjdf)
           
private  void cleanResources(JDFNode theNode)
           
 JDFDoc convert(KElement xjdf)
           
protected  void convertUnits(KElement e2)
           
protected  JDFNode createProductRoot(JDFNode theNode)
          make sure we have a product in case we have multiple nodes
protected  JDFSeparationList createSeparationList(KElement rPart, java.lang.String elem)
          make a separationlist from an attribute
private  JDFNode findNode(KElement xjdf, boolean create)
          find and optionally create the appropriate node
private  void fixDependencies(JDFNode root)
          TODO Please insert comment!
private  void fixOneDependencies(JDFDependencies dep)
          TODO Please insert comment!
 JDFElement.EnumVersion getVersion()
           
(package private)  boolean isXResource(KElement toCheck)
           
(package private)  boolean isXResourceElement(KElement toCheck)
           
private  void mergeProductLink(JDFNode theNode, JDFNode parent, java.lang.String resName, JDFResourceLink.EnumUsage enumUsage)
           
private  void mergeProductLinks(JDFNode theNode, JDFNode parent)
           
protected  void moveAmountsToLink(JDFAttributeMap partmap, JDFAttributeMap map, JDFResourceLink rl)
           
protected  void moveToLink(JDFResourceLink rl, JDFAttributeMap partmap, JDFAttributeMap map, java.lang.String a)
           
private  JDFNode prepareRoot()
           
protected  KElement reparse(KElement xjdf)
           
 void resetProduct()
          reset the product so that multiple independent product xjdf elements can be merged
 void setVersion(JDFElement.EnumVersion version)
           
 
Methods inherited from class org.cip4.jdflib.elementwalker.BaseElementWalker
constructWalkers, getFactory
 
Methods inherited from class org.cip4.jdflib.elementwalker.ElementWalker
toString, walkTree, walkTreeKidsFirst
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

jdfDoc

JDFDoc jdfDoc

idMap

java.util.Map<java.lang.String,IDFinder.IDPart> idMap

firstConvert

boolean firstConvert

firstproductInList

boolean firstproductInList

foundProduct

boolean foundProduct

currentJDFNode

protected JDFNode currentJDFNode

createProduct

public boolean createProduct
if true, create the product, else ignore it


convertUnits

public boolean convertUnits

version

private JDFElement.EnumVersion version
Constructor Detail

XJDFToJDFConverter

public XJDFToJDFConverter(JDFDoc template)
Parameters:
template - the jdfdoc to fill this into
Method Detail

resetProduct

public void resetProduct()
reset the product so that multiple independent product xjdf elements can be merged


convert

public JDFDoc convert(KElement xjdf)
Parameters:
xjdf -
Returns:
the converted jdf

fixDependencies

private void fixDependencies(JDFNode root)
TODO Please insert comment!

Parameters:
root -

fixOneDependencies

private void fixOneDependencies(JDFDependencies dep)
TODO Please insert comment!

Parameters:
dep -

reparse

protected KElement reparse(KElement xjdf)

prepareRoot

private JDFNode prepareRoot()
Returns:

cleanResources

private void cleanResources(JDFNode theNode)
Parameters:
theNode -

canConvert

public boolean canConvert(KElement xjdf)
Parameters:
xjdf -
Returns:
true if the element can be converted

findNode

private JDFNode findNode(KElement xjdf,
                         boolean create)
find and optionally create the appropriate node

Parameters:
xjdf -
create - if true, creat the new node
Returns:
the node

isXResourceElement

boolean isXResourceElement(KElement toCheck)
Parameters:
toCheck -
Returns:

isXResource

boolean isXResource(KElement toCheck)
Parameters:
toCheck -
Returns:

createSeparationList

protected JDFSeparationList createSeparationList(KElement rPart,
                                                 java.lang.String elem)
make a separationlist from an attribute

Parameters:
rPart -
elem - the separation list attribute / element
Returns:

createProductRoot

protected JDFNode createProductRoot(JDFNode theNode)
make sure we have a product in case we have multiple nodes

Parameters:
theNode -
Returns:

convertUnits

protected void convertUnits(KElement e2)
Parameters:
e2 -

mergeProductLinks

private void mergeProductLinks(JDFNode theNode,
                               JDFNode parent)
Parameters:
theNode -
parent -

mergeProductLink

private void mergeProductLink(JDFNode theNode,
                              JDFNode parent,
                              java.lang.String resName,
                              JDFResourceLink.EnumUsage enumUsage)
Parameters:
theNode -
parent -
resName -
enumUsage -

setVersion

public void setVersion(JDFElement.EnumVersion version)
Parameters:
version - the version to set

getVersion

public JDFElement.EnumVersion getVersion()
Returns:
the version

attributesToSpan

protected void attributesToSpan(KElement e)
Parameters:
e -

attributeToSpan

protected KElement attributeToSpan(KElement e,
                                   java.lang.String name)
Parameters:
e -
name -
Returns:
the new span element

moveToLink

protected void moveToLink(JDFResourceLink rl,
                          JDFAttributeMap partmap,
                          JDFAttributeMap map,
                          java.lang.String a)
Parameters:
rl -
partmap -
map -
a -

moveAmountsToLink

protected void moveAmountsToLink(JDFAttributeMap partmap,
                                 JDFAttributeMap map,
                                 JDFResourceLink rl)
Parameters:
partmap -
map -
rl -