com.jalios.jcms.workspace
Class WKRole

java.lang.Object
  extended by com.jalios.jstore.BasicStorable
      extended by com.jalios.jcms.Data
          extended by com.jalios.jcms.workspace.WKRole
All Implemented Interfaces:
JcmsConstants, ImportConstants, MashupConstants, Storable, JaliosConstants, LangPropertyArgument, Cloneable, Comparable<BasicStorable>

public class WKRole
extends Data

Version:
$Revision: 34991 $

Nested Class Summary
 
Nested classes/interfaces inherited from class com.jalios.jcms.Data
Data.AuthorComparator<T extends Data>, Data.AuthorSelector, Data.CdateSelector, Data.DataNameComparator<T extends Data>, Data.DeletableSelector, Data.ImportSelector, Data.MdateSelector, Data.OpAuthorComparator<T extends Data>, Data.RowIdComparator<T extends Data>, Data.StrongLockSelector
 
Nested classes/interfaces inherited from class com.jalios.jstore.BasicStorable
BasicStorable.CdateComparator<T extends Storable>, BasicStorable.IdComparator<T extends Storable>, BasicStorable.MdateComparator<T extends Storable>
 
Field Summary
static int AND_MODE
           
protected  ArrayList<Group> groupList
           
protected  int groupMode
           
protected  boolean isInvolvedAuthor
           
protected  ArrayList<Member> memberList
           
protected  int memberMode
           
protected  Set<Member> memberSet
           
static String OPEN_MODE_DISABLED
           
static String OPEN_MODE_ENABLED
           
static String OPEN_MODE_REQUIRED
           
protected  String openMode
           
static int OR_MODE
           
static String REVISION
           
protected  int[] roleWeight
           
protected  boolean[] roleWeightType
           
static boolean WEIGHT_COUNT
           
static boolean WEIGHT_PERCENTAGE
           
protected  Workspace workspace
           
 
Fields inherited from class com.jalios.jcms.Data
author, authorDBID, channel, DISPLAY_URL_EXTRA_INFO, extension, extraDataMap, extraDBDataMapToSaveOnOp, importMap, opAuthor, opDelegate
 
Fields inherited from class com.jalios.jstore.BasicStorable
cdate, ddate, id, mdate, store
 
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
 
Fields inherited from interface com.jalios.jcms.mashup.ImportConstants
IMPORT_ALARM_MGR, IMPORT_AUTHOR_PROP, IMPORT_CATEGORY_DEFAULT, IMPORT_DC_ATTR, IMPORT_DC_STEP, IMPORT_DIR, IMPORT_ENABLED, IMPORT_JDOM_ELEMENT, IMPORT_LOG_FILE, IMPORT_LOG_MAX, IMPORT_OPTIONS, IMPORT_OPTIONS_DC_CONTEXT, IMPORT_ROOT_PROP, IMPORT_SOURCE_FILE, IMPORT_SOURCE_PREFIX_PROP, IMPORT_SOURCES_DIR, IMPORT_STEP_CLEAN, IMPORT_STEP_IMPORT, IMPORT_STEP_UPDATE_REF, IMPORT_WS_PROP
 
Fields inherited from interface com.jalios.jcms.mashup.MashupConstants
DATA_TAG, DATASET_TAG, FIELD_CLASS, FIELD_ENTRY, FIELD_ITEM, FIELD_KEY, FIELD_NAME, FIELD_TAG, FIELD_VALUE, FILE_FIELD, FILE_ID, FILE_MTIME, FILE_SIZE, FILE_TAG, FILE_TICKET, FILESET_TAG, RELATED_TAG
 
Constructor Summary
WKRole()
           
