~ubuntu-branches/ubuntu/natty/glibmm2.4/natty

« back to all changes in this revision

Viewing changes to gio/giomm/dbusconnection.cc

  • Committer: Bazaar Package Importer
  • Author(s): Deng Xiyue, Emilio Pozuelo Monfort, Deng Xiyue
  • Date: 2011-04-13 10:05:51 UTC
  • mfrom: (1.2.60 upstream) (2.2.4 sid)
  • Revision ID: james.westby@ubuntu.com-20110413100551-xpgn8334oo6b901k
Tags: 2.28.0-1
[ Emilio Pozuelo Monfort ]
* debian/control.in,
  debian/rules:
  + Remove the chrpath hack, it's been fixed in libtool.

[ Deng Xiyue ]
* New upstream bugfix release.  (Closes: #621856)
  + debian/control.in:
    + Update GLib dependency to >= 2.28.0
  + debian/rules:
    + Update SHVER to 2.28.0 due to new API.
  + debian/libglibmm-2.4-dev.install:
    + Stop shipping /usr/share/glibmm-2.4, no longer exists.
* debian/control.in:
  + Update Standard-Version to 3.9.1.
* Convert to source format 3.0 (quilt):
  + debian/source/format: added.
  + debian/rules: drop simple-patchsys.mk

Show diffs side-by-side

added added

removed removed

Lines of Context:
48
48
  {
49
49
    (*the_slot)(Glib::wrap(connection, true), (sender_name ? sender_name : ""),
50
50
      (object_path ? object_path : ""), (interface_name ? interface_name : ""),
51
 
      (signal_name ? signal_name : ""), Glib::VariantBase(parameters, true));
 
51
      (signal_name ? signal_name : ""), Glib::VariantContainerBase(parameters, true));
52
52
  }
53
53
  catch(...)
54
54
  {
650
650
  const Glib::ustring&                  object_path,
651
651
  const Glib::ustring&                  interface_name,
652
652
  const Glib::ustring&                  method_name,
653
 
  const Glib::VariantBase&              parameters,
 
653
  const Glib::VariantContainerBase&     parameters,
654
654
  const SlotAsyncReady&                 slot,
655
655
  const Glib::RefPtr<Cancellable>&      cancellable,
656
656
  const Glib::ustring&                  bus_name,
676
676
  const Glib::ustring&                  object_path,
677
677
  const Glib::ustring&                  interface_name,
678
678
  const Glib::ustring&                  method_name,
679
 
  const Glib::VariantBase&              parameters,
 
679
  const Glib::VariantContainerBase&     parameters,
680
680
  const SlotAsyncReady&                 slot,
681
681
  const Glib::ustring&                  bus_name,
682
682
  int                                   timeout_msec,
696
696
    &SignalProxy_async_callback, slot_copy);
697
697
}
698
698
 
699
 
void Connection::call_finish(
700
 
  Glib::VariantBase&                    output,
701
 
  const Glib::RefPtr<AsyncResult>&      res
702
 
)
703
 
{
704
 
  GError* gerror = 0;
705
 
  GVariant* const gvariant =
706
 
    g_dbus_connection_call_finish(gobj(), Glib::unwrap(res), &gerror);
707
 
  if(gerror)
708
 
    ::Glib::Error::throw_exception(gerror);
709
 
  output.init(gvariant); // No need for extra ref.
710
 
}
711
 
 
712
 
