228 lines
8.2 KiB
Java
228 lines
8.2 KiB
Java
package de.bitsharesmunich.graphenej.api.android;
|
|
|
|
import org.junit.Test;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.Timer;
|
|
import java.util.TimerTask;
|
|
|
|
import de.bitsharesmunich.graphenej.Asset;
|
|
import de.bitsharesmunich.graphenej.api.GetAccounts;
|
|
import de.bitsharesmunich.graphenej.api.GetAccountBalances;
|
|
import de.bitsharesmunich.graphenej.api.GetAccountByName;
|
|
import de.bitsharesmunich.graphenej.api.GetAllAssetHolders;
|
|
import de.bitsharesmunich.graphenej.errors.RepeatedRequestIdException;
|
|
import de.bitsharesmunich.graphenej.interfaces.WitnessResponseListener;
|
|
import de.bitsharesmunich.graphenej.models.BaseResponse;
|
|
import de.bitsharesmunich.graphenej.models.WitnessResponse;
|
|
import de.bitsharesmunich.graphenej.UserAccount;
|
|
|
|
/**
|
|
* Created by nelson on 6/26/17.
|
|
*/
|
|
public class NodeConnectionTest {
|
|
private String BLOCK_PAY_DE = System.getenv("OPENLEDGER_EU");
|
|
private String ACCOUNT_ID = System.getenv("ACCOUNT_ID");
|
|
private String ACCOUNT_NAME = System.getenv("ACCOUNT_NAME");
|
|
private Asset BTS = new Asset("1.3.0");
|
|
private Asset BITDOLAR = new Asset("1.3.121"); //USD Smartcoin
|
|
private Asset BITEURO = new Asset("1.3.120"); //EUR Smartcoin
|
|
private NodeConnection nodeConnection;
|
|
|
|
private TimerTask subscribeTask = new TimerTask() {
|
|
@Override
|
|
public void run() {
|
|
System.out.println("Adding request here");
|
|
try{
|
|
nodeConnection.addRequestHandler(new GetAccounts("1.2.100", false, new WitnessResponseListener(){
|
|
|
|
@Override
|
|
public void onSuccess(WitnessResponse response) {
|
|
System.out.println("getAccounts.onSuccess");
|
|
}
|
|
|
|
@Override
|
|
public void onError(BaseResponse.Error error) {
|
|
System.out.println("getAccounts.onError. Msg: "+ error.message);
|
|
}
|
|
}));
|
|
}catch(RepeatedRequestIdException e){
|
|
System.out.println("RepeatedRequestIdException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
};
|
|
|
|
private TimerTask mSubscribeGetAccountBalancesTask = new TimerTask() {
|
|
@Override
|
|
public void run() {
|
|
System.out.println("Adding GetAccountBalances here");
|
|
try{
|
|
UserAccount userAccount = new UserAccount(ACCOUNT_ID);
|
|
ArrayList<Asset> assetList = new ArrayList<>();
|
|
assetList.add(BTS);
|
|
assetList.add(BITDOLAR);
|
|
assetList.add(BITEURO);
|
|
nodeConnection.addRequestHandler(new GetAccountBalances(userAccount, false, assetList, new WitnessResponseListener(){
|
|
@Override
|
|
public void onSuccess(WitnessResponse response) {
|
|
System.out.println("getAccountBalances.onSuccess");
|
|
}
|
|
|
|
@Override
|
|
public void onError(BaseResponse.Error error) {
|
|
System.out.println("getAccountBalances.onError. Msg: "+ error.message);
|
|
}
|
|
}));
|
|
}catch(RepeatedRequestIdException e){
|
|
System.out.println("RepeatedRequestIdException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
};
|
|
|
|
private TimerTask mSubscribeGetAccountByNameTask = new TimerTask() {
|
|
@Override
|
|
public void run() {
|
|
System.out.println("Adding GetAccountByName here");
|
|
try{
|
|
nodeConnection.addRequestHandler(new GetAccountByName(ACCOUNT_NAME, false, new WitnessResponseListener(){
|
|
@Override
|
|
public void onSuccess(WitnessResponse response) {
|
|
System.out.println("GetAccountByName.onSuccess");
|
|
}
|
|
|
|
@Override
|
|
public void onError(BaseResponse.Error error) {
|
|
System.out.println("GetAccountByName.onError. Msg: "+ error.message);
|
|
}
|
|
}));
|
|
}catch(RepeatedRequestIdException e){
|
|
System.out.println("RepeatedRequestIdException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
};
|
|
|
|
private TimerTask mSubscribeGetAllAssetHoldersTask = new TimerTask() {
|
|
@Override
|
|
public void run() {
|
|
System.out.println("Adding GetAllAssetHolders request");
|
|
try{
|
|
nodeConnection.addRequestHandler(new GetAllAssetHolders(false, new WitnessResponseListener(){
|
|
@Override
|
|
public void onSuccess(WitnessResponse response) {
|
|
System.out.println("GetAllAssetHolders.onSuccess");
|
|
}
|
|
|
|
@Override
|
|
public void onError(BaseResponse.Error error) {
|
|
System.out.println("GetAllAssetHolders.onError. Msg: "+ error.message);
|
|
}
|
|
}));
|
|
}catch(RepeatedRequestIdException e){
|
|
System.out.println("RepeatedRequestIdException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
};
|
|
|
|
private TimerTask releaseTask = new TimerTask() {
|
|
@Override
|
|
public void run() {
|
|
System.out.println("Releasing lock!");
|
|
synchronized (NodeConnectionTest.this){
|
|
NodeConnectionTest.this.notifyAll();
|
|
}
|
|
}
|
|
};
|
|
|
|
@Test
|
|
public void testNodeConnection(){
|
|
nodeConnection = NodeConnection.getInstance();
|
|
nodeConnection.addNodeUrl(BLOCK_PAY_DE);
|
|
nodeConnection.connect("", "", true, mErrorListener);
|
|
|
|
Timer timer = new Timer();
|
|
timer.schedule(subscribeTask, 5000);
|
|
timer.schedule(releaseTask, 30000);
|
|
|
|
try{
|
|
// Holding this thread while we get update notifications
|
|
synchronized (this){
|
|
wait();
|
|
}
|
|
}catch(InterruptedException e){
|
|
System.out.println("InterruptedException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
|
|
@Test
|
|
public void testGetAccountBalancesRequest(){
|
|
nodeConnection = NodeConnection.getInstance();
|
|
nodeConnection.addNodeUrl(BLOCK_PAY_DE);
|
|
nodeConnection.connect("", "", true, mErrorListener);
|
|
|
|
Timer timer = new Timer();
|
|
timer.schedule(mSubscribeGetAccountBalancesTask, 5000);
|
|
timer.schedule(releaseTask, 30000);
|
|
|
|
try{
|
|
// Holding this thread while we get update notifications
|
|
synchronized (this){
|
|
wait();
|
|
}
|
|
}catch(InterruptedException e){
|
|
System.out.println("InterruptedException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
|
|
@Test
|
|
public void testGetAccountByNameRequest(){
|
|
nodeConnection = NodeConnection.getInstance();
|
|
nodeConnection.addNodeUrl(BLOCK_PAY_DE);
|
|
nodeConnection.connect("", "", true, mErrorListener);
|
|
|
|
Timer timer = new Timer();
|
|
timer.schedule(mSubscribeGetAccountByNameTask, 5000);
|
|
timer.schedule(releaseTask, 30000);
|
|
|
|
try{
|
|
// Holding this thread while we get update notifications
|
|
synchronized (this){
|
|
wait();
|
|
}
|
|
}catch(InterruptedException e){
|
|
System.out.println("InterruptedException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
|
|
@Test
|
|
public void testGetAllAssetHoldersRequest(){
|
|
nodeConnection = NodeConnection.getInstance();
|
|
nodeConnection.addNodeUrl(BLOCK_PAY_DE);
|
|
nodeConnection.connect("", "", true, mErrorListener);
|
|
|
|
Timer timer = new Timer();
|
|
timer.schedule(mSubscribeGetAllAssetHoldersTask, 5000);
|
|
timer.schedule(releaseTask, 30000);
|
|
|
|
try{
|
|
// Holding this thread while we get update notifications
|
|
synchronized (this){
|
|
wait();
|
|
}
|
|
}catch(InterruptedException e){
|
|
System.out.println("InterruptedException. Msg: "+e.getMessage());
|
|
}
|
|
}
|
|
|
|
private WitnessResponseListener mErrorListener = new WitnessResponseListener() {
|
|
|
|
@Override
|
|
public void onSuccess(WitnessResponse response) {
|
|
System.out.println("onSuccess");
|
|
}
|
|
|
|
@Override
|
|
public void onError(BaseResponse.Error error) {
|
|
System.out.println("onError");
|
|
}
|
|
};
|
|
} |