KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > javax > management > remote > JMXConnectorServerFactoryTest


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.remote;
10
11 import java.net.MalformedURLException JavaDoc;
12 import java.util.HashMap JavaDoc;
13 import javax.management.remote.JMXConnectorServer JavaDoc;
14 import javax.management.remote.JMXConnectorServerFactory JavaDoc;
15 import javax.management.remote.JMXProviderException JavaDoc;
16 import javax.management.remote.JMXServiceURL JavaDoc;
17
18 import test.MX4JTestCase;
19
20 /**
21  * @version $Revision: 1.3 $
22  */

23 public class JMXConnectorServerFactoryTest extends MX4JTestCase
24 {
25    public JMXConnectorServerFactoryTest(String JavaDoc s)
26    {
27       super(s);
28    }
29
30    public void testInvalidURLs() throws Exception JavaDoc
31    {
32       try
33       {
34          JMXConnectorServerFactory.newJMXConnectorServer(null, null, null);
35          fail();
36       }
37       catch (NullPointerException JavaDoc x)
38       {
39       }
40    }
41
42    public void testInvalidPackages() throws Exception JavaDoc
43    {
44       HashMap JavaDoc env = new HashMap JavaDoc();
45       JMXServiceURL JavaDoc url = new JMXServiceURL JavaDoc("service:jmx:rmi://host");
46
47       // Only Strings
48
env.put(JMXConnectorServerFactory.PROTOCOL_PROVIDER_PACKAGES, new Object JavaDoc());
49       try
50       {
51          JMXConnectorServerFactory.newJMXConnectorServer(url, env, null);
52          fail("Only Strings can be specified as provider packages");
53       }
54       catch (JMXProviderException JavaDoc x)
55       {
56       }
57
58       // Empty not allowed
59
env.put(JMXConnectorServerFactory.PROTOCOL_PROVIDER_PACKAGES, "");
60       try
61       {
62          JMXConnectorServerFactory.newJMXConnectorServer(url, env, null);
63          fail("Provider package string cannot be empty");
64       }
65       catch (JMXProviderException JavaDoc x)
66       {
67       }
68
69       // Empty not allowed
70
env.put(JMXConnectorServerFactory.PROTOCOL_PROVIDER_PACKAGES, "dummy| |dummy");
71       try
72       {
73          JMXConnectorServerFactory.newJMXConnectorServer(url, env, null);
74          fail("Provider package string cannot contain an empty string");
75       }
76       catch (JMXProviderException JavaDoc x)
77       {
78       }
79    }
80
81    public void testInvalidProtocol() throws Exception JavaDoc
82    {
83       JMXServiceURL JavaDoc url = new JMXServiceURL JavaDoc("service:jmx:dummy://host");
84       try
85       {
86          JMXConnectorServerFactory.newJMXConnectorServer(url, null, null);
87          fail();
88       }
89       catch (MalformedURLException JavaDoc x)
90       {
91       }
92    }
93
94    public void testInvalidClassLoader() throws Exception JavaDoc
95    {
96       HashMap JavaDoc env = new HashMap JavaDoc();
97       JMXServiceURL JavaDoc url = new JMXServiceURL JavaDoc("service:jmx:rmi://host");
98
99       env.put(JMXConnectorServerFactory.PROTOCOL_PROVIDER_CLASS_LOADER, new Object JavaDoc());
100       try
101       {
102          JMXConnectorServerFactory.newJMXConnectorServer(url, env, null);
103          fail();
104       }
105       catch (IllegalArgumentException JavaDoc x)
106       {
107       }
108    }
109
110    public void testLoadProviderWithProvidedClassLoader() throws Exception JavaDoc
111    {
112       HashMap JavaDoc env = new HashMap JavaDoc();
113       JMXServiceURL JavaDoc url = new JMXServiceURL JavaDoc("service:jmx:rmi://host");
114
115       env.put(JMXConnectorServerFactory.PROTOCOL_PROVIDER_CLASS_LOADER, getClass().getClassLoader());
116       JMXConnectorServerFactory.newJMXConnectorServer(url, env, null);
117    }
118
119    public void testRMIProvider() throws Exception JavaDoc
120    {
121       JMXServiceURL JavaDoc url = new JMXServiceURL JavaDoc("service:jmx:rmi://host");
122       JMXConnectorServer JavaDoc connector = JMXConnectorServerFactory.newJMXConnectorServer(url, null, null);
123       assertNotNull(connector);
124    }
125 }
126
Popular Tags