Class ElementPermissionsManager
java.lang.Object
com.nomagic.magicdraw.uml.permissions.ElementPermissionsManager
Class responsible for managing permissions of @
BaseElement
: readonly, can add children.
This manager does not contain any logic, external ElementPermissions
should be registered to handle permissions.-
Method Summary
Modifier and TypeMethodDescriptionvoid
addPermisionsHandler
(ElementPermissions permissions) Deprecated.spelling error.void
addPermissionsHandler
(ElementPermissions permissions) Register custom permission handlerboolean
canAddChild
(BaseElement element, BaseElement child) Checks if child can be added into a given element.boolean
canCreateChildIn
(BaseElement element) Checks if child can be created in a given element.boolean
canDelete
(BaseElement element) Checks is element can be deleted.static ElementPermissionsManager
Singleton getterboolean
isElementEditable
(BaseElement element) Checks if an element is editableboolean
isElementEditableNoCacheCheck
(BaseElement element) Forces isElementEditable check without a cache.void
removePermisionsHandler
(ElementPermissions permissions) Deprecated.spelling error.void
removePermissionsHandler
(ElementPermissions permissions) Unregister custom permission handlerstatic void
runWithCacheEnabled
(Runnable runnable) Enable cache and run runnable, then cache enabling flag is restored.static <T> T
supplyWithCacheEnabled
(Supplier<T> supplier) Enable cache and call supplier, then cache's enabling flag is restored.static <T> T
supplyWithEditionElementPermissionsDisabled
(Supplier<T> supplier) Disable usage ofEditionElementPermissions
and supply a value.
-
Method Details
-
getElementPermissionsManager
Singleton getter- Returns:
- instance
-
addPermisionsHandler
Deprecated.spelling error. Use #addPermissionsHandlerRegister custom permission handler- Parameters:
permissions
- permissions handler
-
addPermissionsHandler
Register custom permission handler- Parameters:
permissions
- permissions handler
-
removePermisionsHandler
Deprecated.spelling error. Use #removePermissionsHandlerUnregister custom permission handler- Parameters:
permissions
- permissions handler
-
removePermissionsHandler
Unregister custom permission handler- Parameters:
permissions
- permissions handler
-
isElementEditable
Checks if an element is editable- Parameters:
element
- element- Returns:
- true if editable
-
isElementEditableNoCacheCheck
Forces isElementEditable check without a cache. Does not clear or update cache if one is in use. To be used with element permission handlers that can become disabled.- Parameters:
element
- element to check- Returns:
- returns true if element is editable
-
canCreateChildIn
Checks if child can be created in a given element.- Parameters:
element
- element- Returns:
- true if can
-
canDelete
Checks is element can be deleted.- Parameters:
element
- element- Returns:
- true if can
-
canAddChild
Checks if child can be added into a given element.- Parameters:
element
- elementchild
- child of an element- Returns:
- true if can
-
runWithCacheEnabled
Enable cache and run runnable, then cache enabling flag is restored.- Parameters:
runnable
- runnable to run
-
supplyWithCacheEnabled
Enable cache and call supplier, then cache's enabling flag is restored.- Parameters:
supplier
- supplier
-
supplyWithEditionElementPermissionsDisabled
Disable usage ofEditionElementPermissions
and supply a value.- Parameters:
supplier
- supplier
-