Example usage for org.joda.time DateTime plus

List of usage examples for org.joda.time DateTime plus

Introduction

In this page you can find the example usage for org.joda.time DateTime plus.

Prototype

public DateTime plus(ReadablePeriod period) 

Source Link

Document

Returns a copy of this datetime with the specified period added.

Usage

From source file:ua.com.fielden.platform.example.swing.booking.BookingChartPanelExample.java

private static IBookingChartMouseEventListener<VehicleEntity, BookingEntity> createMouseListener(
        final JLabel taskBar, final Date now) {
    return new IBookingChartMouseEventListener<VehicleEntity, BookingEntity>() {

        private final Duration defaultDuration = Duration.standardDays(1);

        @Override//  ww  w  .ja v  a  2s  . c  o  m
        public void mouseClick(final BookingMouseEvent<VehicleEntity, BookingEntity> event) {
            if (event.getTask() == null && event.getSourceEvent().getClickCount() == 2
                    && event.getX().after(now)) {
                addNewSubTask(event);
            } else if (event.getTask() != null) {
                taskBar.setText(
                        event.getTask().getEntity() + ", " + event.getTask().getSubEntity().getBookingStart());
            }
        }

        private void addNewSubTask(final BookingMouseEvent<VehicleEntity, BookingEntity> event) {
            final BookingTask<VehicleEntity, BookingEntity> firstBefore = event.getSource()
                    .getFirstTaskBefore(bookingSeries, event.getX(), event.getY());
            final BookingTask<VehicleEntity, BookingEntity> firstAfter = event.getSource()
                    .getFirstTaskAfter(bookingSeries, event.getX(), event.getY());
            final Date firstBeforeDate = firstBefore != null && firstBefore.getTo() != null
                    && firstBefore.getTo().after(now) ? firstBefore.getTo() : now;
            final Date firstAfterDate = firstAfter != null && firstAfter.getFrom() != null
                    ? firstAfter.getFrom()
                    : new DateTime(event.getX().getTime()).plus(defaultDuration).toDate();
            DateTime start = null;
            DateTime end = null;
            if (firstAfterDate.getTime() - firstBeforeDate.getTime() >= defaultDuration.getMillis()) {
                start = new DateTime(event.getX().getTime() - defaultDuration.getMillis() / 2);
                if (start.isBefore(firstBeforeDate.getTime())) {
                    start = new DateTime(firstBeforeDate.getTime());
                }
                end = start.plus(defaultDuration);
                if (end.isAfter(firstAfterDate.getTime())) {
                    end = new DateTime(firstAfterDate.getTime());
                    start = end.minus(defaultDuration);
                }
            } else {
                start = new DateTime(firstBeforeDate.getTime());
                end = new DateTime(firstAfterDate.getTime());
            }
            final BookingEntity booking = new BookingEntity().//
            setVehicleEntity(event.getSource().getEntity(event.getY())).//
            setBookingStart(start.toDate()).setBookingFinish(end.toDate());
            event.getSource().addTask(bookingSeries, event.getY(), booking);
        }

        @Override
        public void mouseMove(final BookingMouseEvent<VehicleEntity, BookingEntity> event) {
            // TODO Auto-generated method stub

        }

    };
}

From source file:xcom_server.PacketVerificationService.java

private void StartLostPacketThread(final String srcIP) {
    new Thread(new Runnable() {

        @Override// ww  w.j  a  va2  s . c om
        public void run() {
            while (true) {
                try {
                    Thread.sleep(3000);
                } catch (InterruptedException ex) {
                    Logger.getLogger(PacketVerificationService.class.getName()).log(Level.SEVERE, null, ex);
                }
                if (!synchronizedPackets.get(srcIP))
                    continue;
                DateTime nowDT = DateTime.now();
                CopyOnWriteArrayList<Packet> temp = inbound_packets.get(srcIP);
                if (temp == null)
                    continue;
                Object[] objs = (Object[]) temp.toArray();
                for (Object obj : objs)//inbound_packets.get(srcIP).toArray(new Packet[inbound_packets.get(srcIP).size()]))
                {
                    Packet p = (Packet) obj;
                    DateTime dt = DateTime.parse(p.timespan);
                    if (dt.plus(40000).isBefore(nowDT)) {
                        System.out.println("Lost Packet Inbound: " + p.ipPacket.desIP + " " + p.hash);
                        lost_packets_inbound.add(p);
                        AddRowSafeThread(p, true);
                        inbound_packets.get(srcIP).remove(p);
                    }
                }
            }
        }
    }).start();
}