changes#
Edits to a live project. SchedulingChanges is the change set that Project#apply commits, Project#preview tries on a copy of the baseline, and Project#evaluate scores as a candidate. Project#suggestAssignments returns one in its proposal. A change set holds one Changes<TAdd, TUpdate> per record kind (tasks, links, resources, assignments), each with add, update and remove lists.
Adds take full records. Tasks, resources and assignments use the input classes from data, and links use LinkAdd, whose id is optional. Updates are partial: every field of TaskUpdate, LinkUpdate, ResourceUpdate and AssignmentUpdate except id is a Patch<T>, which keeps, clears or sets the current value. Each update class takes the target Id in its constructor, starts with every patch field at Patch.missing(), and has a fluent withX(value) setter per field.
Project#apply returns an ApplyReport with the applied and rejected operations, the side effects (cascading removals and generated ids), the resync flag and the revision. Each rejection is a RejectedOperation. Every type here is in the org.dhtmlx.plen package.
- ApplyReportThe result of Project#apply, with the applied and rejected operations, their side effects, the resync flag and the new revision
- AssignmentUpdateAn edit to an existing assignment; only the fields you set change
- Changes<TAdd, TUpdate>The add, update and remove lists for one record kind in a SchedulingChanges set
- LinkAddA new link in a change set, with an optional id that apply generates when it's null
- LinkUpdateA partial edit of one existing link in a live project
- Patch<T>A three-state field of an update record that keeps, clears or sets a value
- RejectedOperationOne operation of a change set that wasn't applied, with its path and the reason
- ResourceUpdateEdit to an existing resource - only the fields you set change
- SchedulingChangesA set of edits to tasks, links, resources and assignments, passed to apply, preview and evaluate
- TaskUpdateEdit to an existing task - only the fields you set change