| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
|
|\ |
|
| |
| |
| |
| | |
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
|
| |
| |
| |
| | |
Otherwise gtk-doc gets confused
|
| |
| |
| |
| | |
It is deprecated and should not be used anymore.
|
|/
|
|
| |
https://bugs.freedesktop.org/show_bug.cgi?id=49384
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With the interfaces class property, programmers writing a concrete class
could not chain-up to inherit the interfaces implemented by the base
class. Using a get_interfaces() class method, the programmer can simply
add the interfaces she is implementing to those of the base class.
Furthermore, classes that only implement an interface in specific
instances required a subclass that had to be instantiated by the
manager. This is no longer required.
For backwards compatibility, the base get_interfaces() method returns
the value of the interfaces class property.
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This calls the ->close() vfunc, having checked that the channel is not
already destroyed. I found that a whole bunch of channels had their own
close function which is equivalent to Close() but checks is_destroyed()
first, so this seems like sensible boilerplate to move up to
TpBaseChannel.
Of course, some channels might need their own flag to say "close is in
progress" so that two overlapping calls to Close() don't break them, but
that's okay, they can still do that.
|
|
|
|
|
| |
I seem to need this in porting Gabble's Call channel implementation to
TpBaseChannel.
|
| |
|
|
|
|
|
|
|
| |
This virtual function is to generate a unique object path for each channel
object if the 'object-path' property is not specified during construction.
This allows implementations to use the memory address of the channel object in
their object path if they want, for example.
|
| |
|
|
|
|
|
| |
To be more explicit, we're renamed _get_target() to _get_target_handle(), and
the target_type class member is now called target_handle_type.
|
|
|
|
|
|
|
|
|
| |
- fix the gtk-doc 'make check' breakage properly (by simply removing the
documentation for the parent object and class and putting them into a
'private' section).
- document the get_target() ownership in text rather than g-i annotation since
that doesn't really apply for integer types
- fixed the 'since' tag so that it is not out-of-date
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quite a few channel implementations have clean-up that they need to
ensure happens exactly once, and so used to keep their own track of
whether they've been closed or not. This accessor allows them to
delegate tracking that to TpBaseChannel without needing to use
g_object_get (..., "channel-destroyed", ...);
Technically this accessor should live on TpExportableChannel, since
that's where the property is defined. But its semantics are easier to
explain if we can talk about tp_base_channel_destroyed(), so I put it
here.
|
|
|
|
| |
The new name describes the purpose of the vfunc much better
|
|
|
|
|
| |
This makes it easier to cast implementations, if the CM author so
desires.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This is easier to use if you just want to peek at the object path than
g_object_get (...); use; g_free().
|
|
|
|
|
|
| |
re-arrange the class members so that they're in a more sensible order, add
documentation for all class members, virtual functions, etc. Also update the
existing documentation to match the current implementation.
|
|
|
|
|
|
|
|
|
| |
Instead of forcing subclasses to override the 'channel-properties' class and
specify each property that they support (including those of all base classes),
try a more maintainable approach: each subclass should implement the
add_properties() virtual function, and should add supported properties to the
provided hash table using tp_dbus_properties_mixin_fill_properties_hash() and
then chain up to the parent vfunc.
|
|
|
|
|
|
|
|
|
|
| |
When a channel is re-spawned, we need to switch its initiator to the contact
that caused the channel to be re-spawned. Rather than requiring all client
code to explicitly change the initiator property separately (which is
currently a construct-only param), just do it all in one function call. This
makes the client code more straightforward and side-steps the complication
that the property setter can not ref the initiator handle while in
construction and defers this work to the 'constructed' vfunc.
|
|
|
|
|
|
|
|
|
| |
In order to make it easier for subclasses to add extra dbus properties, I
added a tp_base_channel_get_immutable_properties() accessor which returns the
base set of properties for a channel. Channel subclasses can extend this by
adding new properties to the list (via
tp_dbus_properties_mixin_fill_properties_hash()) and overriding the
"channel-properties" property to return the expanded hash table.
|
|
|
|
|
|
|
| |
Instead of requiring subclasses to implement the Close() method of
TpSvcChannel, they can simply implement the gobject virtual function instead.
This makes things a bit simpler and aalso aids in porting to GDBus in the
future as well.
|
|
|
|
|
| |
Move everything to a private struct and add some padding for future expansion
to the BaseChannelClass struct
|
|
The implementation is stolen from gabble and implements a lot of the common
functionality that Channels need to provde. This prevents a lot of copy/paste
and code duplication between CMS (and even for different channel types within
the same CM).
|