Class ApplicationExportHandlerForJar

java.lang.Object
wt.ixb.publicforapps.ApplicationExportHandlerTemplate
wt.ixb.publicforapps.ApplicationExportHandlerForJar
All Implemented Interfaces:
ApplicationExpImportHandler, ApplicationExportHandler

public class ApplicationExportHandlerForJar extends ApplicationExportHandlerTemplate
This class provides methods for storing XML and content files in export jar file. It handles both ApplicationData content and content residing in local file system.

Supported API: true

Extendable: false
  • Constructor Details

    • ApplicationExportHandlerForJar

      public ApplicationExportHandlerForJar(File fileToSave, File dirToSave) throws WTException


      Supported API: true
      Parameters:
      fileToSave - The jar file to store exportedinformation (meta data and content data)
      dirToSave - Directory where the jar file will be stored.
      Throws:
      WTException
  • Method Details

    • getJarFile

      public File getJarFile()
      Gets the value of the attribute: jarFile; The jar file to store exportedinformation (meta data and content data)

      Supported API: true
      Overrides:
      getJarFile in class ApplicationExportHandlerTemplate
      Returns:
      File
    • getSaveDir

      protected File getSaveDir()
      Gets the value of the attribute: saveDir; Directory where the jar file will be stored.

      Supported API: true
      Returns:
      File
    • reallyStoreContent

      public void reallyStoreContent(Object contentHolder, Exporter exporter, InputStream content, String contentId) throws WTException
      Stores the given content of the content parameter "contentAttr". The parameter "contentId" is the unique content ID which was previously computed and returned by storeContent (Object contentAttr).

      Supported API: true
      Specified by:
      reallyStoreContent in interface ApplicationExportHandler
      Overrides:
      reallyStoreContent in class ApplicationExportHandlerTemplate
      Parameters:
      contentHolder - The object holding the attribute (directly or indirectly) "contentAttr".
      exporter -
      content - The content as InputStream which is associated with the contentId.
      contentId - The unique content ID which was previously computed by calling "storeContent (Object contentAttr)"
      Throws:
      WTException
    • reallyStoreContent

      public void reallyStoreContent(Object contentHolder, Exporter exporter, InputStream content, long contentSize, String contentId) throws WTException
      Stores the given content of the content parameter "contentAttr". The parameter "contentId" is the unique content ID which was previously computed and returned by storeContent (Object contentAttr). *

      Supported API: true
      Specified by:
      reallyStoreContent in interface ApplicationExportHandler
      Overrides:
      reallyStoreContent in class ApplicationExportHandlerTemplate
      Parameters:
      contentHolder - The object holding the attribute (directly or indirectly) "contentAttr".
      exporter -
      content - The content as InputStream which is associated with the contentId.
      contentSize - The size of content in bytes.
      contentId - The unique content ID which was previously computed by calling "storeContent (Object contentAttr)"
      Throws:
      WTException
    • storeContent

      public String storeContent(File contentFile) throws WTException
      Stores content files residing in the local file system (as in the case of Representation objects).

      Supported API: true
      Specified by:
      storeContent in interface ApplicationExportHandler
      Overrides:
      storeContent in class ApplicationExportHandlerTemplate
      Parameters:
      contentFile -
      file -
      Returns:
      String
      Throws:
      WTException
    • storeContent

      public String storeContent(File contentFile, String filename) throws WTException
      Stores content files residing in the local file system (as in the case of Representation objects).

      Supported API: true
      Specified by:
      storeContent in interface ApplicationExportHandler
      Overrides:
      storeContent in class ApplicationExportHandlerTemplate
      Parameters:
      contentFile -
      filename -
      file -
      Returns:
      String
      Throws:
      WTException
    • storeContent

      public String storeContent(Object contentAttr) throws WTException
      Stores the given content of exported object. The return value is String, that will be used in XML file as an identifier of this content. Application should be able to find the content during the import process by this identifier. The content of the associated object might not be saved, depending on the implementation of the this interface.

      Supported API: true
      Specified by:
      storeContent in interface ApplicationExportHandler
      Overrides:
      storeContent in class ApplicationExportHandlerTemplate
      Parameters:
      contentAttr - The content attribute which is related to InputStream or BLOB. e.g. it can be ApplicationData , File or String (full path of a file), etc
      Returns:
      String
      Throws:
      WTException
    • storeDocument

      public String storeDocument(IxbElement doc, String dtd) throws WTException
      Stores the given XML element, which is the XML representation of exported object, based on the provided DTD. If parameter dtd is null, Windchill's default DTD is assumed. Return XML file name or some other string identifier for the stored element.

      Supported API: true
      Specified by:
      storeDocument in interface ApplicationExportHandler
      Overrides:
      storeDocument in class ApplicationExportHandlerTemplate
      Parameters:
      doc -
      dtd -
      elem -
      Returns:
      String
      Throws:
      WTException
      See Also:
      • storeDocument (IxbElement elem)
    • storeDocument

      public String storeDocument(IxbElement doc, ByteArrayOutputStream bos) throws WTException
      Stores the given ByteArrayOutputStream, which is the XML representation of exported object, based on the provided DTD. Return XML file name or some other string identifier for the stored element.

      Supported API: true
      Specified by:
      storeDocument in interface ApplicationExportHandler
      Overrides:
      storeDocument in class ApplicationExportHandlerTemplate
      Parameters:
      doc -
      bos -
      elem -
      Returns:
      String
      Throws:
      WTException
      See Also:
      • storeDocument (IxbElement elem)
    • storeAdditionalInfo

      public void storeAdditionalInfo(Object object, IxbDocument fileXML, String fileId) throws WTException
      Stores additional information related to object and its XML representation. Currently it stores information regarding the source container of the object. This method is called from the handler after object is exported.

      Supported API: true
      Specified by:
      storeAdditionalInfo in interface ApplicationExportHandler
      Overrides:
      storeAdditionalInfo in class ApplicationExportHandlerTemplate
      Parameters:
      object -
      fileXML -
      fileId -
      Throws:
      WTException
    • addObjectToManifest

      public void addObjectToManifest(String userObjImage)
      Add the localized object identifier of the object (userObjImage) to the manifest.

      Supported API: true
      Overrides:
      addObjectToManifest in class ApplicationExportHandlerTemplate
      Parameters:
      userObjImage - The localized object identifier of the object
    • cleanTempDir

      public void cleanTempDir() throws WTException
      Delete all files in the directory (including this directory) where is used to save the jar file. The directory was the one from the constructor ApplicationExportHandlerForJar( File fileToSave, File dirToSave ).

      Supported API: true *
      Throws:
      WTException
    • createManifest

      public void createManifest() throws WTException
      Create the manifest file in the jar. The content of the manifest file will copy the information as accumulated by calling the method addObjectToManifest (String userObjImage).

      Supported API: true *
      Throws:
      WTException
    • createManifest

      public void createManifest(File manifestFile, String fileName) throws WTException
      Create the manifest file in the jar. The manifest file will copy the contents in the File file.

      Supported API: true *
      Overrides:
      createManifest in class ApplicationExportHandlerTemplate
      Throws:
      WTException
    • storeLogMessage

      public void storeLogMessage(String resourceBundle, String messageKey, Object[] textInserts) throws WTException
      Supplies the localized log message for the application.

      Supported API: true
      Overrides:
      storeLogMessage in class ApplicationExportHandlerTemplate
      Parameters:
      resourceBundle -
      messageKey -
      textInserts -
      Throws:
      WTException
    • storeLogMessage

      public void storeLogMessage(String resourceBundle, String messageKey, Object[] textInserts, int importanceLevel) throws WTException
      Supplies the localized log message for the application.

      Supported API: true
      Specified by:
      storeLogMessage in interface ApplicationExpImportHandler
      Overrides:
      storeLogMessage in class ApplicationExportHandlerTemplate
      Parameters:
      resourceBundle -
      messageKey -
      textInserts -
      importanceLevel -
      Throws:
      WTException
    • finalizeExport

      public void finalizeExport(boolean outcome) throws WTException
      do finalize actions before export is finished, current only call cleanTempDir
      Overrides:
      finalizeExport in class ApplicationExportHandlerTemplate
      Parameters:
      outcome -

      Supported API: true *
      Throws:
      WTException