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 0109c20065 Replace Mutaters with BasicConverter
0109c20065 is described below
commit 0109c200659d1feb9eeb219f47282fc978b04fce
Author: James Bognar <[email protected]>
AuthorDate: Thu Apr 2 17:42:54 2026 -0700
Replace Mutaters with BasicConverter
---
.../org/apache/juneau/commons/conversion/BasicConverter.java | 3 +++
.../src/main/java/org/apache/juneau/BeanSession.java | 12 +++---------
2 files changed, 6 insertions(+), 9 deletions(-)
diff --git
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/conversion/BasicConverter.java
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/conversion/BasicConverter.java
index 5c02525e82..ad948e9c9a 100644
---
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/conversion/BasicConverter.java
+++
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/conversion/BasicConverter.java
@@ -22,6 +22,7 @@ import static
org.apache.juneau.commons.utils.ThrowableUtils.*;
import java.lang.reflect.*;
import java.math.*;
+import java.nio.charset.*;
import java.util.*;
import java.util.concurrent.atomic.*;
@@ -466,6 +467,8 @@ public class BasicConverter extends CachingConverter {
return null;
return (O) Boolean.valueOf(s);
};
+ if (CharSequence.class.isAssignableFrom(inType) && outType ==
byte[].class)
+ return (in, memberOf, session, args) -> (O)
in.toString().getBytes(StandardCharsets.UTF_8);
return null;
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
index f807a76d33..32586b4e3a 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
@@ -1267,19 +1267,13 @@ public class BeanSession extends ContextSession
implements ConverterSession {
}
if (to.isByteArray()) {
- if (from.isInputStream())
- return (T)readBytes((InputStream)value);
- if (from.isReader())
- return
(T)read((Reader)value).getBytes();
+ if (from.isInputStream() || from.isReader())
+ return ctxConverter.to(value, outer,
this, to.innerType(), to.getParameters());
if (to.hasMutaterFrom(from))
return to.mutateFrom(value);
if (from.hasMutaterTo(to))
return from.mutateTo(value, to);
- if (from.isCollection())
- return (T)toArray(to,
(Collection)value);
- if (from.isArray())
- return (T)toArray(to,
l((Object[])value));
- return
(T)value.toString().getBytes(StandardCharsets.UTF_8);
+ return ctxConverter.to(value, outer, this,
to.innerType(), to.getParameters());
}
// Handle setting of array properties