code: public Collection<Event> getEvents(final DateTime start, final DateTime end) {
          final Interval interval = new Interval(start, end);
          final Predicate<Event> withinInterval = new Predicate<Event>() {
              public boolean apply(Event input) {
                  return interval.contains(input.getStart());
              }
          };
          final Collection<Event> values = eventById.values();
          return Collections2.filter(values, withinInterval);
      }
docs: //////////////////////////////////////