*** This class provides Binary Compatibility only, not Source Compatibility ***

Class HTMLEntry

java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.server.UnicastRemoteObject
com.sas.services.publish.AbstractEntry
com.sas.services.publish.HTMLEntry
All Implemented Interfaces:
com.sas.entities.EntityKeyInterface, EntryInterface, HTMLEntryInterface, Serializable, Remote

@SASScope("ALL") @BinaryCompatibilityOnly public class HTMLEntry extends AbstractEntry implements HTMLEntryInterface
Represents an HTML entry that can then be added to a result package for publishing. See Constructing a Result Package to Publish for an example of how this class is used.

An HTML entry is a container for various files that implement HTMLFileInterface. Within MVA SAS, the ODS HTML statement generates HTML files. The body file contains the results from the procedure. The contents file is a table of contents that links to the body file. The pages file is a table of pages that links to the body file. The frame file is a frame that displays the table of contents, the table of pages and the body file. The HTML entry provides a way to identify each of these files, and encapsulate them into one entry.

The HTML entry contains a main HTML file. If a frame file exists, it should be designated as the main file; otherwise, the body file should be designated as the main file for the HTML entry. The HTML entry can also contain any number of companion files. The companion files are any files other than the main HTML file. The companion files can include, body, frame, contents and page files, as well as any miscellaneous files (such as HTML, GIF, JPG) needed by the HTML entry.

Since:
1.0
See Also:
  • Constructor Details

  • Method Details

    • getFile

      public HTMLFileInterface getFile() throws RemoteException, TransportException, IllegalStateException
      Returns the main file for this HTML entry. For ODS generated HTML files, this is typically the frame file if it exists; otherwise it is the main body file.
      Specified by:
      getFile in interface HTMLEntryInterface
      Returns:
      HTMLFileInterface The main HTML file for this set.
      Throws:
      TransportException - If the transport encounters an error getting the file.
      RemoteException - If a network anomaly is encountered.
      IllegalStateException - if the result package containing this entry has already been closed.
    • setFile

      public void setFile(HTMLFileInterface mainFile) throws IllegalArgumentException, IllegalStateException, RemoteException
      Sets the main file for this HTML entry.
      Specified by:
      setFile in interface HTMLEntryInterface
      Parameters:
      mainFile - The main HTML file for this HTML entry.
      Throws:
      IllegalArgumentException - If the file type is anything other than HTMLFileInterface.MAIN_BODY_FILE or HTMLFileInterface.MAIN_FRAME_FILE.
      IllegalStateException - If the entry is read only or if the result package containing this entry has already been closed.
      RemoteException - If a network anomaly is encountered.
    • getFile

      public HTMLFileInterface getFile(String uniqueId) throws IllegalStateException, RemoteException, TransportException
      Returns the file identified by the entity key. The file can be the main HTML file or any companion file within the HTML set.
      Specified by:
      getFile in interface HTMLEntryInterface
      Parameters:
      uniqueId - The unique identifier of the desired file. This unique identifier can identify the main file or any companion file within the HTML entry.
      Returns:
      HTMLFileInterface The file within the HTML entry. This may be null if no file is found with the specified identifier.
      Throws:
      IllegalStateException - If the result package containing this entry has already been closed.
      TransportException - If the transport encounters an error getting the entry.
      RemoteException - If a network anomaly is encountered.
    • getCompanionFiles

      public HTMLFileInterface[] getCompanionFiles() throws RemoteException, TransportException, IllegalStateException
      Returns an array of all companion files included in this HTML entry. The companion files are any files other than the main HTML file. The companion files can include, the body, frame, contents and page files, as well as any additional files (such as HTML, GIF, JPG) needed by the HTML entry. The order is preserved between addCompanionFile(com.sas.services.publish.HTMLFileInterface) and getCompanionFiles().
      Specified by:
      getCompanionFiles in interface HTMLEntryInterface
      Returns:
      HTMLFileInterface[] An array of HTMLFileInterface objects.
      Throws:
      IllegalStateException - if the result package containing this entry has already been closed.
      TransportException - If the transport encounters an error getting the companion files.
      RemoteException - If a network anomaly is encountered.
    • addCompanionFile

      public void addCompanionFile(HTMLFileInterface companion) throws IllegalArgumentException, IllegalStateException, RemoteException
      Adds a companion to file to the HTML entry. An HTML entry can contain multiple companion files. This method adds the file to the existing companion files. The order is preserved between addCompanionFile(com.sas.services.publish.HTMLFileInterface) and getCompanionFiles().
      Specified by:
      addCompanionFile in interface HTMLEntryInterface
      Parameters:
      companion - The companion file to add to the existing HTML entry.
      Throws:
      IllegalArgumentException - If the file type added is HTMLFileInterface.MAIN_BODY_FILE or HTMLFileInterface.MAIN_FRAME_FILE.
      IllegalStateException - If the entry is read only or if the result package containing this entry has already been closed.
      RemoteException - If a network anomaly is encountered.
    • setCompanionFiles

      public void setCompanionFiles(HTMLFileInterface[] companions) throws IllegalArgumentException, IllegalStateException, RemoteException
      Sets the companion to files for this HTML entry. This replaces any previously set companion files.
      Specified by:
      setCompanionFiles in interface HTMLEntryInterface
      Parameters:
      companions - The companion files to set for this HTML entry.
      Throws:
      IllegalArgumentException - If any of the companion files have a role of HTMLFileInterface.MAIN_BODY_FILE or HTMLFileInterface.MAIN_FRAME_FILE.
      IllegalStateException - If the entry is read only or if the package containing this entry has already been closed.
      RemoteException - If a network anomaly is encountered.
    • closeEntry

      protected void closeEntry()
      Remove any temporary files needed for inputstream re-use and mark this entry as closed.