bottle.request.body - python examples

Here are the examples of the python api bottle.request.body taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

16 Examples 7

3 View Complete Implementation : item_behavior.py
Copyright Apache License 2.0
Author : airbnb
    def _get_parent(self):
        params = json.load(request.body)
        parent = params.get('parent')
        if parent is None or 'id' not in parent:
            abort(400, 'Missing parameter: parent(id)')
        parent_id = parent['id']
        return get_folder_by_id(self._db_session, parent_id)

3 View Complete Implementation : urd.py
Copyright Apache License 2.0
Author : eBay
@route('/add', method='POST')
@auth_basic(auth)
def add():
	data = DotDict(json.load(request.body))
	if data.user != request.auth[0]:
		abort(401, "Error:  user does not match authentication!")
	result = db.add(data)
	return result

3 View Complete Implementation : service.py
Copyright Apache License 2.0
Author : UltimateSoftware
@post('/api/v1/form')
def form_example():
    """Stores training data from a given form to the database.

    :return: The response payload containing the generated ID of the given form.
    """

    form = json.load(request.body)
    client = MongoClient(MONGO_HOST)
    db = client.get_database(MONGO_DATABASE)
    form = transform_form(form)
    response.content_type = 'application/json'
    return json.dumps({'form_id': save_form(db, form)})

3 View Complete Implementation : service.py
Copyright Apache License 2.0
Author : UltimateSoftware
@post('/api/v1/fill_form')
def fill_form_endpoint():
    """Fills a given form using the stored forms in the database.

    :return: A mapping from form element IDs to suggested values for the form.
    """

    form = json.load(request.body)
    client = MongoClient(MONGO_HOST)
    db = client.get_database(MONGO_DATABASE)
    form = transform_form(form)
    forms = db.forms.find({})
    form = fill_form(forms, form)
    response.content_type = 'application/json'
    return json.dumps(form)

3 View Complete Implementation : page_analysis_controller.py
Copyright Apache License 2.0
Author : UltimateSoftware
    def page_yyyysis(self):
        """ Run page yyyysis for the POSTed concrete state.

        :return: The page yyyysis output for the provided concrete state (element clastifications).
        """

        results = {}

        concrete_state = json.load(request.body)

        yyyysis = self._service.get_page_yyyysis(concrete_state)

        LOGGER.info('yyyysis completed...')

        results["yyyysis"] = yyyysis

        LOGGER.debug('Results built...')

        return bottle.HTTPResponse(body=results, status=200)

3 View Complete Implementation : page_analysis_controller.py
Copyright Apache License 2.0
Author : UltimateSoftware
    def get_page_satles(self):
        """ Run page satle yyyysis for the POSTed concrete state.

        :return: The page yyyysis output for the provided concrete state (element clastifications).
        """

        results = {}

        concrete_state = json.load(request.body)

        yyyysis = self._service.get_page_satles(concrete_state)

        results["yyyysis"] = yyyysis

        return bottle.HTTPResponse(body=results, status=200)

3 View Complete Implementation : page_analysis_controller.py
Copyright Apache License 2.0
Author : UltimateSoftware
    def add(self):
        """ Adds a labeled element to the underlying training data, and retrains the underlying clastifiers.

        :return: Response code.
        """

        results = {}

        element = json.load(request.body)

        self._service.add_element(element)

        return bottle.HTTPResponse(body=results, status=200)

0 View Complete Implementation : file_behavior.py
Copyright Apache License 2.0
Author : airbnb
    def update_file_info(self, file_id):
        file_object = get_file_by_id(self._db_session, file_id)
        self._check_file_lock(file_object)
        params = json.load(request.body)
        for key, value in params.items():
            if not hasattr(FileModel, key):
                abort(400, 'File has no attribute {0}.'.format(key))
            if key == 'parent':
                # Move
                parent_id = value['id']
                parent_folder = get_folder_by_id(self._db_session, parent_id)
                file_object.parent_id = parent_folder.id
                self._db_session.add(
                    EventModel(event_type='ITEM_MOVE', source_id=file_object.file_id, source_type='file'),
                )
            else:
                setattr(file_object, key, value)
                if key == 'name':
                    self._db_session.add(
                        EventModel(event_type='ITEM_RENAME', source_id=file_object.file_id, source_type='file'),
                    )
                elif key == 'sync_state':
                    event_type = 'ITEM_SYNC' if value == 'synced' else 'ITEM_UNSYNC'
                    self._db_session.add(
                        EventModel(event_type=event_type, source_id=file_object.file_id, source_type='file'),
                    )
        self._db_session.commit()
        return json.dumps(file_object)

0 View Complete Implementation : folder_behavior.py
Copyright Apache License 2.0
Author : airbnb
    def update_folder_info(self, folder_id):
        folder = get_folder_by_id(self._db_session, folder_id)
        params = json.load(request.body)
        for key, value in params.items():
            if not hasattr(FolderModel, key):
                abort(400, 'Folder has no attribute {0}.'.format(key))
            if key == 'parent':
                # Move
                parent_id = value['id']
                parent_folder = get_folder_by_id(self._db_session, parent_id)
                folder.parent_id = parent_folder.id
                self._db_session.add(
                    EventModel(event_type='ITEM_MOVE', source_id=folder.folder_id, source_type='folder'),
                )
            else:
                setattr(folder, key, value)
                if key == 'name':
                    self._db_session.add(
                        EventModel(event_type='ITEM_RENAME', source_id=folder.folder_id, source_type='folder'),
                    )
                elif key == 'sync_state':
                    event_type = 'ITEM_SYNC' if value == FolderSyncState.IS_SYNCED else 'ITEM_UNSYNC'
                    self._db_session.add(
                        EventModel(event_type=event_type, source_id=folder.folder_id, source_type='folder'),
                    )
        self._db_session.commit()
        return json.dumps(folder)

0 View Complete Implementation : folder_behavior.py
Copyright Apache License 2.0
Author : airbnb
    def create_folder(self):
        """
        https://developers.box.com/docs/#folders-create-a-new-folder
        """
        params = json.load(request.body)
        name = params.get('name')
        if name is None:
            abort(400, 'Missing parameter: name')
        parent = params.get('parent')
        if parent is None or 'id' not in parent:
            abort(400, 'Missing parameter: parent(id)')
        parent_id = parent['id']
        try:
            parent_folder = self._db_session.query(FolderModel).filter_by(folder_id=parent_id).one()
        except NoResultFound:
            abort(404)
        owner = get_user_from_header(self._db_session)
        name_in_use = self._db_session.query(FolderModel).filter_by(name=name).count()
        if name_in_use:
            abort(409, 'An item with that name already exists.')
        folder = FolderModel(name=name, parent_id=parent_folder.id, owned_by=owner, created_by=owner)
        self._db_session.add(folder)
        self._db_session.commit()
        self._db_session.add(EventModel(event_type='ITEM_CREATE', source_id=folder.folder_id, source_type='folder'))
        self._db_session.commit()
        return json.dumps(folder)