Persistate API documentation
Member Class
NamespacesPersistateMember

[This is preliminary documentation and is subject to change.]

This class represents a member of an ObjectClass.
Declaration Syntax
C#
public class Member : Persistent, IMetaReferable, 
	IOrderable
Members
All MembersMethodsPropertiesFieldsEvents



IconMemberDescription
ActualQuantity
Indicates whether this member is a collection, and gives the collection type - either several, many or selected.

Adopt(Persistent, IReference%, Int32)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
Adopted
Occurs when this object is adopted as a contained (not associated) child object of another object.
(Inherited from Persistent.)
AnnotationSeparator
This string is used to separate the text in NominativeText and DiscriminativeText properties
(Inherited from Persistent.)
Associate(Persistent, IReference%, Int32)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
Associated
Occurs when this object is taken as an associated child object of another object.
(Inherited from Persistent.)
AssociatorCount()()()()
Gets the number of associations made to this object.
(Inherited from Persistent.)
BaseClassReference(Persistent, Reference)
Here only to allow consistent use of new keyword in generated classes. Always throws an exception.
(Inherited from Persistent.)
BuildNames(List<(Of <<'(String>)>>))
Builds a list of names for use in creating a MetaReference to this object.

CallTree(CallTreeData, Int32)
In derived classes, calls a particular delegate for every node in a persistent tree.
(Inherited from Persistent.)
CallTree(CallTreeData)
Starts a recursive descent of the persistent containment tree from this object, calling a delegate for every node in the tree below this object.
(Inherited from Persistent.)
Class
Gets the ObjectClass object associated with this object.
(Overrides Persistent.Class.)
ClassFlags
Gets the class flags for the Member class.
(Overrides Persistent.ClassFlags.)
Clone()()()()
Creates a copy of this object.
(Inherited from Persistent.)
Collection()()()()
Creates a Member collection to contain provisional objects.

Collection(Persistent, FlagSet, Int32, Boolean)
Creates a Member collection to contain persistent objects.

ContainingEnvironment
Gets the Environment that this object is contained within.
(Inherited from Persistent.)
CopyFrom(Persistent)
Copies values of fields from another Persistent of the same type.
(Inherited from Persistent.)
CopyTransientFrom(Persistent)
Allows derived classes to copy transient data when CopyFrom is called.
(Inherited from Persistent.)
Database
Gets the Database object for the database in which this object is or is to be stored.
(Inherited from Persistent.)
DeAssociateFrom(Persistent, Int32)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
Deleted
This event occurs when an object is deleted.
(Inherited from Persistent.)
DeleteVolatile(IReference)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
DePersist(Object)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
DePersistFrom(IPersistateList, Object)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
DeReference(Persistent)
Returns this object.
(Inherited from Persistent.)
DeReferenceSection(String)
Dereferences a section in a MetaReference.

DiscriminativeText
Gets a string containing values of discriminative properties.
(Overrides Persistent.DiscriminativeText.)
Disowned
Occurs when this object is disowned from being a contained (not associated) child object of another object.
(Inherited from Persistent.)
Dissociated
Occurs when this object is removed from being an associated child object of another object.
(Inherited from Persistent.)
Equals(Persistent)
Determines if this Persistent is equal to another.
(Inherited from Persistent.)
Equals(Object)
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
FieldName
The name used for the field backing the property for the Member.

FillFromDatabase(Database, IDataReader)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
FillFromMessage(Message)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
Finalize()()()()
Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
(Inherited from Object.)
FlagSet
A value containing the flags applied to this Member.

FriendlyName
The friendly or display name of the Member used in messages for the user.

FriendlyNameKey
Key value for friendly name index.

FullyQualifiedName
Gets a string containing the fully qualified name of this member.

GetAssociators()()()()
Gets a collection of all objects which have associations to this object.
(Inherited from Persistent.)
GetChildren<(Of <<'(T>)>>)(IndexedList<(Of <<'(T>)>>), ObjectClass, FlagSet, Int32, String, array<Object>[]()[][])
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
GetChildren<(Of <<'(T>)>>)(IndexedList<(Of <<'(T>)>>), ObjectClass, String, array<Object>[]()[][])
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
GetDefaultLayout()()()()
Finds the default layout for this object. This will always be of layout type Form.
(Inherited from Persistent.)
GetFieldValue(Int32)
Gets the value of the field backing the member with a particular slot number.
(Overrides Persistent.GetFieldValue(Int32).)
GetHashCode()()()()
Serves as a hash function for a particular type.
(Inherited from Object.)
GetKey(Int32)
Returns property value for given key number.
(Overrides Persistent.GetKey(Int32).)
GetMemberCollectionValueFor(Persistent)
Gets the value of this collection member in a given instance.

GetMemberSingleValueFor(Persistent)
Gets the value of this scalar member in a particular instance.

GetMemberValue(Int32)
Gets the value of the member property with a particular slot number.
(Overrides Persistent.GetMemberValue(Int32).)
GetMemberValueFor(Persistent)
Gets the value of this member in a particular instance.

GetSelected<(Of <<'(T>)>>)(IndexedList<(Of <<'(T>)>>), ObjectClass, array<Object>[]()[][])
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
GetType()()()()
Gets the Type of the current instance.
(Inherited from Object.)
InitialiseMembers(Boolean, Boolean)
In derived classes, initialises members of the Persistent object.
(Inherited from Persistent.)
IsAssociated
Gets a value indicating whether this is an associated member.

IsAttached
Determines whether this object is attached to the persistent tree.
(Inherited from Persistent.)
IsCalculated
Gets a value indicating whether this is a calculated Property member.

IsDataMember
Gets a value indicating whether the class of this member is a data class.

IsDistributedFrom(Persistent)
Determines whether this object is held or is to be held in a different Database than another object.
(Inherited from Persistent.)
IsEmpty
Determines whether this is the Empty object of its class, as returned by the EmptyObject property.
(Inherited from Persistent.)
IsForeign
Gets a value determining whether this object is originally from a Domain other than the local Domain.
(Inherited from Persistent.)
IsInvalid
Gets a value indicating the validity of the current state of this object.
(Inherited from Persistent.)
IsLongData
Gets a value indicating whether this is a data class member with a long text or long binary data type.

IsModified
Gets a value indicating whether this object has been modified
(Inherited from Persistent.)
IsObjectMember
Gets a value indicating whether the class of this member is an object class.

IsPersisted
Gets a value indicating whether the object has been persisted in a Database.
(Inherited from Persistent.)
IsProvisional
Gets a value indicating whether this object is still provisional - has not been persisted in a Database.
(Inherited from Persistent.)
IsReadOnly
Gets a value indicating whether this is a read only member.

ItsObjectClass
Gets the ObjectClass object associated with this class.

locker
This object is used to synchronise fetches of contained objects and collections in generated code.
(Inherited from Persistent.)
MemberClass
Indicates the class of the Member. can be an ObjectClass, DataClass or a ViewClass.

MemberObjectClass
This is the MemberClass property as an ObjectClass, or null if it isn't.

MemberwiseClone()()()()
Creates a shallow copy of the current Object.
(Inherited from Object.)
Modified
Occurs when an object is modified.
(Inherited from Persistent.)
Move(String, Persistent, String)
Moves this object from its current parent object to a new one.
(Inherited from Persistent.)
Move(String, Persistent, String, Int32)
Moves this object from its current parent object to a new one, optionally inserting it at a particular position in a collection.
(Inherited from Persistent.)
Name
The name of the Member used to name the property which implements it.

NameKey
Key value for name index.

NominativeText
Gets a string containing values of nominative properties.
(Overrides Persistent.NominativeText.)
ObjectNumber
This returns the object number part of the object's Reference.
(Inherited from Persistent.)
OnModified()()()()
Raises events signalling that the current object has been modified.
(Inherited from Persistent.)
Order
The order of this Member within the Members collection.

OwningDomain
Gets the Domain to which this object originally belongs.
(Inherited from Persistent.)
Parent
This returns the parent object of this one.
(Inherited from Persistent.)
ParentReference
Gets a Reference to this object's parent object.
(Inherited from Persistent.)
PreviousVersion
Returns the previous version of this object.
(Inherited from Persistent.)
Refresh()()()()
Gets the current value of this object from persistent storage.
(Inherited from Persistent.)
RefreshAndLock()()()()
Gets the current value of this object from persistent storage and sets a database lock.
(Inherited from Persistent.)
RefreshTree()()()()
Refreshes the entire persistent containment tree under this object.
(Inherited from Persistent.)
Remarks
A more detailed comment which will be used in the remarks section of the documentation comments for the property that implements this Member.

