io.proximax.sdk.ContractRepository Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of java-xpx-chain-sdk Show documentation
Show all versions of java-xpx-chain-sdk Show documentation
The ProximaX Sirius Chain Java SDK is a Java library for interacting with the Sirius Blockchain.
The newest version!
/*
* Copyright 2019 ProximaX Limited. All rights reserved.
* Use of this source code is governed by the Apache 2.0
* license that can be found in the LICENSE file.
*/
package io.proximax.sdk;
import java.util.List;
import io.proximax.core.crypto.PublicKey;
import io.proximax.sdk.model.account.Address;
import io.proximax.sdk.model.contract.Contract;
import io.reactivex.Observable;
/**
* Contract interface repository.
*/
public interface ContractRepository {
/**
* Get contract for specified address
* GET '/contract/{accountId}'
*
* @param address the address to check
* @return observable contract
*/
Observable getContract(Address address);
/**
* Get contracts by addresses
* POST '/contract'
*
* @param addresses the addresses to check
* @return observable list of contracts
*/
Observable> getContracts(Address ... addresses);
/**
* Get contract by public key
* GET '/account/{publicKey}/contracts'
*
* @param publicKey the public key to check
* @return observable contract
*/
Observable getContract(PublicKey publicKey);
/**
* Get contracts by public keys
* POST '/account/contracts'
*
* @param publicKeys the public keys to check
* @return observable list of contracts
*/
Observable> getContracts(PublicKey ... publicKeys);
}