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

Package com.sas.services.publish.metadata

# Interface PackageInterface

All Superinterfaces:
  `MetadataInterface`, `PublicObjectInterface`, `Remote`

All Known Subinterfaces:
  `ArchiveInterface`, `DavBinaryPackageInterface`

All Known Implementing Classes:
  `DavBinaryPackage`

@SASScope("ALL") @BinaryCompatibilityOnly public interface PackageInterface extends MetadataInterface
This is a generic interface to represent a published SAS package persisted to a file system.

- ## Field Summary

  ### Fields inherited from interface com.sas.services.information.metadata.MetadataInterface

  `METADATA_STATE_DELETED, METADATA_STATE_DESTROYED, METADATA_STATE_NEW, METADATA_STATE_NORMAL, PERMISSION_READMETADATA, PERMISSION_WRITEMETADATA`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getAbstract()`
  Get the package abstract.
  `ChannelInterface`
  `getChannel()`
  Get the Channel that this archive belongs to, if any.
  `ContentDestination`
  `getContentDestination()`
  Get the ContentDestination that represents the content data.
  `long`
  `getCreationDate()`
  Get the date the package was created.
  `String`
  `getCreationDateString()`
  Get a formatted string representing the date and time the package was created.
  `String`
  `getDisplayDescription()`
  Get the display description for this object.
  `String`
  `getDisplayName()`
  Get the display name for this object.
  `long`
  `getExpirationDate()`
  Get the expiration date of the package.
  `String`
  `getExpirationDateString()`
  Get the expiration date of the package.
  `AttributeMapInterface`
  `getProperties()`
  Get the name/value pairs for this package.
  `PersonInterface`
  `getPublisher()`
  Get a com.sas.services.information.metadata.Person object which represents the publisher of the package.
  `String`
  `getPublisherAlias()`
  Get the alias information for the publisher.
  `boolean`
  `isExpired()`
  Determines if the package has expired.

  ### Methods inherited from interface com.sas.services.information.metadata.MetadataInterface

  `add, addAccessControl, addAttribute, addAttributes, addDocument, addExtension, addGroup, addImplementor, addKeyword, addNoteTextStore, addNoteTextStore, addObjectProperty, addObjectProperty, addPermissions, addPrompt, addPropertySet, addRemark, addResponsibleParty, addTransactionListener, addUsedByPrototype, checkin, checkout, commit, copyTo, countAssociatedObjects, delete, deleteAttribute, deleteAttributes, destroy, getAccessControls, getAttribute, getAttributes, getAuthorizationUtil, getCreateDate, getCreatedBy, getDescription, getDocuments, getEntityKey, getEntityURL, getExtensions, getGroups, getGUID, getIdentities, getImplementors, getKeywords, getLockedBy, getModifiedBy, getModifyDate, getNoteTextStore, getNoteTextStores, getNoteTextStoresByRole, getObjectProperties, getParent, getParentPath, getParents, getPath, getPaths, getPermission, getPermissions, getPermissions, getPreviousVersionNames, getPrimaryPropertyGroup, getPrompt, getPrompts, getPropertyBag, getPropertySets, getRemarksList, getReposId, getRepository, getRepositoryEntity, getRepositoryName, getReposKey, getResponsibleParties, getState, getTrackingId, getType, getUsageVersion, getUsedByPrototypes, getUsingPrototype, getVersion, isAuthorized, isCompatible, isDeleted, isDestroyed, isObjectAlive, isReadCompatible, mapNameToFilesystem, mapUrlToFilesystem, moveTo, newServiceObject, refresh, removeAccessControl, removeDocument, removeExtension, removeGroup, removeImplementor, removeKeyword, removeNoteTextStore, removeObjectProperty, removePermissions, removePrompt, removePropertySet, removeResponsibleParty, removeResponsiblePartyByIdentity, removeUsedByPrototype, rollback, setAttribute, setAttributes, setDeleted, setDescription, setDocuments, setExtensions, setGroups, setGUID, setKeywords, setName, setNoteTextStores, setObjectProperties, setPermission, setPrimaryPropertyGroup, setPrompt, setPrompts, setRemarksList, setRepository, setUsingPrototype, startTransaction, toByteArray, transactionEvent, uncheckout, update, updateFromBag, version`

  ### Methods inherited from interface com.sas.services.information.publicobject.PublicObjectInterface

  `addProcessorInterface, getContainer, getIdentifier, getName, getObjectURI, getPathUrl, getProcessorInterface, getTypeDescriptor`

- ## Method Details

  - ### getChannel

    ChannelInterface getChannel() throws ServiceException, RemoteException
    Get the Channel that this archive belongs to, if any.
    Returns:
      The Channel that this package was published under.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getPublisher

    PersonInterface getPublisher() throws ServiceException, RemoteException
    Get a com.sas.services.information.metadata.Person object which represents the publisher of the package.

    Returns:
      The Person who published the package.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getPublisherAlias

    String getPublisherAlias() throws ServiceException, RemoteException
    Get the alias information for the publisher. This String is in the form of "userAccountName" "personName". The first quoted value is the proccess id (name) of the publisher. This is followed by a space, and then another quoted value which is the name of the person that published the package. If the name of the person was not available, this second quoted value will be the user name used to publish the package.

    Returns:
      A String containing the publisher alias information.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getContentDestination

    ContentDestination getContentDestination() throws ServiceException, RemoteException
    Get the ContentDestination that represents the content data.

    Returns:
      A ContentDestination which has the file system or server information.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getCreationDate

    long getCreationDate() throws ServiceException, RemoteException
    Get the date the package was created.

    Returns:
      The package creation date and time.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getCreationDateString

    String getCreationDateString() throws ServiceException, RemoteException
    Get a formatted string representing the date and time the package was created.

    Returns:
      A string representing the date the package was created.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getExpirationDate

    long getExpirationDate() throws ServiceException, RemoteException
    Get the expiration date of the package.

    Returns:
      The date and time the package expires and the data it contains should be considered obsolete.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getExpirationDateString

    String getExpirationDateString() throws ServiceException, RemoteException
    Get the expiration date of the package. The date is returned as a formatted string.

    Returns:
      The date and time the package expires and the data it contains should be considered obsolete.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getAbstract

    String getAbstract() throws ServiceException, RemoteException
    Get the package abstract. The abstract is a more detailed description of the contents of the package.

    Returns:
      The package abstract.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getProperties

    AttributeMapInterface getProperties() throws ServiceException, RemoteException
    Get the name/value pairs for this package.

    Returns:
      A Map of name/value pairs that describe this package.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - In the event of remote object failure.

  - ### getDisplayName

    String getDisplayName() throws ServiceException, RemoteException
    Get the display name for this object.

    Returns:
      The object display name.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - if an error occurs

  - ### getDisplayDescription

    String getDisplayDescription() throws ServiceException, RemoteException
    Get the display description for this object.

    Returns:
      The object display description.
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - if an error occurs

  - ### isExpired

    boolean isExpired() throws ServiceException, RemoteException
    Determines if the package has expired. The expiration datetime is compared with the current datetime when this method is invoked.

    Returns:
      `true` if the package has expired; otherwise `false`
    Throws:
      `ServiceException` - If a repository or service level error occurs.
      `RemoteException` - if an error occurs