下面列出了javax.management.timer.Timer#addNotification ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
* Starts a Timer to get this query executed in specific time intervals.
*
* @throws ImplementationException
* If the next scheduled date cannot be evaluated.
*/
private void startThread() throws ImplementationExceptionResponse {
Timer nextAction = new Timer();
nextAction.addNotificationListener(this, null, nextAction);
Date nextSchedule = schedule.nextScheduledTime().getTime();
nextAction.addNotification("SubscriptionSchedule", "Please do the query", null, nextSchedule);
nextAction.start();
}
/**
* Determines the next scheduled execution time for this subscribed query.
*
* @param timer
* The Timer to set the next scheduled time.
* @throws IllegalArgumentException
*/
protected void setNextScheduledExecutionTime(final Timer timer) throws IllegalArgumentException {
try {
Date nextSchedule = schedule.nextScheduledTime().getTime();
LOG.debug("Next scheduled time for the subscribed query is '" + nextSchedule + "'.");
timer.addNotification("SubscriptionSchedule", "Please do the query", timer, nextSchedule);
} catch (ImplementationExceptionResponse e) {
String msg = "The next scheduled date for the subscribed query with ID '" + getSubscriptionID()
+ "' cannot be evaluated: " + e.getMessage();
LOG.error(msg, e);
}
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}
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!");
}