WKRole(WKRole other)
           
 
Method Summary
 void addGroup(Group grp, int weight, boolean type)
           
 void addMember(Member member)
          Convenient method to add a Member
 ControllerStatus checkIntegrity(Map context)
          Checks whether or not data integrity constraints are respected.
 int getExpectedWeight(Group group, Publication pub)
          Gives the minimum of expected member for this group.
 int getExpectedWeight(int groupIndex, Publication pub)
          Gives the minimum of expected member of the group corresponding to this index in the groupList of the given publication.
 ArrayList<Group> getGroupList()
           
 int getGroupMode()
           
 ArrayList<Member> getMemberList()
           
 int getMemberMode()
           
 String getName(String lang)
          Returns the localized name of the WFRole bound to this WKRole.
 String getOpenMode()
          Returns the openMode if this role is open (i.e.
 int[] getRoleWeight()
           
 boolean[] getRoleWeightType()
           
 int getWeightForGroup(Group group)
          Return the value of the weight for a Group
 int getWeightForGroup(int pos)
          Return the value of the weight for a Group
 WFRole getWFRole()
          Returns the WFRole bound to this WKRole.
 Set<Member> getWorkerSet(Publication pub, boolean searchInGroups)
          Deprecated. Use new signature with publication class as third parameter to manage correctly creation process (pub == null)
 Set<Member> getWorkerSet(Publication pub, boolean searchInGroups, Class<?> pubClass)
          Returns a Set of Member that can work on the role.
 Workflow getWorkflow()
          Returns the Workflow bound to this WKRole.
 String getWorkflowLabel(String lang)
          Returns the localized label of the workflow this WFRole is bound to.
 Workspace getWorkspace()
           
 boolean isExplicitInvolved(Publication pub, Member member, boolean searchInGroups)
          Check if the member is explicitely involved in the role or belongs to a groups involved in this Role.
 boolean isGroupModeAND()
           
 boolean isGroupModeOR()
           
 boolean isInvolved(Group group)
          Check if the group is involved to this Role
 boolean isInvolved(Member member, boolean searchInGroups)
          Check if the member is involved in the role or belongs to a groups involved in this Role
 boolean isInvolved(Publication pub, Member member, boolean searchInGroups)
          Check if the member is involved in the role or belongs to a groups involved in this Role
 boolean isInvolved(Publication pub, Member member, boolean searchInGroups, boolean ignoreAuthorInvolvementAtCreation)
          Check if the member is involved in the role or belongs to a groups involved in this Role
 boolean isInvolvedAuthor()
           
 boolean isMemberModeAND()
           
 boolean isMemberModeOR()
           
static boolean isOpen(WKRole role)
           
static boolean isOpenAndRequired(WKRole role)
           
 boolean isPercentageForGroup(Group group)
           
 boolean isPercentageForGroup(int pos)
           
 void setGroupList(ArrayList<Group> groupList)
           
 void setGroupMode(int groupMode)
           
 void setInvolvedAuthor(boolean involvedAuthor)
           
 void setMemberList(ArrayList<Member> memberList)
           
 void setMemberMode(int memberMode)
           
 void setOpenMode(String openMode)
          Set the value of open ("enabled", "disabled", "required").
 void setRoleWeight(int[] roleWeight)
           
 void setRoleWeightType(boolean[] roleWeightType)
           
 void setWorkspace(Workspace workspace)
           
 
Methods inherited from class com.jalios.jcms.Data
canRequestLock, checkCreate, checkCreate, checkDelete, checkDelete, checkIntegrity, checkLockMember, checkMember, checkStrongLockMember, checkUpdate, checkUpdate, checkWrite, clone, computeDBIDArray, exportXml, exportXml, exportXml, exportXml, exportXmlField, exportXmlRelated, exportXmlRelated, fillExportXmlFieldAttributes, getAllReferrerSet, getAllReferrerSet, getAllTypeFieldEntry, getAuthor, getAuthor, getAuthorComparator, getAuthorDBID, getAuthorId, getAuthorSelector, getBooleanFieldValue, getBooleanFieldValue, getCaddyComparator, getCategoryFieldValue, getCategoryFieldValue, getCdateSelector, getComparator, getCSVHeader, getDataImage, getDataImage, getDataImage, getDataName, getDataNameComparator, getDate, getDate, getDateSelector, getDeletableSelector, getDisplayLink, getDisplayLink, getDisplayUrl, getDoubleFieldValue, getDoubleFieldValue, getExportXmlDataValue, getExtension, getExtraData, getExtraDataMap, getExtraDBData, getExtraDBDataMap, getExtraInfo, getExtraInfoMap, getFieldStatusMap, getFieldValue, getFieldValue, getFieldValue, getFieldValue, getGenericThumbnail, getImportAuthor, getImportBatch, getImportDate, getImportDisplayUrl, getImportId, getImportMap, getImportMdate, getImportSelector, getImportSignature, getImportSource, getImportSourceUrl, getImportUrl, getIntFieldValue, getIntFieldValue, getLangPropertyValue, getLinkCount, getLinkIndexedDataSet, getLinkIndexedDataSet, getLockDate, getLockInfo, getLockMember, getLongFieldValue, getLongFieldValue, getMdateSelector, getNewDefaultExtraDataMap, getNewDefaultExtraDataMap, getNewDefaultExtraDataMap, getNewDefaultExtraDataMap, getNewDefaultExtraDBDataMap, getNewDefaultExtraDBDataMap, getNewDefaultExtraDBDataMap, getNewDefaultExtraDBDataMap, getOpAuthor, getOpAuthorComparator, getOpDelegate, getRowId, getRowIdComparator, getStrongLock, getStrongLockDate, getStrongLockInfo, getStrongLockMember, getStrongLockSelector, getTypeEntry, getTypeFieldsEntries, getUpdateInstance, hashCode, importXml, importXmlFieldsWithReferences, importXmlFiles, importXmlReferences, initializeDBDataCollections, isDBData, isImported, isImportUpdated, isInDatabase, isLocked, isPersisted, isStrongLocked, lock, markNewImport, mergeHybridLink, performAfterWrite, performBeforeWrite, performCreate, performCreate, performDelete, performDelete, performUpdate, performUpdate, prepareUpdateContext, printDataName, printDisplayLinkEnd, printDisplayLinkStart, printDisplayUrl, printDisplayUrl, putStrongLock, releaseStrongLock, releaseStrongLock, removeExtraData, removeExtraDBData, removeExtraInfo, setAuthor, setAuthorDBID, setAuthorId, setBooleanFieldValue, setCategoryFieldValue, setDoubleFieldValue, setExtension, setExtraData, setExtraDataMap, setExtraDBData, setExtraDBDataMap, setExtraDBDataMap, setExtraInfo, setFieldValue, setFieldValue, setImportAuthor, setImportBatch, setImportDate, setImportDisplayUrl, setImportId, setImportMap, setImportMdate, setImportSignature, setImportSource, setImportSourceUrl, setImportUpdated, setIntFieldValue, setLongFieldValue, setMdate, setOpAuthor, setOpDelegate, setRowId, toCSV, toFullString, toString, unlock, unlock, unmarkNewImport, updateExtraDataMap, updateExtraDBDataMap, updateIndexTreeSet
 
Methods inherited from class com.jalios.jstore.BasicStorable
clearId, compareTo, equals, getAttribute, getAttributes, getCdate, getCdateComparator, getDdate, getId, getIdComparator, getMdate, getMdateComparator, getStore, getUrid, hasBeenUpdated, isStored, resolveAtt, resolveVal, setAttributes, setCdate, setDdate, setId, setStore, toXml
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

REVISION

public static final String REVISION
See Also:
Constant Field Values

WEIGHT_PERCENTAGE

public static final boolean WEIGHT_PERCENTAGE
See Also:
Constant Field Values

WEIGHT_COUNT

public static final boolean WEIGHT_COUNT
See Also:
Constant Field Values

AND_MODE

public static final int AND_MODE
See Also:
Constant Field Values

OR_MODE

public static final int OR_MODE
See Also:
Constant Field Values

groupList

protected ArrayList<Group> groupList

memberList

protected ArrayList<Member> memberList

roleWeight

protected int[] roleWeight

roleWeightType

protected boolean[] roleWeightType

isInvolvedAuthor

protected boolean isInvolvedAuthor

openMode

protected String openMode

groupMode

protected int groupMode

memberMode

protected int memberMode

workspace

protected transient Workspace workspace

memberSet

protected transient Set<Member> memberSet

OPEN_MODE_ENABLED

public static String OPEN_MODE_ENABLED

OPEN_MODE_REQUIRED

public static String OPEN_MODE_REQUIRED

OPEN_MODE_DISABLED

public static String OPEN_MODE_DISABLED
Constructor Detail

WKRole

public WKRole()

WKRole

public WKRole(WKRole other)
Method Detail

addMember

public void addMember(Member member)
Convenient method to add a Member

Parameters:
member - the Member to add
Since:
jcms-4.1

addGroup

public void addGroup(Group grp,
                     int weight,
                     boolean type)
Parameters:
grp - the Group to add
weight - the weight of the group
type - the weight type of the group % or quantity
Since:
jcms-4.1

getWeightForGroup

public int getWeightForGroup(Group group)
Return the value of the weight for a Group

Parameters:
group - A group
Returns:
the value of weight for this group
Since:
jcms-4.1

getWeightForGroup

public int getWeightForGroup(int pos)
Return the value of the weight for a Group

Parameters:
pos - index of the group in the list
Returns:
the value of weight for this group
Since:
jcms-6.1

isPercentageForGroup

public boolean isPercentageForGroup(Group group)
Parameters:
group - the group
Returns:
true if the weight is a percentage, false instead
Since:
jcms-4.1

isPercentageForGroup

public boolean isPercentageForGroup(int pos)
Parameters:
pos - index of the group in the list
Returns:
true if the weight is a percentage, false instead
Since:
jcms-6.1

getExpectedWeight

public int getExpectedWeight(Group group,
                             Publication pub)
Gives the minimum of expected member for this group.

Parameters:
group - the group
pub - the publication
Returns:
the minimum of member to set for this group in this role
Since:
JCMS-6.1

getExpectedWeight

public int getExpectedWeight(int groupIndex,
                             Publication pub)
Gives the minimum of expected member of the group corresponding to this index in the groupList of the given publication.

Parameters:
groupIndex - the index of the group in the groupList of the publication
pub - the publication
Returns:
the minimum of member to set for this group in this role
Since:
JCMS-6.1

isInvolved

public boolean isInvolved(Member member,
                          boolean searchInGroups)
Check if the member is involved in the role or belongs to a groups involved in this Role

Parameters:
member - the member to check
searchInGroups - if we should look in member groups
Returns:
true if member is involved to the role
Since:
jcms-4.1

isExplicitInvolved

public boolean isExplicitInvolved(Publication pub,
                                  Member member,
                                  boolean searchInGroups)
Check if the member is explicitely involved in the role or belongs to a groups involved in this Role. Non explicit role involvement is when member is author of publication

Parameters:
pub - the publication to workOn or null if it is a global test
member - the member to check
searchInGroups - if we should look in member groups
Returns:
true if member is involved to the role
Since:
jcms-7.0.3

isInvolved

public boolean isInvolved(Publication pub,
                          Member member,
                          boolean searchInGroups)
Check if the member is involved in the role or belongs to a groups involved in this Role

Parameters:
pub - the publication to workOn or null if it is a global test
member - the member to check
searchInGroups - if we should look in member groups
Returns:
true if member is involved to the role
Since:
jcms-4.1

isInvolved

public boolean isInvolved(Publication pub,
                          Member member,
                          boolean searchInGroups,
                          boolean ignoreAuthorInvolvementAtCreation)
Check if the member is involved in the role or belongs to a groups involved in this Role

Parameters:
pub - the publication to workOn or null if it is a global test
member - the member to check
searchInGroups - if we should look in member groups
ignoreAuthorInvolvementAtCreation - true if the method should ignore unexplicit role due to author rights at creation (when pub is null)
Returns:
true if member is involved to the role
Since:
jcms-7.0.3

isInvolved

public boolean isInvolved(Group group)
Check if the group is involved to this Role

Parameters:
group -
Returns:
true if group is involved to the role
Since:
jcms-4.1

getWorkerSet

public Set<Member> getWorkerSet(Publication pub,
                                boolean searchInGroups)
Deprecated. Use new signature with publication class as third parameter to manage correctly creation process (pub == null)

Returns a Set of Member that can work on the role.

Parameters:
pub - the publication (since the author must be added if he is involved in this role and the selected workers must have rights to read the publication)
searchInGroups - if true add members from groups
Returns:
a Set of Member
Since:
jcms-4.1

getWorkerSet

public Set<Member> getWorkerSet(Publication pub,
                                boolean searchInGroups,
                                Class<?> pubClass)
Returns a Set of Member that can work on the role.

Parameters:
pub - the publication (since the author must be added if he is involved in this role and the selected workers must have rights to read the publication)
searchInGroups - if true add members from groups
pubClass - Class of the publication if pub is null (creation process)
Returns:
a Set of Member
Since:
jcms-7.0.3

getWFRole

public WFRole getWFRole()
Returns the WFRole bound to this WKRole.

Returns:
the WFRole bound to this WKRole.
Since:
jcms-5.0.5

getName

public String getName(String lang)
Returns the localized name of the WFRole bound to this WKRole.

Parameters:
lang - the language.
Returns:
the localized name of the WFRole bound to this WKRole.
Since:
jcms-5.7.0

getWorkflow

public Workflow getWorkflow()
Returns the Workflow bound to this WKRole.

Returns:
the Workflow bound to this WKRole.
Since:
jcms-5.0.5

getWorkflowLabel

public String getWorkflowLabel(String lang)
Returns the localized label of the workflow this WFRole is bound to.

Parameters:
lang - the language.
Returns:
the label of the workflow this WFRole is bound to.
Since:
jcms-5.7.0

getGroupList

public ArrayList<Group> getGroupList()
Returns:
Returns the groupList.

setGroupList

public void setGroupList(ArrayList<Group> groupList)
Parameters:
groupList - The groupList to set.

getMemberList

public ArrayList<Member> getMemberList()
Returns:
Returns the memberList.

setMemberList

public void setMemberList(ArrayList<Member> memberList)
Parameters:
memberList - The memberList to set.

getWorkspace

public Workspace getWorkspace()
Returns:
Returns the workgroup.

setWorkspace

public void setWorkspace(Workspace workspace)
Parameters:
workspace - The workgroup to set.

getRoleWeight

public int[] getRoleWeight()
Returns:
Returns the roleWeight.

setRoleWeight

public void setRoleWeight(int[] roleWeight)
Parameters:
roleWeight - The roleWeight to set.

getRoleWeightType

public boolean[] getRoleWeightType()
Returns:
Returns the roleWeightType.

setRoleWeightType

public void setRoleWeightType(boolean[] roleWeightType)
Parameters:
roleWeightType - The roleWeightType to set.

isInvolvedAuthor

public boolean isInvolvedAuthor()
Returns:
Returns the involveAuthor.

setInvolvedAuthor

public void setInvolvedAuthor(boolean involvedAuthor)
Parameters:
involvedAuthor - The involveAuthor to set.

getOpenMode

public String getOpenMode()
Returns the openMode if this role is open (i.e. a writer can choose the validators).

Returns:
true if this role is open (i.e. a writer can choose the validators).
Since:
jcms-5.5.0

setOpenMode

public void setOpenMode(String openMode)
Set the value of open ("enabled", "disabled", "required").

Parameters:
openMode - the value to set
Since:
jcms-6.1

isOpen

public static boolean isOpen(WKRole role)

isOpenAndRequired

public static boolean isOpenAndRequired(WKRole role)

getGroupMode

public int getGroupMode()

setGroupMode

public void setGroupMode(int groupMode)

getMemberMode

public int getMemberMode()

setMemberMode

public void setMemberMode(int memberMode)

isMemberModeOR

public boolean isMemberModeOR()

isMemberModeAND

public boolean isMemberModeAND()

isGroupModeOR

public boolean isGroupModeOR()

isGroupModeAND

public boolean isGroupModeAND()

checkIntegrity

public ControllerStatus checkIntegrity(Map context)
Description copied from class: Data
Checks whether or not data integrity constraints are respected.

Overrides:
checkIntegrity in class Data
Parameters:
context - a map which contains context parameters (may be null)
Returns:
a ControllerStatus


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