dnsproxy: Only one copy of the relevant buffers will be made to a TCP request
[framework/connectivity/connman.git] / doc / manager-api.txt
index 80d81b5..3bd201d 100644 (file)
@@ -22,23 +22,10 @@ Methods             dict GetProperties()
                        Possible Errors: [service].Error.InvalidArguments
                                         [service].Error.InvalidProperty
 
-               void RequestScan(string type)
+               array{object,dict} GetTechnologies()
 
-                       Request to trigger a scan for the specified
-                       technology. The empty string "" triggers scanning
-                       on all technologies.
-
-                       Possible Errors: [service].Error.InvalidArguments
-
-               void EnableTechnology(string type)
-
-                       Enable specified type of technologies.
-
-                       Possible Errors: [service].Error.InvalidArguments
-
-               void DisableTechnology(string type)
-
-                       Disable specified type of technologies.
+                       Returns a list of tuples with technology object
+                       path and dictionary of technology properties.
 
                        Possible Errors: [service].Error.InvalidArguments
 
@@ -52,58 +39,6 @@ Methods              dict GetProperties()
 
                        Possible Errors: [service].Error.InvalidArguments
 
-               object LookupService(string pattern)
-
-                       Lookup a service matching the specific pattern.
-
-                       Examples are interface names like "eth0", "wlan0"
-                       etc. or service names like "hotspot" etc.
-
-                       In case of multiple services match the the pattern
-                       an error is returned.
-
-                       Possible Errors: [service].Error.InvalidArguments
-                                        [service].Error.NotUnique
-                                        [service].Error.NotFound
-
-               object ConnectService(dict network)
-
-                       Connect to a network specified by the given
-                       properties.
-
-                       For connecting to a hidden WiFi network for example
-                       it is required that Type = "wifi" and the SSID
-                       properties are provided.
-
-                       When successful this method will return object
-                       path of the service object.
-
-                       This method can also be used to connect to an
-                       already existing service. It works exactly the
-                       same as executing the Connect method from the
-                       service interface.
-
-                       This method call will only return in case of an
-                       error or when the service is fully connected. So
-                       setting a longer D-Bus timeout might be a really
-                       good idea.
-
-                       When 'SessionMode' property is enabled, this method
-                       call is disallowed.
-
-                       Possible Errors: [service].Error.InvalidArguments
-
-               void ProvisionService(string configuration)
-
-                       Provide a configuration for services.
-
-                       Service configuration is provided as a single string
-                       that follows the same format as configuration files,
-                       see config-format.txt. An exception to this format
-                       is that only one service can be provisioned per call.
-
-                       Possible Errors: [service].Error.InvalidArguments
-
                object ConnectProvider(dict provider)
 
                        Connect to a VPN specified by the given provider
@@ -164,7 +99,7 @@ Methods              dict GetProperties()
 
                        Possible Errors: [service].Error.InvalidArguments
 
-               object CreateSession(dict settings, object notifier)
+               object CreateSession(dict settings, object notifier)  [experimental]
 
                        Create a new session for the application. Every
                        application can create multiple session with
@@ -180,7 +115,7 @@ Methods             dict GetProperties()
                        Every application should at least create one session
                        to inform about its requirements and it purpose.
 
-               void DestroySession(object session)
+               void DestroySession(object session)  [experimental]
 
                        Remove the previously created session.
 
@@ -206,40 +141,75 @@ Methods           dict GetProperties()
 
                        Possible Errors: [service].Error.InvalidArguments
 
-Signals                PropertyChanged(string name, variant value)
+Signals                TechnologyAdded(object path, dict properties)
 
-                       This signal indicates a changed value of the given
-                       property.
+                       Signal that is sent when a new technology is added.
 
-Properties     string State [readonly]
+                       It contains the object path of the technology and
+                       also its properties.
 
-                       The global connection state of a system. Possible
-                       values are "online" if at least one connection exists
-                       and "offline" if no device is connected.
+               TechnologyRemoved(object path)
 
-                       In certain situations the state might change to
-                       the value "connected". This can only be seen if
-                       previously no connection was present.
+                       Signal that is sent when a modem has been removed.
 
-               array{string} AvailableTechnologies [readonly]
+                       The object path is no longer accessible after this
+                       signal and only emitted for reference.
 
-                       The list of available technologies. The strings
-                       are the same as the ones from the service types.
+               ServicesChanged(array{object, dict}, array{object})
 
-               array{string} EnabledTechnologies [readonly]
+                       Signals a list of services that have been changed
+                       via the first array. And a list of service that
+                       have been removed via the second array.
 
-                       The list of enabled technologies. The strings
-                       are the same as the ones from the service types.
+                       The list of added services is sorted. The dictionary
+                       with the properties might be empty in case none of
+                       the properties have changed. Or only contains the
+                       properties that have changed.
 
-               array{string} ConnectedTechnologies [readonly]
+                       For newly added services the whole set of properties
+                       will be present.
 
-                       The list of connected technologies. The strings
-                       are the same as the ones from the service type.
+                       The list of removed services can be empty.
 
-               string DefaultTechnology [readonly]
+                       This signal will only be triggered when the sort
+                       order of the service list or the number of services
+                       changes. It will not be emitted if only a property
+                       of the service object changes. For that it is
+                       required to watch the PropertyChanged signal of
+                       the service object.
 
-                       The current connected technology which holds the
-                       default route.
+               PropertyChanged(string name, variant value)
+
+                       This signal indicates a changed value of the given
+                       property.
+
+Properties     string State [readonly]
+
+                       The global connection state of a system. Possible
+                       values are "offline", "idle", "ready" and "online".
+
+                       If the device is in offline mode, the value "offline"
+                       indicates this special global state. It can also be
+                       retrieved via the OfflineMode property, but is kept
+                       here for consistency and to differentiate from "idle".
+
+                       However when OfflineMode property is true, the State
+                       property can still be "idle", "ready" or "online"
+                       since it is possible by the end user to re-enable
+                       individual technologies like WiFi and Bluetooth while
+                       in offline mode.
+
+                       The states "idle", "ready" and "online" match to
+                       states from the services. If no service is in
+                       either "ready" or "online" state it will indicate
+                       the "idle" state.
+
+                       If at least one service is in "ready" state and no
+                       service is in "online" state, then it will indicate
+                       the "ready" state.
+
+                       When at least one service is in "online" state,
+                       this property will indicate "online" as well.
 
                boolean OfflineMode [readwrite]
 
@@ -254,26 +224,6 @@ Properties string State [readonly]
                        the limited usage of WiFi or Bluetooth devices might
                        be allowed in some situations.
 
-               array{object} Technologies [readonly]
-
-                       List of technology object paths.
-
-               array{object} Services [readonly]
-
-                       List of service object paths. The list is sorted
-                       internally to have the service with the default
-                       route always first and then the favorite services
-                       followed by scan results.
-
-                       This list represents the available services for the
-                       current selected profile. If the profile gets changed
-                       then this list will be updated.
-
-                       The same list is available via the profile object
-                       itself. It is just provided here for convenience of
-                       applications only dealing with the current active
-                       profile.
-
                boolean SessionMode [readwrite]  [experminental]
 
                        This disables the auto connect feature. It should be