コード例 #1
0
class PaymentResource(BaseResource):
    post_schema = PaymentSchema(
        only=("amount", "identifier", "secret", "secret_hash", "lock_timeout")
    )
    get_schema = RaidenEventsRequestSchema()

    @if_api_available
    def get(self, token_address: TokenAddress, target_address: Address) -> Response:
        kwargs = validate_query_params(self.get_schema)
        return self.rest_api.get_raiden_events_payment_history_with_timestamps(
            registry_address=self.rest_api.raiden_api.raiden.default_registry.address,
            token_address=token_address,
            target_address=target_address,
            **kwargs,
        )

    @if_api_available
    def post(self, token_address: TokenAddress, target_address: TargetAddress) -> Response:
        kwargs = validate_json(self.post_schema)

        return self.rest_api.initiate_payment(
            registry_address=self.rest_api.raiden_api.raiden.default_registry.address,
            token_address=token_address,
            target_address=target_address,
            **kwargs,
        )
コード例 #2
0
ファイル: resources.py プロジェクト: zengguocheng/raiden
class PaymentResource(BaseResource):

    post_schema = PaymentSchema(only=('amount', 'identifier'), )

    def get(
        self,
        token_address: typing.TokenAddress = None,
        target_address: typing.Address = None,
    ):
        return self.rest_api.get_payment_history(
            token_address=token_address,
            target_address=target_address,
        )

    @use_kwargs(post_schema, locations=('json', ))
    def post(
        self,
        token_address: typing.TokenAddress,
        target_address: typing.TargetAddress,
        amount: typing.PaymentAmount,
        identifier: typing.PaymentID,
    ):
        return self.rest_api.initiate_payment(
            registry_address=self.rest_api.raiden_api.raiden.default_registry.
            address,
            token_address=token_address,
            target_address=target_address,
            amount=amount,
            identifier=identifier,
        )
コード例 #3
0
 def __init__(self, raiden_api):
     self.raiden_api = raiden_api
     self.channel_schema = ChannelStateSchema()
     self.address_list_schema = AddressListSchema()
     self.partner_per_token_list_schema = PartnersPerTokenListSchema()
     self.payment_schema = PaymentSchema()
     self.sent_success_payment_schema = EventPaymentSentSuccessSchema()
     self.received_success_payment_schema = EventPaymentReceivedSuccessSchema()
     self.failed_payment_schema = EventPaymentSentFailedSchema()
コード例 #4
0
class PaymentResource(BaseResource):

    post_schema = PaymentSchema(only=("amount", "identifier", "secret",
                                      "secret_hash", "lock_timeout"))
    get_schema = RaidenEventsRequestSchema()

    @use_kwargs(get_schema, locations=("query", ))
    @if_api_available
    def get(
        self,
        token_address: TokenAddress = None,
        target_address: Address = None,
        limit: int = None,
        offset: int = None,
    ) -> Response:
        return self.rest_api.get_raiden_events_payment_history_with_timestamps(
            token_address=token_address,
            target_address=target_address,
            limit=limit,
            offset=offset)

    @use_kwargs(post_schema, locations=("json", ))
    @if_api_available
    def post(
        self,
        token_address: TokenAddress,
        target_address: TargetAddress,
        amount: PaymentAmount,
        identifier: PaymentID,
        secret: Secret,
        secret_hash: SecretHash,
        lock_timeout: BlockTimeout,
    ) -> Response:
        return self.rest_api.initiate_payment(
            registry_address=self.rest_api.raiden_api.raiden.default_registry.
            address,
            token_address=token_address,
            target_address=target_address,
            amount=amount,
            identifier=identifier,
            secret=secret,
            secret_hash=secret_hash,
            lock_timeout=lock_timeout,
        )
コード例 #5
0
class PaymentResource(BaseResource):

    post_schema = PaymentSchema(
        only=('amount', 'identifier', 'secret', 'secret_hash'),
    )
    get_schema = RaidenEventsRequestSchema()

    @use_kwargs(get_schema, locations=('query',))
    def get(
            self,
            token_address: typing.TokenAddress = None,
            target_address: typing.Address = None,
            limit: int = None,
            offset: int = None,
    ):
        return self.rest_api.get_raiden_events_payment_history_with_timestamps(
            token_address=token_address,
            target_address=target_address,
            limit=limit,
            offset=offset,
        )

    @use_kwargs(post_schema, locations=('json',))
    def post(
            self,
            token_address: typing.TokenAddress,
            target_address: typing.TargetAddress,
            amount: typing.PaymentAmount,
            identifier: typing.PaymentID,
            secret: typing.Secret,
            secret_hash: typing.SecretHash,
    ):
        return self.rest_api.initiate_payment(
            registry_address=self.rest_api.raiden_api.raiden.default_registry.address,
            token_address=token_address,
            target_address=target_address,
            amount=amount,
            identifier=identifier,
            secret=secret,
            secret_hash=secret_hash,
        )
コード例 #6
0
class PaymentResource(BaseResource):
    post_schema = PaymentSchema(only=("amount", "identifier", "secret",
                                      "secret_hash"))
    get_schema = RaidenEventsRequestSchema()

    @use_kwargs(get_schema, locations=("query", ))
    def get(
        self,
        token_address: typing.TokenAddress = None,
        target_address: typing.Address = None,
        limit: int = None,
        offset: int = None,
    ):
        return self.rest_api.get_raiden_events_payment_history_with_timestamps(
            token_address=token_address,
            target_address=target_address,
            limit=limit,
            offset=offset)

    @use_kwargs(post_schema, locations=("json", ))
    def post(
        self,
        token_address: typing.TokenAddress,
        target_address: typing.TargetAddress,
        amount: typing.PaymentAmount,
        identifier: typing.PaymentID,
        secret: typing.Secret,
        secret_hash: typing.SecretHash,
    ):
        return self.rest_api.initiate_payment(
            registry_address=self.rest_api.raiden_api.raiden.default_registry.
            address,
            token_address=token_address,
            target_address=target_address,
            amount=amount,
            identifier=identifier,
            secret=secret,
            secret_hash=secret_hash,
            payment_hash_invoice=EMPTY_PAYMENT_HASH_INVOICE)