|
Groovy example source code file (StreamClassloaderInScriptTest.groovy)
The Groovy StreamClassloaderInScriptTest.groovy source codepackage groovy.script class StreamClassloaderInScriptTest extends GroovyShellTestCase { final static BLAH = """ class Blah implements Serializable { def x, y boolean equals(def other) { x == other.x && y == other.y } } """ void testSerializationToFileWithinScript() { evaluate BLAH + """ def file = new File('blahblah.dat') file.deleteOnExit() def data = [ new Blah(x:1, y:2), new Blah(x:'flob', y:'adob') ] file.withObjectOutputStream { oos -> oos.writeObject ( data ) } // in a script we must set the classloader file.withObjectInputStream(getClass().classLoader){ ois -> def newData = ois.readObject ( ) assert data == newData } """ } void testSerializationToBytesWithinScript() { evaluate BLAH + """ def baos = new ByteArrayOutputStream() def data = [ new Blah(x:1, y:2), new Blah(x:'flob', y:'adob') ] baos.withObjectOutputStream { oos -> oos.writeObject ( data ) } def bais = new ByteArrayInputStream(baos.toByteArray()) // in a script we must set the classloader bais.withObjectInputStream(getClass().classLoader){ ois -> def newData = ois.readObject ( ) assert data == newData } """ } } Other Groovy examples (source code examples)Here is a short list of links related to this Groovy StreamClassloaderInScriptTest.groovy source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.