## NMRemoteConnection

NMRemoteConnection

## Synopsis

    #define             NM_REMOTE_CONNECTION_UPDATED
    #define             NM_REMOTE_CONNECTION_REMOVED
                        NMRemoteConnection;
                        NMRemoteConnectionClass;
    void                (*NMRemoteConnectionCommitFunc)     (NMRemoteConnection *connection,
                                                             GError *error,
                                                             gpointer user_data);
    void                (*NMRemoteConnectionDeleteFunc)     (NMRemoteConnection *connection,
                                                             GError *error,
                                                             gpointer user_data);
    void                (*NMRemoteConnectionGetSecretsFunc) (NMRemoteConnection *connection,
                                                             GHashTable *secrets,
                                                             GError *error,
                                                             gpointer user_data);
    NMRemoteConnection * nm_remote_connection_new           (DBusGConnection *bus,
                                                             const char *path);
    void                nm_remote_connection_commit_changes (NMRemoteConnection *connection,
                                                             NMRemoteConnectionCommitFunc callback,
                                                             gpointer user_data);
    void                nm_remote_connection_delete         (NMRemoteConnection *connection,
                                                             NMRemoteConnectionDeleteFunc callback,
                                                             gpointer user_data);
    void                nm_remote_connection_get_secrets    (NMRemoteConnection *connection,
                                                             const char *setting_name,
                                                             NMRemoteConnectionGetSecretsFunc callback,
                                                             gpointer user_data);

## Object Hierarchy

      GObject
       +----NMConnection
             +----NMRemoteConnection

## Implemented Interfaces

NMRemoteConnection implements GInitable and GAsyncInitable.

## Properties

      "bus"                      DBusGConnection*      : Write / Construct Only
      "dbus-connection"          DBusGConnection*      : Write / Construct Only
      "dbus-path"                gchar*                : Write / Construct Only

## Signals

      "removed"                                        : Run First
      "updated"                                        : Run First
      "visible"                                        : Run First

## Description

## Details

### NM_REMOTE_CONNECTION_UPDATED

    #define NM_REMOTE_CONNECTION_UPDATED         "updated"

### NM_REMOTE_CONNECTION_REMOVED

    #define NM_REMOTE_CONNECTION_REMOVED         "removed"

### NMRemoteConnection

    typedef struct _NMRemoteConnection NMRemoteConnection;

### NMRemoteConnectionClass

    typedef struct {
    	NMConnectionClass parent_class;

    	/* Signals */
    	void (*updated) (NMRemoteConnection *connection,
    	                 GHashTable *new_settings);

    	void (*removed) (NMRemoteConnection *connection);

    	/* Padding for future expansion */
    	void (*_reserved1) (void);
    	void (*_reserved2) (void);
    	void (*_reserved3) (void);
    	void (*_reserved4) (void);
    	void (*_reserved5) (void);
    	void (*_reserved6) (void);
    } NMRemoteConnectionClass;

### NMRemoteConnectionCommitFunc ()

    void                (*NMRemoteConnectionCommitFunc)     (NMRemoteConnection *connection,
                                                             GError *error,
                                                             gpointer user_data);

Called when NetworkManager has committed outstanding changes to a connection to backing storage as a result of `nm_remote_connection_commit_changes()`.

`connection` : | the connection for which updates are to be committed
`error` : | on failure, a descriptive error
`user_data` : | user data passed to `nm_remote_connection_commit_changes()`

### NMRemoteConnectionDeleteFunc ()

    void                (*NMRemoteConnectionDeleteFunc)     (NMRemoteConnection *connection,
                                                             GError *error,
                                                             gpointer user_data);

Called when NetworkManager has deleted a connection as a result of `nm_remote_connection_delete()`.

`connection` : | the connection to be deleted
`error` : | on failure, a descriptive error
`user_data` : | user data passed to `nm_remote_connection_delete()`

### NMRemoteConnectionGetSecretsFunc ()

    void                (*NMRemoteConnectionGetSecretsFunc) (NMRemoteConnection *connection,
                                                             GHashTable *secrets,
                                                             GError *error,
                                                             gpointer user_data);

Called when NetworkManager returns secrets in response to a request for secrets via `nm_remote_connection_get_secrets()`.

`connection` : | the connection for which secrets were requested
`secrets` : | on success, a hash table of hash tables, with each inner hash mapping a setting property to a GValue containing that property's value. [element-type utf8 GLib.HashTable]
`error` : | on failure, a descriptive error
`user_data` : | user data passed to `nm_remote_connection_get_secrets()`

### nm_remote_connection_new ()

    NMRemoteConnection * nm_remote_connection_new           (DBusGConnection *bus,
                                                             const char *path);

Creates a new object representing the remote connection.

`bus` : | a valid and connected D-Bus connection
`path` : | the D-Bus path of the connection as exported by the settings service
Returns : | the new remote connection object on success, or `NULL` on failure

### nm_remote_connection_commit_changes ()

    void                nm_remote_connection_commit_changes (NMRemoteConnection *connection,
                                                             NMRemoteConnectionCommitFunc callback,
                                                             gpointer user_data);

Save any local changes to the settings and properties of this connection and save them in the settings service.

`connection` : | the NMRemoteConnection
`callback` : | a function to be called when the commit completes. [scope async][allow-none]
`user_data` : | caller-specific data to be passed to `callback`. [closure]

### nm_remote_connection_delete ()

    void                nm_remote_connection_delete         (NMRemoteConnection *connection,
                                                             NMRemoteConnectionDeleteFunc callback,
                                                             gpointer user_data);

Delete the connection.

`connection` : | the NMRemoteConnection
`callback` : | a function to be called when the delete completes. [scope async][allow-none]
`user_data` : | caller-specific data to be passed to `callback`. [closure]

### nm_remote_connection_get_secrets ()

    void                nm_remote_connection_get_secrets    (NMRemoteConnection *connection,
                                                             const char *setting_name,
                                                             NMRemoteConnectionGetSecretsFunc callback,
                                                             gpointer user_data);

Request the connection's secrets.

`connection` : | the NMRemoteConnection
`setting_name` : | the NMSetting object name to get secrets for
`callback` : | a function to be called when the update completes; must not be `NULL`. [scope async]
`user_data` : | caller-specific data to be passed to `callback`. [closure]

## Property Details

### The `"bus"` property

      "bus"                      DBusGConnection*      : Write / Construct Only

DBusGConnection.

### The `"dbus-connection"` property

      "dbus-connection"          DBusGConnection*      : Write / Construct Only

DBusGConnection.

### The `"dbus-path"` property

      "dbus-path"                gchar*                : Write / Construct Only

DBus Object Path.

Default value: NULL

## Signal Details

### The `"removed"` signal

    void                user_function                      (NMRemoteConnection *connection,
                                                            gpointer            user_data)       : Run First

This signal is emitted when a connection is either deleted or becomes invisible to the current user.

`connection` : | a NMConnection
`user_data` : | user data set when the signal handler was connected.

### The `"updated"` signal

    void                user_function                      (NMRemoteConnection *connection,
                                                            gpointer            user_data)       : Run First

This signal is emitted when a connection changes, and it is still visible to the user.

`connection` : | a NMConnection
`user_data` : | user data set when the signal handler was connected.

### The `"visible"` signal

    void                user_function                      (NMRemoteConnection *nmremoteconnection,
                                                            gboolean            arg1,
                                                            gpointer            user_data)               : Run First

`nmremoteconnection` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.