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 2ad221c  Tests.
2ad221c is described below

commit 2ad221c7cd8c778b2a4d74b30977269fd0492229
Author: JamesBognar <[email protected]>
AuthorDate: Sat May 23 20:30:35 2020 -0400

    Tests.
---
 .../org/apache/juneau/jena/RdfParserBuilder.java   |   2 +-
 .../apache/juneau/jena/RdfSerializerBuilder.java   |   2 +-
 .../java/org/apache/juneau/BeanContextBuilder.java |  11 +-
 .../org/apache/juneau/BeanTraverseBuilder.java     |   2 +-
 .../org/apache/juneau/csv/CsvParserBuilder.java    |   2 +-
 .../apache/juneau/csv/CsvSerializerBuilder.java    |   2 +-
 .../juneau/html/HtmlDocSerializerBuilder.java      |   2 +-
 .../org/apache/juneau/html/HtmlParserBuilder.java  |   2 +-
 .../juneau/html/HtmlSchemaSerializerBuilder.java   |   2 +-
 .../apache/juneau/html/HtmlSerializerBuilder.java  |   2 +-
 .../html/HtmlStrippedDocSerializerBuilder.java     |   2 +-
 .../org/apache/juneau/jso/JsoParserBuilder.java    |   2 +-
 .../apache/juneau/jso/JsoSerializerBuilder.java    |   2 +-
 .../org/apache/juneau/json/JsonParserBuilder.java  |   2 +-
 .../juneau/json/JsonSchemaSerializerBuilder.java   |   2 +-
 .../apache/juneau/json/JsonSerializerBuilder.java  |   2 +-
 .../juneau/json/SimpleJsonParserBuilder.java       |   2 +-
 .../juneau/json/SimpleJsonSerializerBuilder.java   |   2 +-
 .../jsonschema/JsonSchemaGeneratorBuilder.java     |   2 +-
 .../juneau/msgpack/MsgPackParserBuilder.java       |   2 +-
 .../juneau/msgpack/MsgPackSerializerBuilder.java   |   2 +-
 .../apache/juneau/oapi/OpenApiParserBuilder.java   |   2 +-
 .../juneau/oapi/OpenApiSerializerBuilder.java      |   2 +-
 .../juneau/parser/InputStreamParserBuilder.java    |   2 +-
 .../org/apache/juneau/parser/ParserBuilder.java    |   2 +-
 .../apache/juneau/parser/ParserGroupBuilder.java   |   2 +-
 .../apache/juneau/parser/ReaderParserBuilder.java  |   2 +-
 .../juneau/plaintext/PlainTextParserBuilder.java   |   2 +-
 .../plaintext/PlainTextSerializerBuilder.java      |   2 +-
 .../serializer/OutputStreamSerializerBuilder.java  |   2 +-
 .../juneau/serializer/SerializerBuilder.java       |   2 +-
 .../juneau/serializer/SerializerGroupBuilder.java  |   2 +-
 .../juneau/serializer/WriterSerializerBuilder.java |   2 +-
 .../juneau/soap/SoapXmlSerializerBuilder.java      |   2 +-
 .../org/apache/juneau/uon/UonParserBuilder.java    |   2 +-
 .../apache/juneau/uon/UonSerializerBuilder.java    |   2 +-
 .../urlencoding/UrlEncodingParserBuilder.java      |   2 +-
 .../urlencoding/UrlEncodingSerializerBuilder.java  |   2 +-
 .../org/apache/juneau/xml/XmlParserBuilder.java    |   2 +-
 .../apache/juneau/xml/XmlSerializerBuilder.java    |   2 +-
 .../xmlschema/XmlSchemaSerializerBuilder.java      |   2 +-
 .../apache/juneau/rest/client2/RestClientTest.java | 164 ++++++++++++++++-----
 .../juneau/rest/client/RestClientBuilder.java      |   2 +-
 .../juneau/rest/client2/RestClientBuilder.java     |   2 +-
 .../apache/juneau/rest/mock2/MockRestClient.java   |   2 +-
 .../org/apache/juneau/rest/RestContextBuilder.java |   2 +-
 .../juneau/rest/RestMethodContextBuilder.java      |   2 +-
 47 files changed, 180 insertions(+), 85 deletions(-)

