41 package com.sun.jmx.examples.scandir;
45 import java.io.FileOutputStream;
46 import java.io.IOException;
47 import java.lang.management.ManagementFactory;
48 import java.util.concurrent.LinkedBlockingQueue;
49 import java.util.concurrent.TimeUnit;
50 import junit.framework.*;
54 import java.util.concurrent.BlockingQueue;
55 import javax.management.*;
68 protected void setUp() throws Exception {
84 System.out.println(
"load");
86 final File
file = File.createTempFile(
"testconf",
".xml");
92 dir.setRootDirectory(
file.getParent());
113 System.out.println(
"save");
115 final File
file = File.createTempFile(
"testconf",
".xml");
116 final MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
122 assertTrue(mbs.isRegistered(
128 dir.setRootDirectory(
file.getParent());
135 assertEquals(bean,loaded);
147 final ObjectName
all =
149 assertEquals(0,mbs.queryNames(
all,
null).size());
173 System.out.println(
"getXmlConfigString");
176 final File
file = File.createTempFile(
"testconf",
".xml");
182 dir.setRootDirectory(
file.getParent());
186 System.out.println(
"Received: " +
190 }
catch (Exception x) {
202 System.out.println(
"addNotificationListener");
204 final File
file = File.createTempFile(
"testconf",
".xml");
205 final MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
212 file.getAbsolutePath()),
214 assertTrue(mbs.isRegistered(
219 final BlockingQueue<Notification> queue =
220 new LinkedBlockingQueue<Notification>();
221 final NotificationListener listener =
new NotificationListener() {
222 public void handleNotification(Notification notification,
224 queue.add(notification);
227 NotificationFilter filter =
null;
228 Object handback =
null;
230 ((NotificationEmitter)instance).addNotificationListener(listener,
248 for (
int i=0;i<4;i++) {
249 final Notification n = queue.poll(3,TimeUnit.SECONDS);
269 final ObjectName
all =
271 assertEquals(0,mbs.queryNames(
all,
null).size());
279 System.out.println(
"getConfigFilename");
281 final File
file = File.createTempFile(
"testconf",
".xml");
285 assertEquals(
file.getAbsolutePath(),
new File(
result).getAbsolutePath());
294 System.out.println(
"addDirectoryScanner");
296 System.out.println(
"save");
298 final File
file = File.createTempFile(
"testconf",
".xml");
304 dir.setRootDirectory(
file.getParent());
312 dir.getRootDirectory(),
319 assertNotNull(loaded.
getScan(dir.getName()));
320 assertEquals(dir,loaded.
getScan(dir.getName()));