Class ExportTool3
- java.lang.Object
-
- java.util.Observable
-
- com.nomagic.magicreport.engine.Tool
-
- com.nomagic.magicreport.engine.ConcurrentTool
-
- com.nomagic.magicdraw.magicreport.tools.ExportTool3
-
- All Implemented Interfaces:
com.nomagic.magicreport.engine.ITool,com.nomagic.magicreport.IVariable,java.io.Serializable,java.lang.Cloneable
@OpenApiAll public class ExportTool3 extends com.nomagic.magicreport.engine.ConcurrentToolThis class allow report to export element in other file format including tree folder. This class use XMLStreamWriter2 instead of DOM.- Since:
- Aut 31, 2021
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCONTEXT_NAMEContains a context name.
-
Constructor Summary
Constructors Constructor Description ExportTool3()Create an export tool.ExportTool3(com.nomagic.magicreport.engine.ITemplateEngine engine, java.util.Observer observer)Create an export tool with observer.ExportTool3(java.util.Observer observer)Create an export tool with observer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconsume(com.nomagic.magicreport.engine.ConcurrentTool.ConsumeObject consumeObject)Consume a object.protected voidcreateAndExportElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, com.nomagic.magicdraw.ui.ElementFilter filter)protected voidcreateAndExportElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, com.nomagic.magicdraw.ui.ElementFilter filter, boolean isSmart)protected voidcreateAndExportSmartElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, com.nomagic.magicdraw.ui.ElementFilter filter)protected voidcreateAttributeAndExportElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, boolean skipData)Create attributes for XML element represents theexportingElementand offer the element to be created into file.protected java.io.FilecreateResourcesDir(java.lang.String resourcesLocation)Create a resource directory.protected java.lang.StringcreateTagName(java.lang.String tagName)voiddestroy()Called by the engine to inform this tool is no longer use and that it should destroy any resources that it has allocated.java.lang.StringexportAll(boolean exportResources, boolean exportLinkedFile)Export current opened project into file.protected java.lang.StringexportCustomImageHolder(BaseElement exportingElement)Export the image for the element.com.nomagic.magicreport.engine.ITool.VoidexportDiagramImage(DiagramPresentationElement diagramPresentation, boolean exportResources)ImageExportResultexportDiagramImageWithResult(DiagramPresentationElement diagramPresentation, boolean exportResources)com.nomagic.magicreport.engine.ITool.VoidexportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources)Export element to XML file.com.nomagic.magicreport.engine.ITool.VoidexportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources, boolean exportLinkedFile)Export element to XML file.com.nomagic.magicreport.engine.ITool.VoidexportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources, boolean exportLinkedFile, ImageExportResult result)Export element to XML file.com.nomagic.magicreport.engine.ITool.VoidexportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources, boolean exportLinkedFile, com.nomagic.magicdraw.ui.ElementFilter filter)com.nomagic.magicreport.engine.ITool.VoidexportElementForTree(java.io.File exportingNodeFile, Element exportingElement, boolean exportResources)Export element to XML file which is used for create tree.com.nomagic.magicreport.engine.ITool.VoidexportElementForTree(java.io.File exportingNodeFile, Element exportingElement, boolean exportResources, com.nomagic.magicdraw.ui.ElementFilter filter)protected java.lang.StringexportIcon(BaseElement exportingElement)Export the icon for element.java.lang.StringexportIcon(java.lang.String type)protected java.lang.StringgetElementType(Element element)Return String representing element type.protected java.lang.StringgetElementTypeForTagName(Element element)static java.lang.StringgetHumanName(java.lang.String propertyName, java.util.Map<java.lang.String,java.lang.String> nameMap)java.lang.StringgetPropertyHumanName(java.lang.String propertyName, java.util.Map<java.lang.String,java.lang.String> nameMap)Get property human name of given property name.protected java.lang.StringgetResourcesLocation()Return location of resources directory.protected voidhandleIOException(java.lang.Exception e)protected booleanisCancel()voidsetRecursive(boolean isRecursive)voidsetReportBean(com.nomagic.magicdraw.magicreport.ui.bean.ReportBean reportBean)voidsetShowAuxiliary(boolean isShowAuxiliary)-
Methods inherited from class com.nomagic.magicreport.engine.ConcurrentTool
getCustomPoolSize, isNoSpaceException, isRunning, offer
-
Methods inherited from class com.nomagic.magicreport.engine.Tool
clone, getContext, getProperties, getProperty, getProperty, notifyObservers, setContext, setProperties
-
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, setChanged
-
-
-
-
Field Detail
-
CONTEXT_NAME
public static final java.lang.String CONTEXT_NAME
Contains a context name.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExportTool3
public ExportTool3()
Create an export tool.
-
ExportTool3
public ExportTool3(java.util.Observer observer)
Create an export tool with observer.- Parameters:
observer- Observer
-
ExportTool3
public ExportTool3(com.nomagic.magicreport.engine.ITemplateEngine engine, java.util.Observer observer)Create an export tool with observer.- Parameters:
engine- engineobserver- Observer
-
-
Method Detail
-
setRecursive
public void setRecursive(boolean isRecursive)
-
setReportBean
public void setReportBean(com.nomagic.magicdraw.magicreport.ui.bean.ReportBean reportBean)
-
setShowAuxiliary
public void setShowAuxiliary(boolean isShowAuxiliary)
-
consume
public void consume(com.nomagic.magicreport.engine.ConcurrentTool.ConsumeObject consumeObject)
Consume a object.- Specified by:
consumein classcom.nomagic.magicreport.engine.ConcurrentTool- Parameters:
consumeObject- consume object.- See Also:
ConcurrentTool.consume(ConsumeObject)
-
exportElement
public com.nomagic.magicreport.engine.ITool.Void exportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources)Export element to XML file.- Parameters:
exportingFile- exporting fileexportingElement- exporting elementexportResources- true if you want to export resources of this element- Returns:
- nothing
-
exportElement
public com.nomagic.magicreport.engine.ITool.Void exportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources, boolean exportLinkedFile, @CheckForNull com.nomagic.magicdraw.ui.ElementFilter filter)
-
exportElement
public com.nomagic.magicreport.engine.ITool.Void exportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources, boolean exportLinkedFile)Export element to XML file.- Parameters:
exportingFile- exporting fileexportingElement- exporting elementexportResources- true if you want to export resources of this elementexportLinkedFile- true if you want to include linked files.- Returns:
- nothing
-
exportElement
public com.nomagic.magicreport.engine.ITool.Void exportElement(java.io.File exportingFile, Element exportingElement, boolean exportResources, boolean exportLinkedFile, ImageExportResult result)Export element to XML file.- Parameters:
exportingFile- exporting fileexportingElement- exporting elementexportResources- true if you want to export resources of this elementexportLinkedFile- true if you want to include linked files.result- result of exporting digram- Returns:
- nothing
-
exportDiagramImage
public com.nomagic.magicreport.engine.ITool.Void exportDiagramImage(DiagramPresentationElement diagramPresentation, boolean exportResources)
-
exportDiagramImageWithResult
public ImageExportResult exportDiagramImageWithResult(DiagramPresentationElement diagramPresentation, boolean exportResources)
-
exportElementForTree
public com.nomagic.magicreport.engine.ITool.Void exportElementForTree(java.io.File exportingNodeFile, Element exportingElement, boolean exportResources, com.nomagic.magicdraw.ui.ElementFilter filter)
-
exportElementForTree
public com.nomagic.magicreport.engine.ITool.Void exportElementForTree(java.io.File exportingNodeFile, Element exportingElement, boolean exportResources)Export element to XML file which is used for create tree.- Parameters:
exportingNodeFile- exporting fileexportingElement- export elementexportResources- true if you want to export resources of this element- Returns:
- nothing
-
getResourcesLocation
protected java.lang.String getResourcesLocation()
Return location of resources directory.- Returns:
- a path to resources directory.
-
createResourcesDir
protected java.io.File createResourcesDir(java.lang.String resourcesLocation) throws java.io.IOExceptionCreate a resource directory.- Parameters:
resourcesLocation- resources location- Returns:
- a File pointed to resources directory
- Throws:
java.io.IOException- if IO error occurs.
-
exportIcon
public java.lang.String exportIcon(java.lang.String type) throws java.io.IOException- Throws:
java.io.IOException
-
exportIcon
protected java.lang.String exportIcon(BaseElement exportingElement) throws java.io.IOException
Export the icon for element. This method should not perform graphic renderer by itself. The icon exporting process should be enqueue by methodoffer(ConsumeObject).- Parameters:
exportingElement- target element- Returns:
- path to icon
- Throws:
java.io.IOException- if IO error occurs
-
exportCustomImageHolder
protected java.lang.String exportCustomImageHolder(BaseElement exportingElement) throws java.io.IOException
Export the image for the element. Image for the element will be exported from strereotype CustomImageHolder.- Parameters:
exportingElement- target element- Returns:
- path to icon
- Throws:
java.io.IOException- if IO error occurs
-
createAndExportElement
protected void createAndExportElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, @CheckForNull com.nomagic.magicdraw.ui.ElementFilter filter) throws java.io.IOException, javax.xml.stream.XMLStreamException- Throws:
java.io.IOExceptionjavax.xml.stream.XMLStreamException
-
createAndExportSmartElement
protected void createAndExportSmartElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, @CheckForNull com.nomagic.magicdraw.ui.ElementFilter filter) throws java.io.IOException, javax.xml.stream.XMLStreamException- Throws:
java.io.IOExceptionjavax.xml.stream.XMLStreamException
-
createAndExportElement
protected void createAndExportElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, @CheckForNull com.nomagic.magicdraw.ui.ElementFilter filter, boolean isSmart) throws java.io.IOException, javax.xml.stream.XMLStreamException- Throws:
java.io.IOExceptionjavax.xml.stream.XMLStreamException
-
createAttributeAndExportElement
protected void createAttributeAndExportElement(org.codehaus.stax2.XMLStreamWriter2 document, Element exportingElement, boolean exportResources, boolean exportLinkedFile, boolean skipData) throws java.io.IOException, javax.xml.stream.XMLStreamExceptionCreate attributes for XML element represents theexportingElementand offer the element to be created into file. Returnnullto cancel this element exporting.- Parameters:
document- XML documentexportingElement- exporting elementexportResources- true if you want to export resources of this elementexportLinkedFile- true if you want to include linked files.skipData- true to create only main attribute to xml document.- Throws:
java.io.IOException- when IO error occurred.javax.xml.stream.XMLStreamException
-
getElementType
protected java.lang.String getElementType(Element element)
Return String representing element type.- Parameters:
element- element- Returns:
- a String representing element type.
-
getElementTypeForTagName
protected java.lang.String getElementTypeForTagName(Element element)
-
createTagName
protected java.lang.String createTagName(java.lang.String tagName)
-
exportAll
public java.lang.String exportAll(boolean exportResources, boolean exportLinkedFile)Export current opened project into file.- Parameters:
exportResources- true if you want to export resources.exportLinkedFile- true if you want to include linked files.- Returns:
- nothing
-
destroy
public void destroy()
Called by the engine to inform this tool is no longer use and that it should destroy any resources that it has allocated.- Overrides:
destroyin classcom.nomagic.magicreport.engine.ConcurrentTool- See Also:
ConcurrentTool.destroy()
-
getPropertyHumanName
public java.lang.String getPropertyHumanName(java.lang.String propertyName, java.util.Map<java.lang.String,java.lang.String> nameMap)Get property human name of given property name. IfnameMapis used, human name will be resolved bynameMapthen resource string.- Parameters:
propertyName- a property namenameMap- optional provides new name map fromDSL.getPropertyNameMap(com.nomagic.uml2.ext.magicdraw.classes.mdkernel.Element)to resolve property name from <<metaType>>- Returns:
- human name
-
getHumanName
public static java.lang.String getHumanName(java.lang.String propertyName, java.util.Map<java.lang.String,java.lang.String> nameMap)
-
isCancel
protected boolean isCancel()
-
handleIOException
protected void handleIOException(java.lang.Exception e)
-
-