Exemplo n.º 1
0
 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)
Exemplo n.º 2
0
 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
     ]
Exemplo n.º 3
0
 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)
Exemplo n.º 4
0
 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)
Exemplo n.º 5
0
 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)
Exemplo n.º 6
0
 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)
Exemplo n.º 7
0
 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)