summaryrefslogtreecommitdiff
path: root/java/test/Ice/plugin/plugins/PluginTwoFailFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/test/Ice/plugin/plugins/PluginTwoFailFactory.java')
-rw-r--r--java/test/Ice/plugin/plugins/PluginTwoFailFactory.java64
1 files changed, 64 insertions, 0 deletions
diff --git a/java/test/Ice/plugin/plugins/PluginTwoFailFactory.java b/java/test/Ice/plugin/plugins/PluginTwoFailFactory.java
new file mode 100644
index 00000000000..80dd2fdf2f2
--- /dev/null
+++ b/java/test/Ice/plugin/plugins/PluginTwoFailFactory.java
@@ -0,0 +1,64 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+package test.Ice.plugin.plugins;
+
+public class PluginTwoFailFactory implements Ice.PluginFactory
+{
+ public Ice.Plugin create(Ice.Communicator communicator, String name, String[] args)
+ {
+ return new PluginTwoFail(communicator);
+ }
+
+ static class PluginTwoFail extends BasePluginFail
+ {
+ public PluginTwoFail(Ice.Communicator communicator)
+ {
+ super(communicator);
+ }
+
+ public void initialize()
+ {
+ _one = (BasePluginFail)_communicator.getPluginManager().getPlugin("PluginOneFail");
+ test(_one.isInitialized());
+ _three = (BasePluginFail)_communicator.getPluginManager().getPlugin("PluginThreeFail");
+ test(!_three.isInitialized());
+ _initialized = true;
+ }
+
+ public void destroy()
+ {
+ test(!_one.isDestroyed());
+ //
+ // Not destroyed because initialize fails.
+ //
+ test(!_three.isDestroyed());
+ _destroyed = true;
+ }
+
+ protected void finalize() throws Throwable
+ {
+ try
+ {
+ if(!_initialized)
+ {
+ System.out.println(getClass().getName() + " not initialized");
+ }
+ if(!_destroyed)
+ {
+ System.out.println(getClass().getName() + " not destroyed");
+ }
+ }
+ finally
+ {
+ super.finalize();
+ }
+ }
+ }
+}