下面列出了java.beans.XMLDecoder# close ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
static void test(AbstractTest object) {
ByteArrayOutputStream output = new ByteArrayOutputStream();
XMLEncoder encoder = new XMLEncoder(output);
encoder.setPersistenceDelegate(
object.getClass(),
new DefaultPersistenceDelegate(new String[] {"value"}));
encoder.writeObject(object);
encoder.close();
System.out.print(output);
ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
XMLDecoder decoder = new XMLDecoder(input);
AbstractTest result = (AbstractTest) decoder.readObject();
decoder.close();
if (object.getValue() != result.getValue())
throw new Error("Should be " + object);
}
static void test(AbstractTest object) {
ByteArrayOutputStream output = new ByteArrayOutputStream();
XMLEncoder encoder = new XMLEncoder(output);
encoder.setPersistenceDelegate(
object.getClass(),
new DefaultPersistenceDelegate(new String[] {"value"}));
encoder.writeObject(object);
encoder.close();
System.out.print(output);
ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
XMLDecoder decoder = new XMLDecoder(input);
AbstractTest result = (AbstractTest) decoder.readObject();
decoder.close();
if (object.getValue() != result.getValue())
throw new Error("Should be " + object);
}
static void test(AbstractTest object) {
ByteArrayOutputStream output = new ByteArrayOutputStream();
XMLEncoder encoder = new XMLEncoder(output);
encoder.setPersistenceDelegate(
object.getClass(),
new DefaultPersistenceDelegate(new String[] {"value"}));
encoder.writeObject(object);
encoder.close();
System.out.print(output);
ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
XMLDecoder decoder = new XMLDecoder(input);
AbstractTest result = (AbstractTest) decoder.readObject();
decoder.close();
if (object.getValue() != result.getValue())
throw new Error("Should be " + object);
}
/**
* This is entry point to start testing.
*
* @param security use {@code true} to start
* second pass in secure context
*/
final void test(boolean security) {
byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
ByteArrayInputStream input = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(input);
decoder.setExceptionListener(this);
validate(decoder);
try {
throw new Error("unexpected object" + decoder.readObject());
} catch (ArrayIndexOutOfBoundsException exception) {
// expected exception
}
decoder.close();
if (security) {
System.setSecurityManager(new SecurityManager());
test(false);
}
}
/**
* This is entry point to start testing.
*
* @param security use {@code true} to start
* second pass in secure context
*/
final void test(boolean security) {
byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
ByteArrayInputStream input = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(input);
decoder.setExceptionListener(this);
validate(decoder);
try {
throw new Error("unexpected object" + decoder.readObject());
} catch (ArrayIndexOutOfBoundsException exception) {
// expected exception
}
decoder.close();
if (security) {
System.setSecurityManager(new SecurityManager());
test(false);
}
}
/**
* This is entry point to start testing.
*
* @param security use {@code true} to start
* second pass in secure context
*/
final void test(boolean security) {
byte[] array = getFieldValue("XML").getBytes(); // NON-NLS: the field name
ByteArrayInputStream input = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(input);
decoder.setExceptionListener(this);
validate(decoder);
try {
throw new Error("unexpected object" + decoder.readObject());
} catch (ArrayIndexOutOfBoundsException exception) {
// expected exception
}
decoder.close();
if (security) {
System.setSecurityManager(new SecurityManager());
test(false);
}
}
private static void test(Locale locale, byte[] data) {
Locale.setDefault(locale);
System.out.println("locale = " + locale);
XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(data));
System.out.println("object = " + decoder.readObject());
decoder.close();
}
void loadSettings(File file) throws IOException, IntrospectionException, PropertyVetoException {
if (file == null) {
cameraSettings = null;
projectorSettings = null;
objectFinderSettings = null;
markerDetectorSettings = null;
alignerSettings = null;
handMouseSettings = null;
virtualBallSettings = null;
realityAugmentorSettings = null;
trackingSettings = null;
trackingWorker = null;
} else {
XMLDecoder decoder = new XMLDecoder(new BufferedInputStream(new FileInputStream(file)));
cameraSettings = (CameraDevice.Settings)decoder.readObject();
projectorSettings = (ProjectorDevice.Settings)decoder.readObject();
objectFinderSettings = (ObjectFinder.Settings)decoder.readObject();
markerDetectorSettings = (MarkerDetector.Settings)decoder.readObject();
alignerSettings = (GNImageAligner.Settings)decoder.readObject();
handMouseSettings = (HandMouse.Settings)decoder.readObject();
virtualBallSettings = (VirtualBall.Settings)decoder.readObject();
realityAugmentorSettings = (RealityAugmentor.Settings)decoder.readObject();
trackingSettings = (TrackingWorker.Settings)decoder.readObject();
decoder.close();
}
settingsFile = file;
if (settingsFile == null) {
setTitle("ProCamTracker");
} else {
setTitle(settingsFile.getName() + " - ProCamTracker");
}
buildSettingsView();
if (trackingWorker == null) {
statusLabel.setText("Idling.");
}
}
private Object decode(byte[] array) {
ByteArrayInputStream in = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(in, null, this, this);
Object object = decoder.readObject();
validate(object);
decoder.close();
return object;
}
private Object decode(byte[] array) {
ByteArrayInputStream in = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(in, null, this, this);
Object object = decoder.readObject();
validate(object);
decoder.close();
return object;
}
public static void main(String[] args) throws Exception {
StringBuilder sb = new StringBuilder(256);
sb.append("file:");
sb.append(System.getProperty("test.src", "."));
sb.append(File.separatorChar);
sb.append("test.jar");
URL[] url = {new URL(sb.toString())};
URLClassLoader cl = new URLClassLoader(url);
Class type = cl.loadClass("test.Test");
if (type == null) {
throw new Error("could not find class test.Test");
}
InputStream stream = new ByteArrayInputStream(DATA.getBytes());
ExceptionListener el = new ExceptionListener() {
public void exceptionThrown(Exception exception) {
throw new Error("unexpected exception", exception);
}
};
XMLDecoder decoder = new XMLDecoder(stream, null, el, cl);
Object object = decoder.readObject();
decoder.close();
if (!type.equals(object.getClass())) {
throw new Error("unexpected " + object.getClass());
}
}
private static void test(Locale locale, byte[] data) {
Locale.setDefault(locale);
System.out.println("locale = " + locale);
XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(data));
System.out.println("object = " + decoder.readObject());
decoder.close();
}
private Object decode(byte[] array) {
ByteArrayInputStream in = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(in, null, this, this);
Object object = decoder.readObject();
validate(object);
decoder.close();
return object;
}
private Object readObject(byte[] array) {
ByteArrayInputStream input = new ByteArrayInputStream(array);
XMLDecoder decoder = new XMLDecoder(input);
decoder.setExceptionListener(this);
initialize(decoder);
Object object = decoder.readObject();
decoder.close();
return object;
}
public static void main(String[] args) throws Exception {
StringBuilder sb = new StringBuilder(256);
sb.append("file:");
sb.append(System.getProperty("test.src", "."));
sb.append(File.separatorChar);
sb.append("test.jar");
URL[] url = {new URL(sb.toString())};
URLClassLoader cl = new URLClassLoader(url);
Class type = cl.loadClass("test.Test");
if (type == null) {
throw new Error("could not find class test.Test");
}
InputStream stream = new ByteArrayInputStream(DATA.getBytes());
ExceptionListener el = new ExceptionListener() {
public void exceptionThrown(Exception exception) {
throw new Error("unexpected exception", exception);
}
};
XMLDecoder decoder = new XMLDecoder(stream, null, el, cl);
Object object = decoder.readObject();
decoder.close();
if (!type.equals(object.getClass())) {
throw new Error("unexpected " + object.getClass());
}
}
private static void test(Locale locale, byte[] data) {
Locale.setDefault(locale);
System.out.println("locale = " + locale);
XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(data));
System.out.println("object = " + decoder.readObject());
decoder.close();
}
public static void main(String[] args) throws Exception {
StringBuilder sb = new StringBuilder(256);
sb.append("file:");
sb.append(System.getProperty("test.src", "."));
sb.append(File.separatorChar);
sb.append("test.jar");
URL[] url = {new URL(sb.toString())};
URLClassLoader cl = new URLClassLoader(url);
Class type = cl.loadClass("test.Test");
if (type == null) {
throw new Error("could not find class test.Test");
}
InputStream stream = new ByteArrayInputStream(DATA.getBytes());
ExceptionListener el = new ExceptionListener() {
public void exceptionThrown(Exception exception) {
throw new Error("unexpected exception", exception);
}
};
XMLDecoder decoder = new XMLDecoder(stream, null, el, cl);
Object object = decoder.readObject();
decoder.close();
if (!type.equals(object.getClass())) {
throw new Error("unexpected " + object.getClass());
}
}
private void parse() {
XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(this.buffer));
decoder.readObject();
decoder.close();
}
private void parse() {
XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(this.buffer));
decoder.readObject();
decoder.close();
}
private void parse() {
XMLDecoder decoder = new XMLDecoder(new ByteArrayInputStream(this.buffer));
decoder.readObject();
decoder.close();
}