KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > javax > management > MBeanServerFactoryTest


1 /*
2  * Copyright (C) The MX4J Contributors.
3  * All rights reserved.
4  *
5  * This software is distributed under the terms of the MX4J License version 1.0.
6  * See the terms of the MX4J License in the documentation provided with this software.
7  */

8
9 package test.javax.management;
10
11 import java.util.List JavaDoc;
12 import javax.management.MBeanServer JavaDoc;
13 import javax.management.MBeanServerFactory JavaDoc;
14
15 import junit.framework.TestCase;
16
17 /**
18  * @version $Revision: 1.7 $
19  */

20 public class MBeanServerFactoryTest extends TestCase
21 {
22    public MBeanServerFactoryTest(String JavaDoc s)
23    {
24       super(s);
25    }
26
27    public void testCreate() throws Exception JavaDoc
28    {
29       MBeanServer JavaDoc server1 = null;
30       try
31       {
32          System.out.print("Creating MBeanServer 1 ... ");
33          server1 = MBeanServerFactory.createMBeanServer();
34          System.out.println("OK");
35          System.out.print("Finding MBeanServer... ");
36          List JavaDoc l = MBeanServerFactory.findMBeanServer(null);
37          if (l.size() != 1)
38          {
39             fail("MBeanServer creation is not tracked");
40          }
41          if (!server1.equals(l.get(0)))
42          {
43             fail("MBeanServer found is different");
44          }
45          System.out.println("Found, OK");
46       }
47       finally
48       {
49          MBeanServerFactory.releaseMBeanServer(server1);
50       }
51    }
52
53
54    public void testNew() throws Exception JavaDoc
55    {
56       MBeanServer JavaDoc server1 = null;
57       try
58       {
59          System.out.print("Creating MBeanServer 1 ... ");
60          server1 = MBeanServerFactory.createMBeanServer();
61          System.out.println("OK");
62
63 // newMBeanServer must not keep track of the MBeanServer it creates
64
System.out.print("Newing MBeanServer 2 ... ");
65          MBeanServer JavaDoc server2 = MBeanServerFactory.newMBeanServer();
66          System.out.println("OK");
67          System.out.print("Finding MBeanServer... ");
68          List JavaDoc l = MBeanServerFactory.findMBeanServer(null);
69          if (l.size() != 1)
70          {
71             fail("newMBeanServer tracks creation");
72          }
73          if (!server1.equals(l.get(0)))
74          {
75             fail("MBeanServer found is different");
76          }
77          System.out.println("Found number 1, OK");
78       }
79       finally
80       {
81          MBeanServerFactory.releaseMBeanServer(server1);
82       }
83    }
84
85
86    public void testCreateWithDomain()
87    {
88       MBeanServer JavaDoc server1 = null;
89       MBeanServer JavaDoc server3 = null;
90       try
91       {
92          System.out.print("Creating MBeanServer 1 ... ");
93          server1 = MBeanServerFactory.createMBeanServer();
94          System.out.println("OK");
95
96          String JavaDoc domain = "test";
97
98          System.out.print("Creating MBeanServer 3 ... ");
99          server3 = MBeanServerFactory.createMBeanServer(domain);
100          System.out.println("OK");
101          System.out.print("Finding MBeanServer... ");
102          List JavaDoc l = MBeanServerFactory.findMBeanServer(null);
103          if (l.size() != 2)
104          {
105             fail("MBeanServer creation is not tracked");
106          }
107          MBeanServer JavaDoc found1 = (MBeanServer JavaDoc)l.get(0);
108          if (!found1.getDefaultDomain().equals(server1.getDefaultDomain()))
109          {
110             fail("MBeanServer found is different");
111          }
112          if (!server3.equals(l.get(1)))
113          {
114             fail("MBeanServer found is different");
115          }
116          if (!server3.getDefaultDomain().equals(domain))
117          {
118             fail("Domain is different");
119          }
120          System.out.println("Found number 1 & 3, OK");
121       }
122       finally
123       {
124          MBeanServerFactory.releaseMBeanServer(server1);
125          MBeanServerFactory.releaseMBeanServer(server3);
126       }
127    }
128
129
130    public void testRelease() throws Exception JavaDoc
131    {
132       System.out.print("Creating MBeanServer 1 ... ");
133       MBeanServer JavaDoc server1 = MBeanServerFactory.createMBeanServer();
134       System.out.println("OK");
135
136       System.out.print("Creating MBeanServer 2 ... ");
137       String JavaDoc domain = "test";
138       MBeanServer JavaDoc server2 = MBeanServerFactory.createMBeanServer(domain);
139       System.out.println("OK");
140
141       System.out.print("Releasing MBeanServer 1 ... ");
142       List JavaDoc l = MBeanServerFactory.findMBeanServer(null);
143       MBeanServer JavaDoc found1 = (MBeanServer JavaDoc)l.get(0);
144       MBeanServerFactory.releaseMBeanServer(found1);
145       System.out.println("OK");
146
147       System.out.print("Finding MBeanServer... ");
148       l = MBeanServerFactory.findMBeanServer(null);
149       if (l.size() != 1)
150       {
151          fail("Removed MBeanServer still present");
152       }
153       MBeanServer JavaDoc found2 = (MBeanServer JavaDoc)l.get(0);
154       if (!found2.getDefaultDomain().equals(domain))
155       {
156          fail("Removed wrong MBeanServer");
157       }
158       System.out.println("Found number 2, OK");
159
160       System.out.print("Releasing MBeanServer 2 ... ");
161       MBeanServerFactory.releaseMBeanServer(found2);
162       System.out.println("OK");
163
164       System.out.print("Finding MBeanServer... ");
165       l = MBeanServerFactory.findMBeanServer(null);
166       if (l.size() != 0)
167       {
168          fail("Removed MBeanServer still present");
169       }
170       System.out.println("Found none, OK");
171    }
172 }
173
Popular Tags