⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gpcalendarbase.java

📁 It is all about project scheduling. GanttProject is a tool for creating a project schedule by means
💻 JAVA
字号:
/* * Created on 10.05.2005 */package net.sourceforge.ganttproject.calendar;import java.util.Date;import java.util.List;import net.sourceforge.ganttproject.task.TaskLength;import net.sourceforge.ganttproject.time.TimeUnit;/** * @author bard */abstract class GPCalendarBase {    public Date shiftDate(Date input, TaskLength shift) {        List activities = getActivities(input, shift);        if (activities.isEmpty()) {            throw new RuntimeException(                    "FIXME: Failed to compute calendar activities in time period="                            + shift + " starting from " + input);        }        Date result;        if (shift.getValue() >= 0) {            GPCalendarActivity lastActivity = (GPCalendarActivity) activities                    .get(activities.size() - 1);            result = lastActivity.getEnd();        } else {            GPCalendarActivity firstActivity = (GPCalendarActivity) activities                    .get(0);            result = firstActivity.getStart();        }        return result;    }    public List getActivities(Date startDate, TimeUnit timeUnit, long unitCount) {        return unitCount > 0 ? getActivitiesForward(startDate, timeUnit,                unitCount) : getActivitiesBackward(startDate, timeUnit,                -unitCount);    }    protected abstract List getActivitiesBackward(Date startDate,            TimeUnit timeUnit, long l);    protected abstract List getActivitiesForward(Date startDate,            TimeUnit timeUnit, long l);    public List/* <GPCalendarActivity> */getActivities(Date startingFrom,            TaskLength period) {        return getActivities(startingFrom, period.getTimeUnit(), period                .getLength());    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -