GVirSandboxCleaner

GVirSandboxCleaner — Sandbox context cleanup tasks

Synopsis

#include <libvirt-sandbox/libvirt-sandbox.h>

#define             GVIR_SANDBOX_TYPE_CLEANER_HANDLE
struct              GVirSandboxCleaner;
struct              GVirSandboxCleanerClass;
gboolean            (*GVirSandboxCleanerFunc)           (GVirSandboxCleaner *ctxt,
                                                         GError **error,
                                                         gpointer opaque);
void                gvir_sandbox_cleaner_add_action_post_start
                                                        (GVirSandboxCleaner *ctxt,
                                                         GVirSandboxCleanerFunc func,
                                                         gpointer opaque,
                                                         GDestroyNotify ff);
void                gvir_sandbox_cleaner_add_action_post_stop
                                                        (GVirSandboxCleaner *ctxt,
                                                         GVirSandboxCleanerFunc func,
                                                         gpointer opaque,
                                                         GDestroyNotify ff);
void                gvir_sandbox_cleaner_add_rmdir_post_start
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *dir);
void                gvir_sandbox_cleaner_add_rmdir_post_stop
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *dir);
void                gvir_sandbox_cleaner_add_rmfile_post_start
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *file);
void                gvir_sandbox_cleaner_add_rmfile_post_stop
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *file);
GVirSandboxCleaner * gvir_sandbox_cleaner_new           (void);
gboolean            gvir_sandbox_cleaner_run_post_start (GVirSandboxCleaner *cleaner,
                                                         GError **error);
gboolean            gvir_sandbox_cleaner_run_post_stop  (GVirSandboxCleaner *cleaner,
                                                         GError **error);

Object Hierarchy

  GObject
   +----GVirSandboxCleaner

Description

Provides an object for managing cleanup tasks associated with a sandbox

The GVirSandboxCleaner object provides a framework for registering cleanup tasks to be performed at various stages of a sandbox's lifecycle. This is typically used to delete temporary files and other similar state.

Details

GVIR_SANDBOX_TYPE_CLEANER_HANDLE

#define GVIR_SANDBOX_TYPE_CLEANER_HANDLE      (gvir_sandbox_cleaner_handle_get_type ())

struct GVirSandboxCleaner

struct GVirSandboxCleaner;

struct GVirSandboxCleanerClass

struct GVirSandboxCleanerClass {
    GObjectClass parent_class;
};

GVirSandboxCleanerFunc ()

gboolean            (*GVirSandboxCleanerFunc)           (GVirSandboxCleaner *ctxt,
                                                         GError **error,
                                                         gpointer opaque);

gvir_sandbox_cleaner_add_action_post_start ()

void                gvir_sandbox_cleaner_add_action_post_start
                                                        (GVirSandboxCleaner *ctxt,
                                                         GVirSandboxCleanerFunc func,
                                                         gpointer opaque,
                                                         GDestroyNotify ff);

gvir_sandbox_cleaner_add_action_post_stop ()

void                gvir_sandbox_cleaner_add_action_post_stop
                                                        (GVirSandboxCleaner *ctxt,
                                                         GVirSandboxCleanerFunc func,
                                                         gpointer opaque,
                                                         GDestroyNotify ff);

gvir_sandbox_cleaner_add_rmdir_post_start ()

void                gvir_sandbox_cleaner_add_rmdir_post_start
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *dir);

gvir_sandbox_cleaner_add_rmdir_post_stop ()

void                gvir_sandbox_cleaner_add_rmdir_post_stop
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *dir);

gvir_sandbox_cleaner_add_rmfile_post_start ()

void                gvir_sandbox_cleaner_add_rmfile_post_start
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *file);

gvir_sandbox_cleaner_add_rmfile_post_stop ()

void                gvir_sandbox_cleaner_add_rmfile_post_stop
                                                        (GVirSandboxCleaner *cleaner,
                                                         const gchar *file);

gvir_sandbox_cleaner_new ()

GVirSandboxCleaner * gvir_sandbox_cleaner_new           (void);

Create a new sandbox cleaner

Returns :

a new sandbox cleaner object. [transfer full]

gvir_sandbox_cleaner_run_post_start ()

gboolean            gvir_sandbox_cleaner_run_post_start (GVirSandboxCleaner *cleaner,
                                                         GError **error);

gvir_sandbox_cleaner_run_post_stop ()

gboolean            gvir_sandbox_cleaner_run_post_stop  (GVirSandboxCleaner *cleaner,
                                                         GError **error);