com.netscape.cms.servlet.profile
Class ProfileProcessServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by com.netscape.cms.servlet.base.CMSServlet
              extended by com.netscape.cms.servlet.profile.ProfileServlet
                  extended by com.netscape.cms.servlet.profile.ProfileProcessServlet
All Implemented Interfaces:
java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

public class ProfileProcessServlet
extends ProfileServlet

This servlet approves profile-based request.

Version:
$Revision: 1768 $, $Date: 2011-01-24 14:39:59 -0800 (Mon, 24 Jan 2011) $
See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.netscape.cms.servlet.profile.ProfileServlet
ARG_AUTH_CONSTRAINT, ARG_AUTH_DESC, ARG_AUTH_ID, ARG_AUTH_IS_SSL, ARG_AUTH_LIST, ARG_AUTH_NAME, ARG_AUTH_SYNTAX, ARG_CON_DESC, ARG_CON_LIST, ARG_CON_NAME, ARG_CON_VALUE, ARG_DEF_CONSTRAINT, ARG_DEF_DESC, ARG_DEF_ID, ARG_DEF_LIST, ARG_DEF_NAME, ARG_DEF_SYNTAX, ARG_DEF_VAL, ARG_ERROR_CODE, ARG_ERROR_REASON, ARG_INPUT_CONSTRAINT, ARG_INPUT_ID, ARG_INPUT_LIST, ARG_INPUT_NAME, ARG_INPUT_PLUGIN_DESC, ARG_INPUT_PLUGIN_ID, ARG_INPUT_PLUGIN_LIST, ARG_INPUT_PLUGIN_NAME, ARG_INPUT_SYNTAX, ARG_INPUT_VAL, ARG_IS_RENEWAL, ARG_OP, ARG_OUTPUT_CONSTRAINT, ARG_OUTPUT_ID, ARG_OUTPUT_LIST, ARG_OUTPUT_NAME, ARG_OUTPUT_SYNTAX, ARG_OUTPUT_VAL, ARG_POLICY, ARG_POLICY_ID, ARG_POLICY_SET_ID, ARG_POLICY_SET_LIST, ARG_PROFILE, ARG_PROFILE_APPROVED_BY, ARG_PROFILE_DESC, ARG_PROFILE_ENABLED_BY, ARG_PROFILE_ID, ARG_PROFILE_IS_ENABLED, ARG_PROFILE_IS_VISIBLE, ARG_PROFILE_NAME, ARG_PROFILE_REMOTE_ADDR, ARG_PROFILE_REMOTE_HOST, ARG_PROFILE_SET_ID, ARG_RECORD, ARG_RENEWAL_PROFILE_ID, ARG_REQUEST_CREATION_TIME, ARG_REQUEST_ID, ARG_REQUEST_LIST, ARG_REQUEST_MODIFICATION_TIME, ARG_REQUEST_NONCE, ARG_REQUEST_NOTES, ARG_REQUEST_OWNER, ARG_REQUEST_STATUS, ARG_REQUEST_TYPE, ARG_XML_OUTPUT, AUTHZ_CONFIG_STORE, AUTHZ_MGR_BASIC, AUTHZ_MGR_LDAP, AUTHZ_SRC_LDAP, AUTHZ_SRC_TYPE, AUTHZ_SRC_XML, mAclMethod, mAuthMgr, mAuthz, mAuthzResourceName, mGetClientCert, mId, mLogCategory, mLogger, mProfileSubId, mSignedAuditLogger, PROP_ACL, PROP_AUTHZ_MGR, PROP_RESOURCEID
 
