IRISLIB database
RelationshipObject Class Reference
Inheritance diagram for RelationshipObject:
Collaboration diagram for RelationshipObject:

Public Member Functions

_.Library.Status OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject oref, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew (_.Library.String initvalue)
 New callback - initializes ElementType, Cardinality, InverseProperty and InverseReference from initvalue parameter.
 
_.Library.Status Clear ()
 Clears the contents of the array. More...
 
_.Library.Integer Count ()
 Returns the number of elements contained in the Relationship.
 
_.Library.String FindObject (_.Library.ObjectIdentity oid, _.Library.String key)
 Starting from, but not including, position key, FindObject finds. More...
 
_.Library.String FindObjectId (_.Library.String id, _.Library.String key)
 Starting from, but not including, position key, FindObjectId finds. More...
 
_.Library.String FindOref (_.Library.ObjectHandle oref, _.Library.String key, _.Library.String id)
 Starting from, but not including, location key,. More...
 
_.Library.ObjectHandle GetAt (_.Library.String key)
 Finds and returns the OREF value referring to the object at position. More...
 
_.Library.ObjectIdentity GetExistingObjectAt (_.Library.String key, _.Library.Integer force)
 Finds and returns the OID value referring to the object at position. More...
 
_.Library.ObjectIdentity GetExistingObjectNext (_.Library.String key)
 Finds and returns the OID value referring to the object at the position after key More...
 
_.Library.ObjectHandle GetNext (_.Library.String key)
 Finds and returns the OREF value referring to the object at the position after key More...
 
_.Library.ObjectIdentity GetObjectAt (_.Library.String key, _.Library.Integer force)
 Finds and returns the OID value referring to the object at position. More...
 
_.Library.String GetObjectIdAt (_.Library.String key, _.Library.Integer force)
 Finds and returns the ID value of the element associated with key. More...
 
_.Library.String GetObjectIdNext (_.Library.String key)
 Finds and returns the ID value of the element at the location after key More...
 
_.Library.String GetObjectIdPrevious (_.Library.String key)
 Finds and returns the ID value of the element at the location before key More...
 
_.Library.ObjectIdentity GetObjectNext (_.Library.String key)
 Finds and returns the OID value referring to the object at the position after key More...
 
_.Library.ObjectIdentity GetObjectPrevious (_.Library.String key)
 Finds and returns the OID value referring to the object at the position before key More...
 
_.Library.ObjectHandle GetOrefAt (_.Library.String key, _.Library.Integer force)
 This method is for internal use only. More...
 
_.Library.ObjectHandle GetPrevious (_.Library.String key)
 Finds and returns the OREF value referring to the object at the position before key More...
 
_.Library.Status Insert (_.Library.ObjectHandle oref)
 Inserts an element with OREF value oref at the end of the array. More...
 
_.Library.Status InsertObject (_.Library.ObjectIdentity oid)
 Inserts an element with OID value oid at the end of the array. More...
 
_.Library.Status InsertObjectId (_.Library.String id)
 Inserts an element with ID value id at the end of the array. More...
 
_.Library.Boolean IsDefined (_.Library.String key)
 Returns true (1) if a value is defined at location key,. More...
 
_.Library.Boolean IsEmpty ()
 Returns true if this collection is empty. More...
 
_.Library.Status Load ()
 Retrieves a list of all objects related to InverseReference and inserts them into array. More...
 
_.Library.String Next (_.Library.String key)
 Finds and returns the key value of the element at the location following key in the array. More...
 
_.Library.String Previous (_.Library.String key)
 Finds and returns the key value of the element at the location preceding key in the array. More...
 
_.Library.Status Relate (_.Library.ObjectHandle oref)
 Inserts an element with OREF value oref at the end of the list. More...
 
_.Library.ObjectIdentity Remove (_.Library.ObjectHandle oref)
 Removes the element whose oref is oref. More...
 
_.Library.ObjectIdentity RemoveAt (_.Library.String key)
 Removes the element at position key in the array. More...
 
_.Library.ObjectIdentity RemoveObject (_.Library.ObjectIdentity oid)
 Removes the element whose OID is oid. More...
 
_.Library.Status UnRelate (_.Library.ObjectHandle oref)
 Moves an element with OREF value oref from the array of related objects to the. More...
 
- Public Member Functions inherited from SwizzleObject
_.Library.Status OnJournalObject (_.Library.Integer tranid, _.Library.Integer jrnid, _.Library.String filter)
 This callback method is invoked by the <METHOD>JournalObject</METHOD> method to. More...
 
- Public Member Functions inherited from RegisteredObject
_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 
- Public Member Functions inherited from AbstractIterator
_.Library.RawString GetAt (_.Library.RawString key)
 Definition of iterator methods that all our collections classes use to ensure consistency. More...
 
