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

Class OMRPromptDefinition

java.lang.Object
java.rmi.server.RemoteObject
java.rmi.server.RemoteServer
java.rmi.server.UnicastRemoteObject
com.sas.services.information.metadata.Metadata
com.sas.services.information.metadata.prompt.OMRPromptDefinition
All Implemented Interfaces:
MetadataInterface, BaseOMRPromptInterface, com.sas.services.information.metadata.prompt.OMRPromptDefinitionInterface, PublicObjectInterface, com.sas.storage.editableproperties.LocalizableProperties, com.sas.storage.editableproperties.MultiLocaleProperties, com.sas.storage.editableproperties.SubstitutionProperties, Serializable, Remote

@SASScope("ALL") @BinaryCompatibilityOnly public final class OMRPromptDefinition extends Metadata implements OMRPromptDefinitionInterface, com.sas.storage.editableproperties.MultiLocaleProperties, com.sas.storage.editableproperties.SubstitutionProperties
This smart object stores a com.sas.prompts.definition.PromptDefintionInterface in metadata as a string of XML passed to setPromptInfo(). The prompt definition can be reconstructed via getPromptDefinition().
Since:
9.2
See Also:
  • Field Details

    • LOG_CONTEXT

      protected final String LOG_CONTEXT
    • RB_KEY

      protected static final String RB_KEY
      See Also:
    • OLDEST_VERSION

      public static final com.sas.util.UsageVersion OLDEST_VERSION
    • CURRENT_VERSION

      public static final com.sas.util.UsageVersion CURRENT_VERSION
  • Constructor Details

    • OMRPromptDefinition

      public OMRPromptDefinition(com.sas.metadata.remote.Prompt arg0) throws RemoteException
      Parameters:
      arg0 -
      Throws:
      RemoteException
    • OMRPromptDefinition

      public OMRPromptDefinition() throws RemoteException
      Throws:
      RemoteException
    • OMRPromptDefinition

      public OMRPromptDefinition(Object arg0, Class arg1) throws RemoteException
      Parameters:
      arg0 -
      arg1 -
      Throws:
      RemoteException
    • OMRPromptDefinition

      public OMRPromptDefinition(com.sas.metadata.remote.impl.PromptImpl arg0) throws RemoteException
      Parameters:
      arg0 -
      Throws:
      RemoteException
    • OMRPromptDefinition

      public OMRPromptDefinition(com.sas.metadata.remote.impl.PromptImpl_Stub arg0) throws RemoteException
      Throws:
      RemoteException
    • OMRPromptDefinition

      public OMRPromptDefinition(RepositoryInterface repos, String name, FolderInterface parent) throws RemoteException
      Constructor for OMRPromptDefinition.
      Parameters:
      repos - RepositoryInterface
      name - String
      parent - FolderInterface
      Throws:
      RemoteException
  • Method Details

    • getType

      public String getType()
      Returns SmartTypes.TYPE_PROMPT, i.e. "Prompt", the smart object type.
      Specified by:
      getType in interface MetadataInterface
      Overrides:
      getType in class Metadata
      Returns:
      String
      See Also:
    • getPromptInfo

      public String getPromptInfo() throws RemoteException, ServiceException
      Description copied from interface: OMRPromptDefinitionInterface
      Returns the XML string of prompt info. The XML can be parsed into a PromptDefinitionInterface instance.
      Specified by:
      getPromptInfo in interface OMRPromptDefinitionInterface
      Returns:
      String of XML
      Throws:
      RemoteException
      ServiceException
    • setPromptInfo

      public void setPromptInfo(String promptInfo) throws RemoteException, ServiceException
      Description copied from interface: OMRPromptDefinitionInterface
      Set a string of XML that represents an instance of a PromptDefinitionInterface.
      Specified by:
      setPromptInfo in interface OMRPromptDefinitionInterface
      Parameters:
      promptInfo - String of XML
      Throws:
      RemoteException
      ServiceException
    • setPromptType

      public void setPromptType(int type) throws RemoteException, ServiceException
      Description copied from interface: OMRPromptDefinitionInterface
      Sets a value corresponding to the type of PromptDefinitionInterface. The valid values can be obtained from com.sas.prompts.definitions.PromptDefinitionEnum.getOrdinal().
      Specified by:
      setPromptType in interface OMRPromptDefinitionInterface
      Parameters:
      type - int
      Throws:
      RemoteException
      ServiceException
    • getPromptType

      public int getPromptType() throws RemoteException, ServiceException
      Description copied from interface: OMRPromptDefinitionInterface
      Returns a value corresponding to the type of PromptDefinitionInterface.
      Specified by:
      getPromptType in interface OMRPromptDefinitionInterface
      Returns:
      int
      Throws:
      RemoteException
      ServiceException
    • getPromptDefinition

      public com.sas.prompts.definitions.PromptDefinitionInterface getPromptDefinition() throws RemoteException, ServiceException
      Description copied from interface: OMRPromptDefinitionInterface
      Returns the com.sas.prompts.definitions.PromptDefinitionInterface object created by the XML returned from getDefinitionInfo(). Null will be returned if there is no XML available or it does not result in a valid instance of PromptDefinitionInterface.

      If any missing resources are detected, an unmodifiable copy of com.sas.util.xmlpersist.PromptsReadingContext.getMissingResources() will be available from sessionContext.getAttribute(com.sas.util.xmlpersist.PersistConstants.MISSING_RESOURCES). This is contingent upon the available userContext containing a session context.

      Specified by:
      getPromptDefinition in interface OMRPromptDefinitionInterface
      Returns:
      the prompt definition
      Throws:
      RemoteException
      ServiceException - if exceptions occur parsing xml and creating objects
    • getPromptDefinition

      public com.sas.prompts.definitions.PromptDefinitionInterface getPromptDefinition(com.sas.util.xmlpersist.PromptsReadingContext readingContext) throws RemoteException, ServiceException
      Description copied from interface: OMRPromptDefinitionInterface
      Returns the com.sas.prompts.definitions.PromptDefinitionInterface object created by the XML returned from getDefinitionInfo(). Null will be returned if there is no XML available or it does not result in a valid instance of PromptDefinitionInterface. The reading context will be used, if supplied. Otherwise a "placeholder" PromptsReadingContext will be created and passed to the XML parsing routine. A reading context may be obtained via methods on com.sas.services.information.metadata.prompts.PersistenceFactoryWithServices/
      Specified by:
      getPromptDefinition in interface OMRPromptDefinitionInterface
      Parameters:
      readingContext -
      Returns:
      the prompt definition
      Throws:
      RemoteException
      ServiceException - if exceptions occur parsing xml and creating objects
    • getLocalizableProperties

      public com.sas.storage.editableproperties.PropertyList getLocalizableProperties() throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      getLocalizableProperties in interface com.sas.storage.editableproperties.LocalizableProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • getLocales

      public Collection getLocales() throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      getLocales in interface com.sas.storage.editableproperties.MultiLocaleProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • getLocalizableProperties

      public com.sas.storage.editableproperties.PropertyList getLocalizableProperties(Locale locale) throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      getLocalizableProperties in interface com.sas.storage.editableproperties.MultiLocaleProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • beginLocalization

      public void beginLocalization() throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      beginLocalization in interface com.sas.storage.editableproperties.MultiLocaleProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • setLocalizableProperties

      public void setLocalizableProperties(com.sas.storage.editableproperties.PropertyMap map) throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      setLocalizableProperties in interface com.sas.storage.editableproperties.LocalizableProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • setLocalizableProperties

      public void setLocalizableProperties(Locale locale, com.sas.storage.editableproperties.PropertyMap map) throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      setLocalizableProperties in interface com.sas.storage.editableproperties.MultiLocaleProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • endLocalization

      public void endLocalization() throws com.sas.storage.editableproperties.UnexpectedLocalizationException
      Specified by:
      endLocalization in interface com.sas.storage.editableproperties.MultiLocaleProperties
      Throws:
      com.sas.storage.editableproperties.UnexpectedLocalizationException
    • getSubstitutionProperties

      public com.sas.storage.editableproperties.PropertyList getSubstitutionProperties() throws com.sas.storage.editableproperties.UnexpectedSubstitutionException
      Returns a non-null property list. If this holds a prompt that implements SubstitutionProperties, this method will return the prompt's list as a nested list with this smart object's name as the key.
      Specified by:
      getSubstitutionProperties in interface com.sas.storage.editableproperties.SubstitutionProperties
      See Also:
      • SubstitutionProperties.getSubstitutionProperties()
    • setSubstitutionProperties

      public void setSubstitutionProperties(@NotNull com.sas.storage.editableproperties.PropertyMap map) throws com.sas.storage.editableproperties.UnexpectedSubstitutionException
      If the map contains a nested property whose key equals the name of this smart object, it will be passed to the wrapped prompt for processing.
      Specified by:
      setSubstitutionProperties in interface com.sas.storage.editableproperties.SubstitutionProperties
      See Also:
      • SubstitutionProperties.setSubstitutionProperties(com.sas.storage.editableproperties.PropertyMap)
    • removePromptEnabledObject

      public void removePromptEnabledObject() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Removes the prompt-enabled object associated with this prompt. Removal effectively orphans this prompt, so this prompt should either be deleted or associated with a different prompt-enabled object.
      Specified by:
      removePromptEnabledObject in interface BaseOMRPromptInterface
      Throws:
      RemoteException
      ServiceException
    • setPromptEnabledObject

      public void setPromptEnabledObject(MetadataInterface metaObject) throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Sets an association between the prompt and metaObject unless the prompt is public. In that case a ServiceException is thrown.
      Specified by:
      setPromptEnabledObject in interface BaseOMRPromptInterface
      Parameters:
      metaObject -
      Throws:
      RemoteException
      ServiceException
    • getPromptEnabledObject

      public MetadataInterface getPromptEnabledObject() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Gets the metadata object associated with this prompt.
      Specified by:
      getPromptEnabledObject in interface BaseOMRPromptInterface
      Returns:
      MetadataInterface
      Throws:
      RemoteException
      ServiceException
    • addValueSource

      public void addValueSource(MetadataInterface metaObject) throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Adds the metaObject as a value source. The value sources are used for metadata impact analysis. Impact analysis provides warnings when linked metadata objects are threatened by changes to a metadata object.
      Specified by:
      addValueSource in interface BaseOMRPromptInterface
      Parameters:
      metaObject - MetadataInterface
      Throws:
      RemoteException
      ServiceException
    • getValueSources

      public List getValueSources() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Returns a list of MetadataInterface items that are value sources for the prompt. If none exist, an empty list is returned.
      Specified by:
      getValueSources in interface BaseOMRPromptInterface
      Returns:
      List with MetadataInterface items
      Throws:
      RemoteException - if network problems occur
      ServiceException - if problems occur accessing metadata
    • removeAllValueSources

      public void removeAllValueSources() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Removes all value sources associated with the prompt.
      Specified by:
      removeAllValueSources in interface BaseOMRPromptInterface
      Throws:
      RemoteException
      ServiceException
    • addPromptReference

      public void addPromptReference(BaseOMRPromptInterface prompt) throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Add the supplied prompt as a reference to this prompt, where this prompt is a shared prompt definition or group in a tree folder (therefore a public prompt). The supplied prompt may not itself be a shared prompt. References may only exist between shared and unshared prompt objects. If this.isPublic() returns false, a ServiceException will be thrown. If prompt.isPublic() returns true, a ServiceException will be thrown.
      Specified by:
      addPromptReference in interface BaseOMRPromptInterface
      Parameters:
      prompt - the prompt to add as a reference
      Throws:
      RemoteException
      ServiceException
    • removePromptReference

      public void removePromptReference(BaseOMRPromptInterface prompt) throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Removes the supplied prompt from the list of prompt references held by this prompt.
      Specified by:
      removePromptReference in interface BaseOMRPromptInterface
      Parameters:
      prompt - to remove
      Throws:
      RemoteException
      ServiceException
    • removeAllPromptReferences

      public void removeAllPromptReferences() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Removes all prompt references such that this shared prompt is no longer linked to any other prompts.
      Specified by:
      removeAllPromptReferences in interface BaseOMRPromptInterface
      Throws:
      RemoteException
      ServiceException
    • getPromptReferences

      public List getPromptReferences() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Returns a list of prompt references held by this prompt. The references are to the prompt objects that link to this shared prompt.
      Specified by:
      getPromptReferences in interface BaseOMRPromptInterface
      Returns:
      the list of BaseOMRPromptInterface objects
      Throws:
      RemoteException
      ServiceException
    • addReferencedPrompt

      public void addReferencedPrompt(BaseOMRPromptInterface prompt) throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Adds a referenced prompt (a shared prompt definition or prompt group that is in a tree folder) to the list of referenced prompts kept by this prompt object. This prompt may not be a shared, public prompt. References may only exist between shared and unshared prompt objects. If this.isPublic() returns true, a ServiceException will be thrown. If prompt.isPublic() returns false, a ServiceException will be thrown.
      Specified by:
      addReferencedPrompt in interface BaseOMRPromptInterface
      Parameters:
      prompt - to add
      Throws:
      RemoteException
      ServiceException
    • removeReferencedPrompt

      public void removeReferencedPrompt(BaseOMRPromptInterface prompt) throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Remove the supplied prompt (a shared prompt in a tree folder) from the list of referenced prompts held by this prompt.
      Specified by:
      removeReferencedPrompt in interface BaseOMRPromptInterface
      Parameters:
      prompt - to remove
      Throws:
      RemoteException
      ServiceException
    • removeAllReferencedPrompts

      public void removeAllReferencedPrompts() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Removes all referenced prompts such that this prompt is no longer linked to any shared prompts.
      Specified by:
      removeAllReferencedPrompts in interface BaseOMRPromptInterface
      Throws:
      RemoteException
      ServiceException
    • getReferencedPrompts

      public List getReferencedPrompts() throws RemoteException, ServiceException
      Description copied from interface: BaseOMRPromptInterface
      Returns a list of all referenced prompts (shared prompts in a tree folder) held by this prompt.
      Specified by:
      getReferencedPrompts in interface BaseOMRPromptInterface
      Returns:
      the list of BaseOMRPromptInterface objects
      Throws:
      RemoteException
      ServiceException
    • delete

      public void delete() throws ServiceException, RemoteException
      Removes all prompt references, all referenced prompts, all value sources, then calls super.delete().
      Specified by:
      delete in interface MetadataInterface
      Overrides:
      delete in class Metadata
      Throws:
      ServiceException - in the event of a repository failure.
      RemoteException - in the event of a network failure.
      See Also:
    • copyTo

      public MetadataInterface copyTo(FolderInterface folder, String name) throws ServiceException, RemoteException
      This override assures that the copy has the original's value sources set on it.
      Specified by:
      copyTo in interface MetadataInterface
      Overrides:
      copyTo in class Metadata
      Parameters:
      folder - The folder to be the parent of the new object.
      name - The name of the new object.
      Returns:
      The new copy of this object.
      Throws:
      ServiceException - if a repository error occurs.
      RemoteException - in the event of remote object failure.
      See Also:
    • isPublic

      public boolean isPublic() throws ServiceException, RemoteException
      Specified by:
      isPublic in interface BaseOMRPromptInterface
      Throws:
      ServiceException
      RemoteException
    • getPromptFromXML

      protected com.sas.util.xmlpersist.PersistenceInterface getPromptFromXML(com.sas.util.xmlpersist.PromptsReadingContext readingContext, String xml) throws RemoteException, ServiceException
      Parameters:
      readingContext -
      xml -
      Returns:
      a PersistenceInterface object
      Throws:
      RemoteException
      ServiceException
    • getUsageVersion

      public com.sas.util.UsageVersion getUsageVersion() throws RemoteException
      This method adds a micro version representing the major and minor version of the XML stored in this object. For example, XML of version 1.5 adds a micro version of 15.
      Specified by:
      getUsageVersion in interface MetadataInterface
      Overrides:
      getUsageVersion in class Metadata
      Returns:
      The metadata usage version.
      Throws:
      RemoteException - In the event of remote object failure.
      See Also: