public interface IDirectorySystem extends AutoCloseable
IDirectorySession
, the
latter representing the main API interface for shared directory component.
Before attempting to use IDirectorySystem APIs it is required to initialize MWSLibrary
class
Modifier and Type | Method and Description |
---|---|
void |
addDirectoryPrincipalListener(IDirectoryPrincipalListener listener)
Adds directory principal listener.
|
void |
addDirectoryRoleResolver(IDirectoryRoleResolver resolver)
Adds directory role resolver
|
default void |
checkPrerequisites()
Check for the presense of any existing pre-requisites and throws
exception if the prerequisites are not present.
|
default void |
close()
Release any resources
|
IDirectorySession |
createSession()
Created default directory session with no permissions restrictions.
|
IDirectorySession |
createSession(IDirectoryUser directoryUser)
Created directory session for given directory principal.
|
void |
destroySession(IDirectorySession session)
Deprecated.
use
IDirectorySession.close() instead |
Transport |
getTransport()
Returns the transport that this implemenation uses
to communicate to MWS
|
void |
refreshPrincipal(String principalID)
Refreshes any in-memory cached information about given principal.
|
void |
removeDirectoryPrincipalListener(IDirectoryPrincipalListener listener)
Removed directory principal listener
|
void |
removeDirectoryRoleResolver(IDirectoryRoleResolver resolver)
Removed directory role resolver
|
Transport getTransport()
void addDirectoryPrincipalListener(IDirectoryPrincipalListener listener)
import com.webmethods.sc.directory.DirectorySystemFactory; import com.webmethods.sc.directory.IDirectoryPrincipalListener; import com.webmethods.sc.directory.IDirectorySystem; import com.webmethods.sc.directory.Transport; ................................................ try (IDirectorySystem dirSystem = DirectorySystemFactory.getDirectorySystem(Transport.REST)) { dirSystem.addDirectoryPrincipalListener(new IDirectoryPrincipalListener() { public void onAction(String prinicipalID, int action) { // do something } }); }, please follow the instructions in SoftwareAG_InstallDir/common/lib/cds/readme.txt.
listener
- void removeDirectoryPrincipalListener(IDirectoryPrincipalListener listener)
listener
- void addDirectoryRoleResolver(IDirectoryRoleResolver resolver)
resolver
- void removeDirectoryRoleResolver(IDirectoryRoleResolver resolver)
resolver
- IDirectorySession createSession() throws DirectoryException
destroySession(IDirectorySession)
callDirectoryException
- if there was a failure creating directory sessionIDirectorySession createSession(IDirectoryUser directoryUser)
This call is very cheap and there
is no limitations on how many sessions may be created. It is important that every created session should be closed using destroySession(IDirectorySession)
call
directoryUser
- user to create directory session forDirectoryException
- if there was a failure creating directory session@Deprecated void destroySession(IDirectorySession session)
IDirectorySession.close()
insteadsession
- void refreshPrincipal(String principalID) throws DirectoryException
principalID
- DirectoryException
default void checkPrerequisites() throws DirectoryException
DirectoryException
default void close()
close
in interface AutoCloseable