%IO.IParts.MetaIO
Class %IO.IParts.MetaIO [ Abstract, System = 2 ]
Abstract implementation class providing methods used by MetaStreams to wrapper one or more %IO streams, %Library streams or %Stream streams.
Properties
StreamIn
Property StreamIn As %IO.I.Stream;
Read from another stream whenever there's a Read %IO.I.Stream or %Stream.Object
StreamsCopyInput
Property StreamsCopyInput As %ArrayOfObjects;
Write to other streams whenever there's a Read *IO.I.Stream or %Stream.Object; indexed by oref to avoid duplicates */
StreamsOutput
Property StreamsOutput As %ArrayOfObjects;
Write to other streams whenever there's a Write %IO.I.Stream or %Stream.Object; indexed by oref to avoid duplicates */
WriteToStreamIn
Property WriteToStreamIn As %Boolean [ InitialExpression = 0 ];
%Position
Property %Position As %Integer [ Private, ReadOnly ];
Methods
%OnNew
Method %OnNew(pBaseStream As %IO.I.Stream = "") As %Status
Close
Method Close(Output pSC As %Status) As %Boolean
Reset
Method Reset(pStream As %IO.I.Stream = {$$$NULLOREF}, pTimeout As %Numeric, Output pSC As %Status)
BindInput
Method BindInput(pInputStream As %IO.I.Stream, Output pSC As %Status)
BindOutput
Method BindOutput(pOutputStreams...) As %Status
BindOutputArray
Method BindOutputArray(ByRef pOutputStreams) As %Status
BindCopyInput
Method BindCopyInput(pOutputStreams...) As %Status
BindCopyInputArray
Method BindCopyInputArray(ByRef pOutputStreams) As %Status
Read
Method Read(pMaxReadLen As %Integer, ByRef pTimeout As %Numeric = -1, Output pSC As %Status) As %String
Write
Method Write(pData As %String = "", pFlush As %Boolean, Output pSC As %Status)
delegateWrite
Method delegateWrite(s As %RegisteredObject, pData As %String, ByRef pFlush As %Boolean, Output pSC As %Status) [ Private ]
Flush
Method Flush(Output pSC As %Status)
FlushCopyInput
Method FlushCopyInput(Output pSC As %Status)
flushList
Method flushList(Output pSC As %Status, pList As %ArrayOfObjects, pFlush As %Boolean) [ Private ]
Rewind
Method Rewind(Output pSC As %Status)
Seek
Method Seek(pPosition As %Integer, Output pSC As %Status) As %Boolean
AtEndGet
Method AtEndGet() As %Boolean [ CodeMode = expression ]
IsOpenGet
Method IsOpenGet() As %Boolean [ CodeMode = expression ]
SizeGet
Method SizeGet() As %Integer
PositionGet
Method PositionGet() As %Integer
CopyFrom
Method CopyFrom(pSource As %IO.I.Stream, ByRef pTimeout As %Numeric = -1, pFlush As %Boolean, Output pSC As %Status) As %Integer