public void testSetExceptionListener_Called() throws Exception {
class MockExceptionListener implements ExceptionListener {
private boolean isCalled = false;
public void exceptionThrown(Exception e) {
isCalled = true;
}
public boolean isCalled() {
return isCalled;
}
}
XMLDecoder xmlDecoder = new XMLDecoder(new ByteArrayInputStream(
"<java><string/>".getBytes("UTF-8")));
MockExceptionListener mockListener = new MockExceptionListener();
xmlDecoder.setExceptionListener(mockListener);
assertFalse(mockListener.isCalled());
// Real Parsing should occur in method of ReadObject rather constructor.
assertNotNull(xmlDecoder.readObject());
assertTrue(mockListener.isCalled());
}
java类java.beans.ExceptionListener的实例源码
XMLDecoderTest.java 文件源码
项目:freeVM
阅读 19
收藏 0
点赞 0
评论 0
BeanUserManager.java 文件源码
项目:drftpd3-extended
阅读 23
收藏 0
点赞 0
评论 0
/**
* Sets up the XMLEnconder.
*/
public XMLEncoder getXMLEncoder(OutputStream out) {
XMLEncoder e = new XMLEncoder(out);
e.setExceptionListener(new ExceptionListener() {
public void exceptionThrown(Exception e1) {
logger.error("", e1);
}
});
e.setPersistenceDelegate(BeanUser.class,
new DefaultPersistenceDelegate(new String[] { "name" }));
e.setPersistenceDelegate(Key.class, new DefaultPersistenceDelegate(
new String[] { "owner", "key" }));
e.setPersistenceDelegate(HostMask.class,
new DefaultPersistenceDelegate(new String[] { "mask" }));
return e;
}
NukeBeans.java 文件源码
项目:drftpd3-extended
阅读 16
收藏 0
点赞 0
评论 0
/**
* Serializes the TreeMap.
*
* @throws IOException
*/
public void commit() throws IOException {
saveClassLoader();
XMLEncoder enc = null;
try {
switchClassLoaders();
enc = new XMLEncoder(new SafeFileOutputStream(nukeFile));
enc.setExceptionListener(new ExceptionListener() {
public void exceptionThrown(Exception e) {
logger.error(e, e);
}
});
enc.setPersistenceDelegate(LRUMap.class, new DefaultPersistenceDelegate(new String[] { "maxSize" } ));
enc.writeObject(_nukes);
} catch (IOException ex) {
throw new IOException(ex.getMessage());
} finally {
if (enc != null)
enc.close();
}
setPreviousClassLoader();
}
TopologyManager.java 文件源码
项目:URingPaxos
阅读 31
收藏 0
点赞 0
评论 0
/**
* @throws InterruptedException
* @throws KeeperException
*/
protected void registerNode() throws KeeperException, InterruptedException {
// register and watch node ID
Util.checkThenCreateZooNode(path + "/" + id_path,null,Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT,zoo);
zoo.getChildren(path + "/" + id_path, true); // start watching
byte[] b = (addr.getHostString() + ";" + addr.getPort()).getBytes(); // store the SocketAddress
// special case for EC2 inter-region ring; publish public IP
String public_ip = System.getenv("EC2");
if(public_ip != null){
b = (public_ip + ";" + addr.getPort()).getBytes(); // store the SocketAddress
logger.warn("Publish env(EC2) in zookeeper: " + new String(b) + "!");
}
Util.checkThenCreateZooNode(path + "/" + id_path + "/" + nodeID,b,Ids.OPEN_ACL_UNSAFE,CreateMode.EPHEMERAL, zoo,
new ExceptionListener() {
@Override
public void exceptionThrown(Exception e) {
logger.error("Node ID " + nodeID + " in topology " + topologyID + " already registred!");
}
});
}
Test4676532.java 文件源码
项目:jdk8u-jdk
阅读 15
收藏 0
点赞 0
评论 0
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());
}
}
Test4676532.java 文件源码
项目:openjdk-jdk10
阅读 14
收藏 0
点赞 0
评论 0
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());
}
}
Test4676532.java 文件源码
项目:openjdk9
阅读 14
收藏 0
点赞 0
评论 0
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());
}
}
PersistenceManager.java 文件源码
项目:PhET
阅读 23
收藏 0
点赞 0
评论 0
public Object loadLocal() throws FileNotFoundException {
Window frame = getFrame();
// Choose the file to load.
JFileChooser fileChooser = new JFileChooser( _directoryName );
fileChooser.setDialogTitle( "Load File" );
int rval = fileChooser.showOpenDialog( frame );
_directoryName = fileChooser.getCurrentDirectory().getAbsolutePath();
File selectedFile = fileChooser.getSelectedFile();
if( rval == JFileChooser.CANCEL_OPTION || selectedFile == null ) {
return null;
}
// XML decode directly from the file.
Object object = null;
String filename = selectedFile.getAbsolutePath();
FileInputStream fis = new FileInputStream( filename );
BufferedInputStream bis = new BufferedInputStream( fis );
XMLDecoder decoder = new XMLDecoder( bis );
decoder.setExceptionListener( new ExceptionListener() {
private int errors = 0;
// Report the first recoverable exception.
public void exceptionThrown( Exception e ) {
if( errors == 0 ) {
showError( QWIResources.getString( "Load.error.decode" ), e );
errors++;
}
}
} );
object = decoder.readObject();
decoder.close();
return object;
}
PersistenceManager.java 文件源码
项目:PhET
阅读 23
收藏 0
点赞 0
评论 0
private void saveJNLP( Serializable object ) throws Exception {
final JFrame frame = PhetApplication.getInstance().getPhetFrame();
// XML encode into a byte output stream.
ByteArrayOutputStream baos = new ByteArrayOutputStream();
XMLEncoder encoder = new XMLEncoder( baos );
encoder.setExceptionListener( new ExceptionListener() {
private int errors = 0;
// Report the first recoverable exception.
public void exceptionThrown( Exception e ) {
if( errors == 0 ) {
showError( QWIResources.getString( "Save.error.encode" ), e );
errors++;
}
}
} );
encoder.writeObject( object );
encoder.close();
if( object == null ) {
throw new Exception( QWIResources.getString( "XML encoding failed" ) );
}
// Convert to a byte input stream.
ByteArrayInputStream inputStream = new ByteArrayInputStream( baos.toByteArray() );
// Get the JNLP service for saving files.
FileSaveService fss = (FileSaveService)ServiceManager.lookup( "javax.jnlp.FileSaveService" );
if( fss == null ) {
throw new UnavailableServiceException( "JNLP FileSaveService is unavailable" );
}
// Save the configuration to a file.
FileContents fc = fss.saveFileDialog( null, null, inputStream, _directoryName );
if( fc != null ) {
_directoryName = getDirectoryName( fc.getName() );
}
}
PersistenceManager.java 文件源码
项目:PhET
阅读 27
收藏 0
点赞 0
评论 0
private Object loadJNLP() throws UnavailableServiceException, IOException {
Window frame = getFrame();
// Get the JNLP service for opening files.
FileOpenService fos = (FileOpenService)ServiceManager.lookup( "javax.jnlp.FileOpenService" );
if( fos == null ) {
throw new UnavailableServiceException( "JNLP FileOpenService is unavailable" );
}
// Read the configuration from a file.
FileContents fc = fos.openFileDialog( _directoryName, null );
if( fc == null ) {
return null;
}
_directoryName = getDirectoryName( fc.getName() );
// Convert the FileContents to an input stream.
InputStream inputStream = fc.getInputStream();
// XML-decode the input stream.
Object object = null;
XMLDecoder decoder = new XMLDecoder( inputStream );
decoder.setExceptionListener( new ExceptionListener() {
private int errors = 0;
// Report the first recoverable exception.
public void exceptionThrown( Exception e ) {
if( errors == 0 ) {
showError( QWIResources.getString( "Load.error.decode" ), e );
errors++;
}
}
} );
object = decoder.readObject();
decoder.close();
return object;
}