Remove dependency to OSGi user admin from API
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / auth / CmsSystemRole.java
diff --git a/org.argeo.cms/src/org/argeo/cms/auth/CmsSystemRole.java b/org.argeo.cms/src/org/argeo/cms/auth/CmsSystemRole.java
new file mode 100644 (file)
index 0000000..64dbd0f
--- /dev/null
@@ -0,0 +1,33 @@
+package org.argeo.cms.auth;
+
+import javax.xml.namespace.QName;
+
+import org.argeo.api.acr.ArgeoNamespace;
+import org.argeo.api.acr.ContentName;
+import org.argeo.cms.SystemRole;
+
+/** Standard CMS system roles. */
+public enum CmsSystemRole implements SystemRole {
+       userAdmin, //
+       groupAdmin, //
+       //
+       ;
+
+       private final static String QUALIFIER = "cms.";
+
+       private final ContentName name;
+
+       CmsSystemRole() {
+               name = new ContentName(ArgeoNamespace.ROLE_NAMESPACE_URI, QUALIFIER + name());
+       }
+
+       @Override
+       public QName qName() {
+               return name;
+       }
+
+       @Override
+       public String toString() {
+               return name.toPrefixedString();
+       }
+}