2012/8/20 Ata E Husain Bohra <ata.husain(a)hotmail.com>:
The patch refactors the current ESX storage driver due to following
reasons:
1. Given most of the public APIs exposed by the storage driver in Libvirt
remains same, ESX storage driver should not implement logic specific
for only one supported format (current implementation only supports VMFS).
2. Decoupling interface from specific storage implementation gives us an
extensible design to hook implementation for other supported storage
formats.
This patch refactors the current driver to implement it as a facade pattern i.e.
the driver exposes all the public libvirt APIs, but uses backend drivers to get
the required task done. The backend drivers provide implementation specific to
the type of storage device.
This patch is quite huge. Maybe you could split it up into two
patches. The first one for adding the backend structure to the storage
driver and moving the current driver code to its own backend. The
second patch for adding the new iSCSI backend.
--
Matthias Bolte
http://photron.blogspot.com