5 #ifndef SRC_VNSW_AGENT_OPER_LIBVIRT_INSTANCE_ADAPTER_H_
6 #define SRC_VNSW_AGENT_OPER_LIBVIRT_INSTANCE_ADAPTER_H_
12 #include <libvirt/libvirt.h>
13 #include <boost/uuid/uuid_io.hpp>
14 #include <pugixml/pugixml.hpp>
45 const std::string &
cmd()
const {
46 static const std::string cmdstr =
47 "libvirt domain start task";
58 const std::string &libvirt_conf_str,
59 const pugi::xml_document &libvirt_xml_conf);
61 const pugi::xml_document &libvirt_xml_conf,
62 const std::string &dom_uuid);
64 pugi::xml_node *devices_node,
65 const std::string &mac_addr,
66 const std::string &intf_name);
85 const std::string &
cmd()
const {
86 static const std::string cmdstr =
87 "libvirt domain stop task";
107 static std::string
GenIntfName(
const std::string &dom_uuid,
char type);
const std::string & cmd() const
const ServiceInstance::Properties & si_properties_
void DomainXMLSetInterfaceData(const pugi::xml_document &libvirt_xml_conf, const std::string &dom_uuid)
LibvirtInstanceAdapter * parent_adapter_
static bool CreateTAPInterfaces(const std::string &dom_uuid)
static void DomainXMLAddInterface(pugi::xml_node *devices_node, const std::string &mac_addr, const std::string &intf_name)
static void DomainXMLAssignUUID(const std::string &libvirt_conf_str, const pugi::xml_document &libvirt_xml_conf)
DomainStartTask(LibvirtInstanceAdapter *parent_adapter, const ServiceInstance::Properties &props, bool update)
LibvirtInstanceAdapter * parent_adapter_
DomainStopTask(LibvirtInstanceAdapter *parent_adapter, const ServiceInstance::Properties &props)
const std::string & cmd() const
const ServiceInstance::Properties & si_properties_
~LibvirtInstanceAdapter()
bool isApplicable(const ServiceInstance::Properties &props)
bool RegisterInterfaces(const ServiceInstance::Properties &si_properties)
InstanceTask * CreateStopTask(const ServiceInstance::Properties &props)
void EnsureDestroyed(const std::string &dom_uuid_str, const ServiceInstance::Properties &si_properties)
std::string libvirt_conn_addr_
LibvirtInstanceAdapter(Agent *agent, const std::string &libvirt_conn_addr)
static std::mutex conn_mutex_
static std::string GenIntfName(const std::string &dom_uuid, char type)
InstanceTask * CreateStartTask(const ServiceInstance::Properties &props, bool update)
void UnregisterInterfaces(const ServiceInstance::Properties &si_properties)