/* * SAND development/deployment environment * Copyright (C) 2002-2007 SAND Services Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ package org.sandev.TaskHeap.structs; /** * A Plan represents a collection of a logical chunk of work. The work * may be consist of tasks, other plans, external plans, or some combination * of these. * *
Plans are used to represent milestones, logical task groupings, or * other organizational requirements. They can be created to organize * existing work (bottom up planning), or as placeholders for work yet to * be defined (top down planning). The time estimate for a plan is either * the sum of all contained components (sequential rollup), or the maximum * time value of all contained components (parallel rollup).
* * @sand.structmessage persist transmit * @sand.verbforms update query collection * @sand.summaryfields name timeEstimate resourceID * @sand.printname "Plan" * @sand.help *A Plan represents a collection of a logical chunk of work. The work * may be consist of tasks, other plans, external plans, or some combination * of these.
* *Plans are used to represent milestones, logical task groupings, or * other organizational requirements. They can be created to organize * existing work (bottom up planning), or as placeholders for work yet to * be defined (top down planning). The time estimate for a plan is either * the sum of all contained components (sequential rollup), or the maximum * time value of all contained components (parallel rollup).
*/ public class PlanStruct extends PlanComponentStruct { /** * The components that make up this plan. * * @sand.ref org.sandev.TaskHeap.structs.PlanComponentStruct * @sand.help * The components that make up this plan. */ protected long[] components; /** * Plan components can either represent a sequence of actions, or a * group of actions occurring at the same time. The components of * a sequential plan are added together to form the elapsed time. For * a parallel plan, the maximum time for any component determines the * elapsed time. * * @sand.enumint SEQUENTIAL 0 "sequential - summation rollup" * @sand.enumint PARALLEL 1 "parallel - max time rollup" * * @sand.default SEQUENTIAL * @sand.invalid -1 * @sand.help * Plan components can either represent a sequence of actions, or a * group of actions occurring at the same time. The components of * a sequential plan are added together to form the elapsed time. For * a parallel plan, the maximum time for any component determines the * elapsed time. */ protected int execution; /** * A Plan can be marked as hidden to reduce clutter in the output. * This is useful for reducing the size of the main heap outline by * removing completed work from view. * * @sand.enumint INTERNAL 0 "internal" * @sand.enumint HIDDEN 2 "hidden" * * @sand.default INTERNAL * @sand.invalid -1 * @sand.help * A Plan can be marked as hidden to reduce clutter in the output. * This is useful for reducing the size of the main heap outline by * removing completed work from view. */ protected int visibility; }