[OLINGO-1091] Accept language es-419 in $batch payload Signed-off-by: Christian Amend <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata2/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata2/commit/14ef0cdd Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata2/tree/14ef0cdd Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata2/diff/14ef0cdd Branch: refs/heads/master Commit: 14ef0cdda6d5155d0bc6811942b1606e22c5c0a3 Parents: cd4a075 Author: i050510 <[email protected]> Authored: Tue Mar 7 13:52:34 2017 +0530 Committer: Christian Amend <[email protected]> Committed: Wed Mar 8 11:50:06 2017 +0100 ---------------------------------------------------------------------- .../apache/olingo/odata2/core/batch/AcceptParser.java | 2 +- .../olingo/odata2/core/batch/AcceptParserTest.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/14ef0cdd/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/batch/AcceptParser.java ---------------------------------------------------------------------- diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/batch/AcceptParser.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/batch/AcceptParser.java index 5c8811c..3130942 100644 --- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/batch/AcceptParser.java +++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/batch/AcceptParser.java @@ -40,7 +40,7 @@ public class AcceptParser { private static final Pattern REG_EX_ACCEPT_WITH_Q_FACTOR = Pattern.compile(REG_EX_ACCEPT + "(?:;" + REG_EX_OPTIONAL_WHITESPACE + REG_EX_QUALITY_FACTOR + ")?"); private static final Pattern REG_EX_ACCEPT_LANGUAGES = Pattern - .compile("((?:(?:[a-z]{1,8})|(?:\\*))\\-?(?:[a-zA-Z]{1,8})?)"); + .compile("((?:(?:[a-z]{1,8})|(?:\\*))\\-?(?:[a-zA-Z0-9]{1,8})?)"); private static final Pattern REG_EX_ACCEPT_LANGUAGES_WITH_Q_FACTOR = Pattern.compile(REG_EX_ACCEPT_LANGUAGES + "(?:;" + REG_EX_OPTIONAL_WHITESPACE + REG_EX_QUALITY_FACTOR + ")?"); http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/14ef0cdd/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/batch/AcceptParserTest.java ---------------------------------------------------------------------- diff --git a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/batch/AcceptParserTest.java b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/batch/AcceptParserTest.java index b7d7fac..b1baaa7 100644 --- a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/batch/AcceptParserTest.java +++ b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/batch/AcceptParserTest.java @@ -185,4 +185,16 @@ public class AcceptParserTest { parser.addAcceptLanguageHeaderValue("en_US"); parser.parseAcceptableLanguages(); } + + @Test + public void testAcceptLanguagesWithAlphaNumericValues() throws BatchException { + AcceptParser parser = new AcceptParser(); + parser.addAcceptLanguageHeaderValue("es-419,en-US"); + List<String> acceptLanguageHeaders = parser.parseAcceptableLanguages(); + + assertNotNull(acceptLanguageHeaders); + assertEquals(2, acceptLanguageHeaders.size()); + assertEquals("es-419", acceptLanguageHeaders.get(0)); + assertEquals("en-US", acceptLanguageHeaders.get(1)); + } }
