def list_child_services(self, parent, all_children=False): get_logical_children = "false" if all_children else "true" if parent is None: child_services_result = self.manager.list_existing_service( None, self.account, get_logical_children=get_logical_children, username=self.username, password=self.password) else: child_services_result = self.manager.list_existing_service( [parent.to_xml_friendly_object()], self.account, get_logical_children=get_logical_children, username=self.username, password=self.password) list_result_list = [] if child_services_result.has_key( "ListExistingServicesResult" ) and child_services_result["ListExistingServicesResult"].children( ) is not None and len( child_services_result["ListExistingServicesResult"].children( )) > 0: for j in child_services_result[ "ListExistingServicesResult"].children(): child_service = AtomiaService(show_simple_props=True) child_service.from_simplexml(j) list_result_list.append(child_service) return list_result_list
def add_service(self, service, parent): if parent is None: result = self.manager.add_service([service.to_xml_friendly_object()], None, self.account, username = self.username, password = self.password) else: result = self.manager.add_service([service.to_xml_friendly_object()], [parent.to_xml_friendly_object()], self.account, username = self.username, password = self.password) newsvc = AtomiaService(show_simple_props = True) newsvc.from_simplexml(result["AddServiceResult"]) return newsvc
def modify_service(self, service): try: result = self.manager.modify_service([service.to_xml_friendly_object()], self.account, username = self.username, password = self.password) newsvc = AtomiaService(show_simple_props = True) newsvc.from_simplexml(result["ModifyServiceResult"]) return newsvc except SoapFault, error: if "ID000030" in error.faultstring: raise NotAllowedError()
def list_child_services(self, parent, all_children = False): get_logical_children = "false" if all_children else "true" if parent is None: child_services_result = self.manager.list_existing_service(None, self.account, get_logical_children = get_logical_children, username = self.username, password = self.password) else: child_services_result = self.manager.list_existing_service([parent.to_xml_friendly_object()], self.account, get_logical_children = get_logical_children, username = self.username, password = self.password) list_result_list = [] if child_services_result.has_key("ListExistingServicesResult") and child_services_result["ListExistingServicesResult"].children() is not None and len(child_services_result["ListExistingServicesResult"].children()) > 0: for j in child_services_result["ListExistingServicesResult"].children(): child_service = AtomiaService(show_simple_props = True) child_service.from_simplexml(j) list_result_list.append(child_service) return list_result_list
def modify_service(self, service): try: result = self.manager.modify_service( [service.to_xml_friendly_object()], self.account, username=self.username, password=self.password) newsvc = AtomiaService(show_simple_props=True) newsvc.from_simplexml(result["ModifyServiceResult"]) return newsvc except SoapFault, error: if "ID000030" in error.faultstring: raise NotAllowedError()
def find_services_by_path_with_paging(self, search_criteria_list, search_properties = None, sort_by_prop_name = '', sort_asc = 'true',): xml_search_criteria_list = [] for criteria in search_criteria_list: xml_search_criteria_list.append(criteria.to_xml_friendly_object('atom:ServiceSearchCriteria', 'ServiceSearchCriteria')) xml_search_criteria_property_list = [] for property1 in search_properties: xml_search_criteria_property_list.append(property1.to_xml_friendly_object('arr:KeyValueOfstringstring', 'KeyValueOfstringstring')) child_services_result = self.manager.find_services_by_path_with_paging(xml_search_criteria_list, self.account, xml_search_criteria_property_list, sort_by_prop_name, sort_asc, username = self.username, password = self.password) list_result_list = [] if child_services_result.has_key("FindServicesByPathWithPagingResult") and child_services_result["FindServicesByPathWithPagingResult"].children() is not None and len(child_services_result["FindServicesByPathWithPagingResult"].children()) > 0: for j in child_services_result["FindServicesByPathWithPagingResult"].children(): child_service = AtomiaService(show_simple_props = True) child_service.from_simplexml(j) list_result_list.append(child_service) return list_result_list
def add_service(self, service, parent): if parent is None: result = self.manager.add_service( [service.to_xml_friendly_object()], None, self.account, username=self.username, password=self.password) else: result = self.manager.add_service( [service.to_xml_friendly_object()], [parent.to_xml_friendly_object()], self.account, username=self.username, password=self.password) newsvc = AtomiaService(show_simple_props=True) newsvc.from_simplexml(result["AddServiceResult"]) return newsvc
def find_services_by_path_with_paging( self, search_criteria_list, search_properties=None, sort_by_prop_name='', sort_asc='true', ): xml_search_criteria_list = [] for criteria in search_criteria_list: xml_search_criteria_list.append( criteria.to_xml_friendly_object('atom:ServiceSearchCriteria', 'ServiceSearchCriteria')) xml_search_criteria_property_list = [] for property1 in search_properties: xml_search_criteria_property_list.append( property1.to_xml_friendly_object('arr:KeyValueOfstringstring', 'KeyValueOfstringstring')) child_services_result = self.manager.find_services_by_path_with_paging( xml_search_criteria_list, self.account, xml_search_criteria_property_list, sort_by_prop_name, sort_asc, username=self.username, password=self.password) list_result_list = [] if child_services_result.has_key( "FindServicesByPathWithPagingResult" ) and child_services_result[ "FindServicesByPathWithPagingResult"].children( ) is not None and len(child_services_result[ "FindServicesByPathWithPagingResult"].children()) > 0: for j in child_services_result[ "FindServicesByPathWithPagingResult"].children(): child_service = AtomiaService(show_simple_props=True) child_service.from_simplexml(j) list_result_list.append(child_service) return list_result_list