...
Code Block | ||||
---|---|---|---|---|
| ||||
<!-- Convert objectSid to uniqueID --> <ScriptletAttributeDefinition id="urn:mace:switch.ch:attribute-def:swissEduPersonUniqueID"> <DataConnectorDependency requires="directory"/> <Scriptlet><![CDATA[ javap(java.util.UUID); Attributes attributes = dependencies.getConnectorResolution("directory"); Attribute objectSid = attributes.get("objectSid"); byte[] uuidBytes = objectSid.toString().getBytes(); UUID uuid = UUID.nameUUIDFromBytes(uuidBytes); resolverAttribute.addValue(uuidobjectSid.toString() + "@switch.ch"); ]]> </Scriptlet> </ScriptletAttributeDefinition> |
...
Code Block | ||||
---|---|---|---|---|
| ||||
<ScriptletAttributeDefinition id="urn:mace:dir:attribute-def:eduPersonAffiliation">
<DataConnectorDependency requires="directory"/>
<Scriptlet><![CDATA[
Attributes attributes = dependencies.getConnectorResolution("directory");
Attribute memberOf = attributes.get("memberOf");
// add values from directory
String value = "none";
boolean student = false;
boolean faculty = false;
boolean staff = false;
boolean member = false;
for (int i = 0; memberOf != null && i < memberOf.size(); i++)
{
value = memberOf.get(i);
if (value.indexOf("Stud") > 0){
student = true;
}
if (value.indexOf("Doz") > 0){
faculty = true;
}
if (value.indexOf("Lehr") > 0){
faculty = true;
}
}
if (!student && !faculty){
staff = true;
}
if (student){
resolverAttribute.addValue("student");
}
if (faculty){
resolverAttribute.addValue("faculty");
}
if (staff || faculty){
resolverAttribute.addValue("staff");
}
if (student || staff){
resolverAttribute.addValue("affiliate");
}
]]>
</Scriptlet>
</ScriptletAttributeDefinition>
|
...