def get_filtered_kinds(self, jfilters, db_kinds): """ Returns kind documents matching the filter provided Args: @param jfilters: description of the kind filter document @param db_kinds: Kind descriptions that already exist in database """ var = list() try: for elem in db_kinds: for jfilter in jfilters: # Step[1]: compare kinds to the filter ok = joker.filter_occi_description(elem, jfilter) if ok is True: # Step[2]: Store the filter matching documents var.append(elem) logger.debug("===== Get_filtered_Kinds: A kind was found =====") break return var, return_code["OK"] except Exception as e: logger.error("===== Get_filtered_Kinds: " + e.message + "=====") return "An error has occurred", return_code["Internal Server Error"]
def get_filtered_actions(self, jfilters, db_actions): """ Returns action documents matching the filter provided Args: @param jfilters: description of the action filter @param db_actions: action descriptions that already exist in database """ var = list() #Step[1]: Extract action descriptions from the dictionary try: for elem in db_actions: for jfilter in jfilters: #Step[2]: Filter action documents ok = joker.filter_occi_description(elem, jfilter) if ok is True: var.append(elem) logger.debug("===== Get_filtered_actions: A filtered action document is found =====") break return var, return_code['OK'] except Exception as e: logger.error("===== Get_filtered_actions: " + e.message + " ===== ") return "An error has occurred", return_code['Internal Server Error']
def get_filtered_resources(self, filters, descriptions_res): """ Retrieve the resources that match the filters provided Args: @param filters: Filters @param descriptions_res: Resource descriptions """ var = list() try: for desc in descriptions_res: for filter in filters: #Step[1]: Check if descriptions match the filters checks = joker.filter_occi_description( desc['OCCI_Description'], filter) if checks is True: #Step[2]: Keep record of those description matching the filter var.append(desc['OCCI_ID']) logger.debug( "===== Get_filtered_resources: A resource document is found =====" ) return var, return_code['OK'] except Exception as e: logger.error("===== Get_filtered_resources : " + e.message + " =====") return list(), return_code['Internal Server Error']
def get_filtered(filters, descriptions_entities): """ Retrieve the resources that match the filters provided Args: @param filters: Filters @param descriptions_entities: Entity descriptions """ var = list() try: for desc in descriptions_entities: for filter in filters: checks = joker.filter_occi_description(desc['OCCI_Description'], filter) if checks is True: var.append(desc['OCCI_ID']) logger.debug("Entity filtered : document found") break return var, return_code['OK'] except Exception as e: logger.error("filtered entity : " + e.message) return list(), return_code['Internal Server Error']
def get_filtered_kinds(self, jfilters, db_kinds): """ Returns kind documents matching the filter provided Args: @param jfilters: description of the kind document to retrieve @param db_kinds: Kind descriptions that already exist in database @return : <list> OCCI kind description contained inside of the kind document """ var = list() #Extract kind descriptions from the dictionary try: for elem in db_kinds: for jfilter in jfilters: ok = joker.filter_occi_description(elem, jfilter) if ok is True: var.append(elem) logger.debug("===== Get_filtered_Kinds: A kind was found =====") break return var, return_code['OK'] except Exception as e: logger.error("===== Get_filtered_Kinds: " + e.message + "=====") return "An error has occurred", return_code['Internal Server Error']
def get_filtered_mixins(self, jfilters, db_mixins): """ Returns mixin documents matching the filter provided Args: @param jfilters: description of the mixin document to retrieve @param db_mixins: mixin descriptions that already exist in database """ var = list() #Step[1]: Extract mixins descriptions from the dictionary try: for elem in db_mixins: for jfilter in jfilters: #Step[2]: Filter mixins ok = joker.filter_occi_description(elem, jfilter) if ok is True: var.append(elem) logger.debug("===== Get_filtered_mixins: A Mixin document is found =====") break #Step[3]: return the results return var, return_code['OK'] except Exception as e: logger.error("===== Get_filtered_mixins:" + e.message + " =====") return "An error has occurred", return_code['Internal Server Error']
def get_filtered_resources(self, filters, descriptions_res): """ Retrieve the resources that match the filters provided Args: @param filters: Filters @param descriptions_res: Resource descriptions """ var = list() try: for desc in descriptions_res: for filter in filters: #Step[1]: Check if descriptions match the filters checks = joker.filter_occi_description(desc['OCCI_Description'], filter) if checks is True: #Step[2]: Keep record of those description matching the filter var.append(desc['OCCI_ID']) logger.debug("===== Get_filtered_resources: A resource document is found =====") return var, return_code['OK'] except Exception as e: logger.error("===== Get_filtered_resources : " + e.message + " =====") return list(), return_code['Internal Server Error']