RestoreUnmodified(Boolean)
Restores the values of an object's members to those of the previous version.
(Inherited from Persistent.)
SaveToDatabase(Database, Reference, Object)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
SaveToMessage(Message)
Saves this Persistent object to a Message.
(Inherited from Persistent.)
SaveToMessage(Message, Boolean)
Saves this Persistent object to a Message.
(Inherited from Persistent.)
SetFieldValue(Int32, Object)
Sets the value of the field backing the member with a particular slot number.
(Overrides Persistent.SetFieldValue(Int32, Object).)
SetMemberFromMessage(Int32, Int32, Message)
This method is intended for use only from generated code, and you should not use it in open code.
(Inherited from Persistent.)
SetMemberValue(Int32, Object)
Sets the value of the member property with a particularn slot number.
(Overrides Persistent.SetMemberValue(Int32, Object).)
SetMemberValueFor(Persistent, Object)
Sets the value of this member in a particular instance.

SetModified()()()()
Signals to Persistate that an object has been modified.
(Inherited from Persistent.)
SetModifiedSynced()()()()
Signals to Persistate that an object has been modified. The call is protected by a lock on this object.
(Inherited from Persistent.)
SingularName
Same as the FriendlyName but in singular form for collections.

Slot
The slot number assigned to this member.

SlotKey
Key value for slot index.

Source
Used to comment the section for this member in generated source files.

SourceName
The words from the source definition file that make up the name used for the Member.

StoreInDatabase(Database)
Marks this object so that it will be stored in a particular Database.
(Inherited from Persistent.)
Summary
A short comment which will be used in the summary section of the documentation comments for the property that implements this Member.

ThisObj
This property is used in binding combo box selected values. It returns the current object.
(Inherited from Persistent.)
TitleText
Gets a title for this object.
(Inherited from Persistent.)
ToMetaReference()()()()
Creates a MetaReference referring to this object, if possible.
(Inherited from Persistent.)
ToMetaReference(Boolean)
Creates an environment relative MetaReference referring to this object, if possible.
(Inherited from Persistent.)
ToReference()()()()
Obtains a Reference to this Object.
(Inherited from Persistent.)
ToString()()()()
Obtains a string describing the object.
(Inherited from Persistent.)
Traverse(String)
Traverses the persistent object graph from this object using a period delimited navigation path.
(Inherited from Persistent.)
Validate()()()()
Allows inheritors to create a validation method for Persistent classes.
(Inherited from Persistent.)
VersionNumber
Gets the version number of this object.
(Inherited from Persistent.)
WriteTestAssociations(IClassified, Int32, CreateTestDataParameterSet)
Creates test association(s) for an associated member of this object.
(Inherited from Persistent.)
WriteTestData(Persistent, Int32, CreateTestDataParameterSet)
Fills this object with test data.
(Inherited from Persistent.)
Remarks

The Member class, although not abstract, is not itself used. Rather, the derived classes Property, OperationGroup and ViewMember are used to represent the corresponding Persistate metadata.

Of these derived classes, OperationGroup is different to the others in that it does not use much of the information in this class, so some of the following discussion does not apply to it. In fact The current way that Operations are defined within OperationGroups is somewhat clunky, and is planned to be redesigned.

You do not create Members - they are created by Persistate when you process your definition file. A member defines a single item within a class. This can be a scalar (single) item or a collection, which of these is defined by the ActualQuantity property. The class of the defined item is given by the MemberClass property, and other information regarding the member, such as whether it is associated or read-only is encapsulated in the FlagSet property. There are convenience properties that take information from these, such as IsObjectMember, IsDataMember, IsAssociated and IsReadOnly.

Each Member has a Name, which must be unique within its class. This name is set automatically using a "Pascal case" conversion from the name set you given the member the definition file. This latter is also available as the FriendlyName property. The name can be made up of just a given name, just the member class name, or a combination of both. The latter case happens when you prefix a given name to the class name in the definition file, and terminate it with an underscore.

The Slot property of a Member is a unique number given to each member when it is first defined. As you develop the class, creating and deleting members, slot numbers are never reused. Slots are used when serialising and deserialising to and from Messages, allowing a measure of version independency. Each generated class also has a virtual GetMemberValue and SetMemberValue method to get member values based on slot number.

Inheritance Hierarchy

Assembly: Persistate (Module: Persistate) Version: 0.6.1.20 (0.6.1.20)