kde-workspace/solid-networkstatus/DESIGN

43 lines
2.3 KiB
Text
Raw Normal View History

2014-11-15 04:16:00 +02:00
The system consists of 3 classes of components:
1) Network service applications
Responsible for reporting the status of the system's network connection(s). May be a KDE app or
anything (including a system networking script) that can talk DBus. These are responsible for registering networks with, and updating their status at:
2) KDED Module - networkstatus
Hub of the system. Implements two DBus interfaces at org.kde.kded /modules/networkstatus,
org.kde.Solid.Networking.Service (for use by service applications, above) and
org.kde.Solid.Networking.Client (for client apps, below) networkstatus knows of the status of any networks registered with it, which it aggregates and reports the most connected status onwards, to:
3) Network client applications {
Regular KDE applications which need to use the network. These either listen directly to
org.kde.kded /modules/networkstatus' signals, or use the Solid::Networking namespaces' functions and notifier() object to react to
network status changes.
UI Components
The KIO library contains a widget, KStatusBarOfflineIndicator, which is
intended for use in applications' status bars. This widget shows itself when the system is offline, and
hides itself when the system is connected.
KConnectionManager
As well as signalling status changes, Solid::Networking can signal when an app should connect, and should disconnect, based on a ConnectionPolicy setting.
Layout
kdelibs/solid/solid/networking.*
Main client app facing functions
kdelibs/kio/kio/ksstatusbarofflineindicator.*
Status bar widget
kdebase/workspace/solid/networking
KDED module, service definition and this file. Test service and client GUI
applications which make it easy to simulate network events and observe their
effect on a client (which has a queued/autoconnect function with its
simulated network usage). Final destination: kdebase/runtime/solid
kdebase/workspace/libs/solid/control
Library for writing network control applications. Provides the interface
for pluggable backends addressing different platforms' networking
subsystems. As of KDE 4.0 the control function is incomplete and only the
network status reporting functions is completely specified.
kdebase/workspace/solid/networkmanager-*
Backends for different NetworkManager versions.