Object <- FixedList <- ObjectList <- DenseObjectList <- InstallationQueue |
|
|
BeginQueuedInstalls EndQueuedInstalls InstallInto MakeValid PerformPendingInstalls |
Class InstallationQueue defines no new attributes.
Fields
| Field | Type | |
|---|---|---|
| InstallationQueue: | numInstalled: | Unsigned |
| queuedInstalls: | Boolean |
instance InstallationQueue tag; numInstalled: 0; queuedInstalls: false; end instance;
Define Class InstallationQueue; inherits from DenseObjectList; field numInstalled : Unsigned; field queuedInstalls: Boolean; operation BeginQueuedInstalls(); // begin queueing installs instead of performing them immediately. // calls to BeginQueuedInstalls cannot be nested. operation EndQueuedInstalls(); // stop queueing installs, and perform all pending installs. operation PerformPendingInstalls(); // calls InstallSelf() on all items in queue. overrides MakeValid; // makes sure that numInstalled remains consistent if objects in // our queue have become overrides InstallInto; // adds installee to queue, and calls PerformPendingInstalls() if // we are not currently queueing installs. flags and parameters // are ignored. end class;