TimeInterval time = new TimeInterval("00:00:00.000"); try { for (int i = 0; i < 24; i++) { time = time.add(new TimeInterval("01:00:00.123")); } System.out.println(time.toString()); } catch (ParseException e) { e.printStackTrace(); }
public boolean preceeds(TimeInterval interval) { return compareTo(interval) < 0; }
@Override protected TimeInterval createInterval(Date start, Date end) { return new TimeInterval(start, end); }
/** * <p>addInterval</p> * * @param interval a {@link org.opennms.core.utils.TimeInterval} object. */ public void addInterval(T interval) { if (m_interval == null) { m_interval = interval; } else if (m_interval.preceeds(interval)) { addPreceedingInterval(interval); } else if (m_interval.follows(interval)) { addSucceedingInterval(interval); } else if (m_interval.overlaps(interval)) { addOverlappingInterval(interval); } }
/** * <p>getStart</p> * * @return a {@link java.util.Date} object. */ public Date getStart() { if (m_interval == null) return null; return m_interval.getStart(); }
/** * <p>getEnd</p> * * @return a {@link java.util.Date} object. */ public Date getEnd() { if (m_interval == null) return null; if (m_tail == null) return m_interval.getEnd(); return m_tail.getEnd(); }
/** * <p>toString</p> * * @return a {@link java.lang.String} object. */ @Override public String toString() { final StringBuilder sb = new StringBuilder(); if (m_owners.isEmpty()) { sb.append("UNOWNED"); } else { for (int i = 0; i < m_owners.size(); i++) { if (i != 0) { sb.append(","); } sb.append(m_owners.get(i)); } } return sb.toString()+super.toString(); }
/** {@inheritDoc} */ @Override public boolean equals(final Object o) { if (o == null) return false; if (o instanceof OwnedInterval) { final OwnedInterval owned = (OwnedInterval) o; return super.equals(owned) && m_owners.equals(owned.m_owners); } return false; }
/** * <p>getBounds</p> * * @return a {@link org.opennms.core.utils.TimeInterval} object. */ public TimeInterval getBounds() { Date start = getStart(); Date end = getEnd(); return (start == null || end == null ? null : new TimeInterval(start, end)); }
protected TimeInterval interval(int startMonth, int startDay, int startHour, int endMonth, int endDay, int endHour) throws Exception { return new TimeInterval(date(startDay+"-"+startMonth+"-2005 "+startHour+":00:00"), date(endDay+"-"+endMonth+"-2005 "+endHour+":00:00")); }
public boolean follows(TimeInterval interval) { return compareTo(interval) > 0; }
public boolean overlaps(TimeInterval interval) { return compareTo(interval) == 0; }
/** * <p>getIntervalsCovering</p> * * @param interval a {@link org.opennms.core.utils.TimeInterval} object. * @param sched a {@link org.opennms.netmgt.config.poller.outages.common.BasicSchedule} object. * @param owner a {@link org.opennms.core.utils.Owner} object. * @return a {@link org.opennms.core.utils.OwnedIntervalSequence} object. */ public static OwnedIntervalSequence getIntervalsCovering(final TimeInterval interval, final BasicSchedule sched, final Owner owner) { return getIntervalsCovering(interval.getStart(), interval.getEnd(), sched, owner); }
/** * <p>getIntervals</p> * * @param interval a {@link org.opennms.core.utils.TimeInterval} object. * @param time a {@link org.opennms.netmgt.config.poller.outages.common.Time} object. * @param owner a {@link org.opennms.core.utils.Owner} object. * @return a {@link org.opennms.core.utils.OwnedIntervalSequence} object. */ public static OwnedIntervalSequence getIntervals(final TimeInterval interval, final Time time, final Owner owner) { return getIntervals(interval.getStart(), interval.getEnd(), time, owner); }
/** * <p>separateIntervals</p> * * @param origInterval a {@link org.opennms.core.utils.TimeInterval} object. * @param removedInterval a {@link org.opennms.core.utils.TimeInterval} object. * @return a {@link java.util.Collection} object. */ protected Collection<T> separateIntervals(T origInterval, T removedInterval) { List<T> newIntervals = new ArrayList<T>(2); if (removedInterval.getEnd().before(origInterval.getEnd())) { newIntervals.add(createInterval(removedInterval.getEnd(), origInterval.getEnd())); } // add back any part of the original interval the preceeded the remove interval if (origInterval.getStart().before(removedInterval.getStart())) { newIntervals.add(createInterval(origInterval.getStart(), removedInterval.getStart())); } return newIntervals; }