def get_obj(self, obj): """Get and return object according to 'obj.type' and 'obj.id'.""" obj_dict = (BaseRestService.get_items_from_resp(self.client.create_object( type=self.endpoint, object_name=unicode(obj.type), filters=query.Query.expression_get_obj_by_id(obj.id))).get( "values")[0]) return Entity.convert_dict_to_obj_repr(obj_dict)
def get_filter_exprs_by_ca(self, ca_title, ca_val, ca_type, operator): """Return all possible filter expressions for CA according to CA type""" if ca_type == AdminWidgetCustomAttributes.CHECKBOX: values_to_filter = (string_utils.get_list_of_all_cases( alias.YES_VAL) if string_utils.get_bool_value_from_arg(ca_val) else string_utils.get_list_of_all_cases( alias.NO_VAL)) elif ca_type == AdminWidgetCustomAttributes.PERSON: from lib.service import rest_service person = rest_service.ObjectsInfoService().get_obj( obj=Entity.convert_dict_to_obj_repr( dict(zip(["type", "id"], ca_val.split(":"))))) values_to_filter = [person.name, person.email] elif ca_type == AdminWidgetCustomAttributes.DATE: date_formats = ["%m/%d/%Y", "%m/%Y", "%Y-%m-%d", "%Y-%m", "%Y"] date = parser.parse(ca_val).date() values_to_filter = [ date.strftime(_format) for _format in date_formats ] else: values_to_filter = [ca_val] return [ self.get_filter_exp(ca_title, operator, [val]) for val in values_to_filter ]
def get_obj(self, obj): """Get and return object according to 'obj.type' and 'obj.id'.""" obj_dict = (BaseRestService.get_items_from_resp(self.client.create_object( type=self.endpoint, object_name=unicode(obj.type), filters=query.Query.expression_get_obj_by_id(obj.id))).get( "values")[0]) return Entity.convert_dict_to_obj_repr(obj_dict)
def get_snapshoted_obj(self, origin_obj, paren_obj): """Get and return snapshoted object according to 'origin_obj' and 'paren_obj'. """ snapshoted_obj_dict = ( BaseRestService.get_items_from_resp(self.client.create_object( type=self.endpoint, object_name=EntitiesFactory.obj_snapshot, filters=query.Query.expression_get_snapshoted_obj( obj_type=origin_obj.type, obj_id=origin_obj.id, parent_type=paren_obj.type, parent_id=paren_obj.id))).get("values")[0]) return Entity.convert_dict_to_obj_repr(snapshoted_obj_dict)
def get_snapshoted_obj(self, origin_obj, paren_obj): """Get and return snapshoted object according to 'origin_obj' and 'paren_obj'. """ snapshoted_obj_dict = ( BaseRestService.get_items_from_resp(self.client.create_object( type=self.endpoint, object_name=EntitiesFactory.obj_snapshot, filters=query.Query.expression_get_snapshoted_obj( obj_type=origin_obj.type, obj_id=origin_obj.id, parent_type=paren_obj.type, parent_id=paren_obj.id))).get("values")[0]) return Entity.convert_dict_to_obj_repr(snapshoted_obj_dict)
def get_comment_obj(self, paren_obj, comment_description): """Get and return comment object according to 'paren_obj' type) and comment_description 'paren_obj'. As default 'is_sort_by_created_at' and if even comments have the same descriptions query return selection w/ latest created datetime. """ comment_obj_dict = ( BaseRestService.get_items_from_resp(self.client.create_object( type=self.endpoint, object_name=EntitiesFactory.obj_comment, filters=query.Query.expression_get_comment_by_desc( parent_type=paren_obj.type, parent_id=paren_obj.id, comment_desc=comment_description), order_by=[{"name": "created_at", "desc": True}])).get("values")[0]) return Entity.convert_dict_to_obj_repr(comment_obj_dict)
def get_comment_obj(self, paren_obj, comment_description): """Get and return comment object according to 'paren_obj' type) and comment_description 'paren_obj'. As default 'is_sort_by_created_at' and if even comments have the same descriptions query return selection w/ latest created datetime. """ comment_obj_dict = ( BaseRestService.get_items_from_resp(self.client.create_object( type=self.endpoint, object_name=EntitiesFactory.obj_comment, filters=query.Query.expression_get_comment_by_desc( parent_type=paren_obj.type, parent_id=paren_obj.id, comment_desc=comment_description), order_by=[{"name": "created_at", "desc": True}])).get("values")[0]) return Entity.convert_dict_to_obj_repr(comment_obj_dict)