def delete(self, id): if not DbHelper.dataset_id_exists(id): abort(status.HTTP_404_NOT_FOUND, "Could not delete non existent dataset") DbHelper.delete_dataset(id) return '', status.HTTP_204_NO_CONTENT
def test_client_has_dataset_returns_true(self): client = Client(name='Client', ip_address=IP_ADDRESS) dataset = Dataset(filename=FILENAME) client.datasets = [dataset] result = DbHelper.client_has_dataset(client, dataset) self.assertTrue(result)
def patch(self, id): dataset = DbHelper.get_dataset(id) if not dataset: abort(status.HTTP_404_NOT_FOUND, "Could not patch non existent dataset") self._update_dataset(dataset) return '', status.HTTP_204_NO_CONTENT
def patch(self, id): client = DbHelper.get_client(id) if not client: return abort(status.HTTP_404_NOT_FOUND, "Could not patch non existent client") self._update_client(client) return '', status.HTTP_204_NO_CONTENT
def post(self): input_data = request.get_json() self._validate_data(input_data) client_id = input_data['client'] client = DbHelper.get_client(client_id) if not client: abort(status.HTTP_400_BAD_REQUEST, "Specified client %s does not exist" % client_id) new_dataset = self._create_dataset(input_data) if DbHelper.client_has_dataset(client, new_dataset): abort( status.HTTP_409_CONFLICT, "Could not overwrite existing dataset. " "Use PATCH to modify resource or DELETE to remove it") return self._add_dataset(client, new_dataset)
def post(self): input_data = request.get_json() self._validate_data(input_data) new_client = Client(name=input_data['name'], ip_address=input_data['ip_address']) if DbHelper.client_exists(new_client): abort(status.HTTP_409_CONFLICT, "Could not overwrite existing client. " "Use PATCH to modify resource or DELETE to remove it") return self._add_client(new_client)
def _update_dataset(self, dataset): json_data = request.get_json() if 'client' in json_data: client_id = json_data['client'] if not DbHelper.client_id_exists(client_id): abort(status.HTTP_400_BAD_REQUEST, "Specified client %s does not exist" % client_id) dataset.client_id = client_id if 'filename' in json_data: dataset.filename = json_data['filename'] self._update_metadata(json_data, dataset) db.session.commit()
def get(self, id): dataset = DbHelper.get_dataset(id) if not dataset: abort(status.HTTP_404_NOT_FOUND, "Could not find dataset %s" % id) return jsonify(dataset.details_json())
def get(self, id): client = DbHelper.get_client(id) if not client: abort(status.HTTP_404_NOT_FOUND, "Could not find client %s" % id) return jsonify(client.details_json())