Translations: Sample Java Programs/12/en

From ArdorDocs
Jump to: navigation, search

private long getBestBundlingFee(URL remoteUrl, long minBundlerBalanceFXT, int chainId) {

       JO response = GetBundlerRatesCall.create().minBundlerBalanceFXT(minBundlerBalanceFXT).remote(remoteUrl).call();
       List<JO> rates = response.getArray("rates").objects();
       Long bestRate = rates.stream().
               filter(r -> r.getInt("chain") == chainId).
               map(r -> r.getLong("minRateNQTPerFXT")).
               sorted().findFirst().orElse(null);
       if (bestRate == null) {
           throw new IllegalStateException("Best bundling fee cannot be determined");
       }
       return bestRate;
   }