Skip to content

Commit f817f70

Browse files
committed
disable property/field name conflict validation
It seems this is not behaving as it was before. Instead of throwing an exception, we now log a warning, so it's allowed, but discouraged.
1 parent 03a1903 commit f817f70

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

endpoints-framework/src/main/java/com/google/api/server/spi/config/validation/ApiConfigValidator.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
import java.util.List;
4646
import java.util.Map;
4747
import java.util.Set;
48+
import java.util.logging.Logger;
4849
import java.util.regex.Pattern;
4950

5051
/**
@@ -54,6 +55,7 @@
5455
* @author Eric Orth
5556
*/
5657
public class ApiConfigValidator {
58+
private static final Logger log = Logger.getLogger(ApiConfigValidator.class.getName());
5759
private static final Pattern API_NAME_PATTERN = Pattern.compile(
5860
"^[a-z]+[A-Za-z0-9]*$");
5961

@@ -221,7 +223,8 @@ private void validateResourceAndFieldNames(ApiMethodConfig methodConfig)
221223
for (ApiParameterConfig parameter : methodConfig.getParameterConfigs()) {
222224
if (parameter.getClassification() == Classification.API_PARAMETER &&
223225
!"id".equals(parameter.getName()) && fieldNames.contains(parameter.getName())) {
224-
throw new PropertyParameterNameConflictException(parameter);
226+
log.warning("Parameter " + parameter.getName() + " conflicts with a resource field "
227+
+ "name. This may result in unexpected values in the request.");
225228
}
226229
}
227230
}

endpoints-framework/src/test/java/com/google/api/server/spi/config/jsonwriter/JsonConfigWriterTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
import com.fasterxml.jackson.databind.node.ObjectNode;
4949

5050
import org.junit.Before;
51+
import org.junit.Ignore;
5152
import org.junit.Test;
5253
import org.junit.runner.RunWith;
5354
import org.junit.runners.JUnit4;
@@ -212,6 +213,7 @@ public void apiCollation() throws Exception {
212213
}
213214

214215
@Test
216+
@Ignore("ignored until we find a proper solution")
215217
public void bodyFieldConflictsWithParameter() throws Exception {
216218
final class Endpoint {
217219
@SuppressWarnings("unused")

0 commit comments

Comments
 (0)