public static void main(String[] args) throws Exception {
System.out.println(
">>> Test on timer start method with past notifications.");
System.out.println(">>> Create a Timer object.");
Timer timer = new Timer();
System.out.println(
">>> Set the flag (setSendPastNotification) to true.");
timer.setSendPastNotifications(true);
timer.addNotificationListener(myListener, null, null);
System.out.println(">>> Add notifications: " + SENT);
Date date = new Date();
for (int i = 0; i < SENT; i++) {
timer.addNotification(
"testType" + i, "testMsg" + i, "testData" + i, date);
}
System.out.println(">>> The notifications should be sent at " + date);
System.out.println(">>> Sleep 100 ms to have past notifications.");
Thread.sleep(100);
System.out.println(">>> Start the timer at " + new Date());
timer.start();
System.out.println(">>> Stop the timer.");
Thread.sleep(100);
stopping = true;
timer.stop();
if (received != SENT) {
throw new RuntimeException(
"Expected to receive " + SENT + " but got " + received);
}
System.out.println(">>> Received all expected notifications.");
System.out.println(">>> Bye bye!");
}
java类javax.management.timer.Timer的实例源码
StartTest.java 文件源码
项目:OLD-OpenJDK8
阅读 18
收藏 0
点赞 0
评论 0
MissingNotificationTest.java 文件源码
项目:OLD-OpenJDK8
阅读 18
收藏 0
点赞 0
评论 0
public static void main(String[] args) throws Exception {
System.out.println(
">>> Test for missing notifications.");
System.out.println(">>> Create a Timer object.");
final Timer timer = new Timer();
timer.start();
NotifListener listener = new NotifListener();
timer.addNotificationListener(listener, null, null);
ExecutorService executor = Executors.newFixedThreadPool(100);
final Random rand = new Random();
for (int i = 0; i < TASK_COUNT; i++) {
executor.execute(new Runnable() {
public void run() {
long dateMillis = System.currentTimeMillis() + fixedDelay + rand.nextInt(2000);
Date date = new Date(dateMillis);
timer.addNotification("type", "msg", "userData", date);
}
});
}
executor.shutdown();
executor.awaitTermination(20, TimeUnit.SECONDS);
waitForNotificationsToEnd(listener);
timer.stop();
if (listener.count < TASK_COUNT) {
throw new RuntimeException("Not fired: " + (TASK_COUNT - listener.count));
} else {
System.out.println(">>> All notifications handled OK");
}
System.out.println(">>> Bye bye!");
}
StartTest.java 文件源码
项目:JAVA_UNIT
阅读 16
收藏 0
点赞 0
评论 0
public static void main(String[] args) throws Exception {
System.out.println(
">>> Test on timer start method with past notifications.");
System.out.println(">>> Create a Timer object.");
Timer timer = new Timer();
System.out.println(
">>> Set the flag (setSendPastNotification) to true.");
timer.setSendPastNotifications(true);
timer.addNotificationListener(myListener, null, null);
System.out.println(">>> Add notifications: " + SENT);
Date date = new Date();
for (int i = 0; i < SENT; i++) {
timer.addNotification(
"testType" + i, "testMsg" + i, "testData" + i, date);
}
System.out.println(">>> The notifications should be sent at " + date);
System.out.println(">>> Sleep 100 ms to have past notifications.");
Thread.sleep(100);
System.out.println(">>> Start the timer at " + new Date());
timer.start();
System.out.println(">>> Stop the timer.");
Thread.sleep(100);
stopping = true;
timer.stop();
if (received != SENT) {
throw new RuntimeException(
"Expected to receive " + SENT + " but got " + received);
}
System.out.println(">>> Received all expected notifications.");
System.out.println(">>> Bye bye!");
}
StartTest.java 文件源码
项目:openjdk-jdk7u-jdk
阅读 16
收藏 0
点赞 0
评论 0
public static void main(String[] args) throws Exception {
System.out.println(
">>> Test on timer start method with past notifications.");
System.out.println(">>> Create a Timer object.");
Timer timer = new Timer();
System.out.println(
">>> Set the flag (setSendPastNotification) to true.");
timer.setSendPastNotifications(true);
timer.addNotificationListener(myListener, null, null);
System.out.println(">>> Add notifications: " + SENT);
Date date = new Date();
for (int i = 0; i < SENT; i++) {
timer.addNotification(
"testType" + i, "testMsg" + i, "testData" + i, date);
}
System.out.println(">>> The notifications should be sent at " + date);
System.out.println(">>> Sleep 100 ms to have past notifications.");
Thread.sleep(100);
System.out.println(">>> Start the timer at " + new Date());
timer.start();
System.out.println(">>> Stop the timer.");
Thread.sleep(100);
stopping = true;
timer.stop();
if (received != SENT) {
throw new RuntimeException(
"Expected to receive " + SENT + " but got " + received);
}
System.out.println(">>> Received all expected notifications.");
System.out.println(">>> Bye bye!");
}
QuerySubscriptionTriggered.java 文件源码
项目:oliot-epcis
阅读 20
收藏 0
点赞 0
评论 0
/**
* {@inheritDoc} First checks on the trigger condition: if fulfilled then
* execute Query.
*
* @see org.fosstrak.epcis.repository.query.QuerySubscriptionScheduled#handleNotification(javax.management.Notification,
* java.lang.Object)
*/
@Override
public void handleNotification(final Notification pNotification, final Object pHandback) {
if (pHandback == null) {
LOG.error("The timer stating the next scheduled query execution time is null!");
return;
}
Timer timer = (Timer) pHandback;
if (!doItAgain.booleanValue()) {
timer.stop();
} else {
try {
LOG.debug("Checking trigger condition ...");
String queryName = "SimpleEventQuery";
QueryParams params = new QueryParams();
// add MATCH_anyEPC query param
QueryParam param = new QueryParam();
param.setName("MATCH_anyEPC");
ArrayOfString strings = new ArrayOfString();
strings.getString().add(trigger);
param.setValue(strings);
params.getParam().add(param);
// add GE_recordTime query param
param = new QueryParam();
param.setName("GE_recordTime");
param.setValue(initialRecordTime);
params.getParam().add(param);
// send the query
Poll poll = new Poll();
poll.setParams(params);
poll.setQueryName(queryName);
QueryResults results = executePoll(poll);
if (results != null && results.getResultsBody() != null
&& results.getResultsBody().getEventList() != null) {
LOG.debug("Trigger condition fulfilled!");
LOG.debug("Executing subscribed query associated with trigger event ...");
super.executeQuery();
LOG.debug("Triggered query successfully executed!");
}
} catch (Exception e) {
String msg = "An error occurred while checking trigger condition for query with subscriptionID '"
+ subscriptionID + "': " + e.getMessage();
LOG.error(msg, e);
}
// determine next scheduled execution time
setNextScheduledExecutionTime(timer);
}
}
StartTest.java 文件源码
项目:openjdk-icedtea7
阅读 18
收藏 0
点赞 0
评论 0
public static void main(String[] args) throws Exception {
System.out.println(
">>> Test on timer start method with past notifications.");
System.out.println(">>> Create a Timer object.");
Timer timer = new Timer();
System.out.println(
">>> Set the flag (setSendPastNotification) to true.");
timer.setSendPastNotifications(true);
timer.addNotificationListener(myListener, null, null);
System.out.println(">>> Add notifications: " + SENT);
Date date = new Date();
for (int i = 0; i < SENT; i++) {
timer.addNotification(
"testType" + i, "testMsg" + i, "testData" + i, date);
}
System.out.println(">>> The notifications should be sent at " + date);
System.out.println(">>> Sleep 100 ms to have past notifications.");
Thread.sleep(100);
System.out.println(">>> Start the timer at " + new Date());
timer.start();
System.out.println(">>> Stop the timer.");
Thread.sleep(100);
stopping = true;
timer.stop();
if (received != SENT) {
throw new RuntimeException(
"Expected to receive " + SENT + " but got " + received);
}
System.out.println(">>> Received all expected notifications.");
System.out.println(">>> Bye bye!");
}
JMXControlServiceTest.java 文件源码
项目:quarks
阅读 21
收藏 0
点赞 0
评论 0
@Test
public void testControlObject() throws Exception {
ControlService cs = new JMXControlService(DOMAIN, new Hashtable<>());
String type = "timer";
String id = "a";
String alias = "ControlA";
String controlId = cs.registerControl(type, id, alias, TimerMBean.class, new Timer());
assertNotNull(controlId);
ObjectName on = ObjectName.getInstance(controlId);
assertEquals(DOMAIN, on.getDomain());
assertEquals(type, ObjectName.unquote(on.getKeyProperty("type")));
assertEquals(id, ObjectName.unquote(on.getKeyProperty("id")));
assertEquals(alias, ObjectName.unquote(on.getKeyProperty("alias")));
assertEquals(TimerMBean.class.getName(), ObjectName.unquote(on.getKeyProperty("interface")));
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
assertTrue(mbs.isRegistered(on));
cs.unregister(controlId);
assertFalse(mbs.isRegistered(on));
}
JMXControlServiceTest.java 文件源码
项目:quarks
阅读 18
收藏 0
点赞 0
评论 0
@Test
public void testAdditionalKeys() throws Exception {
Hashtable<String,String> addKeys = new Hashtable<>();
addKeys.put("job", "jobid");
addKeys.put("device", ObjectName.quote("pi"));
ControlService cs = new JMXControlService(DOMAIN, addKeys);
String type = "timer";
String id = "a";
String alias = "ControlA";
String controlId = cs.registerControl(type, id, alias, TimerMBean.class, new Timer());
assertNotNull(controlId);
ObjectName on = ObjectName.getInstance(controlId);
assertEquals(DOMAIN, on.getDomain());
assertEquals(type, ObjectName.unquote(on.getKeyProperty("type")));
assertEquals(id, ObjectName.unquote(on.getKeyProperty("id")));
assertEquals(alias, ObjectName.unquote(on.getKeyProperty("alias")));
assertEquals(TimerMBean.class.getName(), ObjectName.unquote(on.getKeyProperty("interface")));
assertEquals("jobid", on.getKeyProperty("job"));
assertEquals("pi", ObjectName.unquote(on.getKeyProperty("device")));
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
assertTrue(mbs.isRegistered(on));
cs.unregister(controlId);
assertFalse(mbs.isRegistered(on));
}