Package com.sas.metadata.remote

# Interface MdOMRConnection

All Superinterfaces:
  `Remote`

@SASScope("ALL") public interface MdOMRConnection extends Remote
Used to manage connections the the SAS/Open Metadata Repository.

MdOMRConnection is used to make connections to servers and to hold the IOMI handle for I/O operations in the metadata classes. The MdOMRConnection instance is created when the factory is first initialized.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `HOST_KEY`
  Static string for the hostname key stored in the credential map
  `static final String`
  `PASSWORD_KEY`
  Static string for the password key stored in the credential map
  `static final String`
  `PORT_KEY`
  Static string for the port key stored in the credential map
  `static final String`
  `SECURITY_PACKAGE_LIST_KEY`
  Static string for the security package list stored in the credential map
  `static final int`
  `SERVER_STATUS_ERROR`
  The metadata server connection is broken
  `static final int`
  `SERVER_STATUS_OK`
  The metadata server is working properly
  `static final int`
  `SERVER_STATUS_PAUSED`
  The metadata server is paused
  `static final String`
  `SPN_KEY`
  Static string for the SPN stored in the credential map
  `static final String`
  `USERNAME_KEY`
  Static string for the username key stored in the credential map

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `closeIMetadataTransportConnection(com.sas.meta.SASOMI.IMetadataTransport transportConnection)`
  This method does nothing.
  `void`
  `closeIOMConnection(com.sas.iom.SAS.IWorkspace workspace)`
  This method does nothing.
  `void`
  `closeIOMHandle()`
  Close our handle to the IOMI interface()
  `void`
  `closeISecurityAdminConnection(com.sas.meta.SASOMI.ISecurityAdmin secAdminConnection)`
  This method does nothing.
  `void`
  `closeISecurityConnection(com.sas.meta.SASOMI.ISecurity iSecurity)`
  This method does nothing.
  `void`
  `closeIServerConnection(com.sas.meta.SASOMI.IServer iServer)`
  This method does nothing.
  `void`
  `closeOMRConnection()`
  Immediately closes the connection to the SAS Metadata Server which has been set as the CMRHandle.
  `void`
  `disconnectIMetadataTransportConnection(com.sas.meta.SASOMI.IMetadataTransport transportConnection)`
  Immediately disconnects a connection to a SAS Metadata Server.
  `void`
  `disconnectIOMConnection(com.sas.iom.SAS.IWorkspace workspace)`
  Immediately disconnects a connection to a SAS Workspace Server.
  `void`
  `disconnectISecurityAdminConnection(com.sas.meta.SASOMI.ISecurityAdmin secAdminConnection)`
  Immediately disconnects a connection to a SAS Metadata Server.
  `void`
  `disconnectISecurityConnection(com.sas.meta.SASOMI.ISecurity iSecurity)`
  Immediately disconnects a connection to a SAS Metadata Server.
  `void`
  `disconnectIServerConnection(com.sas.meta.SASOMI.IServer iServer)`
  Immediately disconnects a connection to a SAS Metadata Server.
  `void`
  `disconnectOMRConnection(com.sas.meta.SASOMI.IOMI iOMI)`
  Immediately disconnects a connection to a SAS Metadata Server.
  `com.sas.meta.SASOMI.IOMI`
  `getCMRHandle()`
  Returns the IOMI connection for this connection object.
  `Properties`
  `getCMRProperties()`
  Gets certain properties of the CMR connection.
  `MdOMRConnection`
  `getConnection()`
  Simple accessor for the singleton query engine object.
  `com.sas.services.connection.ConnectionResources`
  `getConnectionResources()`
  Get resources to be used during connection to IOM servers.
  `Map<String,String>`
  `getCredentialMap()`
  Returns the map of credentials for OMR connection, if map key size is 0, then there have been no successfull connections.
  `String`
  `getCurrentServerVerion()`
  Deprecated.
  Deprecated as of 9.2.
  `Identity`
  `getIdentityOfUserConnected(MdStore store, String reposID)`
  Returns the Identity object for the user currently connected to the server.
  `com.sas.iom.SAS.IWorkspace`
  `getIOMHandle()`
  Get the first available IOM workspace handle.
  `com.sas.iom.SAS.IWorkspace`
  `getIOMHandle(int index)`
  Get the specified IOM workspace handle.
  `Level`
  `getMessageLevel()`
  Get the level logging is set to for connections
  `String`
  `getPauseComment()`
  Returns a user-defined comment set by the administrator when the server was initially paused.
  `int`
  `getPlatformVersion()`
  Returns the current platform version number.
  `int`
  `getPlatformVersion(com.sas.meta.SASOMI.IServer serverConn)`
  Returns the current platform version number.
  `String`
  `getServerModelVersion()`
  Gets the server's model version information as a string.
  `String`
  `getServerModelVersion(com.sas.meta.SASOMI.IServer serverConn)`
  Gets the server's model version information as a string.
  `int`
  `getServerStatus()`
  Returns the status of the metadata server.
  `int`
  `getServerStatus(com.sas.meta.SASOMI.IServer serverConn)`
  Returns the status of the metadata server.
  `Document`
  `getServerStatus(String request)`
  Returns a server status request as a parsed XML document.
  `String`
  `getServerVersion(com.sas.meta.SASOMI.IServer serverConn)`
  Deprecated.
  Deprecated as of 9.2.
  `int`
  `getVersionCompatibility()`
  Return the compatibility of the server to the client. 1 server is greater than client, -1 client is greater than server, and 0 is a matching version between client and server.
  `int`
  `getVersionCompatibility(com.sas.meta.SASOMI.IServer serverConn)`
  Return the compatibility of the server to the client. 1 server is greater than client, -1 client is greater than server, and 0 is a matching version between client and server.
  `boolean`
  `isServerPaused()`
  Returns true if the server is currently paused, either in an offline or admin state.
  `com.sas.meta.SASOMI.IMetadataTransport`
  `makeIMetadataTransportConnection(com.sas.meta.SASOMI.IOMI OMRConnection)`
  Narrows a connection to a SAS Metadata Server to the `IMetadataTransport` interface.
  `com.sas.meta.SASOMI.IMetadataTransport`
  `makeIMetadataTransportConnection(String Host, String Port, String Username, String Password)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `IMetadataTransport` interface.
  `com.sas.meta.SASOMI.IMetadataTransport`
  `makeIMetadataTransportConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `IMetadataTransport` interface.
  `com.sas.iom.SAS.IWorkspace`
  `makeIOMConnection(String Host, String Port, String Username, String Password)`
  Makes a connection to the specified SAS Workspace Server.
  `com.sas.iom.SAS.IWorkspace`
  `makeIOMConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN)`
  Makes a connection to the specified SAS Workspace Server.
  `com.sas.meta.SASOMI.ISecurityAdmin`
  `makeISecurityAdminConnection(String Host, String Port, String Username, String Password)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurityAdmin` interface.
  `com.sas.meta.SASOMI.ISecurityAdmin`
  `MakeISecurityAdminConnection(com.sas.meta.SASOMI.IOMI OMRConnection)`
  Narrows a connection to a SAS Metadata Server to the `ISecurityAdmin` interface.
  `com.sas.meta.SASOMI.ISecurityAdmin`
  `makeISecurityAdminConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurity` interface.
  `com.sas.meta.SASOMI.ISecurity_1_1`
  `makeISecurityConnection(String Host, String Port, String Username, String Password)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurity_1_1` interface.
  `com.sas.meta.SASOMI.ISecurity_1_1`
  `MakeISecurityConnection()`
  Narrows the internal connection to a SAS Metadata Server to the `ISecurity_1_1` interface.
  `com.sas.meta.SASOMI.ISecurity_1_1`
  `MakeISecurityConnection(com.sas.meta.SASOMI.IOMI OMRConnection)`
  Narrows a connection to a SAS Metadata Server to the `ISecurity_1_1` interface.
  `com.sas.meta.SASOMI.ISecurity_1_1`
  `makeISecurityConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurity` interface.
  `com.sas.meta.SASOMI.IServer`
  `makeIServerConnection(String Host, String Port, String Username, String Password)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `IServer` interface.
  `com.sas.meta.SASOMI.IServer`
  `MakeIServerConnection()`
  Narrows a connection to a SAS Metadata Server to the `IServer` interface.
  `com.sas.meta.SASOMI.IServer`
  `MakeIServerConnection(com.sas.meta.SASOMI.IOMI OMRConnection)`
  Narrows a connection to a SAS Metadata Server to the `IServer` interface.
  `com.sas.meta.SASOMI.IServer`
  `makeIServerConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN)`
  Makes a connection to the specified SAS Metadata Server and narrows it to the `IServer` interface.
  `com.sas.meta.SASOMI.IOMI`
  `makeOMRConnection(String host, String port, String user, String password)`
  Connect to the metadata server.
  `com.sas.meta.SASOMI.IOMI`
  `makeOMRConnectionUsingSecurityPackage(String host, String port, String securityPackageList, String spn)`
  Connect to the metadata server using a security package such as Kerberos.
  `void`
  `setCMRHandle(com.sas.meta.SASOMI.IOMI iomi)`
  Set IOMI connection to be used by this connection object.
  `void`
  `setConnectionResources(com.sas.services.connection.ConnectionResources cxResources)`
  Set resources to be used during connection to IOM servers.
  `void`
  `setIOMHandle(com.sas.iom.SAS.IWorkspace work)`
  Add the IOM workspace handle to the IOM handle array.
  `void`
  `setIOMHandle(com.sas.iom.SAS.IWorkspace work, int index)`
  Add the IOM workspace handle in the IOM handle array at the specified index
  `void`
  `setMessageLevel(Level inLevel)`
  Set the logging level for connections.
  `void`
  `validatePlatformVersion()`
  Check if connected server is a version supported by this client.

- ## Field Details

  - ### USERNAME_KEY

    static final String USERNAME_KEY
    Static string for the username key stored in the credential map
    See Also:
      - Constant Field Values

  - ### PASSWORD_KEY

    static final String PASSWORD_KEY
    Static string for the password key stored in the credential map
    See Also:
      - Constant Field Values

  - ### SECURITY_PACKAGE_LIST_KEY

    static final String SECURITY_PACKAGE_LIST_KEY
    Static string for the security package list stored in the credential map
    See Also:
      - Constant Field Values

  - ### SPN_KEY

    static final String SPN_KEY
    Static string for the SPN stored in the credential map
    See Also:
      - Constant Field Values

  - ### HOST_KEY

    static final String HOST_KEY
    Static string for the hostname key stored in the credential map
    See Also:
      - Constant Field Values

  - ### PORT_KEY

    static final String PORT_KEY
    Static string for the port key stored in the credential map
    See Also:
      - Constant Field Values

  - ### SERVER_STATUS_ERROR

    static final int SERVER_STATUS_ERROR
    The metadata server connection is broken
    See Also:
      - Constant Field Values

  - ### SERVER_STATUS_OK

    static final int SERVER_STATUS_OK
    The metadata server is working properly
    See Also:
      - Constant Field Values

  - ### SERVER_STATUS_PAUSED

    static final int SERVER_STATUS_PAUSED
    The metadata server is paused
    See Also:
      - Constant Field Values

- ## Method Details

  - ### getConnection

    MdOMRConnection getConnection() throws RemoteException
    Simple accessor for the singleton query engine object.
    Returns:
      The singleton query engine shared be everyone.
    Throws:
      `RemoteException` - for RMI errors

  - ### getCMRHandle

    com.sas.meta.SASOMI.IOMI getCMRHandle() throws RemoteException
    Returns the IOMI connection for this connection object.
    Returns:
      the IOMI connection for this connection object
    Throws:
      `RemoteException` - for RMI errors

  - ### setCMRHandle

    void setCMRHandle(com.sas.meta.SASOMI.IOMI iomi) throws RemoteException
    Set IOMI connection to be used by this connection object. If you use this method, you may want to call `validatePlatformVersion()` when making the initial IOMI connection to validate the server version before continuing.
    Parameters:
      `iomi` - new IOMI connection
    Throws:
      `RemoteException` - for RMI errors

  - ### getIOMHandle

    com.sas.iom.SAS.IWorkspace getIOMHandle(int index) throws RemoteException
    Get the specified IOM workspace handle.
    Parameters:
      `index` - is the index into the IOM workspace handle array. If the specified index is less than zero, the IOM workspace handle at location 0 is retrieved
    Returns:
      IOM workspace handle at the specified index
    Throws:
      `RemoteException` - for RMI errors

  - ### getIOMHandle

    com.sas.iom.SAS.IWorkspace getIOMHandle() throws RemoteException
    Get the first available IOM workspace handle.
    Returns:
      the IOM workspace handle
    Throws:
      `RemoteException` - for RMI errors

  - ### setIOMHandle

    void setIOMHandle(com.sas.iom.SAS.IWorkspace work) throws RemoteException
    Add the IOM workspace handle to the IOM handle array.
    Parameters:
      `work` - IOM workspace handle
    Throws:
      `RemoteException` - for RMI errors

  - ### setIOMHandle

    void setIOMHandle(com.sas.iom.SAS.IWorkspace work, int index) throws RemoteException
    Add the IOM workspace handle in the IOM handle array at the specified index
    Parameters:
      `work` - IOM workspace handle
      `index` - offset in the available IOM workspace handle array
    Throws:
      `RemoteException` - for RMI errors

  - ### closeIOMHandle

    void closeIOMHandle() throws RemoteException
    Close our handle to the IOMI interface()
    Throws:
      `RemoteException` - for RMI errors

  - ### makeOMRConnection

    com.sas.meta.SASOMI.IOMI makeOMRConnection(String host, String port, String user, String password) throws RemoteException, MdException
    Connect to the metadata server. The IOMI connection is set as the "CMR handle" or default IOMI connection for this MdOMRConnection object.
    Parameters:
      `host` - metadata server host
      `port` - metadata server port
      `user` - user name
      `password` - password
    Returns:
      IOMI connection
    Throws:
      `UnsupportedPlatformVersionException` - if connected server is not supported
      `MdException` - if there is a problem connecting to the server
      `RemoteException` - for RMI errors
    See Also:
      - `closeOMRConnection()`

  - ### makeOMRConnectionUsingSecurityPackage

    com.sas.meta.SASOMI.IOMI makeOMRConnectionUsingSecurityPackage(String host, String port, String securityPackageList, String spn) throws RemoteException, MdException
    Connect to the metadata server using a security package such as Kerberos. The IOMI connection is set as the "CMR handle" or default IOMI connection for this MdOMRConnection object.

    If securityPackageList is `null, then `BridgeServer.SECURITY_PACKAGE_LIST_DEFAULT` will be used.

    If spn is `null, then one will be generated.``
    Parameters:
      `host` - metadata server host
      `port` - metadata server port
      `spn` - server principal name
      `SecurityPackageList` - comma-separated list of acceptable security packages
    Returns:
      IOMI connection
    Throws:
      `UnsupportedPlatformVersionException` - if connected server is not supported
      `MdException` - if there is a problem connecting to the server
      `RemoteException` - for RMI errors
    See Also:
      - `closeOMRConnection()`

  - ### makeISecurityConnection

    com.sas.meta.SASOMI.ISecurity_1_1 makeISecurityConnection(String Host, String Port, String Username, String Password) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurity_1_1` interface. Uses user name and password to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `Username` - user name
      `Password` - password
    Returns:
      ISecurity connection
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - for RMI errors
    See Also:
      - `disconnectISecurityConnection(ISecurity)`

  - ### makeISecurityConnectionUsingSecurityPackage

    com.sas.meta.SASOMI.ISecurity_1_1 makeISecurityConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurity` interface. Uses a security package such as Kerberos to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `SecurityPackageList` - security packages to use (or `null` for default)
      `SPN` - server principal name (or `null` for default)
    Returns:
      ISecurity connection
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - for RMI errors
    See Also:
      - `disconnectISecurityConnection(ISecurity)`

  - ### makeIServerConnection

    com.sas.meta.SASOMI.IServer makeIServerConnection(String Host, String Port, String Username, String Password) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `IServer` interface. Uses user name and password to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `Username` - user name
      `Password` - password
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectIServerConnection(IServer)`

  - ### makeIServerConnectionUsingSecurityPackage

    com.sas.meta.SASOMI.IServer makeIServerConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `IServer` interface. Uses a security package such as Kerberos to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `SecurityPackageList` - security packages to use (or `null` for default)
      `SPN` - server principal name (or `null` for default)
    Returns:
      IServer connection
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - for RMI errors
    See Also:
      - `disconnectIServerConnection(IServer)`

  - ### MakeIServerConnection

    com.sas.meta.SASOMI.IServer MakeIServerConnection() throws RemoteException, MdException
    Narrows a connection to a SAS Metadata Server to the `IServer` interface.
    Returns:
      a connection to a a SAS Metadata Server narrowed to the `IServer` interface
    Throws:
      `MdException` - if there is a problem narrowing the connection
      `RemoteException` - for RMI errors

  - ### MakeIServerConnection

    com.sas.meta.SASOMI.IServer MakeIServerConnection(com.sas.meta.SASOMI.IOMI OMRConnection) throws RemoteException, MdException
    Narrows a connection to a SAS Metadata Server to the `IServer` interface.
    Parameters:
      `OMRConnection` - connection to a SAS Metadata Server
    Returns:
      a connection to a a SAS Metadata Server narrowed to the `IServer` interface
    Throws:
      `MdException` - if there is a problem narrowing the connection
      `RemoteException` - for RMI errors

  - ### closeIServerConnection

    void closeIServerConnection(com.sas.meta.SASOMI.IServer iServer) throws RemoteException, MdException
    This method does nothing.
    Parameters:
      `iServer` - connection to SAS Metadata Server
    Throws:
      `MdException` - never thrown
      `RemoteException` - for RMI errors
    See Also:
      - `disconnectIServerConnection(IServer)`

  - ### disconnectIServerConnection

    void disconnectIServerConnection(com.sas.meta.SASOMI.IServer iServer) throws RemoteException, MdException
    Immediately disconnects a connection to a SAS Metadata Server.
    Parameters:
      `iServer` - the connection to close
    Throws:
      `MdException` - if there is a problem disconnecting from the server
      `RemoteException` - for RMI errors
    See Also:
      - `makeIServerConnection(String, String, String, String)`
      - `makeIServerConnectionUsingSecurityPackage(String, String, String, String)`

  - ### MakeISecurityConnection

    com.sas.meta.SASOMI.ISecurity_1_1 MakeISecurityConnection() throws RemoteException, MdException
    Narrows the internal connection to a SAS Metadata Server to the `ISecurity_1_1` interface.
    Returns:
      the internal connection to a a SAS Metadata Server narrowed to the `ISecurity_1_1` interface
    Throws:
      `MdException` - if there is a problem narrowing the connection
      `RemoteException` - if there is a problem communicating with the method implementation

  - ### MakeISecurityConnection

    com.sas.meta.SASOMI.ISecurity_1_1 MakeISecurityConnection(com.sas.meta.SASOMI.IOMI OMRConnection) throws RemoteException, MdException
    Narrows a connection to a SAS Metadata Server to the `ISecurity_1_1` interface.
    Parameters:
      `OMRConnection` - connection to a SAS Metadata Server
    Returns:
      a connection to a a SAS Metadata Server narrowed to the `ISecurity_1_1` interface
    Throws:
      `MdException` - if there is a problem narrowing the connection
      `RemoteException` - if there is a problem communicating with the method implementation

  - ### closeISecurityConnection

    void closeISecurityConnection(com.sas.meta.SASOMI.ISecurity iSecurity) throws RemoteException, MdException
    This method does nothing.
    Parameters:
      `iSecurity` - connection to a SAS Metadata Server
    Throws:
      `RemoteException` - never thrown
      `MdException` - never thrown
    See Also:
      - `disconnectISecurityConnection(ISecurity)`

  - ### disconnectISecurityConnection

    void disconnectISecurityConnection(com.sas.meta.SASOMI.ISecurity iSecurity) throws RemoteException, MdException
    Immediately disconnects a connection to a SAS Metadata Server.
    Parameters:
      `iSecurity` - the connection to close
    Throws:
      `MdException` - if there is a problem disconnecting from the server
      `RemoteException` - if there is a network problem communicating with the method implementation
    See Also:
      - `makeISecurityConnection(String, String, String, String)`
      - `makeISecurityConnectionUsingSecurityPackage(String, String, String, String)`

  - ### closeOMRConnection

    void closeOMRConnection() throws RemoteException
    Immediately closes the connection to the SAS Metadata Server which has been set as the CMRHandle.
    Throws:
      `RemoteException` - never thrown
      `SystemException` - if there is a problem closing the connection
    See Also:
      - `makeOMRConnection(String, String, String, String)`
      - `makeOMRConnectionUsingSecurityPackage(String, String, String, String)`

  - ### disconnectOMRConnection

    void disconnectOMRConnection(com.sas.meta.SASOMI.IOMI iOMI) throws RemoteException, MdException
    Immediately disconnects a connection to a SAS Metadata Server.
    Parameters:
      `iOMI` - the connection to close
    Throws:
      `MdException` - if there is a problem disconnecting from the server
      `RemoteException` - if there is a network problem communicating with the method implementation
    See Also:
      - `makeOMRConnection(String, String, String, String)`
      - `makeOMRConnection(String, String, String, String)`
      - `makeOMRConnectionUsingSecurityPackage(String, String, String, String)`

  - ### makeIOMConnection

    com.sas.iom.SAS.IWorkspace makeIOMConnection(String Host, String Port, String Username, String Password) throws RemoteException, MdException
    Makes a connection to the specified SAS Workspace Server. Uses user name and password to authenticate the connection.
    Parameters:
      `Host` - SAS Workspace Server host
      `Port` - SAS Workspace Server port
      `Username` - user name
      `Password` - password
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectIOMConnection(IWorkspace)`

  - ### makeIOMConnectionUsingSecurityPackage

    com.sas.iom.SAS.IWorkspace makeIOMConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN) throws RemoteException, MdException
    Makes a connection to the specified SAS Workspace Server. Uses a security package such as Kerberos to authenticate the connection.
    Parameters:
      `Host` - SAS Workspace Server host
      `Port` - SAS Workspace Server port
      `SecurityPackageList` - security packages to use (or `null` for default)
      `SPN` - server principal name (or `null` for default)
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectIOMConnection(IWorkspace)`

  - ### closeIOMConnection

    void closeIOMConnection(com.sas.iom.SAS.IWorkspace workspace) throws RemoteException, MdException
    This method does nothing.
    Parameters:
      `workspace` - connection to a SAS Workspace Server
    Throws:
      `RemoteException` - never thrown
      `MdException` - never thrown
    See Also:
      - `disconnectIOMConnection(IWorkspace)`

  - ### disconnectIOMConnection

    void disconnectIOMConnection(com.sas.iom.SAS.IWorkspace workspace) throws RemoteException, MdException
    Immediately disconnects a connection to a SAS Workspace Server.
    Parameters:
      `workspace` - the connection to close
    Throws:
      `MdException` - if there is a problem disconnecting from the server
      `RemoteException` - if there is a network problem communicating with the method implementation
    See Also:
      - `makeIOMConnection(String, String, String, String)`
      - `makeIOMConnectionUsingSecurityPackage(String, String, String, String)`

  - ### MakeISecurityAdminConnection

    com.sas.meta.SASOMI.ISecurityAdmin MakeISecurityAdminConnection(com.sas.meta.SASOMI.IOMI OMRConnection) throws RemoteException, MdException
    Narrows a connection to a SAS Metadata Server to the `ISecurityAdmin` interface.
    Parameters:
      `OMRConnection` - connection to a SAS Metadata Server
    Returns:
      a connection to a a SAS Metadata Server narrowed to the `ISecurityAdmin` interface
    Throws:
      `RemoteException` - never thrown
      `MdException` - if there is a network problem

  - ### makeISecurityAdminConnection

    com.sas.meta.SASOMI.ISecurityAdmin makeISecurityAdminConnection(String Host, String Port, String Username, String Password) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurityAdmin` interface. Uses user name and password to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `Username` - user name
      `Password` - password
    Throws:
      `MdException` - if there is a problem narrowing the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectISecurityAdminConnection(ISecurityAdmin)`

  - ### makeISecurityAdminConnectionUsingSecurityPackage

    com.sas.meta.SASOMI.ISecurityAdmin makeISecurityAdminConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `ISecurity` interface. Uses a security package such as Kerberos to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `SecurityPackageList` - security packages to use (or `null` for default)
      `SPN` - server principal name (or `null` for default)
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectISecurityAdminConnection(ISecurityAdmin)`

  - ### closeISecurityAdminConnection

    void closeISecurityAdminConnection(com.sas.meta.SASOMI.ISecurityAdmin secAdminConnection) throws RemoteException, MdException
    This method does nothing.
    Parameters:
      `secAdminConnection` - connection to a SAS Metadata Server
    Throws:
      `RemoteException` - never thrown
      `MdException` - never thrown
    See Also:
      - `disconnectISecurityAdminConnection(ISecurityAdmin)`

  - ### disconnectISecurityAdminConnection

    void disconnectISecurityAdminConnection(com.sas.meta.SASOMI.ISecurityAdmin secAdminConnection) throws RemoteException, MdException
    Immediately disconnects a connection to a SAS Metadata Server.
    Parameters:
      `secAdminConnection` - the connection to close
    Throws:
      `MdException` - if there is a problem disconnecting from the server
      `RemoteException` - if there is a network problem communicating with the method implementation
    See Also:
      - `makeISecurityAdminConnection(String, String, String, String)`
      - `makeISecurityAdminConnectionUsingSecurityPackage(String, String, String, String)`

  - ### makeIMetadataTransportConnection

    com.sas.meta.SASOMI.IMetadataTransport makeIMetadataTransportConnection(com.sas.meta.SASOMI.IOMI OMRConnection) throws RemoteException, MdException
    Narrows a connection to a SAS Metadata Server to the `IMetadataTransport` interface.
    Parameters:
      `OMRConnection` - connection to a SAS Metadata Server
    Returns:
      a connection to a a SAS Metadata Server narrowed to the `IMetadataTransport` interface
    Throws:
      `RemoteException` - never thrown
      `MdException` - if there is a network problem

  - ### makeIMetadataTransportConnection

    com.sas.meta.SASOMI.IMetadataTransport makeIMetadataTransportConnection(String Host, String Port, String Username, String Password) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `IMetadataTransport` interface. Uses user name and password to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `Username` - user name
      `Password` - password
    Throws:
      `MdException` - if there is a problem narrowing the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectIMetadataTransportConnection(IMetadataTransport)`

  - ### makeIMetadataTransportConnectionUsingSecurityPackage

    com.sas.meta.SASOMI.IMetadataTransport makeIMetadataTransportConnectionUsingSecurityPackage(String Host, String Port, String SecurityPackageList, String SPN) throws RemoteException, MdException
    Makes a connection to the specified SAS Metadata Server and narrows it to the `IMetadataTransport` interface. Uses a security package such as Kerberos to authenticate the connection.
    Parameters:
      `Host` - SAS Metadata Server host
      `Port` - SAS Metadata Server port
      `SecurityPackageList` - security packages to use (or `null` for default)
      `SPN` - server principal name (or `null` for default)
    Throws:
      `MdException` - if there is a problem making the connection
      `RemoteException` - if there is a problem communicating with the method implementation
    See Also:
      - `disconnectIMetadataTransportConnection(IMetadataTransport)`

  - ### closeIMetadataTransportConnection

    void closeIMetadataTransportConnection(com.sas.meta.SASOMI.IMetadataTransport transportConnection) throws RemoteException, MdException
    This method does nothing.
    Parameters:
      `transportConnection` - connection to a SAS Metadata Server
    Throws:
      `RemoteException` - never thrown
      `MdException` - never thrown
    See Also:
      - `disconnectIMetadataTransportConnection(IMetadataTransport)`

  - ### disconnectIMetadataTransportConnection

    void disconnectIMetadataTransportConnection(com.sas.meta.SASOMI.IMetadataTransport transportConnection) throws RemoteException, MdException
    Immediately disconnects a connection to a SAS Metadata Server.
    Parameters:
      `transportConnection` - the connection to close
    Throws:
      `MdException` - if there is a problem disconnecting from the server
      `RemoteException` - if there is a network problem communicating with the method implementation
    See Also:
      - `makeIMetadataTransportConnection(String, String, String, String)`
      - `makeIMetadataTransportConnectionUsingSecurityPackage(String, String, String, String)`

  - ### getCMRProperties

    Properties getCMRProperties() throws RemoteException, MdException
    Gets certain properties of the CMR connection. These properties include "host", "port", and "domain".
    Returns:
      properties of the CMR connection
    Throws:
      `MdException` - if the domain cannot be determined
      `RemoteException`
      `MdException`

  - ### getPauseComment

    String getPauseComment() throws MdException, RemoteException
    Returns a user-defined comment set by the administrator when the server was initially paused. If a comment wasn't entered, or if the server is currently online, this method will return an empty string.
    Returns:
      comment describing why the server is unavailable
    Throws:
      `MdException`
      `RemoteException`

  - ### isServerPaused

    boolean isServerPaused() throws MdException, RemoteException
    Returns true if the server is currently paused, either in an offline or admin state.
    Returns:
      true if the server is paused, false otherwise
    Throws:
      `MdException`
      `RemoteException`

  - ### getServerStatus

    int getServerStatus() throws MdException, RemoteException
    Returns the status of the metadata server. Valid values are:
    - `SERVER_STATUS_ERROR`
    - `SERVER_STATUS_OK`
    - `SERVER_STATUS_PAUSED`
    Returns:
      the status of the server
    Throws:
      `MdException`
      `RemoteException`

  - ### getServerStatus

    int getServerStatus(com.sas.meta.SASOMI.IServer serverConn) throws MdException, RemoteException
    Returns the status of the metadata server. Valid values are:
    - `SERVER_STATUS_ERROR`
    - `SERVER_STATUS_OK`
    - `SERVER_STATUS_PAUSED`
    Returns:
      the status of the server
    Throws:
      `MdException`
      `RemoteException`

  - ### getServerStatus

    Document getServerStatus(String request) throws MdException, RemoteException
    Returns a server status request as a parsed XML document.
    Parameters:
      `request` - status elements. See Open Metadata Interface: Reference and Usage for documentation of syntax.
    Returns:
      parsed status response
    Throws:
      `MdException`
      `RemoteException`

  - ### getVersionCompatibility

    int getVersionCompatibility(com.sas.meta.SASOMI.IServer serverConn) throws MdException, RemoteException
    Return the compatibility of the server to the client. 1 server is greater than client, -1 client is greater than server, and 0 is a matching version between client and server.
    Parameters:
      `serverConn` -
    Returns:
      int
    Throws:
      `MdException`
      `RemoteException`

  - ### getVersionCompatibility

    int getVersionCompatibility() throws MdException, RemoteException
    Return the compatibility of the server to the client. 1 server is greater than client, -1 client is greater than server, and 0 is a matching version between client and server.
    Parameters:
      `serverConn` -
    Returns:
      int
    Throws:
      `MdException`
      `RemoteException`

  - ### getServerModelVersion

    String getServerModelVersion() throws MdException, RemoteException
    Gets the server's model version information as a string.
    Returns:
      String the metadata model version
    Throws:
      `MdException`
      `RemoteException`

  - ### getServerModelVersion

    String getServerModelVersion(com.sas.meta.SASOMI.IServer serverConn) throws MdException, RemoteException
    Gets the server's model version information as a string.
    Parameters:
      `serverConn` -
    Returns:
      String the metadata model version
    Throws:
      `MdException`
      `RemoteException`

  - ### getServerVersion

    String getServerVersion(com.sas.meta.SASOMI.IServer serverConn) throws MdException, RemoteException
    Deprecated.
    Deprecated as of 9.2. Use `getServerModelVersion(IServer)`.
    Gets the server version information as a string.
    Parameters:
      `serverConn` -
    Returns:
      String
    Throws:
      `MdException`
      `RemoteException`

  - ### getCurrentServerVerion

    String getCurrentServerVerion() throws MdException, RemoteException
    Deprecated.
    Deprecated as of 9.2. Use `getServerModelVersion()`.
    Returns the server version using the current connection.
    Returns:
      String
    Throws:
      `MdException`
      `RemoteException`

  - ### getPlatformVersion

    int getPlatformVersion() throws MdException, RemoteException
    Returns the current platform version number. The version number represents the current version of the platform. For example, for 9.1.3 Service Pack 3, the version number is 9133. If the version number is unknown, a value of 0 is returned.
    Returns:
      the platform version as an integer
    Throws:
      `MdException`
      `RemoteException`
    Since:
      9.1.3 SP3

  - ### getPlatformVersion

    int getPlatformVersion(com.sas.meta.SASOMI.IServer serverConn) throws MdException, RemoteException
    Returns the current platform version number. The version number represents the current version of the platform. For example, for 9.1.3 Service Pack 3, the version number is 9133. If the version number is unknown, a value of 0 is returned.
    Parameters:
      `serverConn` - the IServer interface
    Returns:
      the platform version as an integer
    Throws:
      `MdException`
      `RemoteException`
    Since:
      9.1.3 SP3

  - ### getIdentityOfUserConnected

    Identity getIdentityOfUserConnected(MdStore store, String reposID) throws MdException, RemoteException
    Returns the Identity object for the user currently connected to the server. If the user is not associated to an Identity, the Identity for the PUBLIC group will be returned.

    A null value will be returned if the Identity could not be found at all.

    Parameters:
      `store` - the object store to create the Identity in
      `reposID` - the repository connected to. This must be the full 17 character repository id. This will only be used if the an Identity for the user could not be found.
    Returns:
      Identity object
    Throws:
      `MdException`
      `RemoteException`

  - ### getMessageLevel

    Level getMessageLevel() throws RemoteException
    Get the level logging is set to for connections
    Returns:
      Level
    Throws:
      `RemoteException`

  - ### setMessageLevel

    void setMessageLevel(Level inLevel) throws RemoteException
    Set the logging level for connections.
    Parameters:
      `inLevel` -
    Throws:
      `RemoteException`

  - ### getCredentialMap

    Map<String,String> getCredentialMap() throws RemoteException
    Returns the map of credentials for OMR connection, if map key size is 0, then there have been no successfull connections.
    Returns:
      Map
    Throws:
      `RemoteException`

  - ### setConnectionResources

    void setConnectionResources(com.sas.services.connection.ConnectionResources cxResources) throws RemoteException
    Set resources to be used during connection to IOM servers.
    Parameters:
      `cxResources` - resources to be used during connection to IOM servers.
    Throws:
      `RemoteException` - if a network error occurs

  - ### getConnectionResources

    com.sas.services.connection.ConnectionResources getConnectionResources() throws RemoteException
    Get resources to be used during connection to IOM servers.
    Returns:
      resources to be used during connection to IOM servers.
    Throws:
      `RemoteException` - if a network error occurs

  - ### validatePlatformVersion

    void validatePlatformVersion() throws MdException, RemoteException
    Check if connected server is a version supported by this client. An UnsupportedPlatformVersionException will be thrown if the server is not supported. The exception will contain a message suitable for display to end users.
    Throws:
      `UnsupportedPlatformVersionException` - if connected server is not supported
      `MdException` - if a server communication error occurs
      `RemoteException` - for RMI errors