com.jalios.jcms.handler
Class SyncLdapHandler

java.lang.Object
  extended by com.jalios.jcms.context.JcmsContext
      extended by com.jalios.jcms.context.JcmsJspContext
          extended by com.jalios.jcms.handler.JcmsFormHandler
              extended by com.jalios.jcms.handler.SyncLdapHandler
All Implemented Interfaces:
JcmsConstants, JaliosConstants

public class SyncLdapHandler
extends JcmsFormHandler

This form handler performs LDAP synchronization.

Version:
$Revision: 44795 $
Author:
Olivier Dedieu

Field Summary
static String LDAP_GROUP_SYNC_DONE
           
static org.apache.log4j.Logger logger
           
protected  boolean op
           
protected  boolean opSyncAll
           
protected  boolean opSyncGroup
           
protected  boolean opSyncLdapGroup
           
protected  boolean opSyncOne
           
static String REVISION
           
static int SYNC_PROGRESS_GROUP_CREATED
           
static int SYNC_PROGRESS_GROUP_TREATED
           
static int SYNC_PROGRESS_GROUP_UPDATED
           
static int SYNC_PROGRESS_MEMBER_CREATED
           
static int SYNC_PROGRESS_MEMBER_TREATED
           
static int SYNC_PROGRESS_MEMBER_UPDATED
           
 
Fields inherited from class com.jalios.jcms.handler.JcmsFormHandler
contextMap, editFieldSet, noRedirect, noSendRedirect, popupEdition, redirect, redirectOnClosePopup, workspaceForced
 
Fields inherited from class com.jalios.jcms.context.JcmsJspContext
AJAX_REQUEST_ATTRIBUTES, BODY_HEADER, CSS_HEADER, cssboMap, cssfoMap, CUSTOM_HEADER, editIcon, HTTPEQUIV_HEADER, httpequivMap, HTTPNAME_HEADER, httpnameMap, initEditIcon, JAVASCRIPT_CODE_SET_ATTRIBUTE, JAVASCRIPT_SET_ATTRIBUTE, jsboSet, jsfoSet, out, pageContext, SHOW_EDIT_ICON, STYLE_HEADER
 
Fields inherited from class com.jalios.jcms.context.JcmsContext
browser, caddy, channel, inFO, initDone, initWorkspace, isAdmin, isAjaxRequest, isDBMember, isDebug, isLogged, loggedMember, request, response, userCountry, userLang, userLocale, workspace
 
Fields inherited from interface com.jalios.jcms.JcmsConstants
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, CTRL_TOPIC_INTERNAL, CTRL_TOPIC_REF, CTRL_TOPIC_VALUE, CTRL_TOPIC_WRITE, CUSTOM_PROP, DOCCHOOSER_HEIGHT, DOCCHOOSER_WIDTH, DOCS_DIR, EDATE_SEARCH, EMAIL_REGEXP, ERROR_MSG, FORBIDDEN_FILE_ACCESS, FORBIDDEN_REDIRECT, FORCE_REDIRECT, ICON_ARCHIVE, ICON_LOCK, ICON_LOCK_STRONG, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, JALIOS_JUNIT_PROP, JCMS_CADDY, JCMS_MSG_LIST, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_DEEP_COPY, OP_DEEP_DELETE, OP_DELETE, OP_MERGE, OP_UPDATE, PDATE_SEARCH, PHOTO_DIR, PHOTO_ICON, PHOTO_ICON_HEIGHT, PHOTO_ICON_WIDTH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SESSION_AUTHORIZED_FILENAMES_SET, STATS_REPORT_DIR, STATUS_PROP, STORE_XML, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, URL_REGEXP, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
 
Fields inherited from interface com.jalios.util.JaliosConstants
CRLF, MILLIS_IN_ONE_DAY, MILLIS_IN_ONE_HOUR, MILLIS_IN_ONE_MINUTE, MILLIS_IN_ONE_MONTH, MILLIS_IN_ONE_SECOND, MILLIS_IN_ONE_WEEK, MILLIS_IN_ONE_YEAR
 
Constructor Summary
SyncLdapHandler()
           
 
Method Summary
static void clearLdapGroupBeingSync(javax.servlet.http.HttpSession session)
           
static Group getLdapGroupBeingSync(javax.servlet.http.HttpSession session)
          If LDAP synchronization was request on a LDAP group, return the LDAP Group being synchronized.
