summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/lifecycle
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2013-05-17 11:44:46 +0200
committerAndrew Branson <andrew.branson@cern.ch>2013-05-17 11:44:46 +0200
commitbe9aa9c636204051381f4efe4b895dff968f0c4d (patch)
tree71e1c27aecd0c6231a216fb37df039549a53f193 /src/main/java/com/c2kernel/lifecycle
parentd6919d4772e79c3de3df8a69355b84e1677c011f (diff)
Add Role management support to module, instead of just creating one if
it's not already there. Supports 'jobList' attribute to enable job pushing
Diffstat (limited to 'src/main/java/com/c2kernel/lifecycle')
-rw-r--r--src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewAgent.java2
-rw-r--r--src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewRole.java24
2 files changed, 25 insertions, 1 deletions
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewAgent.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewAgent.java
index f13bced..e7301a1 100644
--- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewAgent.java
+++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewAgent.java
@@ -51,7 +51,7 @@ public class NewAgent extends ModuleImport implements java.io.Serializable {
try {
thisRole = Gateway.getLDAPLookup().getRoleManager().getRolePath(role);
} catch (ObjectNotFoundException ex) {
- thisRole = Gateway.getLDAPLookup().getRoleManager().createRole(role, false);
+ throw new ObjectNotFoundException("Role "+role+" does not exist.");
}
thisRole.addAgent(newAgent);
}
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewRole.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewRole.java
new file mode 100644
index 0000000..1800b0e
--- /dev/null
+++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewRole.java
@@ -0,0 +1,24 @@
+package com.c2kernel.lifecycle.instance.predefined.entitycreation;
+
+import com.c2kernel.common.ObjectAlreadyExistsException;
+import com.c2kernel.common.ObjectCannotBeUpdated;
+import com.c2kernel.process.Gateway;
+import com.c2kernel.process.module.ModuleImport;
+
+public class NewRole extends ModuleImport {
+
+ public boolean jobList;
+
+ public NewRole() {
+ }
+
+ @Override
+ public String getPath(String ns) {
+ return null; // roles don't have user-specified domain paths
+ }
+
+ public void create(int agentId) throws ObjectAlreadyExistsException, ObjectCannotBeUpdated {
+ Gateway.getLDAPLookup().getRoleManager().createRole(name, jobList);
+ }
+
+}