Class ClientDsapi

java.lang.Object
   |
   +----ClientDsapi

public class ClientDsapi
extends Object
implements dsapi

Constructor Index

 o ClientDsapi(String, int)
Create the API and assign the address and port of the DS daemon to s:p

Method Index

 o Add(Credentials, Record)
Add r to the database, returning success or failure.
 o Delete(Credentials, String)
Delete n's record, returning success or failure.
 o GetLastError()
Return the last error posted by the API
 o isValid(Credentials, Credentials)
Verify a credential pair c, returning success or failure
 o ListAllConferences(Credentials)
Return a list of all conferences in the database.
 o ListAllUsers(Credentials)
Return a list of all users in the database.
 o Lookup(Credentials, String)
Look up n's record, evaluate its filter, and return addresses
 o Modify(Credentials, Record)
Modify record r in server database, returning modified record.
 o Retrieve(Credentials, String)
Retrieve n's record

Constructors

 o ClientDsapi
 public ClientDsapi(String s,
                    int p)
Create the API and assign the address and port of the DS daemon to s:p

Parameters:
s - address of Directory Services server
p - port of Directory Services server

Methods

 o Add
 public boolean Add(Credentials c,
                    Record r)
Add r to the database, returning success or failure.

Parameters:
c - credentials for user wishing to perform the ADD
r - record of a non-existant account the user wishes to add to the database
Returns:
true on successful ADD false otherwise
See Also:
Credentials, Record
 o Modify
 public Record Modify(Credentials c,
                      Record r)
Modify record r in server database, returning modified record.

Parameters:
c - credentials for user wishing to perform the MODIFY
r - record of an existing account the user wishes to place in the database
Returns:
a copy of the modified record returned from the server null on failure
See Also:
Credentials, Record
 o Retrieve
 public Record Retrieve(Credentials c,
                        String n)
Retrieve n's record

Parameters:
c - credentials for user wishing to perform the RETRIEVE
r - database entry to retrieve
Returns:
retrieved record null on failure
See Also:
Credentials
 o Lookup
 public Enumeration Lookup(Credentials c,
                           String n)
Look up n's record, evaluate its filter, and return addresses

Parameters:
c - credentials for user wishing to perform the LOOKUP
n - database entry to lookup
Returns:
enumeration of String representing locations for n null on failure
See Also:
Credentials
 o Delete
 public boolean Delete(Credentials c,
                       String n)
Delete n's record, returning success or failure.

Parameters:
c - credentials for user wishing to perform the DELETE
n - database entry to be deleted
Returns:
true on successful DELETE false otherwise
See Also:
Credentials
 o ListAllUsers
 public Enumeration ListAllUsers(Credentials c)
Return a list of all users in the database.

Parameters:
c - credentials of user wishing to perform the LISTALLUSERS
Returns:
enumeration of String representing a list of all registered users in the database null on failure
See Also:
Credentials
 o ListAllConferences
 public Enumeration ListAllConferences(Credentials c)
Return a list of all conferences in the database.

Parameters:
c - credentials of user wishing to perform the LISTALLCONFERENCES
Returns:
enumeration of String representing a list of all registered conferences in the database null on failure
See Also:
Credentials
 o isValid
 public boolean isValid(Credentials c,
                        Credentials v)
Verify a credential pair c, returning success or failure

Parameters:
c - credentials of user wishing to perform the ISVALID
v - credential pair to verify with the database
Returns:
true if v is a valid credential false otherwise
See Also:
Credentials
 o GetLastError
 public String GetLastError()
Return the last error posted by the API

Returns:
String containing the last error seen by the API

Object transport grammar


record         = user "\t" password "\t" roamingaddress "\t" filterlist
                 "\t" credentials
filterlist     = filter [ ";" filter-list ]
filter         = time-range " " address-list
time-range     = time ":" time
address-list   = address [ "," address-list ]
address        = meta "!" [ abs-address ]
meta           = "ip" | "pots" | "roam" | "user"
roamingaddress = abs-time " " address
credentials    = user "\b" password

Leaf types are ASCII strings with the following form/semantics:

abs-address    = represents a specific address. ie "2561234" or "127.0.0.1"
user           = user identifier (email address, phone number, identifier )
password       = password
abs-time       = yyyymmddhhmmss in GMT
time           = hhmm in GMT