Skip to content

Commit

Permalink
Added get_transaction_schedule plus fixes.
Browse files Browse the repository at this point in the history
  • Loading branch information
Fletch153 committed Oct 23, 2018
1 parent 7113521 commit 97d4839
Show file tree
Hide file tree
Showing 8 changed files with 158 additions and 9 deletions.
2 changes: 2 additions & 0 deletions src/main/java/client/EosApiRestClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import client.domain.common.transaction.PackedTransaction;
import client.domain.response.chain.currencystats.CurrencyStats;
import client.domain.response.chain.transaction.PushedTransaction;
import client.domain.response.chain.transaction.ScheduledTransactionResponse;
import client.domain.response.history.action.Actions;
import client.domain.response.history.controlledaccounts.ControlledAccounts;
import client.domain.response.history.keyaccounts.KeyAccounts;
Expand Down Expand Up @@ -80,4 +81,5 @@ public interface EosApiRestClient {

ControlledAccounts getControlledAccounts(String controllingAccountName);

ScheduledTransactionResponse getScheduledtransactions(String lowerBound, String limit);
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
package client.domain.common.transaction;


import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;


import java.util.List;


@JsonInclude(JsonInclude.Include.NON_NULL)
public class PackedTransaction {

Expand All @@ -29,8 +31,7 @@ public class PackedTransaction {

private List<TransactionAction> actions;

private Integer delaySec;

private Long delaySec;

public String getRegion() {
return region;
Expand Down Expand Up @@ -111,12 +112,12 @@ public void setActions(List<TransactionAction> actions) {
this.actions = actions;
}

public Integer getDelaySec() {
public Long getDelaySec() {
return delaySec;
}

@JsonProperty("delay_sec")
public void setDelaySec(Integer delaySec) {
public void setDelaySec(Long delaySec) {
this.delaySec = delaySec;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import java.util.List;
import java.util.Objects;

@JsonIgnoreProperties(ignoreUnknown = true)
public class TransactionAction {
Expand All @@ -14,7 +15,9 @@ public class TransactionAction {

private List<TransactionAuthorization> authorization;

private String data;
/*TODO Dynamically Unpack JSON Data */

private String hex_data;

This comment has been minimized.

Copy link
@wuhaiwang

wuhaiwang Nov 8, 2018

when i update this commit , field name data be to hex_data , throw error : {"code":500,"message":"Internal Service Error","error":{"code":3010010,"name":"packed_transaction_type_exception","what":"Invalid packed transaction","details":[{"message":"Failed to deserialize data for liantongct12:mypropose","file":"abi_serializer.hpp","line_number":492,"method":"extract"},{"message":"Failed to deserialize variant","file":"abi_serializer.hpp","line_number":610,"method":"from_variant"},{"message":"Invalid packed transaction","file":"chain_plugin.cpp","line_number":1457,"method":"push_transaction"}]}}


public TransactionAction() {

Expand Down Expand Up @@ -44,11 +47,12 @@ public void setAuthorization(List<TransactionAuthorization> authorization) {
this.authorization = authorization;
}

public String getData() {
return data;
public String getHex_data() {
return hex_data;
}

public void setData(String data) {
this.data = data;
public void setHex_data(String hex_data) {
this.hex_data = hex_data;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import java.util.Objects;

@JsonIgnoreProperties(ignoreUnknown = true)
public class TransactionAuthorization {

Expand All @@ -24,4 +26,5 @@ public String getPermission() {
public void setPermission(String permission) {
this.permission = permission;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
package client.domain.response.chain.transaction;

import client.domain.common.transaction.PackedTransaction;


import java.util.List;
import java.util.Objects;

public class ScheduledTransaction {

private String trx_id;

private String sender;

private String sender_id;

private String payer;

private String delay_until;

private String expiration;

private String published;

private PackedTransaction transaction;

public String getTrx_id() {
return trx_id;
}

public void setTrx_id(String trx_id) {
this.trx_id = trx_id;
}

public String getSender() {
return sender;
}

public void setSender(String sender) {
this.sender = sender;
}

public String getSender_id() {
return sender_id;
}

public void setSender_id(String sender_id) {
this.sender_id = sender_id;
}

public String getPayer() {
return payer;
}

public void setPayer(String payer) {
this.payer = payer;
}

public String getDelay_until() {
return delay_until;
}

public void setDelay_until(String delay_until) {
this.delay_until = delay_until;
}

public String getExpiration() {
return expiration;
}

public void setExpiration(String expiration) {
this.expiration = expiration;
}

public String getPublished() {
return published;
}

public void setPublished(String published) {
this.published = published;
}

public PackedTransaction getTransaction() {
return transaction;
}

public void setTransaction(PackedTransaction transaction) {
this.transaction = transaction;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package client.domain.response.chain.transaction;

import java.util.ArrayList;
import java.util.Objects;

public class ScheduledTransactionResponse {

private ArrayList<ScheduledTransaction> transactions;

private String more;


public String getMore() {
return more;
}

public void setMore(String more) {
this.more = more;
}

public ArrayList<ScheduledTransaction> getTransactions() {
return transactions;
}

public void setTransactions(ArrayList<ScheduledTransaction> transactions) {
this.transactions = transactions;
}

}
15 changes: 15 additions & 0 deletions src/main/java/client/impl/EosApiRestClientImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import client.domain.common.transaction.PackedTransaction;
import client.domain.response.chain.currencystats.CurrencyStats;
import client.domain.response.chain.transaction.PushedTransaction;
import client.domain.response.chain.transaction.ScheduledTransactionResponse;
import client.domain.response.history.action.Actions;
import client.domain.response.history.controlledaccounts.ControlledAccounts;
import client.domain.response.history.keyaccounts.KeyAccounts;
Expand Down Expand Up @@ -245,4 +246,18 @@ public ControlledAccounts getControlledAccounts(String controllingAccountName){
return EosApiServiceGenerator.executeSync(eosHistoryApiService.getControlledAccounts(requestParameters));
}

@Override
public ScheduledTransactionResponse getScheduledtransactions(String lowerBound, String limit){
LinkedHashMap<String, String> requestParameters = new LinkedHashMap<>(2);

requestParameters.put("json", "true");

if(lowerBound != null)
requestParameters.put("lower_bound", lowerBound);

requestParameters.put("limit", limit);

return EosApiServiceGenerator.executeSync(eosChainApiService.getScheduledtransaction(requestParameters));
}

}
5 changes: 5 additions & 0 deletions src/main/java/client/impl/EosChainApiService.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
import client.domain.response.chain.code.Code;
import client.domain.response.chain.currencystats.CurrencyStats;
import client.domain.response.chain.transaction.PushedTransaction;
import client.domain.response.chain.transaction.ScheduledTransaction;
import client.domain.response.chain.transaction.ScheduledTransactionResponse;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
Expand Down Expand Up @@ -58,4 +60,7 @@ public interface EosChainApiService {
@POST("/v1/chain/get_currency_stats")
Call<Map<String, CurrencyStats>> getCurrencyStats(@Body Map<String, String> requestFields);

@POST("/v1/chain/get_scheduled_transactions")
Call<ScheduledTransactionResponse> getScheduledtransaction(@Body Map<String, String> requestFields);

}

0 comments on commit 97d4839

Please sign in to comment.