static String getLdapGroupSyncProgressInformation()
          Retrieve progress information of ldap group synchronization.
 void performSyncAll()
          Synchronize all members with LDAP.
 void performSyncGroup()
          Synchronize members of current group with LDAP.
 void performSyncLdapGroup()
          Synchronize the LDAP group and retrieve all its member from LDAP.
 void performSyncOne()
          Synchronize current member with LDAP.
 boolean processAction()
          Method to be implemented to check/validate action to be performed and process them.
 void setGid(String gid)
           
 void setId(String id)
           
 void setLdapGid(String gid)
           
 void setOpSyncAll(String v)
           
 void setOpSyncGroup(String v)
           
 void setOpSyncLdapGroup(String v)
           
 void setOpSyncOne(String v)
           
static void updateLdapGroupSyncProgressInformation(int action, Data data)
          This methods adds information regarding the current LDAP synchronization progress to the session.
 boolean validateSyncAll()
           
 boolean validateSyncGroup()
           
 boolean validateSyncLdapGroup()
           
 boolean validateSyncOne()
           
 
Methods inherited from class com.jalios.jcms.handler.JcmsFormHandler
afterValidation, checkMissingField, getControllerContext, getEditFieldSet, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenField, getHiddenFieldML, getMainLangValue, getMainLangValueArray, getMLMap, getMLMapArray, getRedirect, getRedirectOnClosePopup, getWorkspace, init, isFieldEdition, isFieldMissing, isPartialFieldEdition, isPopupEdition, isWorkspaceForced, processStatus, sendRedirect, sendRedirect, setEditField, setNoRedirect, setNoSendRedirect, setPopupEdition, setRedirect, setRedirectOnClosePopup, setWorkspace, setWs, updateUploadedField, updateUploadedFields, validate
 
Methods inherited from class com.jalios.jcms.context.JcmsJspContext
addBodyAttributes, addCSSHeader, addCSSHeader, addCSSHeader, addCSSHeader, addCustomHeader, addHttpEquivHeader, addHttpNameHeader, addJavaScript, addJavaScript, addJavaScript, addJavaScriptCode, addStyleHeader, addStyleHeader, checkAccess, checkAccess, checkCSRF, debugDisplayContext, disablePacker, forceEditIcon, forceUpdate, getAjaxRequestAttribute, getAjaxRequestId, getAllHeadersDiffMap, getAllHeadersMap, getBackOfficeCSSHeader, getBackOfficeJavaScriptSet, getBodyAttributes, getContentForm, getCSSHeaders, getCtxCategories, getCurrentCategory, getCustomHeaders, getDocType, getFinalCSSMap, getFinalJavaScriptSet, getFormElementCount, getFrontOfficeCSSHeader, getFrontOfficeJavaScriptSet, getHttpEquivHeaders, getHttpNameHeaders, getJavaScriptCodeSet, getJavaScriptSet, getJSONBridge, getPackVersion, getPageContext, getPageTitle, getPageZone, getPortal, getPortalCategory, getPortlet, getPublication, getStyleHeaders, getTemplateUsage, internalSetupEmptyHeader, isEditIcon, isEditIcon, isPrintView, registerDisplayContext, removeAjaxRequestAttribute, setAjaxRequestAttribute, setAjaxRequestId, setAllHeadersDiffMap, setDocType, setEditIcon, setFormElementCount, setPageContext, setPageTitle, setPageZone, setShowEditIcon, setTemplateUsage, showEditIcon, showEditIcon, workaroundBrowserBaseHrefBug
 
Methods inherited from class com.jalios.jcms.context.JcmsContext
addCookie, addMsg, addMsg, addMsgSession, addMsgSession, applySelector, forceWorkspaceUpdate, getBaseUrl, getBrowser, getCaddy, getContextPath, getErrorMsg, getErrorMsgList, getErrorMsgSession, getErrorMsgSessionList, getInfoMsg, getInfoMsgList, getInfoMsgSession, getInfoMsgSessionList, getLoggedMember, getMsgList, getMsgSessionList, getRequest, getResponse, getSession, getUploadedFile, getUploadedFileList, getUrlWithCommonUpdatedParams, getUserCountry, getUserLang, getUserLocale, getWarningMsg, getWarningMsgList, getWarningMsgSession, getWarningMsgSessionList, glp, isAdmin, isAjaxRequest, isDBMember, isDebug, isInFrontOffice, isLogged, isWebdavAccess, removeMessage, removeMessage, retrieveUploadedFile, select, sendForbidden, sendForbidden, sendRedirect, sendRedirect, sendRedirect, setErrorMsg, setErrorMsg, setErrorMsgSession, setErrorMsgSession, setInfoMsg, setInfoMsg, setInfoMsgSession, setInfoMsgSession, setLoggedMember, setRequest, setResponse, setWarningMsg, setWarningMsg, setWarningMsgSession, setWarningMsgSession, validateRegexp, validateSchedule
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

