From 32edddb11bcc204628fbdaddf3b0d0e86530f6f8 Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Wed, 08 Jun 2016 15:18:05 +0000
Subject: [PATCH] OPENDJ-2955 Use i18n in rest2ldap
---
opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/AbstractLDAPAttributeMapper.java | 76 ++++++++++---------------------------
1 files changed, 21 insertions(+), 55 deletions(-)
diff --git a/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/AbstractLDAPAttributeMapper.java b/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/AbstractLDAPAttributeMapper.java
index 547dac0..d211438 100644
--- a/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/AbstractLDAPAttributeMapper.java
+++ b/opendj-rest2ldap/src/main/java/org/forgerock/opendj/rest2ldap/AbstractLDAPAttributeMapper.java
@@ -15,12 +15,14 @@
*/
package org.forgerock.opendj.rest2ldap;
+import static org.forgerock.opendj.rest2ldap.Rest2ldapMessages.*;
import static java.util.Collections.emptyList;
import static java.util.Collections.singletonList;
import static org.forgerock.opendj.ldap.Attributes.emptyAttribute;
import static org.forgerock.opendj.rest2ldap.Rest2LDAP.asResourceException;
-import static org.forgerock.opendj.rest2ldap.Utils.i18n;
import static org.forgerock.opendj.rest2ldap.Utils.isNullOrEmpty;
+import static org.forgerock.opendj.rest2ldap.Utils.newBadRequestException;
+import static org.forgerock.opendj.rest2ldap.Utils.newNotSupportedException;
import static org.forgerock.opendj.rest2ldap.WritabilityPolicy.READ_WRITE;
import java.util.ArrayList;
@@ -31,7 +33,6 @@
import org.forgerock.json.JsonPointer;
import org.forgerock.json.JsonValue;
import org.forgerock.json.resource.BadRequestException;
-import org.forgerock.json.resource.NotSupportedException;
import org.forgerock.json.resource.PatchOperation;
import org.forgerock.json.resource.ResourceException;
import org.forgerock.opendj.ldap.Attribute;
@@ -108,14 +109,12 @@
public List<Attribute> apply(Attribute newLDAPAttribute) throws ResourceException {
if (!writabilityPolicy.canCreate(ldapAttributeName)) {
if (!newLDAPAttribute.isEmpty() && !writabilityPolicy.discardWrites()) {
- throw new BadRequestException(i18n("The request cannot be processed because it attempts "
- + "to create the read-only field '%s'", path));
+ throw newBadRequestException(ERR_CREATION_READ_ONLY_FIELD.get(path));
}
return Collections.emptyList();
} else if (newLDAPAttribute.isEmpty()) {
if (isRequired) {
- throw new BadRequestException(i18n("The request cannot be processed because it attempts "
- + "to remove the required field '%s'", path));
+ throw newBadRequestException(ERR_REMOVE_REQUIRED_FIELD.get("create", path));
}
return Collections.emptyList();
}
@@ -148,9 +147,7 @@
* if it is configured to discard writes.
*/
if (!writabilityPolicy.canWrite(ldapAttributeName)) {
- throw new BadRequestException(i18n(
- "The request cannot be processed because it attempts to modify "
- + "the read-only field '%s'", path));
+ throw newBadRequestException(ERR_MODIFY_READ_ONLY_FIELD.get("patch", path));
}
switch (field.size()) {
@@ -164,16 +161,12 @@
if (attributeIsSingleValued()) {
if (v.isList()) {
// Single-valued field violation.
- throw new BadRequestException(i18n(
- "The request cannot be processed because an array of values was "
- + "provided for the single valued field '%s'", path));
+ throw newBadRequestException(ERR_ARRAY_FOR_SINGLE_VALUED_FIELD.get(path));
}
} else if (!v.isList() && !operation.isIncrement()
&& !(v.isNull() && (operation.isReplace() || operation.isRemove()))) {
// Multi-valued field violation.
- throw new BadRequestException(i18n(
- "The request cannot be processed because an array of values was "
- + "not provided for the multi-valued field '%s'", path));
+ throw newBadRequestException(ERR_NO_ARRAY_FOR_MULTI_VALUED_FIELD.get(path));
}
break;
case 1:
@@ -189,25 +182,16 @@
if (fieldName.equals("-") && operation.isAdd()) {
// Append a single value.
if (attributeIsSingleValued()) {
- throw new BadRequestException(i18n(
- "The request cannot be processed because it attempts to append a "
- + "value to the single valued field '%s'", path));
+ throw newBadRequestException(ERR_PATCH_APPEND_IN_SINGLE_VALUED_FIELD.get(path));
} else if (v.isList()) {
- throw new BadRequestException(i18n(
- "The request cannot be processed because it attempts to "
- + "perform an indexed append of an array of values to "
- + "the multi-valued field '%s'", path.child(fieldName)));
+ throw newBadRequestException(
+ ERR_PATCH_INDEXED_APPEND_TO_MULTI_VALUED_FIELD.get(path.child(fieldName)));
}
} else if (fieldName.matches("[0-9]+")) {
// Array index - not allowed.
- throw new NotSupportedException(i18n(
- "The request cannot be processed because it included "
- + "an indexed patch operation '%s' which is not supported "
- + "by this resource provider", path.child(fieldName)));
+ throw newNotSupportedException(ERR_PATCH_INDEXED_OPERATION.get(path.child(fieldName)));
} else {
- throw new BadRequestException(i18n(
- "The request cannot be processed because it included "
- + "an unrecognized field '%s'", path.child(fieldName)));
+ throw newBadRequestException(ERR_UNRECOGNIZED_FIELD.get(path.child(fieldName)));
}
break;
default:
@@ -215,9 +199,7 @@
* The patch operation targets the child of a sub-field. This is
* not possible for a LDAP attribute mapper.
*/
- throw new BadRequestException(i18n(
- "The request cannot be processed because it included "
- + "an unrecognized field '%s'", path.child(field.get(0))));
+ throw newBadRequestException(ERR_UNRECOGNIZED_FIELD.get(path.child(field.get(0))));
}
// Check that the values are compatible with the type of patch operation.
@@ -232,10 +214,7 @@
modType =
attributeIsSingleValued() ? ModificationType.REPLACE : ModificationType.ADD;
if (newValues.isEmpty()) {
- throw new BadRequestException(i18n(
- "The request cannot be processed because it included "
- + "an add patch operation but no value(s) for field '%s'", path
- .child(field.get(0))));
+ throw newBadRequestException(ERR_PATCH_ADD_NO_VALUE_FOR_FIELD.get(path.child(field.get(0))));
}
} else if (operation.isRemove()) {
modType = ModificationType.DELETE;
@@ -244,10 +223,7 @@
} else if (operation.isIncrement()) {
modType = ModificationType.INCREMENT;
} else {
- throw new NotSupportedException(i18n(
- "The request cannot be processed because it included "
- + "an unsupported type of patch operation '%s'", operation
- .getOperation()));
+ throw newNotSupportedException(ERR_PATCH_UNSUPPORTED_OPERATION.get(operation.getOperation()));
}
// Create the modification.
@@ -255,9 +231,7 @@
// Deleting the attribute.
if (isRequired) {
return Promises.<List<Modification>, ResourceException> newExceptionPromise(
- new BadRequestException(i18n(
- "The request cannot be processed because it attempts to remove the required field '%s'",
- path)));
+ newBadRequestException(ERR_REMOVE_REQUIRED_FIELD.get("update", path)));
} else {
return Promises.newResultPromise(
singletonList(new Modification(modType, emptyAttribute(ldapAttributeName))));
@@ -300,9 +274,7 @@
// No change.
return Collections.emptyList();
}
- throw new BadRequestException(i18n(
- "The request cannot be processed because it attempts to modify the read-only field '%s'",
- path));
+ throw newBadRequestException(ERR_MODIFY_READ_ONLY_FIELD.get("update", path));
}
if (oldLDAPAttribute.isEmpty() && newLDAPAttribute.isEmpty()) {
@@ -314,9 +286,7 @@
} else if (newLDAPAttribute.isEmpty()) {
// The attribute is being deleted - this is not allowed if the attribute is required.
if (isRequired) {
- throw new BadRequestException(i18n(
- "The request cannot be processed because it attempts to remove the required field '%s'",
- path));
+ throw newBadRequestException(ERR_REMOVE_REQUIRED_FIELD.get("update", path));
}
return singletonList(new Modification(ModificationType.REPLACE, newLDAPAttribute));
} else {
@@ -359,15 +329,11 @@
if (attributeIsSingleValued()) {
if (v != null && v.isList()) {
// Single-valued field violation.
- throw new BadRequestException(i18n(
- "The request cannot be processed because an array of values was "
- + "provided for the single valued field '%s'", path));
+ throw newBadRequestException(ERR_ARRAY_FOR_SINGLE_VALUED_FIELD.get(path));
}
} else if (v != null && !v.isList()) {
// Multi-valued field violation.
- throw new BadRequestException(i18n(
- "The request cannot be processed because an array of values was "
- + "not provided for the multi-valued field '%s'", path));
+ throw newBadRequestException(ERR_NO_ARRAY_FOR_MULTI_VALUED_FIELD.get(path));
}
}
--
Gitblit v1.10.0