code: public void copy(ProjectCalendar cal)
     {
        setName(cal.getName());
        setParent(cal.getParent());
        System.arraycopy(cal.getDays(), 0, getDays(), 0, getDays().length);
        for (ProjectCalendarException ex : cal.m_exceptions)
        {
           addCalendarException(ex.getFromDate(), ex.getToDate());
           for (DateRange range : ex)
           {
              ex.addRange(new DateRange(range.getStart(), range.getEnd()));
           }
        }
  
        for (ProjectCalendarHours hours : getHours())
        {
           if (hours != null)
           {
              ProjectCalendarHours copyHours = cal.addCalendarHours(hours.getDay());
              for (DateRange range : hours)
              {
                 copyHours.addRange(new DateRange(range.getStart(), range.getEnd()));
              }
           }
        }
     }
docs: Copy the settings from another calendar to this calendar.
  
  @param cal calendar data source