From 4c4dfd6e880e0503448bbf4b1c147dc82955ee30 Mon Sep 17 00:00:00 2001 From: "Ruben S. Montero" Date: Thu, 5 Aug 2010 12:35:38 +0200 Subject: [PATCH] feature #282: Removed unneeded try, made VirtualMachineXML constructors as HostXML --- src/scheduler/include/VirtualMachineXML.h | 15 ++++++++++----- src/scheduler/src/pool/HostPoolXML.cc | 2 +- src/scheduler/src/pool/VirtualMachinePoolXML.cc | 17 +++-------------- src/scheduler/src/pool/VirtualMachineXML.cc | 16 +++------------- 4 files changed, 17 insertions(+), 33 deletions(-) diff --git a/src/scheduler/include/VirtualMachineXML.h b/src/scheduler/include/VirtualMachineXML.h index 4d7672ff67..0b9fcf65ca 100644 --- a/src/scheduler/include/VirtualMachineXML.h +++ b/src/scheduler/include/VirtualMachineXML.h @@ -29,13 +29,18 @@ class VirtualMachineXML : public ObjectXML { public: - VirtualMachineXML(const string &xml_doc); + VirtualMachineXML(const string &xml_doc):ObjectXML(xml_doc) + { + init_attributes(); + }; - VirtualMachineXML(const xmlNodePtr node); + VirtualMachineXML(const xmlNodePtr node):ObjectXML(node) + { + init_attributes(); + } ~VirtualMachineXML(); - int get_oid() const { return oid; @@ -62,7 +67,7 @@ public: /** * */ - int get_host(int& hid, + int get_host(int& hid, HostPoolXML * hpool, map& host_vms, int max_vms); @@ -100,7 +105,7 @@ protected: /** * For constructors */ - void init(); + void init_attributes(); //-------------------------------------------------------------------------- //-------------------------------------------------------------------------- diff --git a/src/scheduler/src/pool/HostPoolXML.cc b/src/scheduler/src/pool/HostPoolXML.cc index 4b1e8aaa32..328e20fac5 100644 --- a/src/scheduler/src/pool/HostPoolXML.cc +++ b/src/scheduler/src/pool/HostPoolXML.cc @@ -52,7 +52,7 @@ void HostPoolXML::add_object(xmlNodePtr node) NebulaLog::log("HOST",Log::ERROR, "XML Node does not represent a valid Host"); - return; + return; } HostXML* host = new HostXML( node ); diff --git a/src/scheduler/src/pool/VirtualMachinePoolXML.cc b/src/scheduler/src/pool/VirtualMachinePoolXML.cc index 0714926e7e..f842007ad2 100644 --- a/src/scheduler/src/pool/VirtualMachinePoolXML.cc +++ b/src/scheduler/src/pool/VirtualMachinePoolXML.cc @@ -51,23 +51,12 @@ void VirtualMachinePoolXML::add_object(xmlNodePtr node) { NebulaLog::log("VM",Log::ERROR, "XML Node does not represent a valid Virtual Machine"); - - return; + return; } - try - { - VirtualMachineXML* vm = new VirtualMachineXML( node ); + VirtualMachineXML* vm = new VirtualMachineXML(node); - objects.insert( pair(vm->get_oid(), vm) ); - } - catch(runtime_error& re) - { - ostringstream oss_re; - - oss_re << re.what(); - NebulaLog::log("VM",Log::ERROR,oss_re); - } + objects.insert(pair(vm->get_oid(),vm)); } /* -------------------------------------------------------------------------- */ diff --git a/src/scheduler/src/pool/VirtualMachineXML.cc b/src/scheduler/src/pool/VirtualMachineXML.cc index 673557f198..5bf1568c44 100644 --- a/src/scheduler/src/pool/VirtualMachineXML.cc +++ b/src/scheduler/src/pool/VirtualMachineXML.cc @@ -18,17 +18,7 @@ #include "VirtualMachineXML.h" -VirtualMachineXML::VirtualMachineXML(const string &xml_doc):ObjectXML(xml_doc) -{ - init(); -} - -VirtualMachineXML::VirtualMachineXML(const xmlNodePtr node):ObjectXML(node) -{ - init(); -} - -void VirtualMachineXML::init() +void VirtualMachineXML::init_attributes() { vector result; @@ -140,9 +130,9 @@ void VirtualMachineXML::set_priorities(vector& total) /* -------------------------------------------------------------------------- */ /* -------------------------------------------------------------------------- */ -int VirtualMachineXML::get_host(int& hid, +int VirtualMachineXML::get_host(int& hid, HostPoolXML * hpool, - map& host_vms, + map& host_vms, int max_vms) { vector::reverse_iterator i;