use of org.springframework.ldap.core.DirContextOperations in project perun by CESNET.
the class PerunUserImpl method addAsGroupAdmin.
@Override
public void addAsGroupAdmin(User user, Group group) {
DirContextOperations entry = findByDN(buildDN(user));
Name groupDN = addBaseDN(perunGroup.getEntryDN(String.valueOf(group.getVoId()), String.valueOf(group.getId())));
entry.addAttributeValue(PerunAttribute.PerunAttributeNames.ldapAttrAdminOfGroup, groupDN.toString());
ldapTemplate.modifyAttributes(entry);
}
use of org.springframework.ldap.core.DirContextOperations in project perun by CESNET.
the class AbstractPerunEntry method addEntry.
/* (non-Javadoc)
* @see cz.metacentrum.perun.ldapc.model.impl.PerunEntry#addEntry(cz.metacentrum.perun.core.api.PerunBean)
*/
@Override
public void addEntry(T bean) {
DirContextOperations context = new DirContextAdapter(buildDN(bean));
mapToContext(bean, context);
ldapTemplate.bind(context);
}
use of org.springframework.ldap.core.DirContextOperations in project perun by CESNET.
the class AbstractPerunEntry method beginSynchronizeEntry.
@Override
public SyncOperation beginSynchronizeEntry(T bean) {
DirContextOperations entry;
boolean newEntry = false;
try {
entry = findByDN(buildDN(bean));
} catch (NameNotFoundException e) {
newEntry = true;
entry = new DirContextAdapter(buildDN(bean));
}
if (newEntry) {
log.debug("Creating new entry {} ", entry.toString());
// map with objectclasses
mapToContext(bean, entry);
// ldapTemplate.bind(entry);
} else {
log.debug("Modifying entry {} ", entry.toString());
// map without objectclasses (entry exists)
mapToContext(bean, entry, getAttributeDescriptions());
// ldapTemplate.modifyAttributes(entry);
}
return new SyncOperationImpl(entry, newEntry);
}
use of org.springframework.ldap.core.DirContextOperations in project perun by CESNET.
the class PerunResourceImpl method assignGroup.
@Override
public void assignGroup(Resource resource, Group group) {
DirContextOperations entry = findByDN(buildDN(resource));
entry.addAttributeValue(PerunAttribute.PerunAttributeNames.ldapAttrAssignedGroupId, String.valueOf(group.getId()));
ldapTemplate.modifyAttributes(entry);
entry = perunGroup.findById(String.valueOf(group.getVoId()), String.valueOf(group.getId()));
entry.addAttributeValue(PerunAttribute.PerunAttributeNames.ldapAttrAssignedToResourceId, String.valueOf(resource.getId()));
ldapTemplate.modifyAttributes(entry);
}
use of org.springframework.ldap.core.DirContextOperations in project perun by CESNET.
the class PerunResourceImpl method removeGroup.
@Override
public void removeGroup(Resource resource, Group group) {
DirContextOperations entry = findByDN(buildDN(resource));
entry.removeAttributeValue(PerunAttribute.PerunAttributeNames.ldapAttrAssignedGroupId, String.valueOf(group.getId()));
ldapTemplate.modifyAttributes(entry);
entry = perunGroup.findById(String.valueOf(group.getVoId()), String.valueOf(group.getId()));
entry.removeAttributeValue(PerunAttribute.PerunAttributeNames.ldapAttrAssignedToResourceId, String.valueOf(resource.getId()));
ldapTemplate.modifyAttributes(entry);
}
Aggregations