This is documentation for Caché & Ensemble.

For information on converting to InterSystems IRIS, see the InterSystems IRIS Adoption Guide and the InterSystems IRIS In-Place Conversion Guide, both available on the WRC Distributions page (login required).

Home > Class Reference > ENSLIB namespace > EnsLib.LDAP.OutboundAdapter


class EnsLib.LDAP.OutboundAdapter extends Ens.OutboundAdapter

Property Inventory

Method Inventory


parameter SETTINGS = LDAPServer:Basic,LDAPPort:Basic,UseSSL,DN,Credentials:Basic:credentialsSelector,StayConnected,ConnectTimeout,SearchTimeout;
List of properties can be set as settings in the configuration file format is a comma separated list of property names


property %Session as %Net.LDAP.Client.Session;
This holds the LDAP Session connection
Property methods: %SessionGet(), %SessionGetSwizzled(), %SessionIsValid(), %SessionNewObject(), %SessionSet()
property ConnectTimeout as %Numeric (MINVAL = 0) [ InitialExpression = 5 ];
Number of seconds to wait on each connection attempt
Property methods: ConnectTimeoutDisplayToLogical(), ConnectTimeoutGet(), ConnectTimeoutIsValid(), ConnectTimeoutLogicalToDisplay(), ConnectTimeoutNormalize(), ConnectTimeoutSet()
property Connected as %Boolean [ InitialExpression = 0 ];
True if currently connected to LDAP server
Property methods: ConnectedDisplayToLogical(), ConnectedGet(), ConnectedIsValid(), ConnectedLogicalToDisplay(), ConnectedNormalize(), ConnectedSet()
property Credentials as %String;
This is the ID name of the set of credentials values to be used to access the LDAP server.

The Username defined in your Credentials item may be either a fully qualified username, e.g. '', or an LDAP RDN (Relatively Distinguished Name) path to the user identity in the LDAP directory, e.g. 'CN=Carl User,OU=Users,OU=My Division,DC=subdomain,DC=mydomain,DC=com'

Property methods: CredentialsDisplayToLogical(), CredentialsGet(), CredentialsIsValid(), CredentialsLogicalToDisplay(), CredentialsLogicalToOdbc(), CredentialsNormalize(), CredentialsSet()
property DN as %String (MAXLEN = 1000);
Distinguished Name to use a a base for operations on the directory such as searches, updates and deletes.
Property methods: DNDisplayToLogical(), DNGet(), DNIsValid(), DNLogicalToDisplay(), DNLogicalToOdbc(), DNNormalize(), DNSet()
property LDAPPort as %Integer [ InitialExpression = 389 ];
Property methods: LDAPPortDisplayToLogical(), LDAPPortGet(), LDAPPortIsValid(), LDAPPortLogicalToDisplay(), LDAPPortNormalize(), LDAPPortSet()
property LDAPServer as %String;
Property methods: LDAPServerDisplayToLogical(), LDAPServerGet(), LDAPServerIsValid(), LDAPServerLogicalToDisplay(), LDAPServerLogicalToOdbc(), LDAPServerNormalize(), LDAPServerSet()
property SearchTimeout as %Numeric (MINVAL = 0) [ InitialExpression = 5 ];
Number of seconds to wait on each Search attempt
Property methods: SearchTimeoutDisplayToLogical(), SearchTimeoutGet(), SearchTimeoutIsValid(), SearchTimeoutLogicalToDisplay(), SearchTimeoutNormalize(), SearchTimeoutSet()
property StayConnected as %Numeric (MINVAL = -1) [ InitialExpression = -1 ];
If non-zero, stay connected to the remote system between handling Requests until idle for this number of seconds. A value of -1 means never disconnect.
Property methods: StayConnectedDisplayToLogical(), StayConnectedGet(), StayConnectedIsValid(), StayConnectedLogicalToDisplay(), StayConnectedNormalize(), StayConnectedSet()
property UseSSL as %Boolean [ InitialExpression = 0 ];
Use SSL to connect to the LDAP server
Property methods: UseSSLDisplayToLogical(), UseSSLGet(), UseSSLIsValid(), UseSSLLogicalToDisplay(), UseSSLNormalize(), UseSSLSet()


method AddNewEntry(pObjectClass As %String, pCN As %String, pBase As %String, pProps...) as %Status
method AddNewEntryParmArray(pObjectClass As %String, pCN As %String, pBase As %String = ..DN, ByRef pProps=0) as %Status
method Connect(pTimeout As %Numeric = 30) as %Status
Connect to the data source
method ConnectedSet(pValue As %Boolean) as %Status
method DeleteEntry(pCN As %String, pBase As %String = ..DN) as %Status
method Disconnect(pFinal As %Boolean = 0) as %Status
Disconnect from the datasource
method GetEntryEditObj(Output pEditObj As %Net.LDAP.Client.EditEntry, pCN As %String, pBase As %String = ..DN) as %Status
method LDAPPortSet(val As %Integer) as %Status
method LDAPServerSet(val As %String) as %Status
method OnInit() as %Status
Inherited description: This user callback method is called just after %OnNew()
method OnKeepalive(pUnused As %Status) as %Status
Inherited description: This method is called from the Host.OnTask() method. It will be called within KeepaliveInterval of the last return from OnTask() or OnKeepalive().
method OnTearDown() as %Status
Inherited description: This user callback method is called just before %OnClose()
method RenameEntry(pCN As %String, pNewRDN As %String, pNewParent As %String = "", pDeleteOld As %Boolean = 1, pBase As %String = ..DN) as %Status
pScope: 0=search base, 1=search one level, 2=search subtree pFilter: the search criteria (see RFC2254). pAttrs: comma-separated list of attributes to return per found entry.
method TestConnection()
method UseSSLSet(val As %Boolean) as %Status
classmethod isNetErr(tErrorText) as %Boolean
Decide whether an error code returned from the driver represents a disconnection implying the need to re-connect. Override this method in a subclass if you encounter errors with another server that ought to be in this list. Also please ask the Ensemble developers to add your new codes to the base version.

Inherited Members

Inherited Properties

Inherited Methods