Пример #1
0
def delete_api_key_v1(key_id: str,
                      **kwargs) -> Tuple[str, int, Dict[str, str]]:
    if not key_id:
        raise exceptions.ValidationException("Invalid parameter: key_id")

    api_keys.delete_api_key_v1(key_id=key_id)
    return helpers.flask_http_response(200, helpers.format_success(True))
def delete_transaction_type_v1(txn_type: str,
                               **kwargs) -> Tuple[str, int, Dict[str, str]]:
    if not txn_type:
        raise exceptions.ValidationException("Invalid parameter: txn_type")

    transaction_types.delete_transaction_type_v1(txn_type)
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #3
0
def receipt_v1() -> Tuple[str, int, Dict[str, str]]:
    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    content = flask.request.json

    try:
        dragonnet.process_receipt_v1(content)
    except NotImplementedError as e:
        raise exceptions.BadRequest(str(e))
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #4
0
def register_transaction_type_v1() -> Tuple[str, int, Dict[str, str]]:
    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    content = flask.request.json

    try:
        _validate_create_txn_type_v1(content)
    except fastjsonschema.JsonSchemaException:
        raise exceptions.ValidationException("User input did not match JSON schema")

    transaction_types.register_transaction_type_v1(content)
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #5
0
def enqueue_v1() -> Tuple[str, int, Dict[str, str]]:
    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    content = flask.request.json
    deadline = int(cast(str, flask.request.headers.get(
        "deadline"))) if flask.request.headers.get("deadline") else 30

    try:
        _validate_broadcast_schema_v1(content)
    except fastjsonschema.JsonSchemaException as e:
        raise exceptions.ValidationException(str(e))

    dragonnet.enqueue_item_for_verification_v1(content, deadline)
    return helpers.flask_http_response(200, helpers.format_success(True))
def register_transaction_type_v1(**kwargs) -> Tuple[str, int, Dict[str, str]]:
    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    content = flask.request.json

    try:
        _validate_create_txn_type_v1(content)
        if content.get("custom_indexes"):
            helpers.verify_custom_indexes_options(content["custom_indexes"])
    except fastjsonschema.JsonSchemaException as e:
        raise exceptions.ValidationException(str(e))

    transaction_types.register_transaction_type_v1(content)
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #7
0
def dragonnet_auth_v1() -> Tuple[str, int, Dict[str, str]]:
    """
    Create a new DragonNet interchain communication key pair with the requester (unauthenticated by design)
    """
    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    body = flask.request.json

    try:
        _validate_interchain_auth_v1(body)
    except fastjsonschema.JsonSchemaException as e:
        raise exceptions.ValidationException(str(e))

    dragonnet.register_interchain_auth_v1(body)
    return helpers.flask_http_response(201, helpers.format_success(True))
Пример #8
0
def update_transaction_type_v1(txn_type: str) -> Tuple[str, int, Dict[str, str]]:
    if not txn_type:
        raise exceptions.ValidationException("Invalid parameter: txn_type")

    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    content = flask.request.json

    try:
        _validate_update_txn_type_v1(content)
    except fastjsonschema.JsonSchemaException:
        raise exceptions.ValidationException("User input did not match JSON schema")

    transaction_types.update_transaction_type_v1(txn_type, content["custom_indexes"])
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #9
0
def update_api_key_v1(key_id: str) -> Tuple[str, int, Dict[str, str]]:
    if not key_id:
        raise exceptions.ValidationException("Invalid parameter: key_id")

    if not flask.request.is_json:
        raise exceptions.BadRequest("Could not parse JSON")

    body = flask.request.json

    try:
        _validate_api_key_update_v1(body)
    except fastjsonschema.JsonSchemaException as e:
        raise exceptions.ValidationException(str(e))

    api_keys.update_api_key_v1(key_id, body["nickname"])
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #10
0
def delete_interchain_v1(blockchain: str, name: str,
                         **kwargs) -> Tuple[str, int, Dict[str, str]]:
    interchain.delete_interchain_v1(blockchain, name)
    return helpers.flask_http_response(200, helpers.format_success(True))
Пример #11
0
def delete_contract_v1(contract_id: str) -> Tuple[str, int, Dict[str, str]]:
    smart_contracts.delete_contract_v1(contract_id)
    return helpers.flask_http_response(202, helpers.format_success(True))
Пример #12
0
def delete_contract_by_txn_type_v1(
        txn_type: str, **kwargs) -> Tuple[str, int, Dict[str, str]]:
    contract_id = smart_contracts.get_id_by_txn_type_v1(txn_type)
    smart_contracts.delete_contract_v1(contract_id)
    return helpers.flask_http_response(202, helpers.format_success(True))
Пример #13
0
 def test_format_success_returns_correctly(self):
     self.assertEqual({"success": "thing"}, helpers.format_success("thing"))