_.Library.RawString GetNext (_.Library.RawString key)
 Finds and returns the value of the element at the location after key More...
 
_.Library.RawString Next (_.Library.RawString key)
 Finds and returns the key value of the element at the location following key in the iteration. More...
 

Public Attributes

 Cardinality
 The property name of the inverse relationship in the related class. More...
 
 ElementType
 The type (class name) of the elements stored in the collection. More...
 
 InversePersistent
 TRUE if the ElementType class is a persistent class. More...
 
 InverseProperty
 The property name of the inverse relationship in the related class. More...
 
 InverseReference
   More...
 
 NotLoaded
 TRUE if related objects have not been retrieved by calling Load(). More...
 
 Persistent
 TRUE if the container class is a persistent class. More...
 

Static Public Attributes

 CARDINALITY = None
 
 CLASSNAMEINOID = None
 This parameter determines how the collection object stores OID values. More...
 
 ELEMENTTYPE = None
 The type (class name) of the elements stored in the collection.
 
- Static Public Attributes inherited from SerialObject
 ODBCDELIMITER = None
 A serial object is converted to a delimited string containing the. More...
 
 SERIALDELIMITER = None
 This parameter specifies the delimiter character used when created a serialized. More...
 
 VALIDIFNULL = None
 If true, ValidateObject will return $$$OK for instances that are null as determined by IsNull(). More...
 
- Static Public Attributes inherited from SwizzleObject
 DEFAULTCONCURRENCY = None
 DEFAULTCONCURRENCY is the default value for the concurrency formal argument. More...
 
 JOURNALSTREAM = None
 If OBJJOURNAL is true then the value of the JOURNALSTREAM parameter defines whether or not. More...
 
 OBJJOURNAL = None
 if OBJJOURNAL is TRUE then inserts, updates and deletes will be logged in ^OBJ.JournalT More...
 
- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Private Member Functions

_.Library.Status AddToSaveSet (_.Library.Integer force, _.Library.Integer refresh)
 Overrides SerialObject implementation. More...
 
_.Library.Status RollBack ()
 This method is called by <METHOD>TRollBack^occTransaction</METHOD> when a transaction is rolled back. More...
 
_.Library.Status SerializeObject (_.Library.Binary serial, _.Library.Integer partial)
 This method retrieves all of the serial values for referenced objects and places them into the instance variables. More...
 
_.Library.Status UnSwizzleAt (_.Library.String key, _.Library.Integer force)
 Unswizzles (removes from memory) the individual element at position key in the list. More...
 
_.Library.String __FindExistingObjectId (_.Library.String id, _.Library.String key)
 Like FindObjectId but is private, and will not trigger a Load()
 
_.Library.String __FindExistingOref (_.Library.ObjectHandle oref)
 Like FindOref but doesn't support key starting point, is private, and will not trigger a Load()
 

Private Attributes

 __Disconnected
 Private storage area used to hold OREF values for objects no longer related to the container object. More...
 
 __Oref
 Oref is a private property used to hold the More...
 
 __RelationshipData
 Private property used to hold some relationship data. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from SerialObject
_.Library.String LogicalToOdbc (_.Library.String val)
 Converts the serial state of this serial object to a delimited string. More...
 
_.Library.String OdbcToLogical (_.Library.String val)
 Converts the value of an incoming delimited string to a serialized state. More...
 

Detailed Description

For information on this class, see Defining and Using Relationships.

Registered relationship class for relationship cardinalities many and children.

Instances of this class are used by n-cardinality relationships to manage objects currently related to the container object and also to manage the objects whose relationship with the container object has been removed. Related objects are loaded into this object using a query-like interface that is implemented by the inverse relationship. The order in which related objects are loaded is neither guaranteed or maintained as objects are related or unrelated.

This class is used internally by InterSystems IRIS. You should not make direct use of it within your applications. There is no guarantee made about either the behavior or future operation of this class.

Member Function Documentation

◆ AddToSaveSet()

_.Library.Status AddToSaveSet ( _.Library.Integer  force,
_.Library.Integer  refresh 
)
private

Overrides SerialObject implementation.

Scans objects for modifications in the related list (Element)

and the terminated relationship list (DeleteOref). Modified/Scheduled to delete objects are added to the save graph.

Reimplemented from RegisteredObject.

◆ OnClose()

_.Library.Status OnClose ( )

This callback method is invoked by the <METHOD>Close</METHOD> method to.

provide notification that the current object is being closed.

The return value of this method is ignored.

Reimplemented from RegisteredObject.

◆ OnConstructClone()

_.Library.Status OnConstructClone ( _.Library.RegisteredObject  object,
_.Library.Boolean  deep,
_.Library.String  cloned 
)

This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to.