Fields inherited from class com.netscape.cms.servlet.base.CMSServlet
ADMIN_GROUP, AUTH_FAILURE, AUTHMGR_PARAM, CA_AGENT_GROUP, CERT_ATTR, CERT_AUTH_CRED, ERROR_MSG_TOKEN, ERROR_TEMPLATE, EXCEPTION_TEMPLATE, FAILURE, FINAL_ERROR_MSG, FULL_ENROLLMENT_REQUEST, FULL_ENROLLMENT_RESPONSE, FULL_RESPONSE, KRA_AGENT_GROUP, mAuthority, mConfig, mDontSaveHttpParams, mFinalErrorMsg, mOutputTemplatePath, mRenderResult, mRequestQueue, mSaveHttpHeaders, mServletConfig, mServletContext, mTemplates, OCSP_AGENT_GROUP, PENDING_TEMPLATE, PFX_AUTH_TOKEN, PFX_HTTP_HEADER, PFX_HTTP_PARAM, PROP_AUTHORITY, PROP_ERROR_TEMPLATE, PROP_EXCEPTION_TEMPLATE, PROP_FINAL_ERROR_MSG, PROP_PENDING_TEMPLATE, PROP_REJECTED_TEMPLATE, PROP_SUCCESS_TEMPLATE, PROP_SUCCESS_TEMPLATE_FILLER, PROP_SVC_PENDING_TEMPLATE, PROP_UNAUTHORIZED_TEMPLATE, RA_AGENT_GROUP, REJECTED_TEMPLATE, SIMPLE_ENROLLMENT_REQUEST, SIMPLE_ENROLLMENT_RESPONSE, SUCCESS, SUCCESS_TEMPLATE, SVC_PENDING_TEMPLATE, TEMPLATE_NAME, TRUSTED_RA_GROUP, UNAUTHORIZED_TEMPLATE
 
Constructor Summary
ProfileProcessServlet()
           
 
Method Summary
protected  void approveRequest(javax.servlet.ServletRequest request, ArgSet args, IRequest req, IRequestQueue queue, IProfile profile, java.util.Locale locale)
          Approve request
protected  void assignRequest(javax.servlet.ServletRequest request, ArgSet args, IRequest req, IRequestQueue queue, IProfile profile, java.util.Locale locale)
           
protected  void cancelRequest(javax.servlet.ServletRequest request, ArgSet args, IRequest req, IRequestQueue queue, IProfile profile, java.util.Locale locale)
          Cancel request
protected  void checkProfileVersion(IProfile profile, IRequest req, java.util.Locale locale)
          Check if the request creation time is older than the profile lastModified attribute.
 boolean grantPermission(IRequest req, IAuthToken token)
           
 void init(javax.servlet.ServletConfig sc)
          initialize the servlet.
 void process(CMSRequest cmsReq)
          process an HTTP request.
protected  void rejectRequest(javax.servlet.ServletRequest request, ArgSet args, IRequest req, IRequestQueue queue, IProfile profile, java.util.Locale locale)
          Reject request
protected  void setValue(java.util.Locale locale, int count, IProfilePolicy policy, IRequest req, javax.servlet.ServletRequest request)
           
protected  void unassignRequest(javax.servlet.ServletRequest request, ArgSet args, IRequest req, IRequestQueue queue, IProfile profile, java.util.Locale locale)
           
protected  void updateNotes(javax.servlet.ServletRequest request, IRequest req)
           
protected  void updateValues(javax.servlet.ServletRequest request, IRequest req, IRequestQueue queue, IProfile profile, java.util.Locale locale)
           
protected  void validate(java.util.Locale locale, int count, IProfilePolicy policy, IRequest req, javax.servlet.ServletRequest request)
           
 
Methods inherited from class com.netscape.cms.servlet.profile.ProfileServlet
escapeJavaScriptString, escapeXML, getLocale, log, log, outputArgList, outputArgSet, outputArgString, outputArgValueAsXML, outputData, outputTemplate, outputThisAsXML, renderResult
 
Methods inherited from class com.netscape.cms.servlet.base.CMSServlet
areCertsFromCA, audit, auditGroupID, auditSubjectID, authenticate, authenticate, authenticate, authenticate, authorize, authorize, certIsRevoked, checkImportCertToNav, clientIsMSIE, clientIsNav, connectionIsSSL, doCMMFResponse, doFullResponse, escapeValueRfc1779, formCRLEntry, generateSalt, getAuthCreds, getAuthMgr, getAuthToken, getCertRecord, getDontSaveHttpParams, getId, getLangFile, getLocale, getRelPath, getSaveHttpHeaders, getSSLClientCertificate, getTemplate, getX509Certificate, hashPassword, importCertToNav, invalidateSSLSession, isCertFromCA, isClientCertRequired, isSystemCertificate, newCMSRequest, newFillerObject, outputArgBlockAsXML, outputError, outputError, outputError, outputHttpParameters, outputResult, outputXML, renderException, renderFinalError, renderTemplate, saveAuthToken, saveHttpHeaders, saveHttpParams, service, setDefaultTemplates, toHashtable
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
 
