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
.api
.cms
.directory
.CmsRole
;
11 import org
.argeo
.api
.cms
.directory
.UserDirectory
;
12 import org
.osgi
.service
.useradmin
.Role
;
14 class RoleContent
extends AbstractDirectoryContent
{
16 private HierarchyUnitContent parent
;
19 public RoleContent(ProvidedSession session
, DirectoryContentProvider provider
, HierarchyUnitContent parent
,
21 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 (CmsRole
.class.isAssignableFrom(clss
))
48 // TODO do we need this?
49 // if (Role.class.isAssignableFrom(clss))
51 return super.adapt(clss
);