This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch v2
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/v2 by this push:
     new 57d42f3  ISIS-1811: blobs should be encoded using base 64 encoding, 
not base 64 url safe encoding.
57d42f3 is described below

commit 57d42f3eeffe851d7cc62292827ac6bdbc3aaaea
Author: danhaywood <d...@haywood-associates.co.uk>
AuthorDate: Sun Oct 21 16:17:54 2018 +0100

    ISIS-1811: blobs should be encoded using base 64 encoding, not base 64 url 
safe encoding.
    
    This is the distinction between java.util.Base64#getEncoder() vs 
java.util.Base64#getUrlEncoder()
---
 .../core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
index 0c2638d..82189dc 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
@@ -96,7 +96,7 @@ public class BlobValueSemanticsProvider extends 
ValueSemanticsProviderAndFacetAb
     protected String doEncode(final Object object) {
         Blob blob = (Blob)object;
         return blob.getName() + ":" + blob.getMimeType().getBaseType() + ":" + 
-                _Strings.ofBytes(_Bytes.encodeToBase64(Base64.getUrlEncoder(), 
blob.getBytes()), StandardCharsets.UTF_8);
+                _Strings.ofBytes(_Bytes.encodeToBase64(Base64.getEncoder(), 
blob.getBytes()), StandardCharsets.UTF_8);
     }
 
     @Override
@@ -106,7 +106,7 @@ public class BlobValueSemanticsProvider extends 
ValueSemanticsProviderAndFacetAb
         final int colon2Idx  = data.indexOf(":", colonIdx+1);
         final String mimeTypeBase = data.substring(colonIdx+1, colon2Idx);
         final String payload = data.substring(colon2Idx+1);
-        final byte[] bytes = _Bytes.decodeBase64(Base64.getUrlDecoder(), 
payload.getBytes(StandardCharsets.UTF_8));
+        final byte[] bytes = _Bytes.decodeBase64(Base64.getDecoder(), 
payload.getBytes(StandardCharsets.UTF_8));
         try {
             return new Blob(name, new MimeType(mimeTypeBase), bytes);
         } catch (MimeTypeParseException e) {

Reply via email to