Exemple #1
0
def export_file_by_type_id(public_id, export_class):
    try:
        export_type_class = load_class('cmdb.file_export.export_types.' + export_class)
        export_type = export_type_class()
        file_export = FileExporter(None, export_type, public_id)
    except TypeNotFoundError as e:
        return abort(400, e.message)
    except ModuleNotFoundError as e:
        return abort(400, e)
    except CMDBError as e:
        return abort(404, jsonify(message='Not Found', error=e.message))

    return file_export.export()
def export_file_by_type_id(type_id, export_class, request_user: UserModel):
    try:
        export_type_class = load_class('cmdb.file_export.export_types.' + export_class)
        export_type = export_type_class()
        file_export = FileExporter(export_type, type_id)
        file_export.objects = file_export.from_database(user=request_user, permission=AccessControlPermission.READ)
    except TypeNotFoundError as e:
        return abort(400, e.message)
    except ModuleNotFoundError as e:
        return abort(400, e)
    except CMDBError as e:
        return abort(404, jsonify(message='Not Found', error=e.message))

    return file_export.export()
Exemple #3
0
def export_file():
    try:
        _object_ids = request.args.get('ids', [])
        _class = request.args.get('classname', '')
        _zipping = request.args.get('zip', False) in ['true', 'True']

        if _zipping:
            export_type_class = load_class('cmdb.file_export.export_types.' + 'ZipExportType')()
            file_export = FileExporter('object', export_type_class, _object_ids, _class)
        else:
            export_type_class = load_class('cmdb.file_export.export_types.' + _class)()
            file_export = FileExporter('object', export_type_class, _object_ids)

    except TypeNotFoundError as e:
        return abort(400, e.message)
    except ModuleNotFoundError as e:
        return abort(400, e)
    except CMDBError as e:
        return abort(404, jsonify(message='Not Found', error=e.message))

    return file_export.export()
Exemple #4
0
def get_filetypes():
    filetypes = FileExporter.get_filetypes()
    filetype_list = []
    for filetype in filetypes:
        filetype_class = load_class('cmdb.file_export.export_types.' + filetype)
        filetype_properties = {
                'id': filetype,
                'label': filetype_class.LABEL,
                'icon': filetype_class.ICON,
                'multiTypeSupport': filetype_class.MULTITYPE_SUPPORT,
                'helperText': filetype_class.DESCRIPTION,
                'active': filetype_class.ACTIVE
        }
        filetype_list.append(filetype_properties)

    return make_response(filetype_list)
Exemple #5
0
def get_export_file_types():
    _types = FileExporter.get_type_list()
    _list = []

    for type_element in _types:
        type_element_class = load_class('cmdb.file_export.export_types.' + type_element)
        type_element_properties = {
                'id': type_element,
                'label': type_element_class.LABEL,
                'icon': type_element_class.ICON,
                'multiTypeSupport': type_element_class.MULTITYPE_SUPPORT,
                'helperText': type_element_class.DESCRIPTION,
                'active': type_element_class.ACTIVE
        }
        _list.append(type_element_properties)

    return make_response(_list)
def export_file(request_user: UserModel):
    import json
    try:
        _object_ids = json.loads(request.args.get('ids', []))
        _class = request.args.get('classname', '')
        _zipping = request.args.get('zip', False) in ['true', 'True']

        if _zipping:
            export_type_class = load_class('cmdb.file_export.export_types.' + 'ZipExportType')()
            file_export = FileExporter(export_type_class, _object_ids, 'object', _class)
        else:
            export_type_class = load_class('cmdb.file_export.export_types.' + _class)()
            file_export = FileExporter(export_type_class, _object_ids, 'object')

        file_export.objects = file_export.from_database(user=request_user, permission=AccessControlPermission.READ)
    except TypeNotFoundError as e:
        return abort(400, e.message)
    except ModuleNotFoundError as e:
        return abort(400, e)
    except CMDBError as e:
        return abort(404, jsonify(message='Not Found', error=e.message))

    return file_export.export()