REVISION

public static final String REVISION
See Also:
Constant Field Values

logger

public static final org.apache.log4j.Logger logger

op

protected boolean op

opSyncOne

protected boolean opSyncOne

opSyncGroup

protected boolean opSyncGroup

opSyncLdapGroup

protected boolean opSyncLdapGroup

opSyncAll

protected boolean opSyncAll

LDAP_GROUP_SYNC_DONE

public static final String LDAP_GROUP_SYNC_DONE
See Also:
Constant Field Values

SYNC_PROGRESS_GROUP_CREATED

public static final int SYNC_PROGRESS_GROUP_CREATED
See Also:
Constant Field Values

SYNC_PROGRESS_GROUP_UPDATED

public static final int SYNC_PROGRESS_GROUP_UPDATED
See Also:
Constant Field Values

SYNC_PROGRESS_GROUP_TREATED

public static final int SYNC_PROGRESS_GROUP_TREATED
See Also:
Constant Field Values

SYNC_PROGRESS_MEMBER_CREATED

public static final int SYNC_PROGRESS_MEMBER_CREATED
See Also:
Constant Field Values

SYNC_PROGRESS_MEMBER_UPDATED

public static final int SYNC_PROGRESS_MEMBER_UPDATED
See Also:
Constant Field Values

SYNC_PROGRESS_MEMBER_TREATED

public static final int SYNC_PROGRESS_MEMBER_TREATED
See Also:
Constant Field Values
Constructor Detail

SyncLdapHandler

public SyncLdapHandler()
Method Detail

processAction

public boolean processAction()
                      throws IOException
Description copied from class: JcmsFormHandler
Method to be implemented to check/validate action to be performed and process them.

Default implementation is to return false. No need to call super method.

This method may NOT be invoked at all if security validation are not met.
You must ensure your handler and JSP can work properly without any code invoked in this method.

Overrides:
processAction in class JcmsFormHandler
Returns:
false if no redirection is needed, true otherwise
Throws:
IOException

validateSyncOne

public boolean validateSyncOne()
                        throws IOException
Throws:
IOException

performSyncOne

public void performSyncOne()
Synchronize current member with LDAP.


validateSyncGroup

public boolean validateSyncGroup()
                          throws IOException
Throws:
IOException

performSyncGroup

public void performSyncGroup()
Synchronize members of current group with LDAP.


validateSyncLdapGroup

public boolean validateSyncLdapGroup()
                              throws IOException
Returns:
true the syncldapgroup operation can be performed
Throws:
IOException - if sendRedirect/sendForbidden failed
Since:
jcms-5.7.0

performSyncLdapGroup

public void performSyncLdapGroup()
Synchronize the LDAP group and retrieve all its member from LDAP.

Since:
jcms-5.7.0

validateSyncAll

public boolean validateSyncAll()
                        throws IOException
Throws:
IOException

performSyncAll

public void performSyncAll()
Synchronize all members with LDAP.


clearLdapGroupBeingSync

public static void clearLdapGroupBeingSync(javax.servlet.http.HttpSession session)

getLdapGroupBeingSync

public static Group getLdapGroupBeingSync(javax.servlet.http.HttpSession session)
If LDAP synchronization was request on a LDAP group, return the LDAP Group being synchronized. otherwise return null.

Parameters:
session - the current HttpSession
Returns:
the group being synchronized

updateLdapGroupSyncProgressInformation

public static void updateLdapGroupSyncProgressInformation(int action,
                                                          Data data)
This methods adds information regarding the current LDAP synchronization progress to the session. It allows us to retrieve this information using getLdapGroupSyncProgressInformation().
This method MUST be call from the thread launched by SyncLdapHandler. If called from another thread, this method as no effect.

Parameters:
action - the value to updated, choosen from :
data - the Data being processed (needed to make sure a data is not being treated twice)

getLdapGroupSyncProgressInformation

public static String getLdapGroupSyncProgressInformation()
Retrieve progress information of ldap group synchronization.

Returns:
a String containing information about current operation progress or null if operation is over This method MUST be call from a thread with access to Channel.getCurrentServletRequest().

setOpSyncOne

public void setOpSyncOne(String v)

setOpSyncGroup

public void setOpSyncGroup(String v)

setOpSyncLdapGroup

public void setOpSyncLdapGroup(String v)

setOpSyncAll

public void setOpSyncAll(String v)

setId

public void setId(String id)

setGid

public void setGid(String gid)

setLdapGid

public void setLdapGid(String gid)


Copyright © 2001-2010 Jalios SA. All Rights Reserved.