public class AccessControlList extends Data implements AccessControlConstants, EditableData
Modifier and Type | Class and Description |
---|---|
static class |
AccessControlList.NameComparator<T extends AccessControlList>
Comparator sorting ACL alphabetically using their name.
|
static class |
AccessControlList.NameSelector
Select ACL by their name.
|
static class |
AccessControlList.WorkspaceAclSelector
DataSelector selecting only workspace ACL.
|
Data.AuthorComparator<T extends Data>, Data.AuthorizedSelector, 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
BasicStorable.CdateComparator<T extends Storable>, BasicStorable.IdComparator<T extends Storable>, BasicStorable.MdateComparator<T extends Storable>
Modifier and Type | Field and Description |
---|---|
protected java.util.HashMap<java.lang.String,java.lang.Boolean> |
explicitResourceToAuthorizationMap |
protected boolean |
isWorkspaceACL |
protected java.lang.String |
name |
static java.lang.String |
REVISION |
author, authorDBID, channel, DISPLAY_URL_EXTRA_INFO, extension, extraDataMap, extraDBDataMapToSaveOnOp, importMap, opAuthor, opDelegate
ADMIN_RESOURCE, CTXT_DATA, CTXT_WORKSPACE, GRP_EDIT_RESOURCE, MBR_EDIT_RESOURCE, WORKSPACE_ADMIN_RESOURCE, WS_EDIT_RESOURCE, WSGRP_EDIT_RESOURCE, WSMBR_EDIT_RESOURCE
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, AJAX_MODE_ATTR, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, COUNTRY_SPRITE, 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, GLYPH_ICON_PREFIX, ICON_ARCHIVE, ICON_ICON_PREFIX, ICON_LOCK, ICON_LOCK_STRONG, ICON_PREFIX_PROP, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, JALIOS_JUNIT_PROP, JCMS_CADDY, JCMS_MSG_LIST, JCMS_TOASTR_COLLECTION, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LANG_SPRITE, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_CREATE_STR, OP_DEEP_COPY, OP_DEEP_COPY_STR, OP_DEEP_DELETE, OP_DEEP_DELETE_STR, OP_DELETE, OP_DELETE_STR, OP_MERGE, OP_MERGE_STR, OP_UPDATE, OP_UPDATE_STR, ORGANIZATION_ROOT_GROUP_PROP, PDATE_SEARCH, PHOTO_DIR, PHOTO_ICON, PHOTO_ICON_HEIGHT, PHOTO_ICON_PROP_PREFIX, PHOTO_ICON_WIDTH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_PROP_PREFIX, PHOTO_LARGE_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_PROP_PREFIX, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_PROP_PREFIX, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_PROP_PREFIX, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SESSION_AUTHORIZED_FILENAMES_SET, SPRITE_ICON_PREFIX, STATS_REPORT_DIR, STATUS_PROP, STORE_XML, SUCCESS_MSG, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, TTCARD_MEDIA_HEIGHT, TTCARD_MEDIA_WIDTH, TYPES_ICON_ALT_PROP, TYPES_ICON_SUFFIX_PROP, TYPES_ICON_TITLE_PROP, TYPES_PREFIX_PROP, TYPES_THUMB_SUFFIX_PROP, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, UPLOAD_PERMISSION_SIZE_PROP_PREFIX, URL_REGEXP, VID_LOGGED_MEMBER, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
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
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
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 and Description |
---|
AccessControlList()
Builds a new AccessControlList without any authorization and using default value.
|
AccessControlList(AccessControlList other)
Builds a new AccessControlList by copying all authorization and option of the specified ACL.
|
Modifier and Type | Method and Description |
---|---|
ControllerStatus |
checkDelete(Member mbr,
java.util.Map context)
Checks if the deletion can be performed
|
ControllerStatus |
checkIntegrity()
Checks whether or not data integrity constraints are respected.
|
ControllerStatus |
checkMember(int op,
Member mbr,
java.util.Map context)
Checks if the given member can perform the given operation.
|
void |
clearExplicitAccessAuthorization()
Remove all authorization for this ACL
|
void |
exportXmlField(java.lang.StringBuffer sb,
int indentLevel)
Fills the given StringBuffer with Xml export of fields of this data.
|
java.lang.Boolean |
getAccessAuthorization(java.lang.String resource)
Retrieve the authorization of the specified resource
|
java.lang.String |
getDataName(java.lang.String language)
Return the name of this Data, every sub class Data which will be displayed to user should
implements this method already.
|
java.lang.Boolean |
getExplicitAccessAuthorization(java.lang.String resource)
Retrieve the explicit authorization of the specified resource.
|
java.util.HashMap<java.lang.String,java.lang.Boolean> |
getExplicitResourceToAuthorizationMap()
Retrieve the internal map used to store authorization.
|
java.util.Set<Group> |
getGroupSet()
Retrieves the Set of Group using this ACL.
|
java.lang.String |
getName()
Gets the name of this ACL.
|
static <T extends AccessControlList> |
getNameComparator()
Retrieve a Comparator to sort ACL alphabetically using their name.
|
static AccessControlList.WorkspaceAclSelector |
getWorkspaceAclSelector()
Retrieve a DataSelector to select only workspace ACL in a collection.
|
boolean |
isWorker()
Check if any ACL provides worker right to the member using it.
|
boolean |
isWorkspaceACL()
Check if this ACL is dedicated for Workspace's resource access control or any other right
|
void |
removeExplicitAccessAuthorization(java.lang.String resource)
Remove all authorization for the specified resource
|
void |
setExplicitAccessAuthorization(java.lang.String resource,
java.lang.Boolean authorization)
Set the authorization of the specified resource
|
void |
setExplicitResourceToAuthorizationMap(java.util.HashMap<java.lang.String,java.lang.Boolean> explicitResourceToAuthorizationMap)
Set the value of the internal map used to store authorization.
|
void |
setName(java.lang.String name)
Set the name of this ACL.
|
void |
setWorkspaceACL(boolean isWorkspaceACL)
Set if this ACL is dedicated for Workspace's resource access control.
|
void |
updateGroupSet(Group group,
boolean add)
Internal method used to update the (transient) set of Group using this ACL.
|
canBeReadBy, canBeReadBy, canBeUnlockedBy, canRequestUnlock, checkAndPerformCreate, checkAndPerformCreate, checkAndPerformDelete, checkAndPerformDelete, checkAndPerformUpdate, checkAndPerformUpdate, checkCreate, checkCreate, checkDelete, checkIntegrity, checkLockMember, checkStrongLockMember, checkStrongLockMember, checkUpdate, checkUpdate, checkWrite, cleanHybridCollection, cleanHybridCollection, cleanHybridCollection, cleanHybridCollections, clone, computeDBIDArray, computeDBIDList, computeDBIDSet, exportXml, exportXml, exportXml, exportXml, exportXmlRelated, exportXmlRelated, fillExportXmlFieldAttributes, getAllReferrerSet, getAllReferrerSet, getAllTypeFieldEntry, getAuthor, getAuthor, getAuthorComparator, getAuthorDBID, getAuthorId, getAuthorSelector, getBooleanFieldValue, getBooleanFieldValue, getCaddyComparator, getCategoryFieldValue, getCategoryFieldValue, getCdateSelector, getComparator, getCSVHeader, getDataIcon, getDataIconAlt, getDataIconCSS, getDataIconHtml, getDataIconHtml, getDataIconTitle, getDataImage, getDataImage, getDataImage, getDataNameComparator, getDate, getDate, getDateSelector, getDeletableSelector, getDisplayLink, 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, getReadAuthorizedSelector, getReferrerSet, getRowId, getRowIdComparator, getStrongLock, getStrongLockDate, getStrongLockInfo, getStrongLockMember, getStrongLockSelector, getTypeEntry, getTypeFieldsEntries, getUpdateInstance, getVirtualIDSet, hashCode, importXml, importXmlFieldsWithReferences, importXmlFiles, importXmlReferences, initializeDBDataCollections, isDBData, isImported, isImportUpdated, isInDatabase, isLocked, isPersisted, isStrongLocked, lock, markNewImport, mergeHybridLink, 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, setId, setImportAuthor, setImportBatch, setImportDate, setImportDisplayUrl, setImportId, setImportMap, setImportMdate, setImportSignature, setImportSource, setImportSourceUrl, setImportUpdated, setIntFieldValue, setLongFieldValue, setMdate, setOpAuthor, setOpDelegate, setRowId, splitHybridCollections, toCSV, toFullString, toString, unlock, unlock, unmarkNewImport, updateExtraDataMap, updateExtraDBDataMap, updateIndexTreeSet
clearId, compareTo, equals, getAttribute, getAttributes, getCdate, getCdateComparator, getDdate, getId, getIdComparator, getMdate, getMdateComparator, getStore, getUrid, hasBeenUpdated, isStored, resolveAtt, resolveVal, setAttributes, setAttributes, setCdate, setDdate, setStore, toXml
public static final java.lang.String REVISION
protected java.lang.String name
protected boolean isWorkspaceACL
protected java.util.HashMap<java.lang.String,java.lang.Boolean> explicitResourceToAuthorizationMap
public AccessControlList()
public AccessControlList(AccessControlList other)
other
- the ACl from which to copy fieldspublic java.lang.String getDataName(java.lang.String language)
Data
getDataName
in class Data
language
- the language in which to return the name if multilang available for the data.getName()
,
Data.getDataName(String)
public java.lang.String getName()
public void setName(java.lang.String name)
name
- the name to use.public boolean isWorkspaceACL()
public void setWorkspaceACL(boolean isWorkspaceACL)
isWorkspaceACL
- true if the acl is dedicated for Workspace's resource access (and only that),
false if it is dedicated to anything else (excluding workspace's resource).public java.lang.Boolean getAccessAuthorization(java.lang.String resource)
resource
- URI of the resourcepublic boolean isWorker()
public java.lang.Boolean getExplicitAccessAuthorization(java.lang.String resource)
Do not use this method for acces right check, see getAccessAuthorization(String)
.
resource
- URI of the resourcepublic void setExplicitAccessAuthorization(java.lang.String resource, java.lang.Boolean authorization)
resource
- URI of the resourceauthorization
- TRUE to grant access, FALSE or null to apply default behavior. if null, the authorization is removed and default access will be applied.public void removeExplicitAccessAuthorization(java.lang.String resource)
resource
- URI of the resourcepublic void clearExplicitAccessAuthorization()
public java.util.HashMap<java.lang.String,java.lang.Boolean> getExplicitResourceToAuthorizationMap()
public void setExplicitResourceToAuthorizationMap(java.util.HashMap<java.lang.String,java.lang.Boolean> explicitResourceToAuthorizationMap)
explicitResourceToAuthorizationMap
- public ControllerStatus checkIntegrity()
checkIntegrity
in class Data
public ControllerStatus checkMember(int op, Member mbr, java.util.Map context)
checkMember
in class Data
op
- the operation (OP_CREATE, OP_UPDATE, ...)mbr
- the member which requests the write operationcontext
- a map which contains context parameters (may be null)public ControllerStatus checkDelete(Member mbr, java.util.Map context)
checkDelete
in class Data
mbr
- the member which requests the write operationcontext
- a map which contains context parameters (may be null)public void updateGroupSet(Group group, boolean add)
group
- the Group to add or remove from the group set.add
- true -> add, false -> removepublic java.util.Set<Group> getGroupSet()
public void exportXmlField(java.lang.StringBuffer sb, int indentLevel)
Data
exportXmlField
in class Data
sb
- the StringBufferindentLevel
- the indent levelpublic static AccessControlList.WorkspaceAclSelector getWorkspaceAclSelector()
public static <T extends AccessControlList> java.util.Comparator<T> getNameComparator()
Copyright © 2001-2018 Jalios SA. All Rights Reserved.