Infinityc.SessionProxy

g GObject.GInterface GObject.GInterface Infinity.CommunicationObject Infinity.CommunicationObject GObject.GInterface->Infinity.CommunicationObject Infinity.SessionProxy Infinity.SessionProxy GObject.GInterface->Infinity.SessionProxy GObject.Object GObject.Object Infinityc.SessionProxy Infinityc.SessionProxy GObject.Object->Infinityc.SessionProxy Infinity.CommunicationObject->Infinityc.SessionProxy Infinity.SessionProxy->Infinityc.SessionProxy

Subclasses:

None

Methods

Inherited:

GObject.Object (37), Infinity.CommunicationObject (3), Infinity.SessionProxy (1)

Structs:

GObject.ObjectClass (5)

get_connection ()

get_subscription_group ()

set_connection (group, connection, seq_id)

Virtual Methods

Inherited:

GObject.Object (7), Infinity.CommunicationObject (3), Infinity.SessionProxy (1)

do_translate_error (domain, code)

Properties

Inherited:

Infinity.SessionProxy (1)

Name

Type

Flags

Short Description

connection

Infinity.XmlConnection

r

The connection with which the session communicates with the server

subscription-group

Infinity.CommunicationJoinedGroup

r

The communication group of subscribed connections

Signals

Inherited:

GObject.Object (1)

Fields

Inherited:

GObject.Object (1)

Name

Type

Access

Description

parent

GObject.Object

r

Class Details

class Infinityc.SessionProxy(**kwargs)
Bases:

GObject.Object, Infinity.CommunicationObject, Infinity.SessionProxy

Abstract:

No

Structure:

Infinityc.SessionProxyClass

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

get_connection()
Returns:

A Infinity.XmlConnection, or None.

Return type:

Infinity.XmlConnection

Returns the connection that is used to transmit requests to the publisher of the session, or None if the session is not subscribed.

get_subscription_group()
Returns:

A Infinity.CommunicationJoinedGroup, or None.

Return type:

Infinity.CommunicationJoinedGroup

Returns the group with all subscribed connections to the session, or None if the session is not subscribed.

set_connection(group, connection, seq_id)
Parameters:

Sets the subscription connection for the given session. The subscription connection is the connection through which session requests are transmitted during subscription.

The subscription connection might be set even if the session is in SYNCHRONIZING state in which case the session is immediately subscribed after synchronization. Note that no attempt is made to tell the other end about the subscription.

seq_id should be a sequence identifier obtained from the server side. It must be the same number that is used on the corresponding #InfdSessionProxy on the remote side, see infd_session_proxy_subscribe_to(). Normally #InfdDirectory or Infinityc.Browser, respectively, take care of passing the correct sequence identifier.

When the subscription connection is being closed or replaced (by a subsequent call to this function), all pending requests are dropped and all users are set to be unavailable, but the session will not be closed, so it may be reused by setting another subscription connection. However, the session might not be synchronized again, but it is fully okay to close the session by hand (using Infinity.Session.close) and create a new session that is synchronized.

do_translate_error(domain, code) virtual
Parameters:
  • domain (int) –

  • code (int) –

Return type:

GLib.Error

Property Details

Infinityc.SessionProxy.props.connection
Name:

connection

Type:

Infinity.XmlConnection

Default Value:

None

Flags:

READABLE

The connection with which the session communicates with the server

Infinityc.SessionProxy.props.subscription_group
Name:

subscription-group

Type:

Infinity.CommunicationJoinedGroup

Default Value:

None

Flags:

READABLE

The communication group of subscribed connections