diff --git 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
index 3da3d5b..143a6a7 100644
--- 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
+++ 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
@@ -1075,7 +1075,7 @@ public class RdfParserBuilder extends ReaderParserBuilder 
{
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public RdfParserBuilder implClasses(Map<String,Class<?>> values) {
+       public RdfParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
index 440ff11..e303209 100644
--- 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
@@ -1235,7 +1235,7 @@ public class RdfSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public RdfSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public RdfSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
index 06cc834..ccd0a33 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
@@ -2514,7 +2514,7 @@ public class BeanContextBuilder extends ContextBuilder {
         *      <jc>// Create a parser that instantiates MyBeanImpls when 
parsing MyBeans.</jc>
         *      ReaderParser p = JsonParser
         *              .<jsm>create</jsm>()
-        *              
.implClasses(OMap.<jsm>of</jsm>(MyBean.<jk>class</jk>.getName(), 
MyBeanImpl.<jk>class</jk>))
+        *              .implClasses(OMap.<jsm>of</jsm>(MyBean.<jk>class</jk>, 
MyBeanImpl.<jk>class</jk>))
         *              .build();
         *
         *      <jc>// Same, but use property.</jc>
@@ -2531,12 +2531,15 @@ public class BeanContextBuilder extends ContextBuilder {
         *      <li class='jf'>{@link BeanContext#BEAN_implClasses}
         * </ul>
         *
-        * @param values The new value for this property.
+        * @param values
+        *      The new value for this property.
         * @return This object (for method chaining).
         */
        @ConfigurationProperty
-       public BeanContextBuilder implClasses(Map<String,Class<?>> values) {
-               return set(BEAN_implClasses, values);
+       public BeanContextBuilder implClasses(Map<Class<?>,Class<?>> values) {
+               for (Map.Entry<Class<?>,Class<?>> e : values.entrySet())
+                       putTo(BEAN_implClasses, e.getKey().getName(), 
e.getValue());
+               return this;
        }
 
        /**
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
index 9fd2c5d..59e8e25 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
@@ -545,7 +545,7 @@ public class BeanTraverseBuilder extends BeanContextBuilder 
{
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public BeanTraverseBuilder implClasses(Map<String,Class<?>> values) {
+       public BeanTraverseBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
index 6ae01a0..f325aeb 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
@@ -356,7 +356,7 @@ public class CsvParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public CsvParserBuilder implClasses(Map<String,Class<?>> values) {
+       public CsvParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
index fe2acec..fac9829 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
@@ -356,7 +356,7 @@ public class CsvSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public CsvSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public CsvSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
index 2fa65fa..f5901b2 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
@@ -882,7 +882,7 @@ public class HtmlDocSerializerBuilder extends 
HtmlStrippedDocSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public HtmlDocSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public HtmlDocSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
index 920cdf4..e8e0002 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
@@ -359,7 +359,7 @@ public class HtmlParserBuilder extends XmlParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public HtmlParserBuilder implClasses(Map<String,Class<?>> values) {
+       public HtmlParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
index 780884a..dec67cc 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
@@ -577,7 +577,7 @@ public class HtmlSchemaSerializerBuilder extends 
HtmlSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public HtmlSchemaSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public HtmlSchemaSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
index f01da62..4293a19 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
@@ -508,7 +508,7 @@ public class HtmlSerializerBuilder extends 
XmlSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public HtmlSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public HtmlSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) 
{
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
index e3c000e..780682c 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
@@ -356,7 +356,7 @@ public class HtmlStrippedDocSerializerBuilder extends 
HtmlSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public HtmlStrippedDocSerializerBuilder 
implClasses(Map<String,Class<?>> values) {
+       public HtmlStrippedDocSerializerBuilder 
implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
index 4f79ac3..d6e316f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
@@ -355,7 +355,7 @@ public class JsoParserBuilder extends 
InputStreamParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public JsoParserBuilder implClasses(Map<String,Class<?>> values) {
+       public JsoParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
index 905fe86..68a579e 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
@@ -355,7 +355,7 @@ public class JsoSerializerBuilder extends 
OutputStreamSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public JsoSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public JsoSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
index 2eab065..cf850b1 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
@@ -390,7 +390,7 @@ public class JsonParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public JsonParserBuilder implClasses(Map<String,Class<?>> values) {
+       public JsonParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
index 566a425..dce43be 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
@@ -576,7 +576,7 @@ public class JsonSchemaSerializerBuilder extends 
JsonSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public JsonSchemaSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public JsonSchemaSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
index 50e7917..fbeb070 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
@@ -439,7 +439,7 @@ public class JsonSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public JsonSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public JsonSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) 
{
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonParserBuilder.java
index 0736b5d..bb95ce5 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonParserBuilder.java
@@ -355,7 +355,7 @@ public class SimpleJsonParserBuilder extends 
JsonParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public SimpleJsonParserBuilder implClasses(Map<String,Class<?>> values) 
{
+       public SimpleJsonParserBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonSerializerBuilder.java
index e7be363..9a55a9d 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/SimpleJsonSerializerBuilder.java
@@ -355,7 +355,7 @@ public class SimpleJsonSerializerBuilder extends 
JsonSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public SimpleJsonSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public SimpleJsonSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
index 8e20dc7..fa3cd27 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
@@ -606,7 +606,7 @@ public class JsonSchemaGeneratorBuilder extends 
BeanTraverseBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public JsonSchemaGeneratorBuilder implClasses(Map<String,Class<?>> 
values) {
+       public JsonSchemaGeneratorBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
index d70825a..5386399 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
@@ -355,7 +355,7 @@ public class MsgPackParserBuilder extends 
InputStreamParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public MsgPackParserBuilder implClasses(Map<String,Class<?>> values) {
+       public MsgPackParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
index d1e7566..63ec218 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
@@ -355,7 +355,7 @@ public class MsgPackSerializerBuilder extends 
OutputStreamSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public MsgPackSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public MsgPackSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
index 0931793..b0b20e8 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
@@ -471,7 +471,7 @@ public class OpenApiParserBuilder extends UonParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public OpenApiParserBuilder implClasses(Map<String,Class<?>> values) {
+       public OpenApiParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
index bb80e57..a652189 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
@@ -482,7 +482,7 @@ public class OpenApiSerializerBuilder extends 
UonSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public OpenApiSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public OpenApiSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
index c786056..b7ac602 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
@@ -400,7 +400,7 @@ public class InputStreamParserBuilder extends ParserBuilder 
{
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public InputStreamParserBuilder implClasses(Map<String,Class<?>> 
values) {
+       public InputStreamParserBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
index 56dd593..5117721 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
@@ -688,7 +688,7 @@ public class ParserBuilder extends BeanContextBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public ParserBuilder implClasses(Map<String,Class<?>> values) {
+       public ParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
index 82d2d15..5b38d04 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
@@ -673,7 +673,7 @@ public class ParserGroupBuilder extends BeanContextBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public ParserGroupBuilder implClasses(Map<String,Class<?>> values) {
+       public ParserGroupBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
index e6429a2..a052e8f 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
@@ -423,7 +423,7 @@ public abstract class ReaderParserBuilder extends 
ParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public ReaderParserBuilder implClasses(Map<String,Class<?>> values) {
+       public ReaderParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
index f06e13c..8569329 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
@@ -356,7 +356,7 @@ public class PlainTextParserBuilder extends 
ReaderParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public PlainTextParserBuilder implClasses(Map<String,Class<?>> values) {
+       public PlainTextParserBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
index 9d7aef5..6ec338d 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
@@ -356,7 +356,7 @@ public class PlainTextSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public PlainTextSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public PlainTextSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
index fa41898..a398992 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
@@ -403,7 +403,7 @@ public class OutputStreamSerializerBuilder extends 
SerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public OutputStreamSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public OutputStreamSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
index dc48c1a..de532f9 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
@@ -994,7 +994,7 @@ public class SerializerBuilder extends BeanTraverseBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public SerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public SerializerBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
index 594351a..fc8c1e2 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
@@ -951,7 +951,7 @@ public class SerializerGroupBuilder extends 
BeanTraverseBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public SerializerGroupBuilder implClasses(Map<String,Class<?>> values) {
+       public SerializerGroupBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
index a02eb49..ad19439 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
@@ -617,7 +617,7 @@ public class WriterSerializerBuilder extends 
SerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public WriterSerializerBuilder implClasses(Map<String,Class<?>> values) 
{
+       public WriterSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
index 3bfc8d3..5ee6d0e 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
@@ -376,7 +376,7 @@ public class SoapXmlSerializerBuilder extends 
XmlSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public SoapXmlSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public SoapXmlSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
index c8db4c8..738c187 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
@@ -429,7 +429,7 @@ public class UonParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public UonParserBuilder implClasses(Map<String,Class<?>> values) {
+       public UonParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
index 9e80fb5..9e6a2da 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
@@ -536,7 +536,7 @@ public class UonSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public UonSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public UonSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
index bfb3765..c6cb04a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
@@ -390,7 +390,7 @@ public class UrlEncodingParserBuilder extends 
UonParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public UrlEncodingParserBuilder implClasses(Map<String,Class<?>> 
values) {
+       public UrlEncodingParserBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
index 867c572..21d21c1 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
@@ -390,7 +390,7 @@ public class UrlEncodingSerializerBuilder extends 
UonSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public UrlEncodingSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public UrlEncodingSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
index 909d6fc..6058623 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
@@ -532,7 +532,7 @@ public class XmlParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public XmlParserBuilder implClasses(Map<String,Class<?>> values) {
+       public XmlParserBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
index ca07b8b..8c886d5 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
@@ -569,7 +569,7 @@ public class XmlSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public XmlSerializerBuilder implClasses(Map<String,Class<?>> values) {
+       public XmlSerializerBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xmlschema/XmlSchemaSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xmlschema/XmlSchemaSerializerBuilder.java
index e0bffb9..b55f76a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xmlschema/XmlSchemaSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xmlschema/XmlSchemaSerializerBuilder.java
@@ -591,7 +591,7 @@ public class XmlSchemaSerializerBuilder extends 
XmlSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
-       public XmlSchemaSerializerBuilder implClasses(Map<String,Class<?>> 
values) {
+       public XmlSchemaSerializerBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
index 1b39ec5..8790db5 100644
--- 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
+++ 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
@@ -3476,42 +3476,134 @@ public class RestClientTest {
                assertEquals("1", x.getFoo());
        }
 
-//     @Test
-//     public void o0_beanContext_() throws Exception {
-//     }
-//     @Override /* GENERATED - BeanContextBuilder */
-//     public MockRestClient ignoreInvocationExceptionsOnSetters() {
-//             super.ignoreInvocationExceptionsOnSetters();
-//             return this;
-//     }
-//
-//     @Test
-//     public void o0_beanContext_() throws Exception {
-//     }
-//     @Override /* GENERATED - BeanContextBuilder */
-//     public MockRestClient ignoreUnknownBeanProperties() {
-//             super.ignoreUnknownBeanProperties();
-//             return this;
-//     }
-//
-//     @Test
-//     public void o0_beanContext_() throws Exception {
-//     }
-//     @Override /* GENERATED - BeanContextBuilder */
-//     public MockRestClient implClass(Class<?> interfaceClass, Class<?> 
implClass) {
-//             super.implClass(interfaceClass, implClass);
-//             return this;
-//     }
-//
-//     @Test
-//     public void o0_beanContext_() throws Exception {
-//     }
-//     @Override /* GENERATED - BeanContextBuilder */
-//     public MockRestClient implClasses(Map<String,Class<?>> values) {
-//             super.implClasses(values);
-//             return this;
-//     }
-//
+       public static class O40 {
+               @SuppressWarnings("unused")
+               private String foo,bar;
+               public String getFoo() {
+                       return foo;
+               }
+               public void setFoo(String foo) {
+                       this.foo = foo;
+               }
+               public String getBar() {
+                       return bar;
+               }
+               public void setBar(String bar) {
+                       throw new RuntimeException("xxx");
+               }
+               public O40 init() {
+                       this.foo = "1";
+                       this.bar = "2";
+                       return this;
+               }
+       }
+
+       @Test
+       public void o040_beanContext_ignoreInvocationExceptionsOnSetters() 
throws Exception {
+               try {
+                       MockRestClient
+                               .create(A.class)
+                               .simpleJson()
+                               .build()
+                               .post("/echoBody", new O40().init())
+                               .run()
+                               .getBody().as(O40.class)
+                       ;
+                       fail("Exception expected.");
+               } catch (RestCallException e) {
+                       
assertTrue(e.getCause(BeanRuntimeException.class).getMessage().contains("Error 
occurred trying to set property 'bar'"));
+               }
+
+               O40 x = MockRestClient
+                       .create(A.class)
+                       .simpleJson()
+                       .ignoreInvocationExceptionsOnSetters()
+                       .build()
+                       .post("/echoBody", new O40().init())
+                       .run()
+                       .cacheBody()
+                       .getBody().as(O40.class);
+               ;
+               assertEquals("1", x.getFoo());
+       }
+
+       public static class O41 {
+               public String foo;
+       }
+
+       @Test
+       public void o041_beanContext_ignoreUnknownBeanProperties() throws 
Exception {
+               try {
+                       MockRestClient
+                               .create(A.class)
+                               .simpleJson()
+                               .build()
+                               .post("/echoBody", new 
StringReader("{foo:'1',bar:'2'}"))
+                               .run()
+                               .getBody().as(O41.class)
+                       ;
+                       fail("Exception expected.");
+               } catch (RestCallException e) {
+                       
assertTrue(e.getCause(ParseException.class).getMessage().contains("Unknown 
property 'bar' encountered"));
+               }
+
+               O41 x = MockRestClient
+                       .create(A.class)
+                       .simpleJson()
+                       .ignoreUnknownBeanProperties()
+                       .build()
+                       .post("/echoBody", new 
StringReader("{foo:'1',bar:'2'}"))
+                       .run()
+                       .cacheBody()
+                       .getBody().as(O41.class);
+               ;
+               assertEquals("1", x.foo);
+       }
+
+       public static interface O42I {
+               void setFoo(int foo);
+               int getFoo();
+       }
+
+       public static class O42 implements O42I {
+               private int foo;
+               @Override
+               public void setFoo(int foo) {
+                       this.foo = foo;
+               }
+               @Override
+               public int getFoo() {
+                       return foo;
+               }
+       }
+
+       @Test
+       public void o042_beanContext_implClass() throws Exception {
+               O42I x = MockRestClient
+                       .create(A.class)
+                       .simpleJson()
+                       .implClass(O42I.class, O42.class)
+                       .build()
+                       .post("/echoBody", new StringReader("{foo:1}"))
+                       .run()
+                       .getBody().as(O42I.class)
+               ;
+               assertEquals(1, x.getFoo());
+               assertTrue(x instanceof O42);
+
+               x = MockRestClient
+                       .create(A.class)
+                       .simpleJson()
+                       .implClasses(AMap.of(O42I.class, O42.class))
+                       .build()
+                       .post("/echoBody", new StringReader("{foo:1}"))
+                       .run()
+                       .getBody().as(O42I.class)
+               ;
+               assertEquals(1, x.getFoo());
+               assertTrue(x instanceof O42);
+       }
+
 //     @Test
 //     public void o0_beanContext_() throws Exception {
 //     }
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
index 706802e..19e6e08 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
@@ -2652,7 +2652,7 @@ public class RestClientBuilder extends BeanContextBuilder 
{
        }
 
        @Override /* BeanContextBuilder */
-       public RestClientBuilder implClasses(Map<String,Class<?>> values) {
+       public RestClientBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
index 22a9f98..70e79aa 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
@@ -4519,7 +4519,7 @@ public class RestClientBuilder extends BeanContextBuilder 
{
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public RestClientBuilder implClasses(Map<String,Class<?>> values) {
+       public RestClientBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClient.java
 
b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClient.java
index f288c4b..3b312ee 100644
--- 
a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClient.java
+++ 
b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClient.java
@@ -434,7 +434,7 @@ public class MockRestClient extends RestClientBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public MockRestClient implClasses(Map<String,Class<?>> values) {
+       public MockRestClient implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
index c1ea746..e4bb201 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
@@ -2888,7 +2888,7 @@ public class RestContextBuilder extends 
BeanContextBuilder implements ServletCon
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public RestContextBuilder implClasses(Map<String,Class<?>> values) {
+       public RestContextBuilder implClasses(Map<Class<?>,Class<?>> values) {
                super.implClasses(values);
                return this;
        }
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestMethodContextBuilder.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestMethodContextBuilder.java
index f335536..2ae20ea 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestMethodContextBuilder.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestMethodContextBuilder.java
@@ -371,7 +371,7 @@ public class RestMethodContextBuilder extends 
BeanContextBuilder {
        }
 
        @Override /* GENERATED - BeanContextBuilder */
-       public RestMethodContextBuilder implClasses(Map<String,Class<?>> 
values) {
+       public RestMethodContextBuilder implClasses(Map<Class<?>,Class<?>> 
values) {
                super.implClasses(values);
                return this;
        }

Reply via email to