static void on_udisks_block_notify (GObject *object, GParamSpec *pspec, gpointer user_data) { StorageBlock *block = STORAGE_BLOCK (user_data); storage_block_update (block); }
static void storage_block_constructed (GObject *object) { StorageBlock *block = STORAGE_BLOCK (object); block->udisks_block = g_object_ref (storage_object_get_udisks_block (block->object)); g_signal_connect (block->udisks_block, "notify", G_CALLBACK (on_udisks_block_notify), block); storage_block_update (block); if (G_OBJECT_CLASS (storage_block_parent_class)->constructed != NULL) G_OBJECT_CLASS (storage_block_parent_class)->constructed (object); }
static void provider_update_block (StorageProvider *provider, const gchar *path) { UDisksObject *udisks_object = udisks_client_peek_object (provider->udisks_client, path); if (udisks_object == NULL) return; UDisksBlock *udisks_block = udisks_object_peek_block (udisks_object); if (udisks_block == NULL) return; StorageObject *storage_object = storage_provider_lookup_for_udisks_block (provider, udisks_block); if (storage_object == NULL) return; CockpitStorageBlock *storage_block = cockpit_object_peek_storage_block (COCKPIT_OBJECT (storage_object)); if (storage_block == NULL) return; storage_block_update (STORAGE_BLOCK (storage_block)); }