diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2013-05-17 11:44:46 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2013-05-17 11:44:46 +0200 |
| commit | be9aa9c636204051381f4efe4b895dff968f0c4d (patch) | |
| tree | 71e1c27aecd0c6231a216fb37df039549a53f193 /src/main/java/com/c2kernel/lookup | |
| parent | d6919d4772e79c3de3df8a69355b84e1677c011f (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/lookup')
| -rw-r--r-- | src/main/java/com/c2kernel/lookup/LDAPRoleManager.java | 12 | ||||
| -rw-r--r-- | src/main/java/com/c2kernel/lookup/RolePath.java | 5 |
2 files changed, 16 insertions, 1 deletions
diff --git a/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java b/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java index 0536d6c..b2cffc6 100644 --- a/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java +++ b/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java @@ -196,4 +196,16 @@ public class LDAPRoleManager { throw new ObjectNotFoundException("Entry was not a Role");
}
+ public void setHasJobList(RolePath role, boolean hasJobList) throws ObjectNotFoundException, ObjectCannotBeUpdated {
+ // get entry
+ LDAPEntry roleEntry;
+ try {
+ roleEntry = LDAPLookupUtils.getEntry(mLdap.getConnection(), role.getFullDN());
+ } catch (ObjectNotFoundException e) {
+ throw new ObjectNotFoundException("Role does not exist", "");
+ }
+ // set attribute
+ LDAPLookupUtils.setAttributeValue(mLdap.getConnection(), roleEntry, "jobList", hasJobList?"TRUE":"FALSE");
+ }
+
}
diff --git a/src/main/java/com/c2kernel/lookup/RolePath.java b/src/main/java/com/c2kernel/lookup/RolePath.java index e6593ea..0e07012 100644 --- a/src/main/java/com/c2kernel/lookup/RolePath.java +++ b/src/main/java/com/c2kernel/lookup/RolePath.java @@ -51,9 +51,12 @@ public class RolePath extends DomainPath }
/**
* @param hasJobList The hasJobList to set.
+ * @throws ObjectCannotBeUpdated
+ * @throws ObjectNotFoundException
*/
- public void setHasJobList(boolean hasJobList) {
+ public void setHasJobList(boolean hasJobList) throws ObjectNotFoundException, ObjectCannotBeUpdated {
this.hasJobList = hasJobList;
+ Gateway.getLDAPLookup().getRoleManager().setHasJobList(this, hasJobList);
}
|
