protected virtual void Initialize() { requests = DBusUtility.GetProxy <IRequests> (bus, bus_name, object_path); capabilities = DBusUtility.GetProxy <IContactCapabilities> (bus, bus_name, object_path); conn.StatusChanged += OnStatusChanged; conn.SelfHandleChanged += OnSelfHandleChanged; LoadCapabilities(); dispatch_manager = new DispatchManager(this); CreateRoster(); }
protected virtual void Dispose(bool disposing) { if (!disposing) { return; } if (dispatch_manager != null) { dispatch_manager.Dispose(); } if (ChannelHandler == null) { ChannelHandler.Destroy(); } if (roster != null) { roster.Dispose(); roster = null; } if (conn != null) { try { conn.SelfHandleChanged -= OnSelfHandleChanged; conn.StatusChanged -= OnStatusChanged; } catch (Exception) {} conn = null; } capabilities = null; dispatch_manager = null; requests = null; }