24
24
import java .nio .charset .StandardCharsets ;
25
25
import java .time .YearMonth ;
26
26
import java .util .ArrayList ;
27
+ import java .util .Base64 ;
27
28
import java .util .Collection ;
28
- import java .util .HashMap ;
29
29
import java .util .List ;
30
30
import java .util .Map ;
31
31
import java .util .Optional ;
32
32
import java .util .UUID ;
33
33
34
- import com .couchbase .client .java .json .JsonArray ;
35
- import com .couchbase .client .java .json .JsonObject ;
36
- import com .couchbase .client .java .json .JsonValueModule ;
37
- import com .fasterxml .jackson .core .type .TypeReference ;
38
- import com .fasterxml .jackson .databind .JsonNode ;
39
- import com .fasterxml .jackson .databind .node .JsonNodeFactory ;
40
- import com .fasterxml .jackson .databind .node .ObjectNode ;
41
34
import org .springframework .core .convert .converter .Converter ;
42
35
import org .springframework .data .convert .ReadingConverter ;
43
36
import org .springframework .data .convert .WritingConverter ;
44
37
import org .springframework .data .couchbase .core .mapping .CouchbaseDocument ;
45
38
import org .springframework .data .couchbase .core .mapping .CouchbaseList ;
46
- import org .springframework .util .Base64Utils ;
47
39
48
40
import com .couchbase .client .core .encryption .CryptoManager ;
41
+ import com .couchbase .client .java .json .JsonArray ;
42
+ import com .couchbase .client .java .json .JsonObject ;
43
+ import com .couchbase .client .java .json .JsonValueModule ;
49
44
import com .fasterxml .jackson .core .JsonFactory ;
50
45
import com .fasterxml .jackson .core .JsonGenerator ;
46
+ import com .fasterxml .jackson .core .type .TypeReference ;
47
+ import com .fasterxml .jackson .databind .JsonNode ;
51
48
import com .fasterxml .jackson .databind .ObjectMapper ;
52
49
53
50
/**
@@ -65,13 +62,11 @@ private OtherConverters() {}
65
62
* @return the list of converters to register.
66
63
*/
67
64
public static Collection <Converter <?, ?>> getConvertersToRegister () {
68
- List <Converter <?, ?>> converters = new ArrayList <Converter <?, ?> >();
65
+ List <Converter <?, ?>> converters = new ArrayList <>();
69
66
70
67
converters .add (UuidToString .INSTANCE );
71
68
converters .add (StringToUuid .INSTANCE );
72
- converters .add (BigIntegerToString .INSTANCE );
73
69
converters .add (StringToBigInteger .INSTANCE );
74
- converters .add (BigDecimalToString .INSTANCE );
75
70
converters .add (StringToBigDecimal .INSTANCE );
76
71
converters .add (ByteArrayToString .INSTANCE );
77
72
converters .add (StringToByteArray .INSTANCE );
@@ -114,16 +109,7 @@ public UUID convert(String source) {
114
109
}
115
110
}
116
111
117
- @ WritingConverter
118
- public enum BigIntegerToString implements Converter <BigInteger , String > {
119
- INSTANCE ;
120
-
121
- @ Override
122
- public String convert (BigInteger source ) {
123
- return source == null ? null : source .toString ();
124
- }
125
- }
126
-
112
+ // to support reading BigIntegers that were written as Strings (now discontinued)
127
113
@ ReadingConverter
128
114
public enum StringToBigInteger implements Converter <String , BigInteger > {
129
115
INSTANCE ;
@@ -134,16 +120,7 @@ public BigInteger convert(String source) {
134
120
}
135
121
}
136
122
137
- @ WritingConverter
138
- public enum BigDecimalToString implements Converter <BigDecimal , String > {
139
- INSTANCE ;
140
-
141
- @ Override
142
- public String convert (BigDecimal source ) {
143
- return source == null ? null : source .toString ();
144
- }
145
- }
146
-
123
+ // to support reading BigDecimals that were written as Strings (now discontinued)
147
124
@ ReadingConverter
148
125
public enum StringToBigDecimal implements Converter <String , BigDecimal > {
149
126
INSTANCE ;
@@ -160,7 +137,7 @@ public enum ByteArrayToString implements Converter<byte[], String> {
160
137
161
138
@ Override
162
139
public String convert (byte [] source ) {
163
- return source == null ? null : Base64Utils .encodeToString (source );
140
+ return source == null ? null : Base64 . getEncoder () .encodeToString (source );
164
141
}
165
142
}
166
143
@@ -170,7 +147,7 @@ public enum StringToByteArray implements Converter<String, byte[]> {
170
147
171
148
@ Override
172
149
public byte [] convert (String source ) {
173
- return source == null ? null : Base64Utils .decode (source .getBytes (StandardCharsets .UTF_8 ));
150
+ return source == null ? null : Base64 . getDecoder () .decode (source .getBytes (StandardCharsets .UTF_8 ));
174
151
}
175
152
}
176
153
0 commit comments