]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms/src/org/argeo/cms/RoleNameUtils.java
3 import static org
.argeo
.api
.acr
.RuntimeNamespaceContext
.getNamespaceContext
;
5 import javax
.xml
.namespace
.QName
;
7 import org
.argeo
.api
.acr
.ArgeoNamespace
;
8 import org
.argeo
.api
.acr
.NamespaceUtils
;
9 import org
.argeo
.cms
.directory
.ldap
.LdapNameUtils
;
11 /** Simplifies analysis of system roles. */
12 public class RoleNameUtils
{
13 public static String
getLastRdnValue(String dn
) {
14 return LdapNameUtils
.getLastRdnValue(dn
);
15 // // we don't use LdapName for portability with Android
16 // // TODO make it more robust
17 // String[] parts = dn.split(",");
18 // String[] rdn = parts[0].split("=");
22 public static QName
getLastRdnAsName(String dn
) {
23 String cn
= getLastRdnValue(dn
);
24 QName roleName
= NamespaceUtils
.parsePrefixedName(getNamespaceContext(), cn
);
28 public static boolean isSystemRole(QName roleName
) {
29 return roleName
.getNamespaceURI().equals(ArgeoNamespace
.ROLE_NAMESPACE_URI
);
32 public static String
getParent(String dn
) {
33 int index
= dn
.indexOf(',');
34 return dn
.substring(index
+ 1);
38 public static String
getContext(String dn
) {
39 return getParent(getParent(dn
));