Skip to main content

SYS.ECP

abstract class SYS.ECP

Enterprise Cache Protocol Notes:

Method Inventory

Parameters

parameter DOMAIN = %Utility;
Default Localization Domain

Methods

final classmethod AddAuthorizedCN(SSLComputerName As %String) as %Status
Add an entry to the ECP SSL authorized list.
When users want to pre-authorize a remote ECP client connection, they can use this method to add the remote connection the to authorized list, so when it connects to this data server, it does not need to be authorized.

Input Parameters:
  • SSLComputerName is the Distinguished Name of the certificate on remote client side.
This method always returned 'OK' even if the specified SSLComputerName does not exist.
classmethod ChangeToNotConnected(ConnectionName As %String) as %Boolean
Changes an ECP connection state to not connected. Connection name is as specified in the network panel. Returns zero if the connection name is invalid
classmethod DisplayDatabases()
Display the list of database remote databases this client has "mounted"
classmethod GetClientConnState(ConnectionName As %String) as %Integer
Returns the state of an ECP Client Connection.
Connection name is as specified in the network panel.
Return value:
  • -1 - Invalid connection name
  • 0 - Free
  • 1 - Normal
  • 2 - Trouble
  • 3 - Recovering
  • 4 - Restart
  • classmethod GetRemoteDBMountStatus(ServerName As %String, Directory As %String) as %Integer
    Given the data server connection name and the remote directory name on this client, returns the mount status codes of the remote database.
    The Status Codes are:
    0 - Remote database has not been mounted yet.
    1 - Remote database is dismounted.
    2 - Remote database is mounted read-only.
    3 - Remote database is mounted read-write.
    classmethod GetServerConnState(ConnectionName As %String) as %Integer
    Returns the state of an ECP Server Connection.
    Connection name is as specified in the network panel.
    Return value:
  • -2 - Invalid connection name
  • -1 - Invalid
  • 0 - Initializing
  • 1 - Not Connected
  • 2 - Connection in Progress
  • 3 - Connection Failed
  • 4 - Disabled
  • 5 - Normal
  • 6 - Trouble
  • 7 - Recovery
  • final classmethod RemoveAuthorizedCN(SSLComputerName As %String) as %Status
    Remove an entry from the ECP SSL authorized list.
    This is called to reject an authorized ECP connection. So the remote client needs to be re-authorized when it re-connects. But this won't affect the currently connected ECP connection.

    Input Parameters:
    • SSLComputerName is the Distinguished Name of the certificate on remote client side.
    This method always returned 'OK' even if the specified SSLComputerName does not exist.
    final classmethod RemoveFromPendingList(SSLComputerName As %String, Authorize As %Integer = 0) as %Status
    Remove an entry from the ECP SSL pending list.
    This is called to authorize or reject an incoming ECP connection pending for authorization, and remove the pending connection from the pending list.

    Input Parameters:
    • SSLComputerName is the Distinguished Name of the certificate on remote client side.
    • Authorize is non-zero to authorize the connection, otherwise the pending connection is rejected.
    This method always returned 'OK' even if the specified SSLComputerName does not exist.
    classmethod ServerAction(ConnectionName As %String, Action As %Integer, Wait As %Boolean = 1) as %Status
    Performs Action on an ECP Server Connection.
    Connection name is as specified in the network panel.
    Action:
  • 1 - Change to Not Connected
  • 2 - Change to Disabled
  • 3 - Change to Normal
    Wait: 1=wait for answer, 0=do not wait
  • Queries

    query ClientList()
    Selects Client Name As %String, Status As %String, IP Address As %String, IP Port As %Integer
    Query to list remote app server connections. Returned app server's client name, status, IP address and port number.

    The Client Name is in ConnectName:CliSysName:InstanceName formart:
    ConnectName - Connection name as defined in the app server's ECPServers configuration.
    CliSysName - CliSysName in Config.Startup of the app server if defined. If not defined, defaults to app server's hostname..
    InstanceName - App server's instance name.

    The Status can be:
    Normal - Node is actively in use.
    Trouble - Node failed, waiting for recovering.
    Recovering - Node is in process of recovering.
    Restart - Server has restarted, but this connection is awaiting for recovery.
    DeadCleanup - Server is in the process of cleaning dead dmns..
    Invalid - Node has an invalid status code.
    query DatabaseList(DBNames As %String = "*", ServerName As %String = "*", Directory As %String = "*")
    Selects DBName As %String, ServerName As %String, Directory As %String, MountStatus As %String
    Query to list configured remote databases. Returned database's configuration name, server name, directory and mount status codes.
    The Status Codes are:
    0 - Remote database has not been mounted yet.
    1 - Remote database is dismounted.
    2 - Remote database is mounted read-only.
    3 - Remote database is mounted read-write.
    query SSLAuthorizedConnections()
    Selects SSLComputerName As %String
    Query to get list of authorized incoming ECP connections.
    The returned column is:
    • SSLComputerName is the Distinguished Name of the certificate on remote client side.
    query SSLPendingConnections()
    Selects SSLComputerName As %String, ClientIP As %String
    Query to get list of pending incoming ECP connections to be authorized.

    The returned columns are:
    • SSLComputerName is the Distinguished Name of the certificate on remote client side.
    • ClientIP is the IP address of remote client.
    query ServerList()
    Selects Server Name As %String, Host Name As %String, Status As %String, IP Address As %String, IP Port As %Integer
    FeedbackOpens in a new tab