Class Scheduler
- java.lang.Object
-
- io.openems.backend.alerting.scheduler.Scheduler
-
- All Implemented Interfaces:
MessageSchedulerService
,java.lang.Runnable
public class Scheduler extends java.lang.Object implements java.lang.Runnable, MessageSchedulerService
Scheduler for Messages.
-
-
Constructor Summary
Constructors Constructor Description Scheduler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
isScheduled(Message msg)
Check if given message is scheduled within any MessageScheduler.<T extends Message>
MessageScheduler<T>register(Handler<T> handler)
Register handler for message scheduling and return MessageScheduler, to do so.void
run()
void
start()
Subscribe to minuteTimer and start scheduling.void
stop()
Unsubscribe from minuteTimer and stop scheduling.<T extends Message>
voidunregister(Handler<T> handler)
Unregister handler for message scheduling and remove MessageScheduler.
-
-
-
Method Detail
-
register
public <T extends Message> MessageScheduler<T> register(Handler<T> handler)
Description copied from interface:MessageSchedulerService
Register handler for message scheduling and return MessageScheduler, to do so.- Specified by:
register
in interfaceMessageSchedulerService
- Type Parameters:
T
- type of message- Parameters:
handler
- to register- Returns:
- new MessageScheduler for handler to schedule messages with
-
unregister
public <T extends Message> void unregister(Handler<T> handler)
Description copied from interface:MessageSchedulerService
Unregister handler for message scheduling and remove MessageScheduler.- Specified by:
unregister
in interfaceMessageSchedulerService
- Type Parameters:
T
- type of message- Parameters:
handler
- to unregister
-
start
public void start()
Subscribe to minuteTimer and start scheduling.
-
stop
public void stop()
Unsubscribe from minuteTimer and stop scheduling.
-
isScheduled
public boolean isScheduled(Message msg)
Check if given message is scheduled within any MessageScheduler.- Parameters:
msg
- to check for- Returns:
- true if any scheduling was found
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
-
-