%Compiler.Type.Collection
Class %Compiler.Type.Collection Extends %Compiler.Type.Object [ NoContext, System = 1 ]
Collection specific property superclass, for internal use only
Parameters
STORAGEDEFAULT
Parameter STORAGEDEFAULT As STRING [ Constraint = ",array,list", Flags = ENUM ];
STORAGEDEFAULT is the type of storage used for the collection if it is not already allocated in a DATA definition in the active STORAGE definition. LIST collections default to list storage and ARRAY collections default to array storage (SUBNODE structure).
SQLPROJECTION
Parameter SQLPROJECTION As STRING [ Constraint = ",table,column,table/column", Flags = ENUM ];
SQLPROJECTION is the way this collection will be projected to SQL - either as a simple COLUMN or as a child TABLE or both.
SQLTABLENAME
Parameter SQLTABLENAME As STRING;
SQLTABLENAME is the name of the projected child table for this collection. If the collection is not projected as a child table (refer to SQLPROJECTION) then this parameter is ignored.
CollectionDisplayDelimiter
Parameter CollectionDisplayDelimiter As STRING = "$C(13,10)";
CollectionOdbcDelimiter
Parameter CollectionOdbcDelimiter As STRING = """,""";
ACCESSPOLICY
Parameter ACCESSPOLICY As STRING [ Constraint = ",lazy,eager", Flags = ENUM ];
ACCESSPOLICY defines how collection is fetched to the client application. EAGER: The whole collection is fetched no later than it is first accessed by application in any manner. If collection contains object values then objects are opened and instantiated in application memory. For applications using POJO mode this means that application can use this collection even if it has been disconnected from the server afterwards. Value EAGER is a requirement, meaning that if it is specified then EAGER policy always be employed. LAZY: Values in collection can be fetched as they are requested by the application, e.g. when methods get() or Iterator.next() are invoked. Value LAZY is a hint meaning that if it is specified it tells that LAZY policy may be used for this collection but does not guarantee that it is used. In case LAZY fetching is used collection may become invalid when application disconnected from the server.
Methods
BuildValueArray
ClassMethod BuildValueArray(value As %Binary, array As %Binary) As %Status [ CodeMode = generator, Final, ServerOnly = 1 ]
GetSwizzled
Method GetSwizzled(noswizzle As %Boolean = 0) As %RegisteredObject [ CodeMode = generator, ServerOnly = 1 ]
Returns an oref, performing swizzling if necessary it returns "" ($$$NULLOREF) if there is no oref and the id="" If noswizzle is passed as true then this will just return the current value for the property, so if it has been swizzled already then it will return the oref, if it has not been swizzled it will return "" ($$$NULLOREF).
NewObject
Method NewObject() As %ObjectHandle [ CodeMode = generator, ServerOnly = 1 ]
Set
Method Set(newvalue As %RawString) As %Status [ CodeMode = generator, ServerOnly = 1 ]
Set the property to an oref value if the new oref is different from an old oref, the old object is closed |
CollectionToOdbc
ClassMethod CollectionToOdbc(val As %String(MAXLEN="") = "") As %String(MAXLEN="") [ CodeMode = generator, ServerOnly = 1 ]
Converts the serial state of this list object to a delimited string using "," as a delimiter.
OdbcToCollection
ClassMethod OdbcToCollection(val As %String(MAXLEN="") = "") As %String(MAXLEN="") [ CodeMode = generator, ServerOnly = 1 ]
Converts the value of an incoming delimited string to a serialized state using "," as a delimiter.
CollectionToDisplay
ClassMethod CollectionToDisplay(val As %String(MAXLEN="") = "", delim As %String = "") As %String(MAXLEN="") [ CodeMode = generator, ServerOnly = 1 ]
Converts the serial state of this list object to a delimited string using the value of the %delim argument as a delimiter.
DisplayToCollection
ClassMethod DisplayToCollection(val As %String(MAXLEN="") = "", delim As %String = "") As %String(MAXLEN="") [ CodeMode = generator, ServerOnly = 1 ]
Converts the value of an incoming delimited string to a serialized state using the value of the delim argument as a delimiter.