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

Class AbstractEntry

java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.server.UnicastRemoteObject
com.sas.services.publish.AbstractEntry
All Implemented Interfaces:
com.sas.entities.EntityKeyInterface, EntryInterface, Serializable, Remote
Direct Known Subclasses:
BinaryFileEntry, HTMLEntry, ReferenceEntry, ResultPackage, TextFileEntry, ViewerEntry

@SASScope("ALL") @BinaryCompatibilityOnly public abstract class AbstractEntry extends UnicastRemoteObject implements EntryInterface
Abstract implementation of a result package entry. Specific entries may extend this implementation. It enables the retrieval of attributes associated with the result package entry. This class is intended to be used internally by the Publish Service.
Since:
1.0
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Binary entry compatibility version to be used internally only
    static final int
    SAS catalog entry compatibility version to be used internally only
    static final int
    SAS dataset entry compatibility version to be used internally only 9.1 noTranscoding option compatability version is 33. 9.4 extended attribute compatability version is 34.
    static final int
    Default entry version.
    static final int
    HTML entry compatibility version to be used internally only
    static final int
    SAS MDDB entry compatibility version to be used internally only
    static final int
    Nested package compatibility version to be used internally only
    static final int
    reference entry compatibility version to be used internally only
    static final int
    SAS SQL view entry compatibility version to be used internally only
    static final int
    text entry compatibility version to be used internally only
    static final int
    Extended data set attribute compatibility version to be used internally only for data set entries
    static final int
    Viewer entry compatibility version to be used internally only

    Fields inherited from class java.rmi.server.RemoteObject

    ref
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
     
    Constructs a default instance using RMI socket factories appropriate for AbstractEntry.class.
    protected
    AbstractEntry(Class theClass)
    Constructs an instance using RMI socket factories appropriate for the specified class.
  • Method Summary

    Modifier and Type
    Method
    Description
    String
    Returns the description.
    String
    Get the unique identifier of this result package or entry.
    Returns the name/value pairs.
    String
    Returns the URL that identifies the entry.
    protected boolean
    Determines if the entry or package has already been closed.
    boolean
    Returns true when the entry or package is read only.
    boolean
    sameEntity(com.sas.entities.EntityKeyInterface entity)
     
    protected void
    setClosed(boolean closed)
    Sets the close state of the entry or package.
    void
    setDescription(String description)
    Set the description.
    void
    setEntityKey(String entityKey)
    Set the unique entity key.
    void
    Sets the name/value pairs.
    protected void
    setRead(boolean readOnly)
    Sets the readOnly state of the entry or package.
    protected void
    Throws an illegalStateException if the entry has already been closed.

    Methods inherited from class java.rmi.server.UnicastRemoteObject

    clone, exportObject, exportObject, exportObject, exportObject, exportObject, unexportObject

    Methods inherited from class java.rmi.server.RemoteServer

    getClientHost, getLog, setLog

    Methods inherited from class java.rmi.server.RemoteObject

    equals, getRef, hashCode, toString, toStub

    Methods inherited from class java.lang.Object

    finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • DEFAULT_ENTRY_VERSION

      public static final int DEFAULT_ENTRY_VERSION
      Default entry version.
      See Also:
    • REFERENCE_COMPAT_VERSION

      public static final int REFERENCE_COMPAT_VERSION
      reference entry compatibility version to be used internally only
      See Also:
    • TEXT_COMPAT_VERSION

      public static final int TEXT_COMPAT_VERSION
      text entry compatibility version to be used internally only
      See Also:
    • BINARY_COMPAT_VERSION

      public static final int BINARY_COMPAT_VERSION
      Binary entry compatibility version to be used internally only
      See Also:
    • HTML_COMPAT_VERSION

      public static final int HTML_COMPAT_VERSION
      HTML entry compatibility version to be used internally only
      See Also:
    • VIEWER_COMPAT_VERSION

      public static final int VIEWER_COMPAT_VERSION
      Viewer entry compatibility version to be used internally only
      See Also:
    • DATASET_COMPAT_VERSION

      public static final int DATASET_COMPAT_VERSION
      SAS dataset entry compatibility version to be used internally only 9.1 noTranscoding option compatability version is 33. 9.4 extended attribute compatability version is 34.
      See Also:
    • VERSION_94_EXTENDED_ATTRIBUTES

      public static final int VERSION_94_EXTENDED_ATTRIBUTES
      Extended data set attribute compatibility version to be used internally only for data set entries
      See Also:
    • CATALOG_COMPAT_VERSION

      public static final int CATALOG_COMPAT_VERSION
      SAS catalog entry compatibility version to be used internally only
      See Also:
    • MDDB_COMPAT_VERSION

      public static final int MDDB_COMPAT_VERSION
      SAS MDDB entry compatibility version to be used internally only
      See Also:
    • SQLVIEW_COMPAT_VERSION

      public static final int SQLVIEW_COMPAT_VERSION
      SAS SQL view entry compatibility version to be used internally only
      See Also:
    • NESTEDPACKAGE_COMPAT_VERSION

      public static final int NESTEDPACKAGE_COMPAT_VERSION
      Nested package compatibility version to be used internally only
      See Also:
  • Constructor Details

    • AbstractEntry

      public AbstractEntry() throws RemoteException
      Constructs a default instance using RMI socket factories appropriate for AbstractEntry.class.
      Throws:
      RemoteException - if unable to export the remote object.
    • AbstractEntry

      protected AbstractEntry(Class theClass) throws RemoteException
      Constructs an instance using RMI socket factories appropriate for the specified class.
      Parameters:
      theClass - The class that will be used to determine the appropriate RMI socket factories.
      Throws:
      RemoteException - if unable to export the remote object.
  • Method Details

    • throwExceptionIfClosed

      protected void throwExceptionIfClosed() throws IllegalStateException
      Throws an illegalStateException if the entry has already been closed.
      Throws:
      IllegalStateException - If the package or entry has already been closed.
    • isClosed

      protected boolean isClosed()
      Determines if the entry or package has already been closed.
      Returns:
      boolean True if the package or entry is already closed; otherwise false is returned.
    • setClosed

      protected void setClosed(boolean closed)
      Sets the close state of the entry or package.
      Parameters:
      closed - The close flag. The closed state should be true when the result package is closed.
    • isReadOnly

      public boolean isReadOnly() throws RemoteException
      Returns true when the entry or package is read only. This occurs when the result package is an existing package that has been retrieved. Entries are read only if they belong to a package that is being retrieved.
      Specified by:
      isReadOnly in interface EntryInterface
      Returns:
      boolean True if read only; otherwise if this is a new entry/package under construction, false is returned.
      Throws:
      IllegalStateException - If the result package has already been closed.
      RemoteException - If a network anomaly is encountered.
    • setRead

      protected void setRead(boolean readOnly)
      Sets the readOnly state of the entry or package.
      Parameters:
      readOnly - The readOnly flag. The read only should be true when the result package is read only.
    • getDescription

      public String getDescription() throws RemoteException, IllegalStateException
      Returns the description.
      Specified by:
      getDescription in interface EntryInterface
      Returns:
      String The description.
      Throws:
      RemoteException - If a network anomaly is encountered.
      IllegalStateException - If the package has already been closed.
    • setDescription

      public void setDescription(String description) throws IllegalStateException, RemoteException
      Set the description.
      Specified by:
      setDescription in interface EntryInterface
      Parameters:
      description - The description.
      Throws:
      IllegalStateException - If the entry or package is read only or if the result package has already been closed.
      RemoteException - If a network anomaly is encountered.
    • getNameValuePairs

      public AttributeMapInterface getNameValuePairs() throws TransportException, RemoteException, IllegalStateException
      Returns the name/value pairs. At publish time, user-specified name/value pairs may be associated with a result package or its entries.
      Specified by:
      getNameValuePairs in interface EntryInterface
      Returns:
      AttributeMapInterface The name values.
      Throws:
      TransportException - If the transport encounters an error getting name value pairs.
      RemoteException - If a network anomaly is encountered.
      IllegalStateException - If the package has already been closed.
    • setNameValuePairs

      public void setNameValuePairs(AttributeMapInterface namevalues) throws IllegalStateException, RemoteException
      Sets the name/value pairs. These name/value pairs provide user or application control information describing the package or entry.
      Specified by:
      setNameValuePairs in interface EntryInterface
      Parameters:
      namevalues - The name/value pairs.
      Throws:
      IllegalStateException - If the entry or package is being retrieved or if the result package has already been closed.
      RemoteException - If a network anomaly is encountered.
    • getEntityKey

      public String getEntityKey() throws IllegalStateException, RemoteException
      Get the unique identifier of this result package or entry.
      Specified by:
      getEntityKey in interface com.sas.entities.EntityKeyInterface
      Returns:
      String The unique identifier.
      Throws:
      RemoteException - If a network anomaly is encountered.
      IllegalStateException - If the package has already been closed.
    • sameEntity

      public boolean sameEntity(com.sas.entities.EntityKeyInterface entity) throws RemoteException
      Specified by:
      sameEntity in interface com.sas.entities.EntityKeyInterface
      Throws:
      RemoteException
    • setEntityKey

      public void setEntityKey(String entityKey) throws RemoteException, IllegalStateException
      Set the unique entity key. The entity key for the result package or entry cannot be changed. This method will throw an IllegalStateException.
      Specified by:
      setEntityKey in interface com.sas.entities.EntityKeyInterface
      Parameters:
      entityKey - Unique entity key.
      Throws:
      RemoteException - If a network anomaly is encountered.
      IllegalStateException - The unique entity key for a result package or entry cannot be changed.
    • getURL

      public String getURL() throws IllegalStateException, TransportException, RemoteException
      Returns the URL that identifies the entry.
      Specified by:
      getURL in interface EntryInterface
      Returns:
      String The URL string; may be null.
      Throws:
      IllegalStateException - If the result package has already been closed.
      TransportException - If the transport encounters an error obtaining the URL.
      RemoteException - If a network anomaly is encountered.