XMPSerializerHelper.java
1.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
* Decompiled with CFR 0_118.
*/
package com.adobe.internal.xmp.impl;
import com.adobe.internal.xmp.XMPException;
import com.adobe.internal.xmp.XMPMeta;
import com.adobe.internal.xmp.impl.XMPMetaImpl;
import com.adobe.internal.xmp.impl.XMPSerializerRDF;
import com.adobe.internal.xmp.options.SerializeOptions;
import java.io.ByteArrayOutputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
public class XMPSerializerHelper {
public static void serialize(XMPMetaImpl xmp, OutputStream out, SerializeOptions options) throws XMPException {
SerializeOptions serializeOptions = options = options != null ? options : new SerializeOptions();
if (options.getSort()) {
xmp.sort();
}
new XMPSerializerRDF().serialize(xmp, out, options);
}
public static String serializeToString(XMPMetaImpl xmp, SerializeOptions options) throws XMPException {
options = options != null ? options : new SerializeOptions();
options.setEncodeUTF16BE(true);
ByteArrayOutputStream out = new ByteArrayOutputStream(2048);
XMPSerializerHelper.serialize(xmp, out, options);
try {
return out.toString(options.getEncoding());
}
catch (UnsupportedEncodingException e) {
return out.toString();
}
}
public static byte[] serializeToBuffer(XMPMetaImpl xmp, SerializeOptions options) throws XMPException {
ByteArrayOutputStream out = new ByteArrayOutputStream(2048);
XMPSerializerHelper.serialize(xmp, out, options);
return out.toByteArray();
}
}