[libvirt] [PATCH 10/19] storage: Create accessor API's for virStoragePoolObj
John Ferlan
jferlan at redhat.com
Fri Jul 21 11:15:00 UTC 2017
On 07/21/2017 04:22 AM, Pavel Hrdina wrote:
> On Thu, Jul 20, 2017 at 05:38:53PM -0400, John Ferlan wrote:
>> On 07/14/2017 11:37 AM, Pavel Hrdina wrote:
>>> On Tue, May 09, 2017 at 11:30:17AM -0400, John Ferlan wrote:
>>>> In preparation for making a private object, create accessor API's for
>>>> consumer storage functions to use:
>>>>
>>>> virStoragePoolObjGetDef
>>>> virStoragePoolObjGetNewDef
>>>> virStoragePoolObjStealNewDef
>>>> virStoragePoolObjGetConfigFile
>>>> virStoragePoolObjSetConfigFile
>>>> virStoragePoolObjIsActive
>>>> virStoragePoolObjSetActive
>>>> virStoragePoolObjGetAsyncjobs
>>>> virStoragePoolObjIncrAsyncjobs
>>>> virStoragePoolObjDecrAsyncjobs
>>>>
>>>> Signed-off-by: John Ferlan <jferlan at redhat.com>
>>>> ---
>>>> src/conf/virstorageobj.c | 74 ++++++++++++++++++++++++++++++++++++++++++++++++
>>>> src/conf/virstorageobj.h | 36 +++++++++++++++++++----
>>>> src/libvirt_private.syms | 10 +++++++
>>>> 3 files changed, 115 insertions(+), 5 deletions(-)
>>>>
>>>> diff --git a/src/conf/virstorageobj.c b/src/conf/virstorageobj.c
>>>> index 23346f3..7d6b311 100644
>>>> --- a/src/conf/virstorageobj.c
>>>> +++ b/src/conf/virstorageobj.c
>>>> @@ -37,6 +37,80 @@
>>>> VIR_LOG_INIT("conf.virstorageobj");
>>>
>>> [...]
>>>
>>>> +void
>>>> +virStoragePoolObjStealNewDef(virStoragePoolObjPtr obj)
>>>> +{
>>>> + virStoragePoolDefFree(obj->def);
>>>> + obj->def = obj->newDef;
>>>> + obj->newDef = NULL;
>>>> +}
>>>
>>> I didn't notice this until the usage in following patches, the "Steal"
>>> part of the name is confusing. We have a macro "VIR_STEAL_PTR" which
>>> returns pointer and sets the original one to NULL. This function
>>> doesn't return the pointer, it replaces @def with @newDef.
>>>
>>> How about virStoragePoolObjUseNewDef() or
>>> virStoragePoolObjDefUseNewDef() or feel free to come up with another
>>> name which would be better than "Steel".
>>>
>>> Pavel
>>>
>>
>> It's theft by deception.
>>
>> How about virStoragePoolObjDefSwapNewDef
>
> "Swap" is not a good choice as well, it replaces and discards the
> original @def by @newDef, "Swap" can mean that the @def will be @newDef.
>
> Pavel
>
I'll go with virStoragePoolObjDefUseNewDef
Although it's more like :
virStoragePoolObjDefFreeAndAssignNewDefToDef
at some point the name of the function can be too descriptive and too
long;-). Not sure Use is the best either, but I did waste some time
looking at synonyms with nothing that made me think - yeah *that's* it
although Transmogrify came close (google transmogrify+calvin+hobbes -
when I worked at HP that's what we called the layer that "converted" or
"virtualized" privileged machine instructions into instructions that the
guest could run).
John
More information about the libvir-list
mailing list