Example #1
0
 @Override
 public void close() {
   for (OScheduledEvent event : events.values()) {
     event.interrupt();
   }
   events.clear();
 }
Example #2
0
 @Override
 public void removeEvent(final String eventName) {
   final OScheduledEvent event = events.remove(eventName);
   if (event != null) {
     event.interrupt();
   }
 }
Example #3
0
  @Override
  public void scheduleEvent(final OScheduledEvent event) {
    if (event.getDocument().getIdentity().isNew())
      // FIST TIME: SAVE IT
      event.save();

    if (events.putIfAbsent(event.getName(), event) == null) event.schedule();
  }
Example #4
0
  @Override
  public void load() {
    final ODatabaseDocument db = ODatabaseRecordThreadLocal.INSTANCE.get();

    if (db.getMetadata().getSchema().existsClass(OScheduledEvent.CLASS_NAME)) {
      final Iterable<ODocument> result = db.browseClass(OScheduledEvent.CLASS_NAME);
      for (ODocument d : result) {
        final OScheduledEvent event = new OScheduledEvent(d);

        if (events.putIfAbsent(event.getName(), event) == null) this.scheduleEvent(event);
      }
    }
  }