======================================================================== Type: Resource Method: Resource doReadProperties(PropertyNameList w) Method: void doWriteProperties() Method: Resource doReadContent(PropertyNameList w, OutputStream content) Method: void doWriteContent(InputStream content, String contentIdentifier) Method: void doDelete() Postconditions: (resource-deleted) Method: void doCopy(Resource destination, boolean overwrite) Postconditions: (must-not-copy-property) (copy-creates-new-resource) Method: void doMove(String destinationLocation, Boolean overwrite) Postconditions: (preserve-properties) (workspace-member-moved) ======================================================================== Type: ControllableResource Method: void doCreateResource() Preconditions: (resource-must-be-null) (location-ok) Postconditions: (initialize-resource) Method: doWriteContent() Preconditions: (cannot-modify-controlled-content) Method: doDelete() Preconditions: (cannot-modify-checked-in-parent) Method: doMove() Preconditions: (cannot-modify-checked-in-parent) (cannot-modify-destination-checked-in-parent) Postconditions: (update-checked-out-reference) Method: void doControl() Preconditions: (cannot-modify-checked-in-parent) Postconditions: (initialize-checked-out) (put-under-version-control) (must-not-change-existing-checked-in-out) (new-version-history) Method: void doCreateControlledResource(Version v) Preconditions: (cannot-modify-checked-in-parent) (cannot-add-to-existing-history) (one-version-controlled-resource-per-history-per-workspace) Postconditions: (new-version-controlled-resource) (new-version-controlled-folder) Method: void doCheckout() Preconditions: (must-be-checked-in) (must-not-be-stale) Postconditions: (is-checked-out) Method: void doCheckout(boolean forkOK, List activityList, boolean newActivity, boolean unreserved) Preconditions: (checkout-of-version-with-descendant-is-forbidden) (checkout-of-version-with-descendant-is-discouraged) (checkout-of-checked-out-version-is-forbidden) (checkout-of-checked-out-version-is-discouraged) (must-not-update-baseline-folder) (one-checkout-per-activity-per-history) (linear-activity) Postconditions: (has-checked-out-version) (initialize-predecessor-list) (initialize-activity-list) (initialize-unreserved) Method: void doCheckin() Preconditions: (must-be-checked-out) (must-not-be-stale) Postconditions: (update-server-content) Method: void doCheckin(boolean keepCheckedOut, boolean forkOK) Preconditions: (version-history-is-tree) The versions identified by the PredecessorList of the checked-out resource MUST be descendants of the root version of the version history for the CheckedOut version. (checkin-fork-forbidden) (checkin-fork-discouraged) (merge-must-be-complete) (linear-activity) Postconditions: (create-version) (initialize-version-content-and-properties) (checked-in) (keep-checked-out) (add-to-history) (initialize-activity-list) (initialize-version-controlled-bindings) Method: void doRefresh(Boolean IgnoreDirty) Preconditions: (must-not-be-dirty) Postconditions: (content-synchronized) Method: void doUncheckout() Preconditions: (must-be-checked-out-version-controlled-resource) Postconditions: (cancel-checked-out) (restore-content) Method: Iterator doUpdate(Version v, PropertyNameList wantedPropertyList) Preconditions: (version-in-version-history) (must-not-update-baseline-folder) Postconditions: (update-content-and-properties) (report-properties) (update-version-controlled-folder-members) Method: ControllableResource doMerge( Version source, boolean noAutoMerge, boolean noCheckout, boolean forkOK, boolean unreserved, List activityList, boolean newActivity, PropertyNameList wantedPropertyList) Preconditions: (checkout-not-allowed) (**all-checkout-preconditions**) (must-not-update-baseline-folder) Postconditions: (ancestor-version) (descendant-version) (checked-out-for-merge) (update-merge-list) (report-properties) (update-version-controlled-folder-members) Method: MergePreviewReport doMergePreviewReport(Version source) ======================================================================== Type: Folder Method: Iterator doReadMemberList(PropertyNameList wantedPropertyList, boolean deep) Postconditions: (read-bound-members) (read-all-members) Method: void doBaselineControl() Preconditions: (controlled-configuration-must-not-exist) Postconditions: (create-controlled-configuration) (reference-controlled-configuration) (create-new-baseline) Method: void doCreateBaselineControlledFolder(Baseline baseline) Preconditions: (cannot-add-to-existing-history) (one-baseline-controlled-folder-per-history-per-workspace) Postconditions: (create-controlled-configuration) (select-existing-baseline) ======================================================================== Type: Workspace Method: doCreateResource() Preconditions: (workspace-location-allowed) (workspace-server-location-specified) Method: doMove() Postconditions: (workspace-moved) (update-workspace-reference) Method: Iterator doMerge( List sourceList, boolean noAutoMerge, boolean noCheckout, boolean checkinActivity, boolean forkOK, boolean unreserved, List activityList, boolean newActivity, PropertyNameList wantedPropertyList) Preconditions: (cannot-merge-checked-out-resource) Postconditions: (merge-baseline) (merge-sub-baselines) (set-baseline-controlled-folder-members) Method: Iterator doMergePreviewReport(List sourceList) Method: Iterator doLocateByHistoryReport(List versionHistoryList, PropertyNameList wantedPropertyList) ======================================================================== Type: VersionHistory Method: doCopy() Preconditions: (cannot-copy-history) Method: doMove() Preconditions: (cannot-rename-history) Method: doDelete() Postconditions: (delete-version-set) ======================================================================== Type: Version Method: doWriteContent() Preconditions: (cannot-modify-version) Method: doCopy() Postconditions: (copy-creates-new-resource) Method: doMove() Preconditions: (cannot-rename-version) Method: doDelete() Preconditions: (no-version-delete) Postconditions: (update-predecessor-list) (version-history-has-root) (delete-version-reference) Method: void doAddLabel(String label) Preconditions: (add-must-be-new-label) Postconditions: (add-label) Method: void doSetLabel(String label) Postconditions: (set-label) Method: void doRemoveLabel(String label) Preconditions: (label-must-exist) Postconditions: (remove-label) ======================================================================== Type: Folder Version Method: doCopy() Preconditions: (cannot-copy-folder-version) ======================================================================== Type: Baseline Method: Iterator doCompareBaselineReport(Baseline baseline) Preconditions: (baselines-from-same-history) ======================================================================== Type: Configuration Method: doCheckin() Preconditions: (no-checked-out-baseline-controlled-folder-members) (one-version-per-history-per-baseline) Postconditions: (create-baseline-folder) Method: doUpdate() Preconditions: (baseline-controlled-members-must-be-checked-in) Postconditions: (set-baseline-controlled-folder-members) (update-sub-baselines) ======================================================================== Type: Activity Method: doCreateResource() Preconditions: (activity-location-allowed) Method: doMove() Postconditions: (update-activity-reference) Method: doDelete() Postconditions: (delete-activity-reference) Method: doCheckin() Preconditions: (atomic-activity-checkin) Postconditions: (activity-checkin)