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

Package com.sas.services.publish

# Class ReferenceEntry

java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.server.UnicastRemoteObject
com.sas.services.publish.AbstractEntry
com.sas.services.publish.ReferenceEntry

All Implemented Interfaces:
  `com.sas.entities.EntityKeyInterface`, `EntryInterface`, `ReferenceEntryInterface`, `Serializable`, `Remote`

@SASScope("ALL") @BinaryCompatibilityOnly public class ReferenceEntry extends AbstractEntry implements ReferenceEntryInterface
Represents a reference entry that can then be added to a result package for publishing. A reference entry simply identifies (references) some data or file (such as a web page) that is external to the package. See Constructing a Result Package to Publish for an example of how this class is used.

Since:
  1.0
See Also:
  - Serialized Form

- ## Field Summary

  ### Fields inherited from class com.sas.services.publish.AbstractEntry

  `BINARY_COMPAT_VERSION, CATALOG_COMPAT_VERSION, DATASET_COMPAT_VERSION, DEFAULT_ENTRY_VERSION, HTML_COMPAT_VERSION, MDDB_COMPAT_VERSION, NESTEDPACKAGE_COMPAT_VERSION, REFERENCE_COMPAT_VERSION, SQLVIEW_COMPAT_VERSION, TEXT_COMPAT_VERSION, VERSION_94_EXTENDED_ATTRIBUTES, VIEWER_COMPAT_VERSION`

  ### Fields inherited from class java.rmi.server.RemoteObject

  `ref`

  ### Fields inherited from interface com.sas.services.publish.ReferenceEntryInterface

  `HTML_REFERENCE, URL_REFERENCE`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  ``
  `ReferenceEntry()`
  Creates a default instance.
  `protected`
  `ReferenceEntry(Class theClass)`
  Creates a new reference entry.
  ``
  `ReferenceEntry(String reference, String referenceType)`
  Creates a new reference entry.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getReference()`
  Returns the reference string.
  `String`
  `getReferenceType()`
  Returns the type of reference.
  `void`
  `setReference(String reference)`
  Sets the reference string.
  `void`
  `setReferenceType(String referenceType)`
  Sets type of reference.

  ### Methods inherited from class com.sas.services.publish.AbstractEntry

  `getDescription, getEntityKey, getNameValuePairs, getURL, isClosed, isReadOnly, sameEntity, setClosed, setDescription, setEntityKey, setNameValuePairs, setRead, throwExceptionIfClosed`

  ### 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`

  ### Methods inherited from interface com.sas.entities.EntityKeyInterface

  `getEntityKey, sameEntity, setEntityKey`

  ### Methods inherited from interface com.sas.services.publish.EntryInterface

  `getDescription, getNameValuePairs, getURL, isReadOnly, setDescription, setNameValuePairs`

- ## Constructor Details

  - ### ReferenceEntry

    public ReferenceEntry() throws RemoteException
    Creates a default instance. This constructor should not be used and is only provided sine the compiler was previously providing a default public constructor. Use {#ReferenceEntry(String reference, String referenceType)} instead.
    Throws:
      `RemoteException` - If a network anomaly is encountered.

  - ### ReferenceEntry

    protected ReferenceEntry(Class theClass) throws RemoteException
    Creates a new reference entry.
    Parameters:
      `theClass` - The class to use when determine which RMI socket factories are to be used when exporting a remote object.
    Throws:
      `RemoteException` - If a network anomaly is encountered.

  - ### ReferenceEntry

    public ReferenceEntry(String reference, String referenceType) throws RemoteException, IllegalArgumentException
    Creates a new reference entry.
    Parameters:
      `reference` - The reference which identifies some data or file that is external to the package, such as a url.
      `referenceType` - The type of reference. Support reference types include HTML or URL.
    Throws:
      `RemoteException` - If a network anomaly is encountered.
      `IllegalArgumentException`

- ## Method Details

  - ### getReference

    public String getReference() throws RemoteException, TransportException
    Returns the reference string.
    Specified by:
      `getReference` in interface `ReferenceEntryInterface`
    Returns:
      `String` The reference string for this entry.
    Throws:
      `TransportException` - If the transport encounters an error getting the reference string.
      `RemoteException` - If a network anomaly is encountered.

  - ### setReference

    public void setReference(String reference) throws RemoteException, IllegalStateException
    Sets the reference string.
    Specified by:
      `setReference` in interface `ReferenceEntryInterface`
    Parameters:
      `reference` - The reference string for this entry.
    Throws:
      `IllegalStateException` - If this entry is read only.
      `RemoteException` - If a network anomaly is encountered.

  - ### setReferenceType

    public void setReferenceType(String referenceType) throws IllegalStateException, RemoteException
    Sets type of reference.
    Specified by:
      `setReferenceType` in interface `ReferenceEntryInterface`
    Parameters:
      `referenceType` - The type of refrence `ReferenceEntryInterface.URL_REFERENCE` or `ReferenceEntryInterface.HTML_REFERENCE`
    Throws:
      `IllegalStateException` - If this entry is read only.
      `RemoteException` - If a network anomaly is encountered.

  - ### getReferenceType

    public String getReferenceType() throws RemoteException, TransportException
    Returns the type of reference.
    Specified by:
      `getReferenceType` in interface `ReferenceEntryInterface`
    Returns:
      `String` The type of refrence, `ReferenceEntryInterface.URL_REFERENCE` or `ReferenceEntryInterface.HTML_REFERENCE`
    Throws:
      `TransportException` - If the transport encounters an error getting the reference type.
      `RemoteException` - If a network anomaly is encountered.