Class DummySiteMembershipPolicy
Object
com.liferay.portal.kernel.security.membershippolicy.BaseSiteMembershipPolicy
com.liferay.portal.kernel.security.membershippolicy.DummySiteMembershipPolicy
- All Implemented Interfaces:
SiteMembershipPolicy
- Author:
- Roberto Díaz, Sergio González
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
checkMembership
(long[] userIds, long[] addGroupIds, long[] removeGroupIds) Checks if the users can be added to and removed from the respective sites.boolean
isMembershipAllowed
(long userId, long groupId) Returnstrue
if the user can be added to the site.boolean
isMembershipRequired
(long userId, long groupId) Returnstrue
if site membership for the user is mandatory.boolean
isRoleAllowed
(long userId, long groupId, long roleId) Returnstrue
if the role can be added to the user on the site.boolean
isRoleRequired
(long userId, long groupId, long roleId) Returnstrue
if the role is mandatory for the user on the site.void
propagateMembership
(long[] userIds, long[] addGroupIds, long[] removeGroupIds) Performs membership policy related actions after the users are added to and removed from the respective sites.void
verifyPolicy
(Group group) Checks the integrity of the membership policy of the site and performs operations necessary for the site's compliance.void
verifyPolicy
(Group group, Group oldGroup, List<AssetCategory> oldAssetCategories, List<AssetTag> oldAssetTags, Map<String, Serializable> oldExpandoAttributes, UnicodeProperties oldTypeSettingsUnicodeProperties) Checks the integrity of the membership policy of the site, with respect to the site's new attribute values, categories, tags, expando attributes, and type settings properties, and performs operations necessary for the compliance of the site and its site roles.Methods inherited from class com.liferay.portal.kernel.security.membershippolicy.BaseSiteMembershipPolicy
checkRoles, isMembershipProtected, isRoleProtected, propagateRoles, verifyPolicy, verifyPolicy, verifyPolicy
-
Constructor Details
-
DummySiteMembershipPolicy
public DummySiteMembershipPolicy()
-
-
Method Details
-
checkMembership
public void checkMembership(long[] userIds, long[] addGroupIds, long[] removeGroupIds) Description copied from interface:SiteMembershipPolicy
Checks if the users can be added to and removed from the respective sites.Liferay's core services call this method before adding the users to and removing the users from the respective sites. If this method throws an exception, the service foregoes making the changes.
- Parameters:
userIds
- the primary keys of the users to be added and removed from the sitesaddGroupIds
- the primary keys of the sites to which the users are to be added (optionallynull
)removeGroupIds
- the primary keys of the sites from which the users are to be removed (optionallynull
)
-
isMembershipAllowed
public boolean isMembershipAllowed(long userId, long groupId) Description copied from interface:SiteMembershipPolicy
Returnstrue
if the user can be added to the site. Liferay's UI calls this method.- Specified by:
isMembershipAllowed
in interfaceSiteMembershipPolicy
- Overrides:
isMembershipAllowed
in classBaseSiteMembershipPolicy
- Parameters:
userId
- the primary key of the usergroupId
- the primary key of the site- Returns:
true
if the user can be added to the site;false
otherwise
-
isMembershipRequired
public boolean isMembershipRequired(long userId, long groupId) Description copied from interface:SiteMembershipPolicy
Returnstrue
if site membership for the user is mandatory. Liferay's UI, for example, calls this method in deciding whether to display the option to leave the site.- Specified by:
isMembershipRequired
in interfaceSiteMembershipPolicy
- Overrides:
isMembershipRequired
in classBaseSiteMembershipPolicy
- Parameters:
userId
- the primary key of the usergroupId
- the primary key of the site- Returns:
true
if site membership for the user is mandatory;false
otherwise
-
isRoleAllowed
public boolean isRoleAllowed(long userId, long groupId, long roleId) Description copied from interface:SiteMembershipPolicy
Returnstrue
if the role can be added to the user on the site. Liferay's UI calls this method.- Specified by:
isRoleAllowed
in interfaceSiteMembershipPolicy
- Overrides:
isRoleAllowed
in classBaseSiteMembershipPolicy
- Parameters:
userId
- the primary key of the usergroupId
- the primary key of the siteroleId
- the primary key of the role- Returns:
true
if the role can be added to the user on the site;false
otherwise
-
isRoleRequired
public boolean isRoleRequired(long userId, long groupId, long roleId) Description copied from interface:SiteMembershipPolicy
Returnstrue
if the role is mandatory for the user on the site. Liferay's UI calls this method.- Specified by:
isRoleRequired
in interfaceSiteMembershipPolicy
- Overrides:
isRoleRequired
in classBaseSiteMembershipPolicy
- Parameters:
userId
- the primary key of the usergroupId
- the primary key of the siteroleId
- the primary key of the role- Returns:
true
if the role is mandatory for the user on the site;false
otherwise
-
propagateMembership
public void propagateMembership(long[] userIds, long[] addGroupIds, long[] removeGroupIds) Description copied from interface:SiteMembershipPolicy
Performs membership policy related actions after the users are added to and removed from the respective sites. Liferay's core services call this method after adding and removing the users to and from the respective sites.The actions must ensure the integrity of each site's membership policy. For example, some actions for implementations to consider performing are:
- Adding the users to the child sites of each site to which the users were added.
- Removing the users from the child sites of each site from which the users were removed.
- Parameters:
userIds
- the primary key of the users that have been added or removedaddGroupIds
- the primary keys of the sites to which the users were added (optionallynull
)removeGroupIds
- the primary keys of the sites from which the users were removed (optionallynull
)
-
verifyPolicy
Description copied from interface:SiteMembershipPolicy
Checks the integrity of the membership policy of the site and performs operations necessary for the site's compliance.- Specified by:
verifyPolicy
in interfaceSiteMembershipPolicy
- Overrides:
verifyPolicy
in classBaseSiteMembershipPolicy
- Parameters:
group
- the site to verify
-
verifyPolicy
public void verifyPolicy(Group group, Group oldGroup, List<AssetCategory> oldAssetCategories, List<AssetTag> oldAssetTags, Map<String, Serializable> oldExpandoAttributes, UnicodeProperties oldTypeSettingsUnicodeProperties) Description copied from interface:SiteMembershipPolicy
Checks the integrity of the membership policy of the site, with respect to the site's new attribute values, categories, tags, expando attributes, and type settings properties, and performs operations necessary for the compliance of the site and its site roles. Liferay calls this method when adding and updating sites.The actions must ensure the integrity of the site's membership policy based on what has changed in the site's attribute values, categories, tags, expando attributes, and type settings properties.
For example, if the membership policy is that sites with the "admnistrator" tag should only allow administrators as users, then this method could enforce that policy using the following logic:
-
If the old tags include the "administrator" tag and the new tags include
it too, then no action needs to be performed regarding the
policy. Note, the new tags can be obtained by calling
assetTagLocalService.getTags(Group.class.getName(), group.getGroupId());
. - If the old tags include the "administrator" tag and the new tags don't include it, then no action needs to be performed regarding the policy, as non-administrator users need not be removed.
- However, if the old tags don't include the "administrator" tag, but the new tags include it, any site user that does not have the Administrator role must be removed from the site.
- Parameters:
group
- the added or updated site to verifyoldGroup
- the old siteoldAssetCategories
- the old categoriesoldAssetTags
- the old tagsoldExpandoAttributes
- the old expando attributesoldTypeSettingsUnicodeProperties
- the old type settings properties
-
If the old tags include the "administrator" tag and the new tags include
it too, then no action needs to be performed regarding the
policy. Note, the new tags can be obtained by calling
-