[libvirt] [PATCH] cleanup virDomainCreateLinux into virDomainDefineXML
Daniel P. Berrange
berrange at redhat.com
Thu Oct 9 20:32:47 UTC 2008
On Thu, Oct 09, 2008 at 05:16:37PM +0200, Daniel Veillard wrote:
> As promised in the libvirt-qpid thread, virDomainCreateLinux() call
> name makes no sense (anymore), and it should be renamed, i guess since
> virDomainCreate() already exist and by similarity with
> virDomainDefineXML() the best name is virDomainCreateXML().
Agreed - we already have virNetworkCreateXML(), so virDomainCreateXML()
makes perfect sense.
> The associated patch rename virDomainCreateLinux to virDomainCreateXML
> create a small function virDomainCreateLinux calling the former,
> document it as deprecated. To help comprehension of the source code
> it's also best to rename the internal driver method in a similar
> way, which inflates the patch a bit but is IMHO worth it.
Since this doesn't impact the on-the-wire RPC number, this seems
like a worthwhile change too.
> > The patch also fixes a few #elif define(__sun__) and turn them
> into the correct #elif defined(__sun__) cpp instructions, and changes
> include/libvirt/virterror.h to improve the generated HTML page about the
> deprected fileds in the structure, since we need to regenerate the
> API xml and the docs, it was a good opportunity for that small change.
>
> I removed the docs/ subdir part from the patch as it's generated
> and mostly unreadable, that keeps it smaller too.
ACK to this all with just a few minor nit-picks.
>
> +/**
> + * virDomainCreateLinux:
> + * @conn: pointer to the hypervisor connection
> + * @xmlDesc: string containing an XML description of the domain
> + * @flags: callers should always pass 0
> + *
> + * Deprecated after 0.4.6 use virDomainCreateXML()
Can we make this a little clear that they provide 100% functionally
identical impl. Something like
* Deprecated after 0.4.6.
* Renamed to virDomainCreateXML() providing identical functionality.
* This existing name will left indefinitely for API compatability.
> Index: qemud/remote_protocol.c
> ===================================================================
> RCS file: /data/cvs/libxen/qemud/remote_protocol.c,v
> retrieving revision 1.18
> diff -u -p -r1.18 remote_protocol.c
> --- qemud/remote_protocol.c 5 Sep 2008 12:03:45 -0000 1.18
> +++ qemud/remote_protocol.c 9 Oct 2008 14:47:54 -0000
> @@ -618,7 +618,7 @@ xdr_remote_num_of_domains_ret (XDR *xdrs
> }
>
> bool_t
> -xdr_remote_domain_create_linux_args (XDR *xdrs, remote_domain_create_linux_args *objp)
> +xdr_remote_domain_create_xml_args (XDR *xdrs, remote_domain_create_xml_args *objp)
> {
>
> if (!xdr_remote_nonnull_string (xdrs, &objp->xml_desc))
> @@ -629,7 +629,7 @@ xdr_remote_domain_create_linux_args (XDR
> }
>
> bool_t
> -xdr_remote_domain_create_linux_ret (XDR *xdrs, remote_domain_create_linux_ret *objp)
> +xdr_remote_domain_create_xml_ret (XDR *xdrs, remote_domain_create_xml_ret *objp)
> {
>
> if (!xdr_remote_nonnull_domain (xdrs, &objp->dom))
> Index: qemud/remote_protocol.h
> ===================================================================
> RCS file: /data/cvs/libxen/qemud/remote_protocol.h,v
> retrieving revision 1.18
> diff -u -p -r1.18 remote_protocol.h
> --- qemud/remote_protocol.h 5 Sep 2008 12:03:45 -0000 1.18
> +++ qemud/remote_protocol.h 9 Oct 2008 14:47:54 -0000
> @@ -318,16 +318,16 @@ struct remote_num_of_domains_ret {
> };
> typedef struct remote_num_of_domains_ret remote_num_of_domains_ret;
>
> -struct remote_domain_create_linux_args {
> +struct remote_domain_create_xml_args {
> remote_nonnull_string xml_desc;
> int flags;
> };
> -typedef struct remote_domain_create_linux_args remote_domain_create_linux_args;
> +typedef struct remote_domain_create_xml_args remote_domain_create_xml_args;
>
> -struct remote_domain_create_linux_ret {
> +struct remote_domain_create_xml_ret {
> remote_nonnull_domain dom;
> };
> -typedef struct remote_domain_create_linux_ret remote_domain_create_linux_ret;
> +typedef struct remote_domain_create_xml_ret remote_domain_create_xml_ret;
>
> struct remote_domain_lookup_by_id_args {
> int id;
> @@ -1264,8 +1264,8 @@ extern bool_t xdr_remote_domain_memory_
> extern bool_t xdr_remote_list_domains_args (XDR *, remote_list_domains_args*);
> extern bool_t xdr_remote_list_domains_ret (XDR *, remote_list_domains_ret*);
> extern bool_t xdr_remote_num_of_domains_ret (XDR *, remote_num_of_domains_ret*);
> -extern bool_t xdr_remote_domain_create_linux_args (XDR *, remote_domain_create_linux_args*);
> -extern bool_t xdr_remote_domain_create_linux_ret (XDR *, remote_domain_create_linux_ret*);
> +extern bool_t xdr_remote_domain_create_xml_args (XDR *, remote_domain_create_xml_args*);
> +extern bool_t xdr_remote_domain_create_xml_ret (XDR *, remote_domain_create_xml_ret*);
> extern bool_t xdr_remote_domain_lookup_by_id_args (XDR *, remote_domain_lookup_by_id_args*);
> extern bool_t xdr_remote_domain_lookup_by_id_ret (XDR *, remote_domain_lookup_by_id_ret*);
> extern bool_t xdr_remote_domain_lookup_by_uuid_args (XDR *, remote_domain_lookup_by_uuid_args*);
> @@ -1445,8 +1445,8 @@ extern bool_t xdr_remote_domain_memory_p
> extern bool_t xdr_remote_list_domains_args ();
> extern bool_t xdr_remote_list_domains_ret ();
> extern bool_t xdr_remote_num_of_domains_ret ();
> -extern bool_t xdr_remote_domain_create_linux_args ();
> -extern bool_t xdr_remote_domain_create_linux_ret ();
> +extern bool_t xdr_remote_domain_create_xml_args ();
> +extern bool_t xdr_remote_domain_create_xml_ret ();
> extern bool_t xdr_remote_domain_lookup_by_id_args ();
> extern bool_t xdr_remote_domain_lookup_by_id_ret ();
> extern bool_t xdr_remote_domain_lookup_by_uuid_args ();
All the files in qemud/ named remote_XXXX are automatically generated
from remote_protocol.x, so if you change that one file the others should
update. I don't see a change to remote_protocol.x in this diff, so don;t
forget to update it when committing, or next protocol update will revert
your changes by mistake.
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list