Description Usage Arguments Format Details Author(s) See Also
Document Family of Classes Overview:
1 |
name |
Character string indicating the name of the document or file. Required for all objects. |
desc |
Character string containing the description of the document. |
parent |
An object of the Lab or DocumentCollection class that represents the parent object. |
visitor |
An object from one of the visitor classes. |
stateId |
Character string that uniquely identifies an object and its state at a specific point in time. |
An object of class R6ClassGenerator
of length 24.
The Document family of classes is an implementation of the composite pattern documented in the book "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides (hence Gang of Four). This pattern allows composite and individual objects to be treated uniformly.
The following sections include:
Class Participants: Classes the comprise this composite pattern.
Class Collaborators: Classes which interact with the Document0 class.
Class Methods: Methods included in the interface.
Document Family of Classes Participants: The participants of the Document0 class are:
Document0: This component class specifies an abstract interface for all leaf and composite document classes.
DocumentCollection: The composite class that maintains the hierarchical structure of document collections (composites) and individual documents (leafs).
Document: An "abstract leaf" class defines the interface for DocumentText, DocumentRdata, DocumentCsv, and DocumentXlsx sub-classes.
DocumentText: This "concrete leaf" class for text documents.
DocumentCsv: This "concrete leaf" class for csv documents.
DocumentRdata: This "concrete leaf" class for RData documents.
DocumentXlsx: This "concrete leaf" class for excel documents.
DocumentCollection Collaborators: The collaborators of the Document family are:
Lab: This class maintains a one-to-many "has a" association relationship with the Document Class Family.
State: Class responsible for saving current and restoring prior states of objects.
Historian: Class responsible for maintaining the history of events on objects.
Reader: Class responsible for initiating the document read operation.
Writer: Class responsible for initiating the document write operation.
Validator: Class responsible for validating method parameters.
DocumentCollection Methods: There are six types of methods within the DocumentCollection class and they are:
Core Methods: Core methods shared by both Document and DocumentCollection objects.
Getter/Setter Methods: Active binding methods for getting and setting selected private members.
Composite Methods: Methods implemented by the DocumentCollection class to maintain the document heirarchy.
State Methods: Methods for saving current and restoring prior object states.
Visitor Methods: Methods for implementation of and messaging with objects of the visitor classes.
DocumentCollection Core Methods:
new(name, desc)
Method for instantiating a document collection.
getName()
Method returns the name of the DocumentCollection object.
exposeObject(requester)
Method that returns the elements of the current DocumentCollection object, if invoked by an authorized method.
restore(requester, prior)
Method for restoring a document collection to a prior state, as per the object parameter.
DocumentCollection Field Getter/Setter Active Binding Methods:
desc()
Method used to get / set the description variable.
Implemented as an active binding and so the field may be updated
by assignment. This method is inherited from the Document0 class.
DocumentCollection Composite Methods:
addChild(document)
Method adds a Document or DocumentCollection object
as a child object.
getChildren()
Method retrieves the child documents of the object.
removeChild(document)
Method removes a Document or DocumentCollection
object from its list of child documents.
parent(value)
Getter/setter method for the parent field, implemented as an active binding on the private member.
#' DocumentCollection State Methods:
saveState()
Method for saving current state of an object.
restoreState()
Methods for restoring an object to a prior state.
DocumentCollection Visitor Methods:
accept(visitor)
Method for accepting the objects of a visitor class.
John James, jjames@datasciencesalon.org
Other Document classes: Document0
,
DocumentCsv
, DocumentRdata
,
DocumentText
, DocumentXlsx
,
Document
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.