Exemple #1
0
static void
on_udisks_block_notify (GObject *object,
                        GParamSpec *pspec,
                        gpointer user_data)
{
  StorageBlock *block = STORAGE_BLOCK (user_data);
  storage_block_update (block);
}
Exemple #2
0
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));
}