|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.lang.Thread
com.sun.slamd.job.JobClass
com.sun.slamd.example.SolarisLDAPAuthRateJobClass
This class defines a SLAMD job that simulates the load that a Solaris 9 client places on the directory when authenticating telnet users through pam_ldap.
| Field Summary | |
static int |
AUTH_METHOD_DIGEST_MD5
The flag indicating that the authentication method should be "DIGEST-MD5". |
static int |
AUTH_METHOD_SIMPLE
The flag indicating that the authentication method should be "simple". |
static java.lang.String[] |
AUTH_METHOD_STRINGS
The human-readable strings corresponding to the authentication method constants. |
static int |
AUTH_METHOD_TLS_DIGEST_MD5
The flag indicating that the authentication method should be "DIGEST-MD5" over an SSL connection. |
static int |
AUTH_METHOD_TLS_SIMPLE
The flag indicating that the authentication method should be "simple" over an SSL connection. |
static int |
CREDENTIAL_LEVEL_ANONYMOUS
The flag indicating that the "anonymous" credential level should be used. |
static int |
CREDENTIAL_LEVEL_PROXY
The flag indicating that the "proxy" credential level should be used. |
static java.lang.String[] |
CREDENTIAL_LEVEL_STRINGS
The human-readable strings corresponding to the credential level constants. |
static java.lang.String |
SSL_KEY_PASSWORD_PROPERTY
The system property used to specify the password for the JSSE key store. |
static java.lang.String |
SSL_KEY_STORE_PROPERTY
The system property used to specify the location of the JSSE key store. |
static java.lang.String |
SSL_TRUST_PASSWORD_PROPERTY
The system property used to specify the password for the JSSE trust store. |
static java.lang.String |
SSL_TRUST_STORE_PROPERTY
The system property used to specify the location of the JSSE trust store. |
static java.lang.String |
STAT_TRACKER_AUTHENTICATION_ATTEMPTS
The name of the stat tracker that will be used to count the number of authentication attempts. |
static java.lang.String |
STAT_TRACKER_AUTHENTICATION_TIME
The name of the stat tracker that will be used to keep track of the time required to perform each authentication. |
static java.lang.String |
STAT_TRACKER_FAILED_AUTHENTICATIONS
The name of the stat tracker that will be used to count the number of failed authentications. |
static java.lang.String |
STAT_TRACKER_SUCCESSFUL_AUTHENTICATIONS
The name of the stat tracker that will be used to count the number of successful authentications. |
| Fields inherited from class java.lang.Thread |
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
| Constructor Summary | |
SolarisLDAPAuthRateJobClass()
Creates a new instance of this job thread. |
|
| Method Summary | |
void |
bindAsUser(java.lang.String userDN,
java.lang.String userPassword)
Performs a bind as the user with the specified DN, using the configured authentication method. |
void |
getAutomountEntry(java.lang.String keyName)
Simulates the query issued to the directory server when Solaris is looking for the automount records for a specified key. |
void |
getGroupsForUser(java.lang.String userID)
Simulates the query issued to the directory server when Solaris is trying to determine the groups for the specified user. |
void |
getHostByAddress(java.lang.String ipAddress)
Simulates the query issued to the directory server whenever the Solaris gethostbyaddr function is called. |
void |
getHostByName(java.lang.String hostname)
Simulates the query issued to the directory server whenever the Solaris gethostbyname function is called. |
java.lang.String |
getIPAddress()
Retrieves a randomly-chosen IP address to use as the client's source address. |
java.lang.String |
getJobCategoryName()
Retrieves the name of the category in which this job class exists. |
java.lang.String |
getJobDescription()
Returns a description of this job that can be seen in the administrative interface. |
java.lang.String |
getJobName()
Returns the user-friendly name that is to be used for this job class in the administrative interface. |
void |
getNISKey(int uidNumber)
Simulates the query issued to the directory server when Solaris is trying to get the NIS key information for the specified user. |
ParameterList |
getParameterStubs()
Returns the set of parameters whose value may be specified by the end user. |
int |
getPosixAccount(java.lang.String userID)
Simulates the query issued to the directory server whenever the Solaris getpwnam function is called. |
void |
getProjectByName(java.lang.String projectName)
Simulates the query issued to the directory server when Solaris is trying to retrieve the project with the given name. |
java.lang.String |
getShadowAccount(java.lang.String userID)
Simulates the query issued to the directory server whenever the Solaris getspnam function is called. |
StatTracker[] |
getStatTrackers()
Retrieves the set of stat trackers that are maintained by this job class. |
StatTracker[] |
getStatTrackerStubs(java.lang.String clientID,
java.lang.String threadID,
int collectionInterval)
Retrieves the set of stat trackers that will be maintained by this job class. |
void |
getUserAttr(java.lang.String userID)
Simulates the query issued to the directory server when Solaris is trying to retrieve extended attributes for a user entry. |
boolean |
getUserEntry(java.lang.String userID)
Retrieves the entry for the user with all attributes. |
java.lang.String |
getUserID()
Retrieves a randomly-chosen user ID to use for the next authentication. |
void |
initializeClient(java.lang.String clientID,
ParameterList parameters)
Performs initialization for this job on each client immediately before each thread is created to actually run the job. |
void |
initializeThread(java.lang.String clientID,
java.lang.String threadID,
int collectionInterval,
ParameterList parameters)
Initializes this job class with the information that it will use when actually running the job. |
void |
runJob()
Perform the work of this job thread by establishing the connection(s) to the directory server and issuing all the appropriate queries. |
void |
validateJobInfo(int numClients,
int threadsPerClient,
int threadStartupDelay,
java.util.Date startTime,
java.util.Date stopTime,
int duration,
int collectionInterval,
ParameterList parameters)
Provides a means of validating the information used to schedule the job, including the scheduling information and list of parameters. |
| Methods inherited from class java.lang.Thread |
activeCount, checkAccess, countStackFrames, currentThread, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final int CREDENTIAL_LEVEL_ANONYMOUS
public static final int CREDENTIAL_LEVEL_PROXY
public static final java.lang.String[] CREDENTIAL_LEVEL_STRINGS
public static final int AUTH_METHOD_SIMPLE
public static final int AUTH_METHOD_DIGEST_MD5
public static final int AUTH_METHOD_TLS_SIMPLE
public static final int AUTH_METHOD_TLS_DIGEST_MD5
public static final java.lang.String[] AUTH_METHOD_STRINGS
public static final java.lang.String SSL_KEY_STORE_PROPERTY
public static final java.lang.String SSL_KEY_PASSWORD_PROPERTY
public static final java.lang.String SSL_TRUST_STORE_PROPERTY
public static final java.lang.String SSL_TRUST_PASSWORD_PROPERTY
public static final java.lang.String STAT_TRACKER_AUTHENTICATION_ATTEMPTS
public static final java.lang.String STAT_TRACKER_AUTHENTICATION_TIME
public static final java.lang.String STAT_TRACKER_FAILED_AUTHENTICATIONS
public static final java.lang.String STAT_TRACKER_SUCCESSFUL_AUTHENTICATIONS
| Constructor Detail |
public SolarisLDAPAuthRateJobClass()
| Method Detail |
public java.lang.String getJobName()
getJobName in class JobClasspublic java.lang.String getJobDescription()
getJobDescription in class JobClasspublic java.lang.String getJobCategoryName()
getJobCategoryName in class JobClasspublic ParameterList getParameterStubs()
getParameterStubs in class JobClass
public StatTracker[] getStatTrackerStubs(java.lang.String clientID,
java.lang.String threadID,
int collectionInterval)
getStatTrackerStubs in class JobClassclientID - The client ID that should be used for the
returned stat trackers.threadID - The thread ID that should be used for the
returned stat trackers.collectionInterval - The collection interval that should be used for
the returned stat trackers.
public StatTracker[] getStatTrackers()
getStatTrackers in class JobClass
public void validateJobInfo(int numClients,
int threadsPerClient,
int threadStartupDelay,
java.util.Date startTime,
java.util.Date stopTime,
int duration,
int collectionInterval,
ParameterList parameters)
throws InvalidValueException
validateJobInfo in class JobClassnumClients - The number of clients that should be used to
run the job.threadsPerClient - The number of threads that should be created on
each client to run the job.threadStartupDelay - The delay in milliseconds that should be used
when starting the client threads.startTime - The time that the job should start running.stopTime - The time that the job should stop running.duration - The maximum length of time in seconds that the
job should be allowed to run.collectionInterval - The collection interval that should be used
when gathering statistics for the job.parameters - The set of parameters provided to this job that
can be used to customize its behavior.
InvalidValueException - If the provided information is not
appropriate for running this job.
public void initializeClient(java.lang.String clientID,
ParameterList parameters)
throws UnableToRunException
initializeClient in class JobClassclientID - The ID assigned to the client running this job.parameters - The set of parameters provided to this job that can be
used to customize its behavior.
UnableToRunException - If the client initialization could not be
completed successfully and the job is unable
to run.
public void initializeThread(java.lang.String clientID,
java.lang.String threadID,
int collectionInterval,
ParameterList parameters)
throws UnableToRunException
initializeThread in class JobClassclientID - The thread ID for this thread.threadID - The thread ID for this thread.collectionInterval - The collection interval to use for gathering
statistics while processing the job.parameters - The st of parameters that contain the
information used to customize the way this job
is processed.
UnableToRunException - If a problem occurs that prevents the thread
from being able to run properly.public void runJob()
runJob in class JobClasspublic java.lang.String getIPAddress()
public java.lang.String getUserID()
public void getHostByAddress(java.lang.String ipAddress)
throws netscape.ldap.LDAPException
ipAddress - The dotted-quad (e.g., 1.2.3.4) IP address for which to
retrieve the value.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
public void getHostByName(java.lang.String hostname)
throws netscape.ldap.LDAPException
hostname - The hostname for which to retrieve the address.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
public int getPosixAccount(java.lang.String userID)
throws netscape.ldap.LDAPException
userID - The user ID for which to retrieve the entry.
netscape.ldap.LDAPException - If a problem occurs while processing the query, or
if multiple entries matched the given query.
public java.lang.String getShadowAccount(java.lang.String userID)
throws netscape.ldap.LDAPException
userID - The user ID for which to retrieve the entry.
null if no entry was found.
netscape.ldap.LDAPException - If a problem occurs while processing the query, or
if multiple entries matched the given query.
public boolean getUserEntry(java.lang.String userID)
throws netscape.ldap.LDAPException
userID - The user ID for which to retrieve the entry.
true if a match was found, or false if
there were no matches.
netscape.ldap.LDAPException - If a problem occurs while processing the query, or
if multiple entries matched the given query.
public void bindAsUser(java.lang.String userDN,
java.lang.String userPassword)
throws netscape.ldap.LDAPException
userDN - The DN for the user.userPassword - The password for the user.
netscape.ldap.LDAPException - If a problem occurs while performing the bind.
public void getAutomountEntry(java.lang.String keyName)
throws netscape.ldap.LDAPException
keyName - The name of the key for which to retrieve the automount
records.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
public void getUserAttr(java.lang.String userID)
throws netscape.ldap.LDAPException
userID - The user ID for which to retrieve the information.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
public void getProjectByName(java.lang.String projectName)
throws netscape.ldap.LDAPException
projectName - The name of the project to retrieve.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
public void getGroupsForUser(java.lang.String userID)
throws netscape.ldap.LDAPException
userID - The user ID for which to retrieve the groups.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
public void getNISKey(int uidNumber)
throws netscape.ldap.LDAPException
uidNumber - The UID number for the user.
netscape.ldap.LDAPException - If a problem occurs while processing the query.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||