parameters: (obj_type, obj_id, name, analyst=None)
docstring: Remove a source from a top-level object.
  
      :param obj_type: The CRITs type of the top-level object.
      :type obj_type: str
      :param obj_id: The ObjectId to search for.
      :type obj_id: str
      :param name: The name of the source.
      :type name: str
      :param analyst: The user performing the removal.
      :type analyst: str
      :returns: dict with keys "success" (boolean) and "message" (str)
docstring_summary: Remove a source from a top-level object.
docstring_tokens: Remove a source from a top - level object .
function: def source_remove_all(obj_type, obj_id, name, analyst=None):
      """
      Remove a source from a top-level object.
  
      :param obj_type: The CRITs type of the top-level object.
      :type obj_type: str
      :param obj_id: The ObjectId to search for.
      :type obj_id: str
      :param name: The name of the source.
      :type name: str
      :param analyst: The user performing the removal.
      :type analyst: str
      :returns: dict with keys "success" (boolean) and "message" (str)
      """
  
      obj = class_from_id(obj_type, obj_id)
      if not obj:
          return {'success': False,
                  'message': 'Unable to find object in database.'}
      try:
          result = obj.remove_source(source=name,
                                     remove_all=True)
          obj.save(username=analyst)
          return result
      except ValidationError, e:
          return {'success':False, 'message': e}
function_tokens: def source_remove_all ( obj_type , obj_id , name , analyst = None ) : obj = class_from_id ( obj_type , obj_id ) if not obj : return { 'success' : False , 'message' : 'Unable to find object in database.' } try : result = obj . remove_source ( source = name , remove_all = True ) obj . save ( username = analyst ) return result except ValidationError , e : return { 'success' : False , 'message' : e }