]> xenbits.xensource.com Git - libvirt.git/commitdiff
storage: Create accessor API's for virStoragePoolObj
authorJohn Ferlan <jferlan@redhat.com>
Sun, 7 May 2017 11:56:03 +0000 (07:56 -0400)
committerJohn Ferlan <jferlan@redhat.com>
Tue, 19 Sep 2017 11:58:15 +0000 (07:58 -0400)
In preparation for making a private object, create accessor API's for
consumer storage functions to use:

    virStoragePoolObjGetDef
    virStoragePoolObjSetDef
    virStoragePoolObjGetNewDef
    virStoragePoolObjDefUseNewDef
    virStoragePoolObjGetConfigFile
    virStoragePoolObjSetConfigFile
    virStoragePoolObjGetAutostartLink
    virStoragePoolObjIsActive
    virStoragePoolObjSetActive
    virStoragePoolObjIsAutostart
    virStoragePoolObjSetAutostart
    virStoragePoolObjGetAsyncjobs
    virStoragePoolObjIncrAsyncjobs
    virStoragePoolObjDecrAsyncjobs

Signed-off-by: John Ferlan <jferlan@redhat.com>
src/conf/virstorageobj.c
src/conf/virstorageobj.h
src/libvirt_private.syms

index e83044bb27edc745e94bd09168cc55f05a02ba5d..ebda9fe6eb38f3fa54c83554bc194eb243bbff07 100644 (file)
 VIR_LOG_INIT("conf.virstorageobj");
 
 
+virStoragePoolDefPtr
+virStoragePoolObjGetDef(virStoragePoolObjPtr obj)
+{
+    return obj->def;
+}
+
+
+void
+virStoragePoolObjSetDef(virStoragePoolObjPtr obj,
+                        virStoragePoolDefPtr def)
+{
+    virStoragePoolDefFree(obj->def);
+    obj->def = def;
+}
+
+
+virStoragePoolDefPtr
+virStoragePoolObjGetNewDef(virStoragePoolObjPtr obj)
+{
+    return obj->newDef;
+}
+
+
+void
+virStoragePoolObjDefUseNewDef(virStoragePoolObjPtr obj)
+{
+    virStoragePoolDefFree(obj->def);
+    obj->def = obj->newDef;
+    obj->newDef = NULL;
+}
+
+
+char *
+virStoragePoolObjGetConfigFile(virStoragePoolObjPtr obj)
+{
+    return obj->configFile;
+}
+
+
+void
+virStoragePoolObjSetConfigFile(virStoragePoolObjPtr obj,
+                               char *configFile)
+{
+    VIR_FREE(obj->configFile);
+    obj->configFile = configFile;
+}
+
+
+char *
+virStoragePoolObjGetAutostartLink(virStoragePoolObjPtr obj)
+{
+    return obj->autostartLink;
+}
+
+
+bool
+virStoragePoolObjIsActive(virStoragePoolObjPtr obj)
+{
+    return obj->active;
+}
+
+
+void
+virStoragePoolObjSetActive(virStoragePoolObjPtr obj,
+                           bool active)
+{
+    obj->active = active;
+}
+
+
+bool
+virStoragePoolObjIsAutostart(virStoragePoolObjPtr obj)
+{
+    if (!obj->configFile)
+        return 0;
+
+    return obj->autostart == 1;
+}
+
+
+void
+virStoragePoolObjSetAutostart(virStoragePoolObjPtr obj,
+                              int autostart)
+{
+    obj->autostart = autostart;
+}
+
+
+unsigned int
+virStoragePoolObjGetAsyncjobs(virStoragePoolObjPtr obj)
+{
+    return obj->asyncjobs;
+}
+
+
+void
+virStoragePoolObjIncrAsyncjobs(virStoragePoolObjPtr obj)
+{
+    obj->asyncjobs++;
+}
+
+
+void
+virStoragePoolObjDecrAsyncjobs(virStoragePoolObjPtr obj)
+{
+    obj->asyncjobs--;
+}
+
+
 void
 virStoragePoolObjFree(virStoragePoolObjPtr obj)
 {
index ac51b5f7d240b1b9067c20a6e7163e1844b21d22..a5ed8f8387bafd534d9f24765ad1ac2a6b9a9109 100644 (file)
@@ -70,11 +70,51 @@ typedef bool
 (*virStoragePoolObjListFilter)(virConnectPtr conn,
                                virStoragePoolDefPtr def);
 
-static inline int
-virStoragePoolObjIsActive(virStoragePoolObjPtr obj)
-{
-    return obj->active;
-}
+virStoragePoolDefPtr
+virStoragePoolObjGetDef(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjSetDef(virStoragePoolObjPtr obj,
+                        virStoragePoolDefPtr def);
+
+virStoragePoolDefPtr
+virStoragePoolObjGetNewDef(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjDefUseNewDef(virStoragePoolObjPtr obj);
+
+char *
+virStoragePoolObjGetConfigFile(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjSetConfigFile(virStoragePoolObjPtr obj,
+                               char *configFile);
+
+char *
+virStoragePoolObjGetAutostartLink(virStoragePoolObjPtr obj);
+
+bool
+virStoragePoolObjIsActive(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjSetActive(virStoragePoolObjPtr obj,
+                           bool active);
+
+bool
+virStoragePoolObjIsAutostart(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjSetAutostart(virStoragePoolObjPtr obj,
+                              int autostart);
+
+unsigned int
+virStoragePoolObjGetAsyncjobs(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjIncrAsyncjobs(virStoragePoolObjPtr obj);
+
+void
+virStoragePoolObjDecrAsyncjobs(virStoragePoolObjPtr obj);
 
 int
 virStoragePoolObjLoadAllConfigs(virStoragePoolObjListPtr pools,
index d12db9b3ff5aa83395d8314615e859aa91b2ea8f..5814920d40253988b23afd27f42340713c2adb6b 100644 (file)
@@ -1055,10 +1055,20 @@ virSecretObjSetValueSize;
 # conf/virstorageobj.h
 virStoragePoolObjAssignDef;
 virStoragePoolObjClearVols;
+virStoragePoolObjDecrAsyncjobs;
+virStoragePoolObjDefUseNewDef;
 virStoragePoolObjDeleteDef;
 virStoragePoolObjFindByName;
 virStoragePoolObjFindByUUID;
+virStoragePoolObjGetAsyncjobs;
+virStoragePoolObjGetAutostartLink;
+virStoragePoolObjGetConfigFile;
+virStoragePoolObjGetDef;
 virStoragePoolObjGetNames;
+virStoragePoolObjGetNewDef;
+virStoragePoolObjIncrAsyncjobs;
+virStoragePoolObjIsActive;
+virStoragePoolObjIsAutostart;
 virStoragePoolObjIsDuplicate;
 virStoragePoolObjListExport;
 virStoragePoolObjListFree;
@@ -1069,6 +1079,10 @@ virStoragePoolObjNumOfStoragePools;
 virStoragePoolObjNumOfVolumes;
 virStoragePoolObjRemove;
 virStoragePoolObjSaveDef;
+virStoragePoolObjSetActive;
+virStoragePoolObjSetAutostart;
+virStoragePoolObjSetConfigFile;
+virStoragePoolObjSetDef;
 virStoragePoolObjSourceFindDuplicate;
 virStoragePoolObjUnlock;
 virStoragePoolObjVolumeGetNames;