MyChannels.Nirvana.IDataGroup Interface Reference

Defines a Data Group More...

Inherited by MyChannels.Nirvana.DataGroup, and MyChannels.Nirvana.RootDataGroup.

Public Member Functions

void AddDataGroup (IDataGroup group)
 Add a "child" group More...
 
void AddPublisher (string subject)
 Add a publisher to the data group. More...
 
void AddStream (IDataStream stream)
 Allow's the specified stream to receive messages from this data group More...
 
void AddStream (string streamId)
 Allow's the specified stream to receive messages from this data group More...
 
IDataGroup CreateDataGroup (string name)
 Create a new data group & automatically add it to this group More...
 
IDataGroup CreateDataGroup (string name, ConflationBehaviour behaviour, TimeSpan interval)
 Create a conflated data group & automatically add it to this group More...
 
IRegisteredEvent CreateRegisteredEvent ()
 Create a registered event for this data group More...
 
void RemoveDataGroup (IDataGroup group)
 Remove a "child" group More...
 
void RemovePublisher (string subject)
 Remove a publish from the data group. More...
 
void RemoveStream (IDataStream stream)
 Remove a stream from the group. More...
 
void RemoveStream (string streamId)
 Remove a stream from the group. More...
 
void Send (IMessage message)
 Send a message (non-transactional) More...
 

Properties

IEnumerable< IDataGroupChildren [get]
 Messages published to this Data Group will also be published to it's children. More...
 
string Name [get]
 The name of this Data Group. More...
 
IEnumerable< IDataGroupParents [get]
 Messages published the parent(s) will also be published to this Data Group. More...
 
IEnumerable< string > Publishers [get]
 List of subjects that are allow to publish messages to this Data Group. More...
 
IEnumerable< IDataStreamStreams [get]
 List of streams listening to this Data Group. More...
 

Detailed Description

Defines a Data Group

Member Function Documentation

void MyChannels.Nirvana.IDataGroup.AddDataGroup ( IDataGroup  group)

Add a "child" group

Parameters
groupThe group you would like to add as a child
void MyChannels.Nirvana.IDataGroup.AddPublisher ( string  subject)

Add a publisher to the data group.

Allows the specified subject to publish messages to the group.

Parameters
subjectThe subject
void MyChannels.Nirvana.IDataGroup.AddStream ( IDataStream  stream)

Allow's the specified stream to receive messages from this data group

Parameters
streamThe stream
void MyChannels.Nirvana.IDataGroup.AddStream ( string  streamId)

Allow's the specified stream to receive messages from this data group

Parameters
streamIdThe stream's Id
IDataGroup MyChannels.Nirvana.IDataGroup.CreateDataGroup ( string  name)

Create a new data group & automatically add it to this group

Parameters
nameThe name of the data group
Returns
The new data group
IDataGroup MyChannels.Nirvana.IDataGroup.CreateDataGroup ( string  name,
ConflationBehaviour  behaviour,
TimeSpan  interval 
)

Create a conflated data group & automatically add it to this group

Parameters
nameThe name of the data group
behaviourThe conflation behaviour
intervalThe conflation interval
Returns
The new data group
IRegisteredEvent MyChannels.Nirvana.IDataGroup.CreateRegisteredEvent ( )

Create a registered event for this data group

Returns
The registered event
void MyChannels.Nirvana.IDataGroup.RemoveDataGroup ( IDataGroup  group)

Remove a "child" group

Parameters
groupThe "child" group you'd like to remove
void MyChannels.Nirvana.IDataGroup.RemovePublisher ( string  subject)

Remove a publish from the data group.

The specified subject will no longer be able to publish messages to the group.

Parameters
subjectThe subject
void MyChannels.Nirvana.IDataGroup.RemoveStream ( IDataStream  stream)

Remove a stream from the group.

The specified stream will no longer receive messages from this data group.

Parameters
streamThe stream
void MyChannels.Nirvana.IDataGroup.RemoveStream ( string  streamId)

Remove a stream from the group.

The specified stream will no longer receive messages from this data group.

Parameters
streamIdThe stream.
void MyChannels.Nirvana.IDataGroup.Send ( IMessage  message)

Send a message (non-transactional)

Parameters
messageThe message

Property Documentation

IEnumerable<IDataGroup> MyChannels.Nirvana.IDataGroup.Children
get

Messages published to this Data Group will also be published to it's children.

string MyChannels.Nirvana.IDataGroup.Name
get

The name of this Data Group.

IEnumerable<IDataGroup> MyChannels.Nirvana.IDataGroup.Parents
get

Messages published the parent(s) will also be published to this Data Group.

IEnumerable<string> MyChannels.Nirvana.IDataGroup.Publishers
get

List of subjects that are allow to publish messages to this Data Group.

IEnumerable<IDataStream> MyChannels.Nirvana.IDataGroup.Streams
get

List of streams listening to this Data Group.