logo       

Sponsor
FREE Network Mapping Tool for Microsoft® Office Visio® Professional 2007
Don't map your network by hand - let LANsurveyor Exx press for Microsoft Visio Professional 2007 automatically create network diagrams for you!

Re: Request for the 1.0 release: msg#00263

freedesktop.dbus

Subject: Re: Request for the 1.0 release

On Sun, 2006-02-26 at 02:48 +0100, Thiago Macieira wrote:
> It works if the bindings play nice with each other. Currently, we don't.
> We don't register the objects because the tree is dynamic and can change
> without calling "registerObject".

I'm not sure I understand all the issues - do you think this is
something fixable?

Is the problem you can't reliably tell if another binding registers the
same object?

> And now getting to what I wanted to know: if you call
> dbus_g_proxy_get_interface() on the "destroyed" signal, what interface do
> you get?

get_interface() is something you call on the proxy itself, not on the
signal; so you'd always get whatever interface you created the proxy
with (the dbus interface name of the remote object). If a remote object
has two interfaces, with DBusGProxy you have to create two proxies, or I
think you can just pass in NULL for the interface (which will then omit
it in the DBusMessage as well).

The destroy signal is just a member of the DBusGProxy local class; it's
not conceptually a signal on the remote object or a member of any dbus
interface, in fact it's only emitted in response to bus events - it
would not be emitted if the remote object were finalized. The signal
should really be called "disconnected" or "name_owner_changed" or
something probably.

DBusGProxy does not map remote signals to regular GObject signals,
instead there's a special dbus_g_proxy_connect_signal() that you use
instead of g_signal_connect() for remote signals. To map remote signals
to regular GObject signals, a new proxy *class* would have to be
generated for each remote object, while right now the proxy instances
all have the class DBusGProxy.

> I should have said so before: if I'm going to mimic the behaviour, I
> should could just as well use the same interface names.

The glib bindings aren't very heavily tested or evolved, they could kind
of use some love even...

I sort of started on the glib bindings, then Colin sort of
mostly-finished them, now they are kind of not maintained enough.

> >com_example_StateMachine_get_info (DBusGProxy *proxy, char ** OUT_name,
> >char ** OUT_state, GError **error)
> >{
> > return dbus_g_proxy_call (proxy, "GetInfo", error, G_TYPE_INVALID,
> >G_TYPE_STRING, OUT_name, G_TYPE_STRING, OUT_state, G_TYPE_INVALID);
> >}
>
> /me notes the naming-style conversion

This is one of the strange things about the glib bindings really,
probably the full "glib style" conversion would be
"com_example_state_machine_get_info()" and the "keep it all dbus" would
be com_example_StateMachine_GetInfo()

I'm not sure what's up with the hybrid approach, it looks pretty weird.

> The idea of doing that to reduce relocation counts isn't ours. See
> http://people.redhat.com/drepper/dsohowto.pdf section 2.4.3.

Uli strikes again ;-)

Havoc


_______________________________________________
dbus mailing list
dbus-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@xxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dbus






Only community members can participate in forum threads. You must Register or log in to contribute.

<Prev in Thread] Current Thread [Next in Thread>
Sponsor
FREE Network Mapping Tool for Microsoft® OfficeVisio Professional 2007
Don't map your network by hand - let LANsurveyor Express for Microsoft Visio Professional 2007
automatically create network diagrams for you!
Google Custom Search

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe

Navigation

Home | sitemap | advertise | OSDir is an inevitable website. super tiny logo