provide notification that a clone of an object is being created. It passes in the oref of the object that was cloned in object.

If this method returns an error then the object will not be created.

Reimplemented from RegisteredObject.

◆ RollBack()

_.Library.Status RollBack ( )
private

This method is called by <METHOD>TRollBack^occTransaction</METHOD> when a transaction is rolled back.

<p>Returns a <CLASS>%Status</CLASS> value indicating success or failure.

◆ SerializeObject()

_.Library.Status SerializeObject ( _.Library.Binary  serial,
_.Library.Integer  partial 
)
private

This method retrieves all of the serial values for referenced objects and places them into the instance variables.

and then validates, normalizes, and serializes the object (with a save of the persistent image if persistent).

Reimplemented from RegisteredObject.

◆ UnSwizzleAt()

_.Library.Status UnSwizzleAt ( _.Library.String  key,
_.Library.Integer  force 
)
private

Unswizzles (removes from memory) the individual element at position key in the list.

Returns a <CLASS>Status</CLASS> value indicating success or failure.

◆ Clear()

_.Library.Status Clear ( )

Clears the contents of the array.

Both the OID and OREF values are cleared.

Returns a <CLASS>Status</CLASS> value indicating success or failure.

◆ FindObject()

Starting from, but not including, position key, FindObject finds.

the next element in the list whose ID value equals the id from oid ($$$oidPrimary is the id). If key is a null string, FindObject starts at the beginning of the list.

FindObject returns the position of the found element or null string ("") if no element was found.

◆ FindObjectId()

_.Library.String FindObjectId ( _.Library.String  id,
_.Library.String  key 
)

Starting from, but not including, position key, FindObjectId finds.

the next element in the list whose ID value equals id. If key is a null string, FindObjectId starts at the beginning of the list.

FindObjectId returns the position of the found element or null string ("") if no element was found.

◆ FindOref()

Starting from, but not including, location key,.

finds the next element in the array whose Oref value equals oref.

If key is a null string (""), the search starts at the beginning of the array.

FindOref returns the key associated with the found element or null string ("") if no element is found.

Unswizzled references are compared to oref.Oid() and if equal, swizzling will occur.

◆ GetAt()

Finds and returns the OREF value referring to the object at position.

key in the list.

GetAt returns the value of the element at location key or null string ("") if no element is found.

◆ GetExistingObjectAt()

_.Library.ObjectIdentity GetExistingObjectAt ( _.Library.String  key,
_.Library.Integer  force 
)

Finds and returns the OID value referring to the object at position.

key in the list.

Returns the value of the element at location key or the null OID if no element is found.

◆ GetExistingObjectNext()

_.Library.ObjectIdentity GetExistingObjectNext ( _.Library.String  key)

Finds and returns the OID value referring to the object at the position after key

in the list. If key is a null string (""), it returns the OID value of the first element in the list.

The value of key, which is passed by reference, is updated to the position value of the returned element or the null OID if key is at the end of the list.

◆ GetNext()

Finds and returns the OREF value referring to the object at the position after key

in the list. If key is a null string (""), it returns the OREF value of the first element in the list.

The value of key, which is passed by reference, is updated to the position value of the returned element or null string ("") if key is at the end of the list.

◆ GetObjectAt()

Finds and returns the OID value referring to the object at position.

key in the list.

Returns the value of the element at location key or the null OID if no element is found.

◆ GetObjectIdAt()

_.Library.String GetObjectIdAt ( _.Library.String  key,
_.Library.Integer  force 
)

Finds and returns the ID value of the element associated with key.

GetObjectIdAt returns the ID value of the element associated with key or null string ("") if no element is found.

◆ GetObjectIdNext()

_.Library.String GetObjectIdNext ( _.Library.String  key)

Finds and returns the ID value of the element at the location after key

in the array. If key is a null string (""), it returns the ID value of the first element in the array.

The value of key, which is passed by reference, is updated to the key value of the returned element or null string ("") if key is at the end of the array.

◆ GetObjectIdPrevious()

_.Library.String GetObjectIdPrevious ( _.Library.String  key)

Finds and returns the ID value of the element at the location before key

in the array. If key is a null string (""), it returns the ID value of the last element in the array.

The value of key, which is passed by reference, is updated to the key value of the returned element or null string ("") if key is at the beginning of the array.

◆ GetObjectNext()

Finds and returns the OID value referring to the object at the position after key

in the list. If key is a null string (""), it returns the OID value of the first element in the list.

The value of key, which is passed by reference, is updated to the position value of the returned element or the null OID if key is at the end of the list.

◆ GetObjectPrevious()

_.Library.ObjectIdentity GetObjectPrevious ( _.Library.String  key)

Finds and returns the OID value referring to the object at the position before key

in the list. If key is a null string (""), it returns the OID value of the last element in the list.

