Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.fujitsu.iflow.ddframework.intf
Interface DdFramework

All Superinterfaces:
  java.rmi.Remote

public interface DdFramework
extends java.rmi.Remote

The DdFramework interface handles user authentication and manages the directory and documentary services objects for those users.

When clients make a login call to the Interstage BPM Server, the server in turn calls the login method on this adapter (interface). Logging into the Interstage BPM Server succeeds only if the login call on this interface returns successfully. Similarly, when clients make a logout call to the Interstage BPM server, the server in turn calls the logout method on this adapter (interface). Logins can be verified any way deemed suitable. The DdFramework adapters that ship with the Interstage BPM system use either the NT Directory Server, the Sun (formerly known as iPlanet) Directory Service, or ActiveDirectory for this purpose. The code for these adapters is available as an example to assist you in developing your own adapters.

For every authenticated user, this adapter maintains a directory session and a DMS session. These are RMI objects that implement the DirSession and DMSSession interfaces. These objects can be created either before returning from your login call, given that the login was successful, or when getDirObject and getDMSObject calls are made. When the logout call is made, the RMI objects can be deactivated, and resources allocated for that user can be released.

Method Summary
`DirSession` | `getDirSession(long clientId)` Returns a handle for the DirSession object for the user specified by the clientId.
`DmsSession` | `getDmsSession(long clientId)` Returns a handle for the DMSSession object for the user specified by the clientId.
`long` | `login(java.lang.String userid, java.lang.String password)` Returns a unique clientID for that particular user if the given userid and password combination is valid.
`void` | `logout(long clientId)` A call to this method ends the session of the user specified by the clientID and deactivates the DirSession and DMSSession objects created for this user.
`void` | `resetUsersList(long clientId)` This method deletes all old users from the local user list cache and then obtains the newly populated user list from the directory session.
`void` | `setDebugLevel(int level, java.lang.String name, java.lang.String adapter)` Sets the debug level for the specified adapter.

Method Detail

### login

    public long login(java.lang.String userid,
                      java.lang.String password)
               throws java.rmi.RemoteException,
                      DdfOperationFailed

  Returns a unique clientID for that particular user if the given userid and password combination is valid. Otherwise, it returns null. Each successful call to this function should return a unique long value independent of the parameters passed. The numbers need not be unique across multiple activations of DDFramework object.

  Parameters:
    `userid` - The users login ID in the system.
    `password` - The password for the specified userid.
  Returns:
    clientId A unique clientId for that particular user.
  Throws:
    `DdfOperationFailed` - Thrown if the userid doesnīt exist or if the password is empty or doesnīt match to the userid.
    `java.rmi.RemoteException`

### logout

    public void logout(long clientId)
                throws java.rmi.RemoteException,
                       DdfOperationFailed

  A call to this method ends the session of the user specified by the clientID and deactivates the DirSession and DMSSession objects created for this user.

  Parameters:
    `clientId` - The unique value returned by a successful login call.
  Throws:
    `DdfOperationFailed`
    `java.rmi.RemoteException`

### getDmsSession

    public DmsSession getDmsSession(long clientId)
                             throws java.rmi.RemoteException,
                                    DdfOperationFailed

  Returns a handle for the DMSSession object for the user specified by the clientId.

  Parameters:
    `clientId` - The value returned by a successful login call.
  Returns:
    DmsSession The handle for the DmsSession object.
  Throws:
    `DdfOperationFailed` - Thrown if the user specified by the clientId isnīt logged in.
    `java.rmi.RemoteException`
  See Also:
    `DmsSession`

### getDirSession

    public DirSession getDirSession(long clientId)
                             throws java.rmi.RemoteException,
                                    DdfOperationFailed

  Returns a handle for the DirSession object for the user specified by the clientId.

  Parameters:
    `clientId` - The value returned by a successful login call.
  Returns:
    DirSession The handle for the DirSession object.
  Throws:
    `DdfOperationFailed` - Thrown if the user specified by the clientId isnīt logged in.
    `java.rmi.RemoteException`
  See Also:
    `DirSession`

### resetUsersList

    public void resetUsersList(long clientId)
                        throws java.rmi.RemoteException,
                               DdfOperationFailed

  This method deletes all old users from the local user list cache and then obtains the newly populated user list from the directory session. Note: This method isnīt supported for the NT/SSX directory adapter.

  Parameters:
    `clientId` - The value returned by a successful login call.
  Throws:
    `DdfOperationFailed`
    `java.rmi.RemoteException`

### setDebugLevel

    public void setDebugLevel(int level,
                              java.lang.String name,
                              java.lang.String adapter)
                       throws java.rmi.RemoteException

  Sets the debug level for the specified adapter. The higher the value of level is, the more debug messages will be created.

  Parameters:
    `level` - The value of the desired debug level (-1 = Audit, 0 = Error, 1 = Warning, 2 = Info).
    `name` - Represents the name of the debug module.
    `adapter` - The adapter for which you wish to set the debug level. The available adapters are "dmsAdapter", "dirAdapter" and "ddFrameworkAdapter". If this value is left empty, the debug level will be set for all three adapters.
  Throws:
    `java.rmi.RemoteException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD