Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package event;
- import java.util.LinkedList;
- import java.util.Queue;
- import com.tommie.rsps.Logging.Logging;
- public class EventManager {
- public Queue<Event> EVENT_RUNNING = new LinkedList<Event>();
- public Queue<Event> EVENT_FINISHED = new LinkedList<Event>();
- public Queue<Event> EVENT_NEW = new LinkedList<Event>();
- public void addEvent(Event event) {
- EVENT_FINISHED.add(event);
- }
- public void runSystem() {
- new Thread(new Runnable() {
- @Override
- public synchronized void run() {
- Logging.logInfo(this, "Started...!");
- while (true) {
- if (!EVENT_NEW.isEmpty() || !EVENT_RUNNING.isEmpty()) {
- EVENT_RUNNING.addAll(EVENT_NEW);
- EVENT_NEW.clear();
- }
- for (Event event : EVENT_RUNNING) {
- if (event.isReady()) {
- event.run();
- }
- if (!event.running()) {
- EVENT_FINISHED.add(event);
- }
- }
- }
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment