Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Implement the getDynamicGlobalProperties method of the Codenser API (…
…Work on #208)
  • Loading branch information
neutralleiter committed Jan 14, 2018
1 parent 8919b11 commit 6c86e72
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 8 deletions.
15 changes: 7 additions & 8 deletions core/src/main/java/eu/bittrade/libs/steemj/SteemJ.java
Expand Up @@ -17,14 +17,10 @@
package eu.bittrade.libs.steemj;

import java.security.InvalidParameterException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.TimeZone;
import java.util.UUID;

import org.apache.commons.lang3.tuple.ImmutablePair;
Expand All @@ -38,6 +34,7 @@

import eu.bittrade.crypto.core.ECKey;
import eu.bittrade.crypto.core.Sha256Hash;
import eu.bittrade.libs.steemj.base.models.Account;
import eu.bittrade.libs.steemj.base.models.BeneficiaryRouteType;
import eu.bittrade.libs.steemj.base.models.ChainProperties;
import eu.bittrade.libs.steemj.base.models.CommentOptionsExtension;
Expand All @@ -47,16 +44,12 @@
import eu.bittrade.libs.steemj.base.models.ScheduledHardfork;
import eu.bittrade.libs.steemj.chain.SignedTransaction;
import eu.bittrade.libs.steemj.communication.CommunicationHandler;
import eu.bittrade.libs.steemj.communication.jrpc.JsonRPCRequest;
import eu.bittrade.libs.steemj.configuration.SteemJConfig;
import eu.bittrade.libs.steemj.enums.PrivateKeyType;
import eu.bittrade.libs.steemj.enums.RequestMethod;
import eu.bittrade.libs.steemj.enums.RewardFundType;
import eu.bittrade.libs.steemj.enums.SteemApiType;
import eu.bittrade.libs.steemj.exceptions.SteemCommunicationException;
import eu.bittrade.libs.steemj.exceptions.SteemInvalidTransactionException;
import eu.bittrade.libs.steemj.exceptions.SteemResponseException;
import eu.bittrade.libs.steemj.exceptions.SteemTransformationException;
import eu.bittrade.libs.steemj.fc.TimePointSec;
import eu.bittrade.libs.steemj.plugins.apis.account.by.key.AccountByKeyApi;
import eu.bittrade.libs.steemj.plugins.apis.account.by.key.models.GetKeyReferencesArgs;
Expand All @@ -71,6 +64,7 @@
import eu.bittrade.libs.steemj.plugins.apis.condenser.CondenserApi;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.AccountVote;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.ExtendedAccount;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.ExtendedDynamicGlobalProperties;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.ExtendedLimitOrder;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.State;
import eu.bittrade.libs.steemj.plugins.apis.database.DatabaseApi;
Expand Down Expand Up @@ -2066,6 +2060,11 @@ public List<Tag> getTrendingTags(String firstTagPattern, int limit)
// ## UTILITY METHODS ######################################################
// #########################################################################

public static double calculateRemainingBandwidth(ExtendedDynamicGlobalProperties extendedDynamicGlobalProperties,
Account account) {
return 0.0;
}

/*
* TODO: Provided by mdfk -> Needs to adjusted to work with the new api
* calls. private double getEarnedMoney(Comment comment) throws
Expand Down
Expand Up @@ -23,9 +23,40 @@
import eu.bittrade.libs.steemj.enums.SteemApiType;
import eu.bittrade.libs.steemj.exceptions.SteemCommunicationException;
import eu.bittrade.libs.steemj.exceptions.SteemResponseException;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.ExtendedDynamicGlobalProperties;
import eu.bittrade.libs.steemj.plugins.apis.condenser.models.State;
import eu.bittrade.libs.steemj.plugins.apis.database.DatabaseApi;

/**
* This class implements the "condenser_api".
*
* @author <a href="http://steemit.com/@dez1337">dez1337</a>
*/
public class CondenserApi {
/** Add a private constructor to hide the implicit public one. */
private CondenserApi() {
}

/**
* Like
* {@link DatabaseApi#getDynamicGlobalProperties(CommunicationHandler)}, but
* returns an {@link ExtendedDynamicGlobalProperties} object providing
* additional information.
*
* @param communicationHandler
* @return ExtendedDynamicGlobalProperties
* @throws SteemCommunicationException
* @throws SteemResponseException
*/
public static ExtendedDynamicGlobalProperties getDynamicGlobalProperties(CommunicationHandler communicationHandler)
throws SteemCommunicationException, SteemResponseException {
JsonRPCRequest requestObject = new JsonRPCRequest(SteemApiType.CONDENSER_API,
RequestMethod.GET_DYNAMIC_GLOBAL_PROPERTIES, null);

return communicationHandler.performRequest(requestObject, ExtendedDynamicGlobalProperties.class).get(0);

}

/**
* This API is a short-cut for returning all of the state required for a
* particular URL with a single query.
Expand Down

0 comments on commit 6c86e72

Please sign in to comment.