(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)
Remove a source from a top-level object.
Remove a source from a top - level object .
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}
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 }