From 9cb4730adfb2ad5fcf171c48a4d0aee46777902e Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Wed, 23 May 2012 10:06:17 +0000
Subject: [PATCH] * simplify example code and add groups container * allow AttributeMappers to throw ResourceExceptions instead of LDAP ErrorResultExceptions * rename IdentityAttributeMapper -> SimpleAttributeMapper.
---
opendj3/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/CompositeAttributeMapper.java | 30 +++++++++++++++---------------
1 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/opendj3/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/CompositeAttributeMapper.java b/opendj3/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/CompositeAttributeMapper.java
index 1bcfee1..3bb818d 100644
--- a/opendj3/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/CompositeAttributeMapper.java
+++ b/opendj3/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/CompositeAttributeMapper.java
@@ -29,8 +29,7 @@
import org.forgerock.json.fluent.JsonValue;
import org.forgerock.opendj.ldap.Attribute;
import org.forgerock.opendj.ldap.Entry;
-import org.forgerock.opendj.ldap.ErrorResultException;
-import org.forgerock.opendj.ldap.ResultHandler;
+import org.forgerock.resource.exception.ResourceException;
import org.forgerock.resource.provider.Context;
/**
@@ -50,7 +49,7 @@
this.attributeMappers = new ArrayList<AttributeMapper>(attributeMappers);
Set<String> tmp = new LinkedHashSet<String>(attributeMappers.size());
for (final AttributeMapper mapper : attributeMappers) {
- tmp.addAll(mapper.getAllLDAPAttributes());
+ mapper.getLDAPAttributes(tmp);
}
allLDAPAttributes = Collections.unmodifiableSet(tmp);
}
@@ -58,37 +57,38 @@
/**
* {@inheritDoc}
*/
- public Set<String> getAllLDAPAttributes() {
- return allLDAPAttributes;
+ public void getLDAPAttributes(Set<String> ldapAttributes) {
+ ldapAttributes.addAll(allLDAPAttributes);
}
/**
* {@inheritDoc}
*/
- public void getLDAPAttributesFor(JsonPointer resourceAttribute, Set<String> ldapAttributes) {
+ public void getLDAPAttributes(Set<String> ldapAttributes, JsonPointer resourceAttribute) {
for (AttributeMapper attribute : attributeMappers) {
- attribute.getLDAPAttributesFor(resourceAttribute, ldapAttributes);
+ attribute.getLDAPAttributes(ldapAttributes, resourceAttribute);
}
}
/**
* {@inheritDoc}
*/
- public void toJson(Context c, Entry e, final ResultHandler<Map<String, Object>> h) {
- ResultHandler<Map<String, Object>> resultAccumulater =
- new ResultHandler<Map<String, Object>>() {
+ public void toJson(Context c, Entry e,
+ final AttributeMapperCompletionHandler<Map<String, Object>> h) {
+ AttributeMapperCompletionHandler<Map<String, Object>> resultAccumulater =
+ new AttributeMapperCompletionHandler<Map<String, Object>>() {
private final AtomicInteger latch = new AtomicInteger(attributeMappers.size());
private final List<Map<String, Object>> results =
new ArrayList<Map<String, Object>>(latch.get());
- public void handleErrorResult(ErrorResultException error) {
+ public void onFailure(ResourceException e) {
// Ensure that handler is only invoked once.
if (latch.getAndSet(0) > 0) {
- h.handleErrorResult(error);
+ h.onFailure(e);
}
}
- public void handleResult(Map<String, Object> result) {
+ public void onSuccess(Map<String, Object> result) {
synchronized (this) {
results.add(result);
}
@@ -106,7 +106,7 @@
mergeJsonValues(results, mergeResult);
break;
}
- h.handleResult(mergeResult);
+ h.onSuccess(mergeResult);
}
}
};
@@ -119,7 +119,7 @@
/**
* {@inheritDoc}
*/
- public void toLDAP(Context c, JsonValue v, ResultHandler<List<Attribute>> h) {
+ public void toLDAP(Context c, JsonValue v, AttributeMapperCompletionHandler<List<Attribute>> h) {
// TODO Auto-generated method stub
}
--
Gitblit v1.10.0