You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2020/07/15 23:58:53 UTC
[juneau] branch master updated: org.apache.juneau.http.header tests.
This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new 69ceb51 org.apache.juneau.http.header tests.
69ceb51 is described below
commit 69ceb51c0a3eb4138e8e10685a0ba14c130c8ba3
Author: JamesBognar <ja...@salesforce.com>
AuthorDate: Wed Jul 15 19:58:48 2020 -0400
org.apache.juneau.http.header tests.
---
.../main/java/org/apache/juneau/http/header/Accept.java | 2 +-
.../java/org/apache/juneau/http/header/ContentType.java | 8 +++++---
.../main/java/org/apache/juneau/parser/ParserGroup.java | 16 +++++++---------
.../org/apache/juneau/serializer/SerializerGroup.java | 12 ++++++------
.../apache/juneau/http/MediaRanges_FindMatch_Test.java | 4 ++--
.../org/apache/juneau/http/header/ContentType2Test.java | 3 ++-
6 files changed, 23 insertions(+), 22 deletions(-)
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Accept.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Accept.java
index 7470252..a7a4be6 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Accept.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Accept.java
@@ -275,7 +275,7 @@ public class Accept extends BasicParameterizedArrayHeader {
* @param mediaTypes The media types to match against.
* @return The index into the array of the best match, or <c>-1</c> if no suitable matches could be found.
*/
- public int findMatch(List<? extends MediaType> mediaTypes) {
+ public int match(List<? extends MediaType> mediaTypes) {
return getRanges().match(mediaTypes);
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ContentType.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ContentType.java
index 2fbb977..a4fd445 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ContentType.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ContentType.java
@@ -14,6 +14,8 @@ package org.apache.juneau.http.header;
import static org.apache.juneau.http.Constants.*;
+import java.util.*;
+
import org.apache.juneau.annotation.*;
import org.apache.juneau.http.*;
import org.apache.juneau.http.annotation.Header;
@@ -111,11 +113,11 @@ public class ContentType extends BasicParameterizedHeader {
* @param mediaTypes The media types to match against.
* @return The index into the array of the best match, or <c>-1</c> if no suitable matches could be found.
*/
- public int findMatch(MediaType[] mediaTypes) {
+ public int match(List<MediaType> mediaTypes) {
int matchQuant = 0, matchIndex = -1;
- for (int i = 0; i < mediaTypes.length; i++) {
- MediaType mt = mediaTypes[i];
+ for (int i = 0; i < mediaTypes.size(); i++) {
+ MediaType mt = mediaTypes.get(i);
int matchQuant2 = mt.match(mediaType, true);
if (matchQuant2 > matchQuant) {
matchQuant = matchQuant2;
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroup.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroup.java
index 1045102..3e27d2f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroup.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroup.java
@@ -83,9 +83,8 @@ public final class ParserGroup extends BeanContext {
// Maps Content-Type headers to matches.
private final ConcurrentHashMap<String,ParserMatch> cache = new ConcurrentHashMap<>();
- private final MediaType[] mediaTypes; // List of media types
- private final List<MediaType> mediaTypesList;
- private final Parser[] mediaTypeParsers;
+ private final List<MediaType> mediaTypes;
+ private final List<Parser> mediaTypeParsers;
private final List<Parser> parsers;
/**
@@ -134,9 +133,8 @@ public final class ParserGroup extends BeanContext {
}
}
- this.mediaTypes = lmt.asArrayOf(MediaType.class);
- this.mediaTypesList = lmt.unmodifiable();
- this.mediaTypeParsers = l.asArrayOf(Parser.class);
+ this.mediaTypes = lmt.unmodifiable();
+ this.mediaTypeParsers = l.unmodifiable();
}
/**
@@ -154,10 +152,10 @@ public final class ParserGroup extends BeanContext {
return pm;
ContentType ct = ContentType.of(contentTypeHeader);
- int match = ct.findMatch(mediaTypes);
+ int match = ct.match(mediaTypes);
if (match >= 0) {
- pm = new ParserMatch(mediaTypes[match], mediaTypeParsers[match]);
+ pm = new ParserMatch(mediaTypes.get(match), mediaTypeParsers.get(match));
cache.putIfAbsent(contentTypeHeader, pm);
}
@@ -205,7 +203,7 @@ public final class ParserGroup extends BeanContext {
* @return An unmodifiable list of media types.
*/
public List<MediaType> getSupportedMediaTypes() {
- return mediaTypesList;
+ return mediaTypes;
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroup.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
index f5f7b68..02bf907 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
@@ -75,8 +75,8 @@ public final class SerializerGroup extends BeanTraverseContext {
// Maps Accept headers to matching serializers.
private final ConcurrentHashMap<String,SerializerMatch> cache = new ConcurrentHashMap<>();
- private final List<MediaRange> mediaTypeRanges;
- private final Serializer[] mediaTypeRangeSerializers;
+ private final List<MediaRange> mediaRanges;
+ private final List<Serializer> mediaTypeRangeSerializers;
private final List<MediaType> mediaTypesList;
private final List<Serializer> serializers;
@@ -130,9 +130,9 @@ public final class SerializerGroup extends BeanTraverseContext {
lmt.add(mt);
}
- this.mediaTypeRanges = lmtr.unmodifiable();
+ this.mediaRanges = lmtr.unmodifiable();
this.mediaTypesList = AList.of(lmt).unmodifiable();
- this.mediaTypeRangeSerializers = l.asArrayOf(Serializer.class);
+ this.mediaTypeRangeSerializers = l.unmodifiable();
}
/**
@@ -166,9 +166,9 @@ public final class SerializerGroup extends BeanTraverseContext {
return sm;
Accept a = Accept.of(acceptHeader);
- int match = a.findMatch(mediaTypeRanges);
+ int match = a.match(mediaRanges);
if (match >= 0) {
- sm = new SerializerMatch(mediaTypeRanges.get(match), mediaTypeRangeSerializers[match]);
+ sm = new SerializerMatch(mediaRanges.get(match), mediaTypeRangeSerializers.get(match));
cache.putIfAbsent(acceptHeader, sm);
}
diff --git a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/MediaRanges_FindMatch_Test.java b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/MediaRanges_FindMatch_Test.java
index dccaa39..2d31d4f 100644
--- a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/MediaRanges_FindMatch_Test.java
+++ b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/MediaRanges_FindMatch_Test.java
@@ -166,7 +166,7 @@ public class MediaRanges_FindMatch_Test {
public void test() throws Exception {
Accept accept = Accept.of(this.accept);
MediaType[] mt = JsonParser.DEFAULT.parse(mediaTypes, MediaType[].class);
- int r = accept.findMatch(AList.ofa(mt));
+ int r = accept.match(AList.ofa(mt));
assertInteger(r).msg("{0} failed", label).is(expected);
}
@@ -175,7 +175,7 @@ public class MediaRanges_FindMatch_Test {
Accept accept = Accept.of(this.accept);
MediaType[] mt = JsonParser.DEFAULT.parse(mediaTypes, MediaType[].class);
Collections.reverse(Arrays.asList(mt));
- int r = accept.findMatch(AList.ofa(mt));
+ int r = accept.match(AList.ofa(mt));
int expected2 = expectedReverse == -1 ? -1 : mt.length-expectedReverse-1;
assertInteger(r).msg("{0} failed", label).is(expected2);
}
diff --git a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/header/ContentType2Test.java b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/header/ContentType2Test.java
index f33b29d..f4ee8ff 100644
--- a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/header/ContentType2Test.java
+++ b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/http/header/ContentType2Test.java
@@ -17,6 +17,7 @@ import static org.junit.runners.MethodSorters.*;
import java.util.*;
+import org.apache.juneau.collections.*;
import org.apache.juneau.http.*;
import org.apache.juneau.json.*;
import org.junit.*;
@@ -87,6 +88,6 @@ public class ContentType2Test {
public void test() throws Exception {
ContentType ct = ContentType.of(this.contentType);
MediaType[] mt = JsonParser.DEFAULT.parse(mediaTypes, MediaType[].class);
- assertInteger(ct.findMatch(mt)).msg("{0} failed", label).is(expected);
+ assertInteger(ct.match(AList.ofa(mt))).msg("{0} failed", label).is(expected);
}
}