Package com.projity.pm.calendar

Examples of com.projity.pm.calendar.WorkCalendar


  }

  public void extendBefore(long start, long end, long extendDuration) {
    if (start < getStop())
      return;
    WorkCalendar cal = getEffectiveWorkCalendar();

    boolean firstBar = (cal.compare(getStart(),start,false) == 0);
    long startOffset = cal.compare(start,getStart(),false);
    long endOffset = cal.compare(end,getStart(),false);
    Interval range = getRangeThatIntervalCanBeMoved(start,startOffset,startOffset);


    if (extendDuration > 0)
      extendDuration = Math.min(extendDuration,endOffset - startOffset);
View Full Code Here


    projectHeader.setDefaultStartTime(calendarOption.getDefaultStartTime().getTime());
    projectHeader.setDefaultEndTime(calendarOption.getDefaultEndTime().getTime());
  }

  public static void toMPXProject(Project project,ProjectHeader projectHeader) {
    WorkCalendar baseCalendar=project.getBaseCalendar();
    projectHeader.setCalendarName(baseCalendar.getName()); // use unique id for name - this is a hack
    projectHeader.setName(project.getName());
    projectHeader.setProjectTitle(project.getName()); //TODO separate title and name
    projectHeader.setComments(project.getNotes());
    projectHeader.setManager(project.getManager());
    projectHeader.setComments(removeInvalidChars(project.getNotes()));
View Full Code Here

        ProjectCalendarException exception=mpx.addCalendarException(start,DateTime.fromGmt(cal.getTime())); //claur
       
        toMpxExceptionDay(workDays[i],exception);
        //exception.setWorking(workDays[i].isWorking()); //claur exception is working once it has at least one range
      }
    WorkCalendar baseCalendar=workCalendar.getBaseCalendar();
    if (baseCalendar!=null){
      mpx.setParent(ImportedCalendarService.getInstance().findExportedCalendar(baseCalendar)); //claur
    }

View Full Code Here

    if (projityTask.getStop() != 0)
      mpxTask.setStop(DateTime.fromGmt(new Date(projityTask.getStop())));
//    if (projityTask.getResume() != 0)
//      mpxTask.setResume(DateTime.fromGmt(new Date(projityTask.getResume())));

    WorkCalendar cal = projityTask.getWorkCalendar();

    if (cal != null)
      mpxTask.setCalendar(ImportedCalendarService.getInstance().findExportedCalendar(cal));

//  Not needed - it will be set when hierarchy is done    mpxTask.setOutlineLevel(new Integer(projityTask.getOutlineLevel()));
View Full Code Here

  /* (non-Javadoc)
   * @see com.projity.pm.resource.ResourceSpecificFields#setBaseCalendar(com.projity.pm.calendar.WorkingCalendar)
   */
  public void setBaseCalendar(WorkCalendar baseCalendar) throws CircularDependencyException {
    WorkCalendar old = getWorkCalendar();
    if (old == null)
      return;

    CalendarService.getInstance().reassignCalendar(this,old,baseCalendar);

View Full Code Here

//    CalendarService.getInstance().add((WorkingCalendar) calendar);


      //calendar
      //TODO this code only exists to guarantee that older projects wont crash when read 25/8/05
      WorkCalendar calendar=project.getWorkCalendar();
      if (calendar==null)
        calendar = CalendarService.getInstance().getDefaultInstance();

      project.setWorkCalendar(calendar); // needed for objects using
      project.setExtraFields(projectData.getExtraFields());
View Full Code Here

        if (cal==null)
            enterpriseResource.setWorkCalendar(WorkingCalendar.getInstanceBasedOn(resourcePool.getDefaultCalendar()));
        else {
          try {
//        cal.setBaseCalendar(CalendarService.findBaseCalendar(cal.getBaseCalendar().getName()));// avoids multiple instances
            WorkCalendar baseCal=CalendarService.findBaseCalendar(cal.getBaseCalendar().getName());
        //TODO verification in case the name isn't found, import problem
            if (baseCal!=null) cal.setBaseCalendar(baseCal);// avoids multiple instances

          } catch (CircularDependencyException e) {
        // TODO Auto-generated catch block
View Full Code Here

  }
  /* (non-Javadoc)
   * @see com.projity.pm.scheduling.Schedule#moveInterval(java.lang.Object, long, long, com.projity.pm.scheduling.ScheduleInterval)
   */
  public void moveInterval(Object eventSource, long start, long end, ScheduleInterval oldInterval, boolean isChild) {
    WorkCalendar cal = getEffectiveWorkCalendar();
    start = cal.adjustInsideCalendar(start,false);
    boolean shifting = cal.compare(start,oldInterval.getStart(),false) != 0;
    long assignmentStart = getEarliestAssignmentStart();
    long amountFromStart = cal.compare(oldInterval.getStart(),assignmentStart,false); // possible that they are not the same but there is no working time between them
    if (shifting && amountFromStart == 0L) { // see if first bar shifted -The first bar is drawn from the first assignment and not from the task start.
      // To figure out the new task start, see how much the shift of this bar is, then apply that difference to the task start
      long shift = cal.compare(start,assignmentStart,false);
      long newTaskStart = cal.add(getStart(),shift,false);
      setStart(newTaskStart);
    } else {
      long amount =cal.compare(end,oldInterval.getEnd(),false);
      if (amount == 0L) // skip if nothing moved
        return;

      Iterator i = getAssignments().iterator();
      Assignment assignment;
View Full Code Here

  private static long calcFreeSlack(Dependency dependency) {
    ScheduleWindow predecessor = (ScheduleWindow) dependency
        .getPredecessor();
    ScheduleWindow successor = (ScheduleWindow) dependency.getSuccessor();
    long t = 0;
    WorkCalendar cal = dependency.getEffectiveWorkCalendar();
    if (dependency.getDependencyType() == DependencyType.FS) {
      t = cal.compare(cal.add(successor.getEarlyStart(),
          -dependency.getLeadValue(), true), predecessor
          .getEarlyFinish(), false);
    } else if (dependency.getDependencyType() == DependencyType.FF) {
      t = cal.compare(cal.add(successor.getEarlyFinish(),
          -dependency.getLeadValue(), true), predecessor
          .getEarlyFinish(), false);
    } else if (dependency.getDependencyType() == DependencyType.SS) {
      t = cal.compare(cal.add(successor.getEarlyStart(),
          -dependency.getLeadValue(), true), predecessor
          .getEarlyStart(), false);
    } else if (dependency.getDependencyType() == DependencyType.SF) {
      t = cal.compare(cal.add(successor.getEarlyFinish(),
          -dependency.getLeadValue(), true), predecessor
          .getEarlyStart(), false);
    }
    return t;
  }
View Full Code Here

TOP

Related Classes of com.projity.pm.calendar.WorkCalendar

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.