The value of key, which is passed by reference, is updated to the position value of the returned element or the null OID if key is at the beginning of the list.

◆ GetOrefAt()

This method is for internal use only.

You should not make direct

use of it within your applications. There is no guarantee made about either the behavior or future operation of this method.

Finds and returns the OREF at position key in the list without automatically swizzling the object. Returns $$$NULLOREF if no element is found or if the referenced object hasn't been swizzled.

◆ GetPrevious()

Finds and returns the OREF value referring to the object at the position before key

in the list. If key is a null string (""), it returns the OREF value of the last element in the list.

The value of key, which is passed by reference, is updated to the position value of the returned element or the null OREF if key is at the beginning of the list.

◆ Insert()

Inserts an element with OREF value oref at the end of the array.

<p>Returns a <CLASS>%Status</CLASS> value indicating success or failure.

◆ InsertObject()

Inserts an element with OID value oid at the end of the array.

<p>Returns a <CLASS>%Status</CLASS> value indicating success or failure.

◆ InsertObjectId()

_.Library.Status InsertObjectId ( _.Library.String  id)

Inserts an element with ID value id at the end of the array.

<p>Returns a <CLASS>%Status</CLASS> value indicating success or failure.

◆ IsDefined()

_.Library.Boolean IsDefined ( _.Library.String  key)

Returns true (1) if a value is defined at location key,.

otherwise false (0).

◆ IsEmpty()

_.Library.Boolean IsEmpty ( )

Returns true if this collection is empty.

To get better performance, if the contents of the collection are not already loaded, then this will run a minimal query to determine if the collection is empty, and will not actually load the contents.

◆ Load()

_.Library.Status Load ( )

Retrieves a list of all objects related to InverseReference and inserts them into array.

of related objects.

◆ Next()

Finds and returns the key value of the element at the location following key in the array.

If key is a null string (""), then Next returns the key value for the first element in the array.

◆ Previous()

Finds and returns the key value of the element at the location preceding key in the array.

If key is a null string (""), then Previous returns the key value for the last element in the array.

◆ Relate()

Inserts an element with OREF value oref at the end of the list.

<p>Returns a <CLASS>%Status</CLASS> value indicating success or failure.

This method should not be invoked directly. It is invoked by the inverse relationship.

◆ Remove()

Removes the element whose oref is oref.

<p><b>Remove</b> returns the OID value of the removed element or the null OID
if no element was removed.

◆ RemoveAt()

Removes the element at position key in the array.

<p><b>RemoveAt</b> returns the OID value of the removed element or the null OID
if no element was removed.

◆ RemoveObject()

Removes the element whose OID is oid.

<p><b>RemoveAt</b> returns the OID value of the removed element or then null OID
if no element was removed.

◆ UnRelate()

Moves an element with OREF value oref from the array of related objects to the.

list of terminated relationships.

Returns a <CLASS>Status</CLASS> value indicating success or failure.

This method should not be invoked directly. It is invoked by the inverse relationship.

Member Data Documentation

◆ CARDINALITY

CARDINALITY = None
static

For information on this class, see Defining and Using Relationships.

Registered relationship class for relationship cardinalities many and children.

Instances of this class are used by n-cardinality relationships to manage objects currently related to the container object and also to manage the objects whose relationship with the container object has been removed. Related objects are loaded into this object using a query-like interface that is implemented by the inverse relationship. The order in which related objects are loaded is neither guaranteed or maintained as objects are related or unrelated.

This class is used internally by InterSystems IRIS. You should not make direct use of it within your applications. There is no guarantee made about either the behavior or future operation of this class.

◆ CLASSNAMEINOID

CLASSNAMEINOID = None
static

This parameter determines how the collection object stores OID values.

If this parameter is set to 0, then partially-formed OID values (containing only an ID number) are used. If this parameter is set to 1, then fully-formed OID values (containing both a class name and an ID number) are used.

◆ Cardinality

Cardinality

The property name of the inverse relationship in the related class.

 

◆ __Disconnected

__Disconnected
private

Private storage area used to hold OREF values for objects no longer related to the container object.

 

◆ ElementType

ElementType

The type (class name) of the elements stored in the collection.

 

◆ InversePersistent

InversePersistent

TRUE if the ElementType class is a persistent class.

 

◆ InverseProperty

InverseProperty

The property name of the inverse relationship in the related class.

 

◆ InverseReference

InverseReference

 

 

◆ NotLoaded

NotLoaded

TRUE if related objects have not been retrieved by calling Load().

 

◆ __Oref

__Oref
private

Oref is a private property used to hold the

related object references in the form iOref(key)=oref.  

◆ Persistent

TRUE if the container class is a persistent class.

 

◆ __RelationshipData

__RelationshipData
private

Private property used to hold some relationship data.