void Connection::call_sync(
713
 
  Glib::VariantBase&                    output,
 
699
Glib::VariantContainerBase Connection::call_sync(
714
700
  const Glib::ustring&                  object_path,
715
701
  const Glib::ustring&                  interface_name,
716
702
  const Glib::ustring&                  method_name,
717
 
  const Glib::VariantBase&              parameters,
 
703
  const Glib::VariantContainerBase&     parameters,
718
704
  const Glib::RefPtr<Cancellable>&      cancellable,
719
705
  const Glib::ustring&                  bus_name,
720
706
  int                                   timeout_msec,
734
720
  if(gerror)
735
721
    ::Glib::Error::throw_exception(gerror);
736
722
 
737
 
  output.init(gvariant); // No need to take extra reference.
 
723
  return Glib::VariantContainerBase(gvariant, false); //Dont' take an extra reference.
738
724
}
739
725
 
740
726
// Non-cancellable version.
741
 
void Connection::call_sync(
742
 
  Glib::VariantBase&                    output,
 
727
Glib::VariantContainerBase Connection::call_sync(
743
728
  const Glib::ustring&                  object_path,
744
729
  const Glib::ustring&                  interface_name,
745
730
  const Glib::ustring&                  method_name,
746
 
  const Glib::VariantBase&              parameters,
 
731
  const Glib::VariantContainerBase&     parameters,
747
732
  const Glib::ustring&                  bus_name,
748
733
  int                                   timeout_msec,
749
734
  CallFlags                         flags,
761
746
  if(gerror)
762
747
    ::Glib::Error::throw_exception(gerror);
763
748
 
764
 
  output.init(gvariant); // No need to take extra reference.
 
749
  return Glib::VariantContainerBase(gvariant, false); //Dont' take an extra reference.
765
750
}
766
751
 
767
752
void Connection::emit_signal(
769
754
  const Glib::ustring&                interface_name,
770
755
  const Glib::ustring&                signal_name,
771
756
  const Glib::ustring&                destination_bus_name,
772
 
  const Glib::VariantBase&            parameters
 
757
  const Glib::VariantContainerBase&   parameters
773
758
)
774
759
{
775
760
  GError* gerror = 0;
812
797
 
813
798
guint Connection::register_object(const Glib::ustring& object_path,
814
799
  const Glib::RefPtr<InterfaceInfo>& interface_info,
815
 
  const InterfaceVTable* vtable)
816
 
{
817
 
  GError* gerror = 0;
818
 
 
819
 
  const guint result = g_dbus_connection_register_object(gobj(),
820
 
    object_path.c_str(), Glib::unwrap(interface_info),
821
 
    vtable->gobj(), const_cast<InterfaceVTable*>(vtable), 0, &gerror);
 
800
  const InterfaceVTable& vtable)
 
801
{
 
802
  GError* gerror = 0;
 
803
 
 
804
  const guint result = g_dbus_connection_register_object(gobj(),
 
805
    object_path.c_str(), Glib::unwrap(interface_info),
 
806
    vtable.gobj(), const_cast<InterfaceVTable*>(&vtable), 0, &gerror);
 
807
 
 
808
  if(gerror)
 
809
    ::Glib::Error::throw_exception(gerror);
 
810
 
 
811
  return result;
 
812
}
 
813
 
 
814
guint Connection::register_object(const Glib::ustring& object_path,
 
815
  const Glib::RefPtr<InterfaceInfo>& interface_info)
 
816
{
 
817
  GError* gerror = 0;
 
818
 
 
819
  const guint result = g_dbus_connection_register_object(gobj(),
 
820
    object_path.c_str(), Glib::unwrap(interface_info),
 
821
    0, 0, 0, &gerror);
822
822
 
823
823
  if(gerror)
824
824
    ::Glib::Error::throw_exception(gerror);
827
827
}
828
828
 
829
829
guint Connection::register_subtree(const Glib::ustring& object_path,
830
 
  const SubtreeVTable* vtable, SubtreeFlags flags)
 
830
  const SubtreeVTable& vtable, SubtreeFlags flags)
831
831
{
832
832
  GError* gerror = 0;
833
833
 
834
834
  const guint result = g_dbus_connection_register_subtree(gobj(),
835
835
    object_path.c_str(),
836
 
    vtable->gobj(), static_cast<GDBusSubtreeFlags>(flags),
837
 
    const_cast<SubtreeVTable*>(vtable), 0, &gerror);
 
836
    vtable.gobj(), static_cast<GDBusSubtreeFlags>(flags),
 
837
    const_cast<SubtreeVTable*>(&vtable), 0, &gerror);
838
838
 
839
839
  if(gerror)
840
840
    ::Glib::Error::throw_exception(gerror);
1169
1169
  return const_cast<Connection*>(this)->get_peer_credentials();
1170
1170
}
1171
1171
 
 
1172
Glib::VariantContainerBase Connection::call_finish(const Glib::RefPtr<AsyncResult>& res)
 
1173
{
 
1174
  GError* gerror = 0;
 
1175
  Glib::VariantContainerBase retvalue = Glib::VariantContainerBase(g_dbus_connection_call_finish(gobj(), Glib::unwrap(res), &(gerror)), false);
 
1176
  if(gerror)
 
1177
    ::Glib::Error::throw_exception(gerror);
 
1178
 
 
1179
  return retvalue;
 
1180
 
 
1181
}
 
1182
 
1172
1183
void Connection::signal_unsubscribe(guint subscription_id)
1173
1184
{
1174
1185
g_dbus_connection_signal_unsubscribe(gobj(), subscription_id);