Example #1
0
 @Programmatic
 public void copyTerms(final LocalDate startDate, final LeaseItem newItem) {
   LeaseTerm lastTerm = null;
   for (LeaseTerm term : getTerms()) {
     if (term.getInterval().contains(startDate)) {
       LeaseTerm newTerm;
       if (lastTerm == null) {
         newTerm = newItem.newTerm(term.getStartDate(), null);
       } else {
         newTerm = lastTerm.createNext(term.getStartDate(), term.getEndDate());
       }
       term.copyValuesTo(newTerm);
       lastTerm = newTerm;
     }
   }
 }