InfCommunicationJoinedGroup

InfCommunicationJoinedGroup — Communication group opened by a remote host

Stability Level

Unstable, unless otherwise indicated

Synopsis

#include <libinfinity/communication/inf-communication-joined-group.h>

                    InfCommunicationJoinedGroup;
struct              InfCommunicationJoinedGroupClass;
void                inf_communication_joined_group_remove_member
                                                        (InfCommunicationJoinedGroup *grp,
                                                         InfXmlConnection *connection);
InfXmlConnection *  inf_communication_joined_group_get_publisher
                                                        (InfCommunicationJoinedGroup *g);

Object Hierarchy

  GObject
   +----InfCommunicationGroup
         +----InfCommunicationJoinedGroup

Properties

  "method"                   gchar*                : Read / Write / Construct Only
  "publisher"                InfXmlConnection*     : Read / Write / Construct Only

Description

InfCommunicationJoinedGroup represents membership of the local host on a InfCommunicationGroup opened on a remote host.

There is no API to add a member to a joined group. This is because new members can only join via the group's publisher. It is the job of the InfCommunicationMethod to tell the joined group about the new member in which case, the "member-added" signal will be emitted.

Details

InfCommunicationJoinedGroup

typedef struct _InfCommunicationJoinedGroup InfCommunicationJoinedGroup;

InfCommunicationJoinedGroup is an opaque data type. You should only access it via the public API functions.


struct InfCommunicationJoinedGroupClass

struct InfCommunicationJoinedGroupClass {
};

This structure does not contain any public fields.


inf_communication_joined_group_remove_member ()

void                inf_communication_joined_group_remove_member
                                                        (InfCommunicationJoinedGroup *grp,
                                                         InfXmlConnection *connection);

Removes connection as grp's member. On the remote site, the corresponding InfCommunicationGroup needs to be freed (which may be a InfCommunicationJoinedGroup or a InfCommunicationHostedGroup).

grp :

A InfCommunicationJoinedGroup.

connection :

A connection to a member of grp.

inf_communication_joined_group_get_publisher ()

InfXmlConnection *  inf_communication_joined_group_get_publisher
                                                        (InfCommunicationJoinedGroup *g);

Returns a InfXmlConnection to the group's publisher, or NULL if the publisher is no longer a group member.

g :

A InfCommunicationJoinedGroup.

Returns :

A InfXmlConnection, or NULL.

Property Details

The "method" property

  "method"                   gchar*                : Read / Write / Construct Only

The communication method to use for this group.

Default value: NULL


The "publisher" property

  "publisher"                InfXmlConnection*     : Read / Write / Construct Only

A connection to the group's publisher.

See Also

InfCommunicationGroup, InfCommunicationManager