public class ProfileForm extends GenericFormHandler
Modifier and Type | Class and Description |
---|---|
class |
ProfileForm.ProfileFormHashtableWrapper |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string
|
static java.lang.String |
CONFIRMPASSWORD_PARAM
Name of the confirmation password form parameter
|
static java.lang.String |
DEFAULT_CREATE_PROFILE_TYPE
This is the type of the profile that is created by the create operation.
|
static java.lang.String |
DEFAULT_LOGIN_PROFILE_TYPE
This is the type of Profile, when performing a login operation.
|
static java.lang.String |
DEFAULT_LOGOUT_PROFILE_TYPE
This is the type of Profile that we revert to when the logout operation completes.
|
static java.lang.String |
HANDLE_CREATE
Constant for the handleCreate method.
|
static ParameterName |
HANDLE_CREATE_PARAM
ParameterName for the String HANDLE_CREATE
|
static java.lang.Boolean |
HANDLE_FAILURE
Constant to indicate that the handle method failed
|
static java.lang.String |
HANDLE_LOGIN
Constant for the handleLogin method.
|
static ParameterName |
HANDLE_LOGIN_PARAM
ParameterName for the String HANDLE_LOGIN
|
static java.lang.Boolean |
HANDLE_SUCCESS
Constant to indicate that the handle method was successful
|
static java.lang.String |
ID_NAME
Name of the ID form parameter
|
protected atg.nucleus.dms.AuthenticationMessageTrigger |
mAuthenticationMessageTrigger
The authentication message trigger used to fire login attempt messages.
|
protected long |
mBadPasswordDelay
the number of milliseconds to delay after a bad password is submitted.
|
protected java.lang.String |
mChangePasswordErrorURL |
protected java.lang.String |
mChangePasswordSuccessURL |
protected boolean |
mCheckForRequiredParameters |
protected boolean |
mCheckForRequiredProperties |
protected boolean |
mCheckForRequiredPropertiesAfterUpdate |
protected boolean |
mCompareValueInCopyPropertiesOnLogin
Property indicating whether to compare property values in copyPropertiesOnLogin method
|
protected boolean |
mConfirmOldPassword |
protected boolean |
mConfirmPassword |
protected java.lang.String |
mCreateErrorURL |
protected java.lang.String |
mCreateProfileType |
protected java.lang.String |
mCreateSuccessURL |
protected java.lang.String |
mDeleteErrorURL |
protected java.lang.String |
mDeleteSuccessURL |
protected boolean |
mExpireSessionOnLogout |
protected boolean |
mExtractDefaultValuesFromProfile |
protected java.lang.String |
mLoginErrorURL |
protected java.lang.String |
mLoginProfileType |
protected java.lang.String |
mLoginSuccessURL |
protected java.lang.String |
mLogoutErrorURL |
protected java.lang.String |
mLogoutProfileType |
protected java.lang.String |
mLogoutSuccessURL |
protected ProfileTools |
mProfileTools |
protected java.lang.String[] |
mPropertiesToAddOnLogin
Array, Map, and Collection properties to add from anonymous profiles to persistent profiles on login
|
protected java.lang.String[] |
mPropertiesToCopyOnLogin
properties to copy from anonymous profiles to persistent profiles on login
|
protected java.lang.String |
mRepositoryId |
protected static java.lang.String |
MSG_ERR_CREATING_PROFILE |
protected static java.lang.String |
MSG_ERR_DELETING_PROFILE |
protected static java.lang.String |
MSG_ERR_UPDATING_PROFILE |
protected static java.lang.String |
MSG_ILLEGAL_ARGUMENT |
protected static java.lang.String |
MSG_INVALID_ADD_PROPERTY |
protected static java.lang.String |
MSG_INVALID_LOGIN |
protected static java.lang.String |
MSG_INVALID_PASSWORD |
protected static java.lang.String |
MSG_MISSING_LOGIN |
protected static java.lang.String |
MSG_MISSING_OLD_PASSWORD |
protected static java.lang.String |
MSG_MISSING_PASSWORD |
protected static java.lang.String |
MSG_MISSING_PROFILE |
protected static java.lang.String |
MSG_MISSING_PROFILE_TOOLS |
protected static java.lang.String |
MSG_MISSING_REQUIRED_PROPERTY |
protected static java.lang.String |
MSG_NO_SUCH_PROFILE_PROPERTY |
protected static java.lang.String |
MSG_NO_TYPE_CONVERTER |
protected static java.lang.String |
MSG_PASSWORD_SAME_AS_OLD_PASSWORD |
protected static java.lang.String |
MSG_PASSWORDS_DO_NOT_MATCH |
protected static java.lang.String |
MSG_PERMISSION_DEFINED_PASSWORD_CHANGE |
protected static java.lang.String |
MSG_READ_ONLY_PROFILE_PROPERTY |
protected static java.lang.String |
MSG_TYPE_CONVERSION_ERR |
protected static java.lang.String |
MSG_USER_ALREADY_EXISTS |
protected static java.lang.String |
MSG_WARNING_PROFILE_TOOLS |
protected java.util.List |
mSwapEventListeners
A List of EventListeners that care about ProfileSwapEvents
|
protected java.lang.String[] |
mTrimProperties |
protected java.lang.String |
mUpdateErrorURL |
protected java.lang.String |
mUpdateSuccessURL |
protected UserLoginManager |
mUserLoginManager
This is the UserLoginManager used throughout the application to
manage authentication.
|
protected boolean |
mUsingLdapProfile
Property indicating whether this form handler is acting on
an LDAP profile.
|
protected atg.userprofiling.ProfileFormHashtable |
mValue |
static java.lang.Object |
NULL_SENTINEL
Object to be used to reprosent null property values.
|
static java.lang.String |
OLDPASSWORD_PARAM
Name of the old password form parameter
|
protected static java.lang.String |
REPOSITORY_ID_PROPERTY_NAME
The property name of the repository id
|
protected static java.lang.String |
RESOURCE_BUNDLE_NAME |
protected static java.util.ResourceBundle |
sResourceBundle |
static int |
STATUS_ERROR_REDIRECT
Constant to indicate that the state of the form errors, but that
the form should perform a redirect.
|
static int |
STATUS_ERROR_STAY
Constant to indicate that the state of the form errors, but that
the form should not perform a redirect.
|
static int |
STATUS_SUCCESS
Constant to indicate that the state of the form has no errors.
|
PARAM_DEFER_FORWARD_OR_REDIRECT, PARAM_USE_FORWARDS
SERVICE_INFO_KEY
DEFAULT_LOG_TRACE_STATUS
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
Constructor and Description |
---|
ProfileForm()
Constructs a new ProfileForm.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addMulti(java.lang.String pPropertyName,
java.lang.Object pPropertyValue,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Handles the updating of multi-value attributes pPropertyName with pPropertyValue
|
protected void |
addPropertiesOnLogin(RepositoryItem pGuestUser,
RepositoryItem pAuthenticatedUser)
Add the Array, Map, and Collection properties from the current anonymous user to the
authenticated user.
|
protected void |
addProperty(java.lang.String pPropertyName,
RepositoryItem pGuestUser,
MutableRepositoryItem pAuthenticatedUser)
Add the given named property, of type Array, Map, and Collection, from the current anonymous user to the
authenticated user.
|
void |
addSwapEventListener(atg.userprofiling.ProfileSwapEventListener pListener)
Adds a ProfileSwapEventListener to the list of listeners that
care about ProfileSwapEvents
|
protected RepositoryItem |
addUser(MutableRepositoryItem pUser,
MutableRepository pProfileRepository,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Returns the RepositoryItem which represents the newly added user in the
Profile Repository.
|
protected boolean |
changePassword(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Changes the users password.
|
protected int |
checkFormError(java.lang.String pErrorURL,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Check to see if there were errors during the submit operation.
|
protected boolean |
checkFormSuccess(java.lang.String pSuccessURL,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
If the form was successfully submitted, see if we should redirect
after processing the form data.
|
protected void |
checkForRequiredParameters(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
This method is used to verify that certain request parameters have been submitted in the
form.
|
protected void |
checkForRequiredProperties(Repository pProfileRepository,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
NOTE: This method has been ressurected for use in 5.0.
|
protected void |
checkForRequiredProperties(RepositoryItem pItem,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Iterates over all the properties in the profile template and if any of them
are flagged as required then we check to make sure there is an associated
non-
null property value in the RepositoryItem. |
protected void |
commitTransaction(javax.transaction.Transaction pTransaction)
Commits the current transaction
|
protected void |
copyPropertiesOnLogin(RepositoryItem pGuestUser,
RepositoryItem pAuthenticatedUser)
Copy the properties from the current session to the specied
repository item.
|
protected void |
copyProperty(java.lang.String pPropertyName,
RepositoryItem pGuestUser,
MutableRepositoryItem pAuthenticatedUser)
Copies a property from the guest user to the authenticated users
|
protected void |
copyPropertyValue(java.lang.String pPropertyName,
java.lang.Object pPropertyValue,
MutableRepositoryItem pAuthenticatedUser)
Copies a property to the authenticated user
|
protected MutableRepositoryItem |
createProfileItem(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
This method is called from createUser to create the MutableRepositoryItem
to use in the creation of a user.
|
protected RepositoryItem |
createUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
By examing the values submitted in the form, a user is attempted to be
created and then added persistently to the Profile Repository.
|
void |
doStartService()
Start the service - make sure we have ProfileTools
|
protected javax.transaction.Transaction |
ensureTransaction()
This method ensures that a transaction exists before returning.
|
protected RepositoryItem |
findUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Checks the supplied login and password and attempts to find
a profile which matches the supplied values.
|
protected RepositoryItem |
findUser(java.lang.String pLogin,
java.lang.String pPassword,
Repository pProfileRepository,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Returns the user profile or null if the user could not be found with the
given login and password.
|
protected java.lang.String |
formatUserMessage(java.lang.String pKey,
DynamoHttpServletRequest pRequest)
Utility method to format a message with no arguments using the Locale of the user
|
protected java.lang.String |
formatUserMessage(java.lang.String pKey,
java.lang.Object[] pParams,
DynamoHttpServletRequest pRequest)
Utility method to format a message with two arguments using our resource bundle.
|
protected java.lang.String |
formatUserMessage(java.lang.String pKey,
java.lang.Object pParam,
DynamoHttpServletRequest pRequest)
Utility method to format a message with one argument using the Locale of the user
|
protected java.lang.String |
formatUserMessage(java.lang.String pKey,
java.lang.Object pParam1,
java.lang.Object pParam2,
DynamoHttpServletRequest pRequest)
Utility method to format a message with two arguments using our resource bundle.
|
protected java.lang.String |
generatePropertyPath(java.lang.String pPropertyName)
Returns a Nucleus property path which can be used in a DropletFormException
|
protected java.lang.String |
getAddMultiPropertyName(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Get the multi-value Property Name to use in a handleAddMulti call.
|
protected java.lang.Object |
getAddMultiPropertyValue(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Get the multi-value Property Value to use in a handleAddMulti call.
|
atg.nucleus.dms.AuthenticationMessageTrigger |
getAuthenticationMessageTrigger()
Returns the authentication message trigger used to fire login attempt messages.
|
long |
getBadPasswordDelay()
Get property
BadPasswordDelay |
java.lang.String |
getChangePasswordErrorURL() |
java.lang.String |
getChangePasswordSuccessURL() |
boolean |
getCheckForRequiredParameters()
Returns property CheckForRequiredParameters
|
boolean |
getCheckForRequiredProperties() |
boolean |
getCheckForRequiredPropertiesAfterUpdate() |
java.lang.String |
getCreateErrorURL() |
java.lang.String |
getCreateProfileType() |
java.lang.String |
getCreateSuccessURL() |
java.lang.String |
getDeleteErrorURL() |
java.lang.String |
getDeleteSuccessURL() |
protected RepositoryItemDescriptor |
getDescriptor()
Return the RepositoryItemDescriptor that describes the profiles that this formHandler edits.
|
boolean |
getExpireSessionOnLogout() |
java.lang.String |
getLoginErrorURL() |
java.lang.String |
getLoginProfileType() |
java.lang.String |
getLoginSuccessURL() |
java.lang.String |
getLogoutErrorURL() |
java.lang.String |
getLogoutProfileType() |
java.lang.String |
getLogoutSuccessURL() |
protected java.lang.String[] |
getProcessPropertyNames(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Returns an array of PropertyNames that setValueDictionaryByParameters should process.
|
Profile |
getProfile() |
RepositoryItem |
getProfileItem() |
ProfileRealmManager |
getProfileRealmManager()
get ProfileRealmManager
|
ProfileTools |
getProfileTools() |
java.lang.String[] |
getPropertiesToAddOnLogin()
Get property PropertiesToAddOnLogin
|
java.lang.String[] |
getPropertiesToCopyOnLogin()
Get property PropertiesToCopyOnLogin
|
protected atg.multisite.ProfileRealmSessionTracker |
getRealmSessionTracker(DynamoHttpServletRequest pRequest)
get the RealmSessionTracker
|
java.lang.String |
getRealmSessionTrackerName()
get RealmSessionTrackerName
|
java.lang.String |
getRepositoryId() |
protected java.lang.String |
getStringValueProperty(java.lang.String pName)
Return the value of a property from the
values
Dictionary as a String |
protected TransactionDemarcation |
getTransactionDemarcation()
Gets a new TransactionDemarcation.
|
protected javax.transaction.TransactionManager |
getTransactionManager()
Returns the transaction manager for the repository that we are using
|
java.lang.String[] |
getTrimProperties()
Returns property TrimProperties
|
java.lang.String |
getUpdateErrorURL() |
java.lang.String |
getUpdateSuccessURL() |
protected java.util.Locale |
getUserLocale(DynamoHttpServletRequest pRequest)
Returns the Locale for the user given the request
|
UserLoginManager |
getUserLoginManager()
Returns the value of the property UserLoginManager, used to manage
authentication.
|
java.util.Dictionary |
getValue() |
protected java.lang.Object |
getValueFromArrayString(java.lang.Class pClass,
java.lang.Class pComponentClass,
java.lang.String pStrValue)
This method take a string pStrValue and converts it to an object of type pClass returning
the converted object.
|
protected java.lang.Object |
getValueFromObject(java.lang.Class pClass,
java.lang.Class pComponentClass,
java.lang.Object pOldValue)
This method take an Object pOldValue and converts it to an object
of type pClass returning the converted object.
|
protected java.lang.Object |
getValueFromObjectArray(java.lang.Class pClass,
java.lang.Class pComponentClass,
java.lang.Object[] pOldValue)
This method take an array of Objects pOldValue and converts it to an object
of type pClass returning the converted object.
|
protected java.lang.Object |
getValueFromString(java.lang.Class pClass,
java.lang.Class pComponentClass,
java.lang.String pStrValue)
This method take a string pStrValue and converts it to an object of type pClass returning
the converted object.
|
protected java.lang.Object |
getValueFromStringArray(java.lang.Class pClass,
java.lang.Class pComponentClass,
java.lang.String[] pStrValues)
This method take an array of strings pStrValue and converts it to an object
of type pClass returning the converted object.
|
java.util.Map |
getValueMap() |
protected java.lang.Object |
getValueProperty(java.lang.String pName)
Return the value of a property from the
values
Dictionary |
boolean |
handleAddMulti(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Handles the updating of multi-value attributes
|
boolean |
handleChangePassword(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
A special form handler user to update a user's password profile attribute.
|
boolean |
handleCreate(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Takes the current set of values set as members of the value property
and, if there were no errors in submitting the form, creates a new
profile, sets these values in the new profile and set the RepositoryId
property.
|
boolean |
handleDelete(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Handles the removal of a user from the Profile Repository based on
the profile id as defined by the repositoryId property
|
boolean |
handleLogin(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
By examing the values submitted in the form, looks for a user
with the supplied login and password values.
|
boolean |
handleLogout(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Changes the type of the current profile to logoutProfileType.
|
boolean |
handleUpdate(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Takes the current set of values set as members of the value property
and, if there were no errors in submitting the form, modifies the
profile described by the RepositoryId property with these values.
|
boolean |
handleValueDictionaryByParameters(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Calls setValueDitionaryByParameters to update the property value with
the values set in pRequests parameters.
|
boolean |
isCompareValueInCopyPropertiesOnLogin()
Gets the CompareValueInCopyPropertiesOnLogin property
|
boolean |
isConfirmOldPassword()
Returns property ConfirmPassword
|
boolean |
isConfirmPassword()
Returns property ConfirmPassword
|
boolean |
isExtractDefaultValuesFromProfile()
Returns property ExtractDefaultValuesFromProfile.
|
boolean |
isInvalidateAllChildSessions()
Returns property invalidateAllChildSessions.
|
protected boolean |
isTrimProperty(java.lang.String pProperty)
Tests whether pProperty should be trimmed or not
|
boolean |
isUsingLdapProfile()
Gets the UsingLdapProfile property
|
protected void |
postAddMulti(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after addMulti()
|
protected void |
postChangePassword(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after the user's password is changed
|
protected void |
postCreateUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after the user creation process is finished
|
protected void |
postDeleteUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after the user is removed from the Profile Repository
|
protected void |
postLoginUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after the user is found to be logged in
|
protected void |
postLogoutUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after the user is logged out
|
protected void |
postUpdateUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after the user's profile is updated
|
protected void |
postValueDictionaryByParameters(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just after handleValueDictionaryParameters
|
protected void |
preAddMulti(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before addMulti
|
protected void |
preChangePassword(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before the user's password is changed
|
protected void |
preCreateUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before the user creation process is started
|
protected void |
preDeleteUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before the user is removed from the Profile Repository
|
protected void |
preLoginUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before the user is found to be logged in
|
protected void |
preLogoutUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before the user is logged out
|
protected void |
preUpdateUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before the user's profile is updated
|
protected void |
preValueDictionaryByParameters(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Operation called just before handleValueDictionaryParameters
|
void |
removeSwapEventListener(atg.userprofiling.ProfileSwapEventListener pListener)
Removes a ProfileSwapEventListener to the list of listeners that
care about ProfileSwapEvents
|
protected boolean |
removeUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Removes the user with the given profile id as defined by the
repositoryId property.
|
void |
sendProfileSwapEvent(int pEventType,
RepositoryItem pPreSwapItem,
RepositoryItem pPostSwapItem)
Sends a ProfileSwapEvent using the given arguments
|
void |
setAuthenticationMessageTrigger(atg.nucleus.dms.AuthenticationMessageTrigger pAuthenticationMessageTrigger)
Changes the authentication message trigger used to fire login attempt messages.
|
void |
setBadPasswordDelay(long pBadPasswordDelay)
Set property
BadPasswordDelay |
void |
setChangePasswordErrorURL(java.lang.String pChangePasswordErrorURL)
Sets the property ChangePasswordErrorURL.
|
void |
setChangePasswordSuccessURL(java.lang.String pChangePasswordSuccessURL)
Sets the property ChangePasswordSuccessURL.
|
void |
setCheckForRequiredParameters(boolean pCheckForRequiredParameters)
Sets property CheckForRequiredParameters.
|
void |
setCheckForRequiredProperties(boolean pCheckForRequiredProperties)
Sets the property CheckForRequiredProperties.
|
void |
setCheckForRequiredPropertiesAfterUpdate(boolean pCheckForRequiredPropertiesAfterUpdate)
Sets the property CheckForRequiredPropertiesAfterUpdate.
|
void |
setCompareValueInCopyPropertiesOnLogin(boolean pCompareValueInCopyPropertiesOnLogin)
Sets the CompareValueInCopyPropertiesOnLogin property
|
void |
setConfirmOldPassword(boolean pConfirmOldPassword)
Sets property ConfirmPassword
|
void |
setConfirmPassword(boolean pConfirmPassword)
Sets property ConfirmPassword
|
void |
setCreateErrorURL(java.lang.String pCreateErrorURL)
Sets the property CreateErrorURL.
|
void |
setCreateProfileType(java.lang.String pCreateProfileType)
Sets the property CreateProfileType.
|
void |
setCreateSuccessURL(java.lang.String pCreateSuccessURL)
Sets the property CreateSuccessURL.
|
void |
setDeleteErrorURL(java.lang.String url)
Sets the property DeleteErrorURL
|
void |
setDeleteSuccessURL(java.lang.String url)
Sets the property DeleteSuccessURL
|
void |
setExpireSessionOnLogout(boolean pExpireSessionOnLogout)
Sets the property ExpireSessionOnLogout.
|
void |
setExtractDefaultValuesFromProfile(boolean pExtractDefaultValuesFromProfile)
Sets property ExtractDefaultValuesFromProfile
|
void |
setInvalidateAllChildSessions(boolean pInvalidateAllChildSessions)
Sets property invalidateAllChildSessions.
|
void |
setLoginErrorURL(java.lang.String pLoginErrorURL)
Sets the property LoginErrorURL.
|
void |
setLoginProfileType(java.lang.String pLoginProfileType)
Sets the property LoginProfileType.
|
void |
setLoginSuccessURL(java.lang.String pLoginSuccessURL)
Sets the property LoginSuccessURL.
|
void |
setLogoutErrorURL(java.lang.String pLogoutErrorURL)
Sets the property LogoutErrorURL.
|
void |
setLogoutProfileType(java.lang.String pLogoutProfileType)
Sets the property LogoutProfileType.
|
void |
setLogoutSuccessURL(java.lang.String pLogoutSuccessURL)
Sets the property LogoutSuccessURL.
|
void |
setProfileTools(ProfileTools pProfileTools)
Sets the property ProfileTools.
|
void |
setPropertiesToAddOnLogin(java.lang.String[] pPropertiesToAddOnLogin)
Set property PropertiesToAddOnLogin
|
void |
setPropertiesToCopyOnLogin(java.lang.String[] pPropertiesToCopyOnLogin)
Set property PropertiesToCopyOnLogin
|
void |
setRealmSessionTrackerName(java.lang.String pRealmSessionTrackerName)
set RealmSessionTrackerName
|
void |
setRepositoryId(java.lang.String id)
Sets the property RepositoryId
description: the RepositoryId of the Profile to manipulate
|
void |
setTrimProperties(java.lang.String[] pTrimProperties)
Sets property TrimProperties.
|
void |
setUpdateErrorURL(java.lang.String pUpdateErrorURL)
Sets the property UpdateErrorURL.
|
void |
setUpdateSuccessURL(java.lang.String pUpdateSuccessURL)
Sets the property UpdateSuccessURL.
|
void |
setUserLoginManager(UserLoginManager pUserLoginManager)
Sets the property UserLoginManager, used to manage authentication.
|
void |
setUsingLdapProfile(boolean pUsingLdapProfile)
Sets the UsingLdapProfile property
|
protected void |
setValueDictionaryByParameters(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Goes through each pRequests Parameters looking for parameters
named after profile attributes and sets the values of these
parameters in the value dictionary.
|
protected void |
setValueProperty(java.lang.String pName,
java.lang.Object pValue)
Set the value of a property into the
values
Dictionary. |
void |
updateLDAPProfileAttributes(MutableRepositoryItem pItem)
Updates profile attributes pertaining to LDAP.
|
protected java.lang.Object |
updatePasswordValue(java.lang.Object pValue,
java.lang.String pSalt,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Takes the value of the form inputed password attribute confirms
it if nescessary and finally generates a new password as
a function of the PropertyManager.generatePassword() method.
|
protected void |
updateProfileAttributes(MutableRepositoryItem pMutableUser,
java.util.Dictionary pValues,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Takes the current values of the 'value' property and sticks them
into the repository item given.
|
protected void |
updateProfileAttributes(MutableRepositoryItem pMutableUser,
java.util.Dictionary pValues,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse,
java.lang.String pPropertyPathPrefix)
Takes the current values of the 'value' property and sticks them
into the repository item given.
|
protected void |
updateUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Updates the user based on the current profile id.
|
protected void |
updateUser(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse,
MutableRepository pRepository)
Updates the user based on the current profile id.
|
protected boolean |
userAlreadyExists(java.lang.String pPossibleLogin,
Repository pProfileRepository,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Returns true if a user already exists with the given login name
|
protected boolean |
valueIsEmpty(java.lang.Object pValue)
Returns true if the supplied value is empty.
|
addFormException, addUncheckedFormException, afterSet, beforeSet, checkFormRedirect, createFormSubmissionMessage, getCancelURL, getCheckForValidSession, getFormError, getFormExceptions, getFormName, getMessagePort, getMessageSource, getMessageType, getPropertyExceptions, getSendMessages, getUncheckedFormExceptions, handleCancel, handleFormException, handleUncheckedFormException, hasUncheckedFormExceptions, isDeferForwardsAndRedirects, isRestorableForm, isUseForwards, isValidSession, redirectOrForward, resetFormExceptions, setCancelURL, setCheckForValidSession, setDeferForwardsAndRedirects, setFormName, setMessagePort, setMessageSource, setMessageType, setRestorableForm, setSendMessages, setUseForwards
afterGet, beforeGet
addLogListener, createAdminServlet, doStopService, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public static java.lang.String CLASS_VERSION
public static final java.lang.String ID_NAME
public static final java.lang.String CONFIRMPASSWORD_PARAM
public static final java.lang.String OLDPASSWORD_PARAM
public static final java.lang.String DEFAULT_CREATE_PROFILE_TYPE
public static final java.lang.String DEFAULT_LOGOUT_PROFILE_TYPE
public static final java.lang.String DEFAULT_LOGIN_PROFILE_TYPE
protected static final java.lang.String REPOSITORY_ID_PROPERTY_NAME
public static final int STATUS_SUCCESS
checkFormError
method.public static final int STATUS_ERROR_STAY
checkFormError
method.public static final int STATUS_ERROR_REDIRECT
checkFormError
method.public static final java.lang.Boolean HANDLE_SUCCESS
public static final java.lang.Boolean HANDLE_FAILURE
public static final java.lang.String HANDLE_CREATE
public static final ParameterName HANDLE_CREATE_PARAM
public static final java.lang.String HANDLE_LOGIN
public static final ParameterName HANDLE_LOGIN_PARAM
public static final java.lang.Object NULL_SENTINEL
protected static final java.lang.String RESOURCE_BUNDLE_NAME
protected static final java.lang.String MSG_INVALID_ADD_PROPERTY
protected static final java.lang.String MSG_NO_TYPE_CONVERTER
protected static final java.lang.String MSG_WARNING_PROFILE_TOOLS
protected static final java.lang.String MSG_NO_SUCH_PROFILE_PROPERTY
protected static final java.lang.String MSG_INVALID_LOGIN
protected static final java.lang.String MSG_ERR_DELETING_PROFILE
protected static final java.lang.String MSG_MISSING_PROFILE_TOOLS
protected static final java.lang.String MSG_MISSING_PROFILE
protected static final java.lang.String MSG_ERR_CREATING_PROFILE
protected static final java.lang.String MSG_USER_ALREADY_EXISTS
protected static final java.lang.String MSG_ERR_UPDATING_PROFILE
protected static final java.lang.String MSG_MISSING_REQUIRED_PROPERTY
protected static final java.lang.String MSG_READ_ONLY_PROFILE_PROPERTY
protected static final java.lang.String MSG_TYPE_CONVERSION_ERR
protected static final java.lang.String MSG_ILLEGAL_ARGUMENT
protected static final java.lang.String MSG_MISSING_LOGIN
protected static final java.lang.String MSG_INVALID_PASSWORD
protected static final java.lang.String MSG_MISSING_PASSWORD
protected static final java.lang.String MSG_MISSING_OLD_PASSWORD
protected static final java.lang.String MSG_PASSWORDS_DO_NOT_MATCH
protected static final java.lang.String MSG_PASSWORD_SAME_AS_OLD_PASSWORD
protected static final java.lang.String MSG_PERMISSION_DEFINED_PASSWORD_CHANGE
protected static java.util.ResourceBundle sResourceBundle
protected boolean mExtractDefaultValuesFromProfile
protected java.lang.String mRepositoryId
protected ProfileTools mProfileTools
protected java.lang.String mCreateProfileType
protected java.lang.String mLogoutProfileType
protected java.lang.String mLoginProfileType
protected atg.userprofiling.ProfileFormHashtable mValue
protected boolean mExpireSessionOnLogout
protected boolean mCheckForRequiredParameters
protected boolean mCheckForRequiredProperties
protected boolean mCheckForRequiredPropertiesAfterUpdate
protected java.lang.String mUpdateSuccessURL
protected java.lang.String mUpdateErrorURL
protected java.lang.String mCreateSuccessURL
protected java.lang.String mCreateErrorURL
protected java.lang.String mChangePasswordSuccessURL
protected java.lang.String mChangePasswordErrorURL
protected java.lang.String mLoginSuccessURL
protected java.lang.String mLoginErrorURL
protected java.lang.String mLogoutSuccessURL
protected java.lang.String mLogoutErrorURL
protected java.lang.String mDeleteSuccessURL
protected java.lang.String mDeleteErrorURL
protected boolean mConfirmPassword
protected boolean mConfirmOldPassword
protected boolean mUsingLdapProfile
protected boolean mCompareValueInCopyPropertiesOnLogin
protected java.lang.String[] mPropertiesToCopyOnLogin
protected java.lang.String[] mPropertiesToAddOnLogin
protected java.lang.String[] mTrimProperties
protected long mBadPasswordDelay
protected UserLoginManager mUserLoginManager
This odd state of affairs is done because virtually everyone has overridden ProfileFormHandler to produce their own variant, and it's common practice to also create a new Nucleus object for the new form handler. Since this is done, we cannot change the property name or location without breaking almost every application in existance. So instead we have extended the UserLoginManager's capabilities in place.
protected java.util.List mSwapEventListeners
protected atg.nucleus.dms.AuthenticationMessageTrigger mAuthenticationMessageTrigger
public ProfileForm()
public void setExtractDefaultValuesFromProfile(boolean pExtractDefaultValuesFromProfile)
public boolean isExtractDefaultValuesFromProfile()
public void setRepositoryId(java.lang.String id)
public java.lang.String getRepositoryId()
public Profile getProfile()
public RepositoryItem getProfileItem()
public void setProfileTools(ProfileTools pProfileTools)
public ProfileTools getProfileTools()
protected TransactionDemarcation getTransactionDemarcation()
public void setCreateProfileType(java.lang.String pCreateProfileType)
public java.lang.String getCreateProfileType()
public void setLogoutProfileType(java.lang.String pLogoutProfileType)
public java.lang.String getLogoutProfileType()
public void setLoginProfileType(java.lang.String pLoginProfileType)
public java.lang.String getLoginProfileType()
public java.util.Dictionary getValue()
public java.util.Map getValueMap()
public void setExpireSessionOnLogout(boolean pExpireSessionOnLogout)
public boolean getExpireSessionOnLogout()
public void setCheckForRequiredParameters(boolean pCheckForRequiredParameters)
public boolean getCheckForRequiredParameters()
public void setCheckForRequiredProperties(boolean pCheckForRequiredProperties)
public boolean getCheckForRequiredProperties()
public void setCheckForRequiredPropertiesAfterUpdate(boolean pCheckForRequiredPropertiesAfterUpdate)
public boolean getCheckForRequiredPropertiesAfterUpdate()
public void setUpdateSuccessURL(java.lang.String pUpdateSuccessURL)
public java.lang.String getUpdateSuccessURL()
public void setUpdateErrorURL(java.lang.String pUpdateErrorURL)
public java.lang.String getUpdateErrorURL()
public void setCreateSuccessURL(java.lang.String pCreateSuccessURL)
public java.lang.String getCreateSuccessURL()
public void setCreateErrorURL(java.lang.String pCreateErrorURL)
public java.lang.String getCreateErrorURL()
public void setChangePasswordSuccessURL(java.lang.String pChangePasswordSuccessURL)
public java.lang.String getChangePasswordSuccessURL()
public void setChangePasswordErrorURL(java.lang.String pChangePasswordErrorURL)
public java.lang.String getChangePasswordErrorURL()
public void setLoginSuccessURL(java.lang.String pLoginSuccessURL)
public java.lang.String getLoginSuccessURL()
public void setLoginErrorURL(java.lang.String pLoginErrorURL)
public java.lang.String getLoginErrorURL()
public void setLogoutSuccessURL(java.lang.String pLogoutSuccessURL)
public java.lang.String getLogoutSuccessURL()
public void setLogoutErrorURL(java.lang.String pLogoutErrorURL)
public java.lang.String getLogoutErrorURL()
public java.lang.String getDeleteSuccessURL()
public void setDeleteSuccessURL(java.lang.String url)
public java.lang.String getDeleteErrorURL()
public void setDeleteErrorURL(java.lang.String url)
public void setConfirmPassword(boolean pConfirmPassword)
public boolean isConfirmPassword()
public void setConfirmOldPassword(boolean pConfirmOldPassword)
public boolean isConfirmOldPassword()
public void setUsingLdapProfile(boolean pUsingLdapProfile)
pUsingLdapProfile
- if true, then we're acting upon an
LDAP-based profile, or a composite profile that uses LDAP as
part of its makeuppublic boolean isUsingLdapProfile()
public void setCompareValueInCopyPropertiesOnLogin(boolean pCompareValueInCopyPropertiesOnLogin)
pCompareValueInCopyPropertiesOnLogin
- if true, copyPropertiesOnLogin method
will compare property values between anonymous profiles
and persistent profiles. If the value is not the same,
it will copy the property to persistent profiles.public boolean isCompareValueInCopyPropertiesOnLogin()
public void setPropertiesToCopyOnLogin(java.lang.String[] pPropertiesToCopyOnLogin)
pPropertiesToCopyOnLogin
- new value to setpublic java.lang.String[] getPropertiesToCopyOnLogin()
public void setPropertiesToAddOnLogin(java.lang.String[] pPropertiesToAddOnLogin)
pPropertiesToAddOnLogin
- new value to setpublic java.lang.String[] getPropertiesToAddOnLogin()
public void setTrimProperties(java.lang.String[] pTrimProperties)
public java.lang.String[] getTrimProperties()
public void setBadPasswordDelay(long pBadPasswordDelay)
BadPasswordDelay
pBadPasswordDelay
- new value to setpublic long getBadPasswordDelay()
BadPasswordDelay
BadPasswordDelay
public void setUserLoginManager(UserLoginManager pUserLoginManager)
public UserLoginManager getUserLoginManager()
public void setInvalidateAllChildSessions(boolean pInvalidateAllChildSessions)
pLog
- public boolean isInvalidateAllChildSessions()
public void setRealmSessionTrackerName(java.lang.String pRealmSessionTrackerName)
pRealmSessionTrackerName
- the RealmSessionTrackerNamepublic java.lang.String getRealmSessionTrackerName()
public void addSwapEventListener(atg.userprofiling.ProfileSwapEventListener pListener)
pListener
- the ProfileSwapEventListener to addpublic void removeSwapEventListener(atg.userprofiling.ProfileSwapEventListener pListener)
pListener
- the ProfileSwapEventListener to removepublic atg.nucleus.dms.AuthenticationMessageTrigger getAuthenticationMessageTrigger()
public void setAuthenticationMessageTrigger(atg.nucleus.dms.AuthenticationMessageTrigger pAuthenticationMessageTrigger)
public ProfileRealmManager getProfileRealmManager()
protected atg.multisite.ProfileRealmSessionTracker getRealmSessionTracker(DynamoHttpServletRequest pRequest)
protected boolean isTrimProperty(java.lang.String pProperty)
pProperty
- the name of the property to check to be trimmedprotected javax.transaction.TransactionManager getTransactionManager()
protected javax.transaction.Transaction ensureTransaction()
protected void commitTransaction(javax.transaction.Transaction pTransaction)
public void doStartService() throws ServiceException
doStartService
in class GenericService
ServiceException
- if the Service had a problem starting uppublic boolean handleCreate(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
If any errors occur in the process, form errors will be added. If there were no errors encountered while submitting the form, we optionally redirect to the value of the property createSuccessURL. Otherwise, we optionally redirect to createErrorURL.
javax.servlet.ServletException
java.io.IOException
protected void preCreateUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postCreateUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected MutableRepositoryItem createProfileItem(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected RepositoryItem createUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void checkForRequiredProperties(Repository pProfileRepository, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
checkForRequiredParameters
or alternative
checkForRequiredProperties
method which takes in a RepositoryItem to validate.pProfileRepository
- the repository which should contain the desired profile templatepRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void checkForRequiredParameters(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
confirmpassword
form parameter is included in the request if the confirmPassword
property is
set to true. If any errors occur form exceptions are added.pRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void checkForRequiredProperties(RepositoryItem pItem, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
null
property value in the RepositoryItem.
If any errors occur form exceptions are added.pRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected boolean valueIsEmpty(java.lang.Object pValue)
protected boolean userAlreadyExists(java.lang.String pPossibleLogin, Repository pProfileRepository, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
pPossibleLogin
- the login which a user wants to usepProfileRepository
- the repository to search for the pre-existing userpRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected RepositoryItem addUser(MutableRepositoryItem pUser, MutableRepository pProfileRepository, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
pUser
- the potential new user to add to the Profile RespositorypProfileRepository
- the repository to add the user topRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleUpdate(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
If any errors occur in the process, form errors will be added. If there were no errors encountered while submitting the form, we optionally redirect to the value of the property updateSuccessURL. Otherwise, we optionally redirect to updateErrorURL.
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void preUpdateUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postUpdateUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void updateUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
value
property container are saved into the user profile. If
any errors occur in the process, form errors will be added.pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void updateUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse, MutableRepository pRepository) throws javax.servlet.ServletException, java.io.IOException
value
property container are saved into the user profile. If
any errors occur in the process, form errors will be added.
The 2 argument form of this method is the recommended one to use unless
there is a need to specify a different repository.pRequest
- the servlet's requestpResponse
- the servlet's responsepRepository
- Mutable repository in which the user will be updated.javax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleChangePassword(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
If any errors occur in the process, form errors will be added. If there were no errors encountered while submitting the form, we optionally redirect to the value of the property changePasswordSuccessURL. Otherwise, we optionally redirect to changePasswordErrorURL.
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void preChangePassword(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postChangePassword(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected boolean changePassword(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleLogin(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
If any errors occur in the process, form errors will be added. If there were no errors encountered while submitting the form, we optionally redirect to the value of the property loginSuccessURL. Otherwise, we optionally redirect to loginErrorURL.
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void copyPropertiesOnLogin(RepositoryItem pGuestUser, RepositoryItem pAuthenticatedUser) throws RepositoryException
propertiesToCopyOnLogin
. Subclasses can
override this method to provide special handling.RepositoryException
protected void copyProperty(java.lang.String pPropertyName, RepositoryItem pGuestUser, MutableRepositoryItem pAuthenticatedUser) throws RepositoryException
pPropertyName
- the property to copypGuestUser
- the guest userpAuthenticatedUser
- the authenticated userRepositoryException
protected void copyPropertyValue(java.lang.String pPropertyName, java.lang.Object pPropertyValue, MutableRepositoryItem pAuthenticatedUser) throws RepositoryException
pPropertyName
- the property to copypPropertyValue
- the value of the property to copypAuthenticatedUser
- the authenticated userRepositoryException
protected void addPropertiesOnLogin(RepositoryItem pGuestUser, RepositoryItem pAuthenticatedUser) throws RepositoryException
propertiesToAddOnLogin
. Subclasses can
override this method to provide special handling.RepositoryException
protected void addProperty(java.lang.String pPropertyName, RepositoryItem pGuestUser, MutableRepositoryItem pAuthenticatedUser) throws RepositoryException
RepositoryException
protected void preLoginUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postLoginUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected RepositoryItem findUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected RepositoryItem findUser(java.lang.String pLogin, java.lang.String pPassword, Repository pProfileRepository, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
pLogin
- the login name for the personpPassword
- the password for the person, optionally null if no password
checking should be performed.pProfileRepository
- the repository which should contain the desired profile templatepRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleLogout(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
If there were no errors encountered while submitting the form, we optionally redirect to the value of the property logoutSuccessURL. Otherwise, we optionally redirect to logoutErrorURL.
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void preLogoutUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postLogoutUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleValueDictionaryByParameters(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void preValueDictionaryByParameters(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postValueDictionaryByParameters(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleDelete(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
If any errors occur in the process, form errors will be added. If there were no errors encountered while submitting the form, we optionally redirect to the value of the property deleteSuccessURL. Otherwise, we optionally redirect to deleteErrorURL.
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void preDeleteUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postDeleteUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected boolean removeUser(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected java.lang.String getAddMultiPropertyName(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected java.lang.Object getAddMultiPropertyValue(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic boolean handleAddMulti(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void preAddMulti(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void postAddMulti(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void addMulti(java.lang.String pPropertyName, java.lang.Object pPropertyValue, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pPropertyName
- The name of the property to append topPropertyValue
- The value to append to the pProperypRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected java.lang.Object getValueFromArrayString(java.lang.Class pClass, java.lang.Class pComponentClass, java.lang.String pStrValue) throws java.lang.IllegalArgumentException
pClass
- the type of the return value.pComponentClass
- the type of the component.pStrValue
- the string value to convert.java.lang.IllegalArgumentException
- if couldn't find a property editor for pClassprotected java.lang.Object getValueFromString(java.lang.Class pClass, java.lang.Class pComponentClass, java.lang.String pStrValue) throws java.lang.IllegalArgumentException
pClass
- the type of the return value.pComponentClass
- the type of the componentpStrValue
- the string value to convert.java.lang.IllegalArgumentException
- if couldn't find a property editor for pClassprotected java.lang.Object getValueFromStringArray(java.lang.Class pClass, java.lang.Class pComponentClass, java.lang.String[] pStrValues) throws java.lang.IllegalArgumentException
pClass
- the type of the return value.pComponentClass
- the type of the component.pStrValues
- the array of string values to convert.java.lang.IllegalArgumentException
- if couldn't find a property editor for pClassprotected java.lang.Object getValueFromObjectArray(java.lang.Class pClass, java.lang.Class pComponentClass, java.lang.Object[] pOldValue) throws java.lang.IllegalArgumentException
pClass
- the type of the return value.pComponentClass
- the type of the component.pOldValue
- the array of object values to convert.java.lang.IllegalArgumentException
- if couldn't find a property editor for pClassprotected java.lang.Object getValueFromObject(java.lang.Class pClass, java.lang.Class pComponentClass, java.lang.Object pOldValue) throws java.lang.IllegalArgumentException
pClass
- the type of the return value.pComponentClass
- the type of the component.pOldValue
- the object to convert.java.lang.IllegalArgumentException
- if couldn't find a property editor for pClassprotected java.lang.Object updatePasswordValue(java.lang.Object pValue, java.lang.String pSalt, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pValue
- the value of the password passed from the form.pSalt
- the value with which to salt the password hashjavax.servlet.ServletException
java.io.IOException
protected void updateProfileAttributes(MutableRepositoryItem pMutableUser, java.util.Dictionary pValues, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
pMutableUser
- the user to update the profile attributes by the form valuespRequest
- the servlet's requestpResponse
- the servlet's responseRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void updateProfileAttributes(MutableRepositoryItem pMutableUser, java.util.Dictionary pValues, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse, java.lang.String pPropertyPathPrefix) throws RepositoryException, javax.servlet.ServletException, java.io.IOException
pMutableUser
- the user to update the profile attributes by the form valuespRequest
- the servlet's requestpResponse
- the servlet's responsepPropertyPathPrefix
- when this method is called recursively for
subproperties, this argument contains the property path up to that point;
initially, it is nullRepositoryException
- if there was an error while accessing the Profile Repositoryjavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet iopublic void updateLDAPProfileAttributes(MutableRepositoryItem pItem) throws RepositoryException
pItem
- the item to change values onRepositoryException
protected java.lang.String generatePropertyPath(java.lang.String pPropertyName)
protected java.lang.String getStringValueProperty(java.lang.String pName)
values
Dictionary as a Stringprotected java.lang.Object getValueProperty(java.lang.String pName)
values
Dictionaryprotected void setValueProperty(java.lang.String pName, java.lang.Object pValue)
values
Dictionary. If pValue is null then the property defined
by pName is removed from the values
Dictionary.protected RepositoryItemDescriptor getDescriptor()
protected int checkFormError(java.lang.String pErrorURL, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pErrorURL
- the URL to redirect to if there are any form errorspRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioSTATUS_SUCCESS
,
STATUS_ERROR_STAY
,
STATUS_ERROR_REDIRECT
protected boolean checkFormSuccess(java.lang.String pSuccessURL, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pSuccessURL
- the URL to redirect to if the form was successfully submittedpRequest
- the servlet's requestpResponse
- the servlet's responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected java.lang.String[] getProcessPropertyNames(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlets requestpResponse
- the servlets responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected void setValueDictionaryByParameters(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pRequest
- the servlets requestpResponse
- the servlets responsejavax.servlet.ServletException
- if there was an error while executing the codejava.io.IOException
- if there was an error with servlet ioprotected java.util.Locale getUserLocale(DynamoHttpServletRequest pRequest)
pRequest
- the request object which can be used to extract the user's localepublic void sendProfileSwapEvent(int pEventType, RepositoryItem pPreSwapItem, RepositoryItem pPostSwapItem)
pEventType
- the type of operation that was performed when
the profiles were swappedpPreSwapItem
- the data source of the profile before the
swap was performedpPostSwapItem
- the data source of the profile after the
swap was performedprotected java.lang.String formatUserMessage(java.lang.String pKey, DynamoHttpServletRequest pRequest)
pKey
- the identifier for the message to retrieve out of the ResourceBundlepRequest
- the request object which can be used to extract the user's localeProfileUserMessage
protected java.lang.String formatUserMessage(java.lang.String pKey, java.lang.Object pParam, DynamoHttpServletRequest pRequest)
pKey
- the identifier for the message to retrieve out of the ResourceBundlepParam
- the first (and only argument) in the messageProfileUserMessage
protected java.lang.String formatUserMessage(java.lang.String pKey, java.lang.Object pParam1, java.lang.Object pParam2, DynamoHttpServletRequest pRequest)
pKey
- the identifier for the message to retrieve out of the ResourceBundlepParam1
- the first parameter in the messagepParam2
- the second parameter in the messageProfileUserMessage
protected java.lang.String formatUserMessage(java.lang.String pKey, java.lang.Object[] pParams, DynamoHttpServletRequest pRequest)
pKey
- the identifier for the message to retrieve out of the ResourceBundlepParams
- a set of parameters to use in the formatting.ProfileUserMessage