Methods inherited from class javax.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProfileProcessServlet

public ProfileProcessServlet()
Method Detail

init

public void init(javax.servlet.ServletConfig sc)
          throws javax.servlet.ServletException
Description copied from class: ProfileServlet
initialize the servlet. Servlets implementing this method must specify the template to use as a parameter called "templatePath" in the servletConfig

Specified by:
init in interface javax.servlet.Servlet
Overrides:
init in class ProfileServlet
Parameters:
sc - servlet configuration, read from the web.xml file
Throws:
javax.servlet.ServletException

process

public void process(CMSRequest cmsReq)
             throws EBaseException
Description copied from class: CMSServlet
process an HTTP request. Servlets must override this with their own implementation

Overrides:
process in class CMSServlet
Throws:
EBaseException - if the servlet was unable to satisfactorily process the request

grantPermission

public boolean grantPermission(IRequest req,
                               IAuthToken token)

checkProfileVersion

protected void checkProfileVersion(IProfile profile,
                                   IRequest req,
                                   java.util.Locale locale)
                            throws EProfileException
Check if the request creation time is older than the profile lastModified attribute.

Throws:
EProfileException

assignRequest

protected void assignRequest(javax.servlet.ServletRequest request,
                             ArgSet args,
                             IRequest req,
                             IRequestQueue queue,
                             IProfile profile,
                             java.util.Locale locale)
                      throws EProfileException
Throws:
EProfileException

unassignRequest

protected void unassignRequest(javax.servlet.ServletRequest request,
                               ArgSet args,
                               IRequest req,
                               IRequestQueue queue,
                               IProfile profile,
                               java.util.Locale locale)
                        throws EProfileException
Throws:
EProfileException

cancelRequest

protected void cancelRequest(javax.servlet.ServletRequest request,
                             ArgSet args,
                             IRequest req,
                             IRequestQueue queue,
                             IProfile profile,
                             java.util.Locale locale)
                      throws EProfileException
Cancel request

(Certificate Request Processed - a manual "agent" profile based cert cancellation)

Parameters:
request - the servlet request
args - argument set
req - the certificate request
queue - the certificate request queue
profile - this profile
locale - the system locale
Throws:
EProfileException - an error related to this profile has occurred

rejectRequest

protected void rejectRequest(javax.servlet.ServletRequest request,
                             ArgSet args,
                             IRequest req,
                             IRequestQueue queue,
                             IProfile profile,
                             java.util.Locale locale)
                      throws EProfileException
Reject request

(Certificate Request Processed - a manual "agent" profile based cert rejection)

Parameters:
request - the servlet request
args - argument set
req - the certificate request
queue - the certificate request queue
profile - this profile
locale - the system locale
Throws:
EProfileException - an error related to this profile has occurred

approveRequest

protected void approveRequest(javax.servlet.ServletRequest request,
                              ArgSet args,
                              IRequest req,
                              IRequestQueue queue,
                              IProfile profile,
                              java.util.Locale locale)
                       throws EProfileException
Approve request

(Certificate Request Processed - a manual "agent" profile based cert acceptance)

Parameters:
request - the servlet request
args - argument set
req - the certificate request
queue - the certificate request queue
profile - this profile
locale - the system locale
Throws:
EProfileException - an error related to this profile has occurred

updateValues

protected void updateValues(javax.servlet.ServletRequest request,
                            IRequest req,
                            IRequestQueue queue,
                            IProfile profile,
                            java.util.Locale locale)
                     throws ERejectException,
                            EDeferException,
                            EPropertyException
Throws:
ERejectException
EDeferException
EPropertyException

updateNotes

protected void updateNotes(javax.servlet.ServletRequest request,
                           IRequest req)

validate

protected void validate(java.util.Locale locale,
                        int count,
                        IProfilePolicy policy,
                        IRequest req,
                        javax.servlet.ServletRequest request)
                 throws ERejectException,
                        EDeferException
Throws:
ERejectException
EDeferException

setValue

protected void setValue(java.util.Locale locale,
                        int count,
                        IProfilePolicy policy,
                        IRequest req,
                        javax.servlet.ServletRequest request)
                 throws EPropertyException
Throws:
EPropertyException