trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: September 2012

Re: [trinity-devel] network manager backend

From: "Timothy Pearson" <kb9vqf@...>
Date: Tue, 4 Sep 2012 16:07:49 -0500
> On 4 September 2012 12:15, Timothy Pearson <kb9vqf@...>
> wrote:
>>> On 4 September 2012 11:31, Timothy Pearson
>>> <kb9vqf@...>
>>> wrote:
>>>>> Hey Tim
>>>>>
>>>>> I've been looking through the commits lately. What is this work you
>>>>> are doing with NetworkManager? Looks to be rather large.
>>>>>
>>>>> Calvin
>>>>
>>>> Ah, you saw that, did you? ;-)
>>>>
>>>> As of right now TDE has a full C++ API interface for networking, and a
>>>> backend for that API which talks to the latest version of
>>>> NetworkManager.
>>>> In addition to being able to add/modify/delete/activate/deactivate
>>>> connections, all TDE applications can now request the current state of
>>>> the
>>>> network connection, which (once implemented in each application) would
>>>> allow applications such kmail to avoid checking for new messages while
>>>> the
>>>> host computer is offline.
>>>>
>>>> Tim
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail:
>>>> trinity-devel-unsubscribe@...
>>>> For additional commands, e-mail:
>>>> trinity-devel-help@...
>>>> Read list messages on the web archive:
>>>> http://trinity-devel.pearsoncomputing.net/
>>>> Please remember not to top-post:
>>>> http://trinity.pearsoncomputing.net/mailing_lists/#top-posting
>>>>
>>>
>>> and konversation from trying to connect.
>>>
>>> Does it send signals when connected/disconnected? for example i'd like
>>> konversation to reconnection when the connection becomes available.
>>> Will the be possible with this new API?
>>
>> Yes:
>> TDEGlobalNetworkManager* nm = KGlobal::networkManager();
>> if (!(nm->backendStatus() &
>> TDENetworkGlobalManagerFlags::BackendUnavailable)) {
>>   // A network management backend is available
>>   connect(nm,
>> SIGNAL(networkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags,
>> TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags)), this,
>> SLOT(theGlobalNetworkStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags,
>> TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags)));
>> }
>>
>> I could definitely use some assistance in updating
>> konversation/kmail/etc
>> to incorporate this new functionality, so if you want to hack on those
>> applications please feel free!
>>
>> Tim
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:
>> trinity-devel-unsubscribe@...
>> For additional commands, e-mail:
>> trinity-devel-help@...
>> Read list messages on the web archive:
>> http://trinity-devel.pearsoncomputing.net/
>> Please remember not to top-post:
>> http://trinity.pearsoncomputing.net/mailing_lists/#top-posting
>>
>
> seems very sane.
>
> What is the possibility of adding other backends? If I am not using
> network-manager, could we use another system (wicd for example) or is
> the code setup to only work with NM?
>
> Calvin

The TDE API was written with multiple backends in mind, so you could
theoretically write a backend for any network management system you want. 
That being said, note that the NetworkManager backend alone is over 4000
lines of code, so writing a backend is not a trivial task!

Tim