public class TransformerContainerImpl extends TransformerDataImpl implements TransformerContainer
modCount
MAINTAIN_TIMESTAMP, NO_FLAGS, NO_PERSISTENCE, PUBLISH_TO_PEERS, SILENT_SEND, STORE_IN_CACHE
ADD_OBJECT_AND_REQUEST_FIELDNUM, ADD_OBJECT_FIELDNUM, CLEARDOWN_WITH_PREFIX_FIELDNUM, REMOVE_OBJECT_FIELDNUM
CONTAINER_TYPE, F_AUTH_UPDATE, F_AUTHGLOBAL, F_CHANGEDFIELDS, F_CLEAR_PERMISSIONS, F_CLEAR_TYPE2, F_CLEAR_TYPE3, F_CREATEOBJECT, F_CREATEPARENT, F_DELETE_PERMISSION, F_FILTER_TYPE2, F_FILTER_TYPE3, F_IMAGE, F_NONACTIVE, GENERIC_TYPE, NEWS_TYPE, PAGE_TYPE, PERMISSION_TYPE, RECORD_TYPE, STORY_TYPE, TYPE2_RECORD_TYPE, TYPE3_RECORD_TYPE, UNKNOWN_TYPE
Modifier | Constructor and Description |
---|---|
protected |
TransformerContainerImpl(long dsDataPointer)
Constructor is protected to prevent a TransformerContainer being
instantiated except by the DSFactory class.
|
protected |
TransformerContainerImpl(long dsDataPointer,
boolean freeDsDataPointer)
Constructor is protected to prevent a TransformerContainer being
instantiated except by the DSFactory class.
|
Modifier and Type | Method and Description |
---|---|
void |
addObject(String objectName)
Adds an instruction to append an object to this container.
|
void |
addObject(String objectName,
boolean makeRequest)
Adds an instruction to append an object to this container.
|
void |
cleardownObjectsWithPrefix(String prefix)
Adds an instruction to remove all objects from the container that have an object name that matches the
provided prefix.
|
void |
insertObject(String objectName,
int position)
Adds an instruction to insert an object into this container, pushing any object currently at
that position, and all objects at successive positions, up one place (to the next higher index position).
|
void |
removeObject(String objectName)
Adds an instruction to remove an object from this container.
|
addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addData, addData, addData, addData, addData, addData, addData, addData, addString, addString, clearFields, count, elements, finalize, getDSDataPointer, getFieldByFieldNumber, getFieldByFieldNumber, getFlags, getKeys, getObjectType, getSequenceNumber, getSubject, getType, getValues, iterator, merge, removeField, send, send, sendDirect, sendToPeer, setFlags, setSubject, setType, setType, toBytes, updateData, updateData
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getDSDataPointer, getObjectType, getSequenceNumber, merge, send, setType
addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addBinaryData, addData, addData, addData, addData, addData, addData, addData, addData, clearFields, count, elements, getFieldByFieldNumber, getFieldByFieldNumber, getFlags, getKeys, getSubject, getType, getValues, iterator, removeField, setFlags, setSubject, setType, updateData, updateData
send, sendDirect, sendToPeer
toBytes
protected TransformerContainerImpl(long dsDataPointer)
Constructor is protected to prevent a TransformerContainer being instantiated except by the DSFactory class.
A TransformerContainer created with this constructor will be responsible for freeing the memory for the underlying C ds_data struct.
This is equivalent to calling TransformerContainer(dsDataPointer, true).
dsDataPointer
- The pointer to the C ds_data struct that
holds the state information for the update.protected TransformerContainerImpl(long dsDataPointer, boolean freeDsDataPointer)
Constructor is protected to prevent a TransformerContainer being instantiated except by the DSFactory class.
dsDataPointer
- The pointer to the C ds_data struct that
holds the state information for the
update.freeDsDataPointer
- true if the TransformerContainer
is responsible for freeing up the memory
for the C ds_data struct, or false
if the Transformer core is responsible.public void addObject(String objectName)
DSContainer
Adds an instruction to append an object to this container.
addObject
in interface DSContainer
objectName
- the name of the object to be appended to this container
(e.g. /OBJ1).public void addObject(String objectName, boolean makeRequest)
DSContainer
Adds an instruction to append an object to this container.
addObject
in interface DSContainer
objectName
- the name of the object to be appended to this container
(e.g. /OBJ1).makeRequest
- true if the receiving DataSource should make a request for
this object, false if this DataSource
will automatically send the
object without it needing to be requested.public void removeObject(String objectName)
DSContainer
Adds an instruction to remove an object from this container.
removeObject
in interface DSContainer
objectName
- the name of the object to be removed from this
container (e.g. /OBJ1).public void insertObject(String objectName, int position)
DSContainer
Adds an instruction to insert an object into this container, pushing any object currently at that position, and all objects at successive positions, up one place (to the next higher index position).
If insertObject
is called more than once on the same DSContainer, the subsequent inserts
are relative to the earlier ones. For example, assume a container has object X
at position
9
and object Y
at position 10
. Now insert object A
at position 5
, followed by object B
at position 10
. The insertion
of object A
moves X
to position 10
and Y
to
position 11
. When B
is subsequently inserted at position 10
, it goes
immediately before X
, not before Y
; X
moves to position 11
and Y
moves to position 12
.
insertObject
in interface DSContainer
objectName
- the name of the object to be inserted into this
container (e.g. /OBJ1).position
- the position in the container where the object is to be inserted, where position
0
(zero) represents the position of the first object.public void cleardownObjectsWithPrefix(String prefix)
DSContainer
Adds an instruction to remove all objects from the container that have an object name that matches the provided prefix.
Instructions are processed in the order that they are added to the container and affect earlier instructions.
For example, if in the same message you add object /A/1
, clear down based on the prefix /A
and add object /A/2
then the processed container will only contain object /A/2
because
object /A/1
will be cleared.
cleardownObjectsWithPrefix
in interface DSContainer
prefix
- The prefix to match object names against and remove from the container.Please send bug reports and comments to Caplin support