1 package org
.argeo
.cms
.acr
.directory
;
3 import java
.util
.Dictionary
;
5 import javax
.xml
.namespace
.QName
;
7 import org
.argeo
.api
.acr
.Content
;
8 import org
.argeo
.api
.acr
.ContentName
;
9 import org
.argeo
.api
.acr
.spi
.ProvidedSession
;
10 import org
.argeo
.osgi
.useradmin
.UserDirectory
;
11 import org
.osgi
.service
.useradmin
.Group
;
12 import org
.osgi
.service
.useradmin
.Role
;
13 import org
.osgi
.service
.useradmin
.User
;
15 class RoleContent
extends AbstractDirectoryContent
{
17 private HierarchyUnitContent parent
;
20 public RoleContent(ProvidedSession session
, DirectoryContentProvider provider
, HierarchyUnitContent parent
,
22 super(session
, provider
);
28 Dictionary
<String
, Object
> doGetProperties() {
29 return role
.getProperties();
33 public QName
getName() {
34 String name
= ((UserDirectory
) parent
.getHierarchyUnit().getDirectory()).getRoleSimpleName(role
);
35 return new ContentName(name
);
39 public Content
getParent() {
43 @SuppressWarnings("unchecked")
45 public <A
> A
adapt(Class
<A
> clss
) {
46 if (clss
.equals(Group
.class))
48 else if (clss
.equals(User
.class))
50 else if (clss
.equals(Role
.class))
52 return super.adapt(clss
);