Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: GoodforGod/java-etherscan-api
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.2.0
Choose a base ref
...
head repository: GoodforGod/java-etherscan-api
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Feb 20, 2022

  1. Copy the full SHA
    7fc5946 View commit details

Commits on Mar 8, 2022

  1. [1.2.1-SNAPSHOT]

    BasicProvider Gson registration for LocalDate and LocalDateTime types added
    GoodforGod committed Mar 8, 2022
    Copy the full SHA
    bffcbb9 View commit details
  2. Merge pull request #17 from guggio/master

    Changed traceId in TxInternal from long to String
    GoodforGod authored Mar 8, 2022
    Copy the full SHA
    a0aefad View commit details
  3. [1.2.1-SNAPSHOT]

    TxInternal#getTraceIdAsString added
    GoodforGod committed Mar 8, 2022
    Copy the full SHA
    bed627d View commit details
  4. [1.2.1]

    Release prepared 1.2.1
    GoodforGod committed Mar 8, 2022
    Copy the full SHA
    bc3449e View commit details
  5. [1.2.1]

    IProxyApi#storageAt marked as Experimental
    Tests fixed
    GoodforGod committed Mar 8, 2022
    Copy the full SHA
    1d1aa6f View commit details
  6. [1.2.1]

    TxInternal equal and toString asserts added
    
    [1.2.1]
    DTO internal fields exposure removed
    BasicProvider fake adapters registered
    
    [1.2.1]
    Code style fixed
    
    [1.2.1]
    TxInternal#getTraceId return 0 if null
    GoodforGod committed Mar 8, 2022
    Copy the full SHA
    aae1546 View commit details
  7. Merge pull request #19 from GoodforGod/dev

    [1.2.1]
    GoodforGod authored Mar 8, 2022
    Copy the full SHA
    cafcdff View commit details

Commits on Mar 29, 2022

  1. [2.0.0-SNAPSHOT]

    All dependencies updated
    Project structured, codestyle, layout updated
    Junit -> Jupiter
    Codestyle updated
    GoodforGod committed Mar 29, 2022
    Copy the full SHA
    a039cff View commit details

Commits on Jul 21, 2022

  1. Copy the full SHA
    1559a3f View commit details

Commits on Nov 14, 2022

  1. Copy the full SHA
    9fb7d91 View commit details
  2. debug url

    abhaygupta1999 committed Nov 14, 2022
    Copy the full SHA
    2174387 View commit details
  3. Copy the full SHA
    bf59b71 View commit details
  4. removed sout

    abhaygupta1999 committed Nov 14, 2022
    Copy the full SHA
    c462175 View commit details

Commits on May 11, 2023

  1. [2.0.0-SNAPSHOT]

    Package refactoring
    API refactoring
    Contracts renamed
    LogQuery refactored
    EtherScanAPI refactored & builder added
    GoodforGod committed May 11, 2023
    Copy the full SHA
    f3d6858 View commit details

Commits on May 13, 2023

  1. Merge pull request #23 from abhaygupta1999/master

    added support for txsToken with contract address too
    GoodforGod authored May 13, 2023
    Copy the full SHA
    9e4d21a View commit details
  2. [2.0.0-SNAPSHOT]

    Merge branch 'dev' of https://github.com/GoodforGod/java-etherscan-api into dev
    
    # Conflicts:
    #	src/main/java/io/api/etherscan/core/impl/EtherScanApi.java
    #	src/main/java/io/goodforgod/api/etherscan/AccountAPIProvider.java
    #	src/main/java/io/goodforgod/api/etherscan/GasTrackerApiProvider.java
    #	src/main/java/io/goodforgod/api/etherscan/IGasTrackerApi.java
    #	src/main/java/io/goodforgod/api/etherscan/model/response/GasOracleResponseTO.java
    GoodforGod committed May 13, 2023
    Copy the full SHA
    7436509 View commit details
  3. [2.0.0-SNAPSHOT]

    GasTrackerAPI refactored to new API
    EthHttpClient package refactoring
    GoodforGod committed May 13, 2023
    Copy the full SHA
    420c68f View commit details
  4. [2.0.0-SNAPSHOT]

    Models builders added
    GoodforGod committed May 13, 2023
    Copy the full SHA
    b9a8dda View commit details
  5. [2.0.0-SNAPSHOT]

    GasEstimate added to GasTrackerAPI#estimate
    GoodforGod committed May 13, 2023
    Copy the full SHA
    fe444f4 View commit details
  6. [2.0.0-SNAPSHOT]

    RequestQueueManager values renamed
    GoodforGod committed May 13, 2023
    Copy the full SHA
    192cb5b View commit details
  7. [2.0.0-SNAPSHOT]

    TxErc1155 added
    AccountAPI#txsErc1155 added
    AccountAPI#txsErc721 with contract added
    GoodforGod committed May 13, 2023
    Copy the full SHA
    0cafb6d View commit details
  8. [2.0.0-SNAPSHOT]

    EthHttpClient contract and package refactoring
    GoodforGod committed May 13, 2023
    Copy the full SHA
    34ca1a7 View commit details
  9. [2.0.0-SNAPSHOT]

    Javadoc improved
    GoodforGod committed May 13, 2023
    Copy the full SHA
    f095f0f View commit details
  10. [2.0.0-SNAPSHOT]

    LogQueryBuilderImpl address validation added
    GoodforGod committed May 13, 2023
    Copy the full SHA
    70cee44 View commit details
  11. [2.0.0-SNAPSHOT]

    CI Report only for Java 17 (avoid rate limiter)
    GoodforGod committed May 13, 2023
    Copy the full SHA
    43a0693 View commit details

Commits on May 14, 2023

  1. [2.0.0-SNAPSHOT]

    EthNetworks cleanup
    GoodforGod committed May 14, 2023
    Copy the full SHA
    9b366c3 View commit details
  2. [2.0.0-SNAPSHOT]

    SemaphoreRequestQueueManager improved
    GoodforGod committed May 14, 2023
    Copy the full SHA
    bf9f02b View commit details
  3. [2.0.0-SNAPSHOT]

    Refactoring of token transfers
    - Inclusion of tokenID in Erc721 transfers
    - Support for Erc1155 transfers
    
    (cherry picked from commit ca4b7d5)
    guggio authored and GoodforGod committed May 14, 2023
    Copy the full SHA
    55788d5 View commit details
  4. [2.0.0-SNAPSHOT]

    Refactoring of token transfers
    - Inclusion of tokenID in Erc721 transfers
    - Support for Erc1155 transfers
    
    (cherry picked from commit ca4b7d5)
    GoodforGod committed May 14, 2023
    Copy the full SHA
    8ec7d93 View commit details
  5. [2.0.0-SNAPSHOT]

    Javadoc improvements
    GoodforGod committed May 14, 2023
    Copy the full SHA
    a9dd8e0 View commit details
  6. [2.0.0-SNAPSHOT]

    Tx Responses restored
    GasOracle refactored and improved
    ModelBuilderTests added
    GoodforGod committed May 14, 2023
    Copy the full SHA
    225b211 View commit details
  7. [2.0.0-SNAPSHOT]

    CI key env fixed
    GoodforGod committed May 14, 2023
    Copy the full SHA
    aa25129 View commit details
  8. [2.0.0-SNAPSHOT]

    Builders NPE fixes
    Hashcode & Equals improved
    GoodforGod committed May 14, 2023
    Copy the full SHA
    873f582 View commit details
  9. [2.0.0-SNAPSHOT]

    Balance contract improved
    Wei contract improved
    Supply constructor added
    ProxyAPI contract refactored to Wei
    GoodforGod committed May 14, 2023
    Copy the full SHA
    1beaafd View commit details
  10. [2.0.0-SNAPSHOT]

    README.md updated
    Balance & TokenBalance constructor improved
    GoodforGod committed May 14, 2023
    Copy the full SHA
    948a6f3 View commit details
  11. [2.0.0-SNAPSHOT]

    EthHttpClient contract refactored to response with byte[]
    Converter contract refactored to receive byte[]
    GoodforGod committed May 14, 2023
    Copy the full SHA
    3210c39 View commit details
  12. [2.0.0-SNAPSHOT]

    EtherScanLogQueryException name fixed
    EtherScanResponseException response entity added
    StringResponseTO#builder added
    BasicProvider error handling improved
    GoodforGod committed May 14, 2023
    Copy the full SHA
    f5b2edb View commit details
  13. [2.0.0-SNAPSHOT]

    Default converter parsing optimized
    GoodforGod committed May 14, 2023
    Copy the full SHA
    25751ab View commit details
  14. [2.0.0-SNAPSHOT]

    EthSupply for StatisticAPI#supplyTotal added
    Javadoc fixed
    GoodforGod committed May 14, 2023
    Copy the full SHA
    47e04a8 View commit details
  15. [2.0.0-SNAPSHOT]

    1010L->1015L reset time
    GoodforGod committed May 14, 2023
    Copy the full SHA
    63f8909 View commit details
  16. [2.0.0-SNAPSHOT]

    Gas related fields replaced to Wei
    GoodforGod committed May 14, 2023
    Copy the full SHA
    6d19b73 View commit details
  17. [2.0.0-SNAPSHOT]

    RequestQueueManager static consts -> static method to produce uniq request queue managers
    Tests manager provision fixed
    GoodforGod committed May 14, 2023
    Copy the full SHA
    1416a23 View commit details
  18. [2.0.0-SNAPSHOT]

    Test asserts fixed
    Log contract improved
    Tests reinforced
    GoodforGod committed May 14, 2023
    Copy the full SHA
    14ccb53 View commit details
  19. [2.0.0-SNAPSHOT]

    1005L->1015L
    GoodforGod committed May 14, 2023
    Copy the full SHA
    bf30d9a View commit details
  20. [2.0.0-SNAPSHOT]

    Tests reinforced
    GoodforGod committed May 14, 2023
    Copy the full SHA
    3a3e409 View commit details
  21. [2.0.0-SNAPSHOT]

    Log simplified
    Tests reinforced
    GoodforGod committed May 14, 2023
    Copy the full SHA
    2d666bc View commit details
  22. [2.0.0]

    Release prepared
    GoodforGod committed May 14, 2023
    Copy the full SHA
    f09f38a View commit details
  23. [2.0.0]

    Release prepared
    GoodforGod committed May 14, 2023
    Copy the full SHA
    d1ec9e5 View commit details

Commits on May 15, 2023

  1. [2.0.0]

    Tx refactored and simplified and common parts moved to BlockTx
    Comparable for multiple models added
    GasOracle simplified and reinforced
    Price reinforced
    GasEstimate.java removed as useless
    GoodforGod committed May 15, 2023
    Copy the full SHA
    b05bd8a View commit details
Showing with 9,132 additions and 5,678 deletions.
  1. +17 −1 .editorconfig
  2. +27 −8 .gitattributes
  3. +0 −43 .github/workflows/gradle.yml
  4. +49 −0 .github/workflows/publish-release.yml
  5. +44 −0 .github/workflows/publish-snapshot.yml
  6. +55 −0 .github/workflows/pull-request.yml
  7. +16 −5 .gitignore
  8. +23 −0 CONTRIBUTING.md
  9. +66 −68 README.md
  10. +0 −1 _config.yml
  11. +66 −30 build.gradle
  12. +205 −163 config/codestyle.xml
  13. +7 −3 gradle.properties
  14. BIN gradle/wrapper/gradle-wrapper.jar
  15. +2 −1 gradle/wrapper/gradle-wrapper.properties
  16. +164 −105 gradlew
  17. +9 −6 gradlew.bat
  18. +0 −140 src/main/java/io/api/etherscan/core/IAccountApi.java
  19. +0 −26 src/main/java/io/api/etherscan/core/IBlockApi.java
  20. +0 −24 src/main/java/io/api/etherscan/core/IContractApi.java
  21. +0 −29 src/main/java/io/api/etherscan/core/ILogsApi.java
  22. +0 −45 src/main/java/io/api/etherscan/core/IStatisticApi.java
  23. +0 −268 src/main/java/io/api/etherscan/core/impl/AccountApiProvider.java
  24. +0 −93 src/main/java/io/api/etherscan/core/impl/BasicProvider.java
  25. +0 −48 src/main/java/io/api/etherscan/core/impl/BlockApiProvider.java
  26. +0 −47 src/main/java/io/api/etherscan/core/impl/ContractApiProvider.java
  27. +0 −140 src/main/java/io/api/etherscan/core/impl/EtherScanApi.java
  28. +0 −45 src/main/java/io/api/etherscan/core/impl/LogsApiProvider.java
  29. +0 −71 src/main/java/io/api/etherscan/core/impl/StatisticApiProvider.java
  30. +0 −16 src/main/java/io/api/etherscan/error/ApiException.java
  31. +0 −12 src/main/java/io/api/etherscan/error/ApiKeyException.java
  32. +0 −12 src/main/java/io/api/etherscan/error/ApiTimeoutException.java
  33. +0 −16 src/main/java/io/api/etherscan/error/ConnectionException.java
  34. +0 −23 src/main/java/io/api/etherscan/error/EtherScanException.java
  35. +0 −12 src/main/java/io/api/etherscan/error/EventModelException.java
  36. +0 −12 src/main/java/io/api/etherscan/error/InvalidAddressException.java
  37. +0 −12 src/main/java/io/api/etherscan/error/InvalidDataHexException.java
  38. +0 −12 src/main/java/io/api/etherscan/error/InvalidTxHashException.java
  39. +0 −12 src/main/java/io/api/etherscan/error/LogQueryException.java
  40. +0 −12 src/main/java/io/api/etherscan/error/RateLimitException.java
  41. +0 −27 src/main/java/io/api/etherscan/executor/IHttpExecutor.java
  42. +0 −161 src/main/java/io/api/etherscan/executor/impl/HttpExecutor.java
  43. +0 −16 src/main/java/io/api/etherscan/manager/IQueueManager.java
  44. +0 −64 src/main/java/io/api/etherscan/manager/impl/QueueManager.java
  45. +0 −69 src/main/java/io/api/etherscan/model/Abi.java
  46. +0 −84 src/main/java/io/api/etherscan/model/Balance.java
  47. +0 −122 src/main/java/io/api/etherscan/model/BaseTx.java
  48. +0 −64 src/main/java/io/api/etherscan/model/Block.java
  49. +0 −27 src/main/java/io/api/etherscan/model/EthNetwork.java
  50. +0 −169 src/main/java/io/api/etherscan/model/Log.java
  51. +0 −81 src/main/java/io/api/etherscan/model/Price.java
  52. +0 −55 src/main/java/io/api/etherscan/model/Status.java
  53. +0 −16 src/main/java/io/api/etherscan/model/Supply.java
  54. +0 −102 src/main/java/io/api/etherscan/model/Tx.java
  55. +0 −69 src/main/java/io/api/etherscan/model/TxInternal.java
  56. +0 −73 src/main/java/io/api/etherscan/model/TxToken.java
  57. +0 −63 src/main/java/io/api/etherscan/model/Uncle.java
  58. +0 −68 src/main/java/io/api/etherscan/model/UncleBlock.java
  59. +0 −64 src/main/java/io/api/etherscan/model/Wei.java
  60. +0 −193 src/main/java/io/api/etherscan/model/proxy/BlockProxy.java
  61. +0 −138 src/main/java/io/api/etherscan/model/proxy/ReceiptProxy.java
  62. +0 −151 src/main/java/io/api/etherscan/model/proxy/TxProxy.java
  63. +0 −15 src/main/java/io/api/etherscan/model/query/IQueryBuilder.java
  64. +0 −30 src/main/java/io/api/etherscan/model/query/impl/LogQuery.java
  65. +0 −84 src/main/java/io/api/etherscan/model/query/impl/LogQueryBuilder.java
  66. +0 −23 src/main/java/io/api/etherscan/model/utility/BaseResponseTO.java
  67. +0 −16 src/main/java/io/api/etherscan/model/utility/StringResponseTO.java
  68. +0 −13 src/main/java/io/api/etherscan/model/utility/TxTokenResponseTO.java
  69. +0 −18 src/main/java/io/api/etherscan/model/utility/UncleBlockResponseTO.java
  70. +216 −0 src/main/java/io/goodforgod/api/etherscan/AccountAPI.java
  71. +378 −0 src/main/java/io/goodforgod/api/etherscan/AccountAPIProvider.java
  72. +127 −0 src/main/java/io/goodforgod/api/etherscan/BasicProvider.java
  73. +25 −0 src/main/java/io/goodforgod/api/etherscan/BlockAPI.java
  74. +56 −0 src/main/java/io/goodforgod/api/etherscan/BlockAPIProvider.java
  75. +35 −0 src/main/java/io/goodforgod/api/etherscan/ContractAPI.java
  76. +78 −0 src/main/java/io/goodforgod/api/etherscan/ContractAPIProvider.java
  77. +13 −0 src/main/java/io/goodforgod/api/etherscan/Converter.java
  78. +17 −0 src/main/java/io/goodforgod/api/etherscan/EthNetwork.java
  79. +26 −0 src/main/java/io/goodforgod/api/etherscan/EthNetworks.java
  80. +115 −0 src/main/java/io/goodforgod/api/etherscan/EthScanAPIBuilder.java
  81. +79 −0 src/main/java/io/goodforgod/api/etherscan/EtherScanAPI.java
  82. +96 −0 src/main/java/io/goodforgod/api/etherscan/EtherScanAPIProvider.java
  83. +35 −0 src/main/java/io/goodforgod/api/etherscan/GasTrackerAPI.java
  84. +55 −0 src/main/java/io/goodforgod/api/etherscan/GasTrackerAPIProvider.java
  85. +27 −0 src/main/java/io/goodforgod/api/etherscan/LogsAPI.java
  86. +44 −0 src/main/java/io/goodforgod/api/etherscan/LogsAPIProvider.java
  87. +40 −38 src/main/java/io/{api/etherscan/core/IProxyApi.java → goodforgod/api/etherscan/ProxyAPI.java}
  88. +60 −51 .../{api/etherscan/core/impl/ProxyApiProvider.java → goodforgod/api/etherscan/ProxyAPIProvider.java}
  89. +58 −0 src/main/java/io/goodforgod/api/etherscan/StatisticAPI.java
  90. +82 −0 src/main/java/io/goodforgod/api/etherscan/StatisticAPIProvider.java
  91. +10 −11 .../java/io/{api/etherscan/core/ITransactionApi.java → goodforgod/api/etherscan/TransactionAPI.java}
  92. +20 −20 ...can/core/impl/TransactionApiProvider.java → goodforgod/api/etherscan/TransactionAPIProvider.java}
  93. +16 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanConnectionException.java
  94. +16 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanException.java
  95. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanInvalidAddressException.java
  96. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanInvalidDataHexException.java
  97. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanInvalidTxHashException.java
  98. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanKeyException.java
  99. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanLogQueryException.java
  100. +3 −3 ...therscan/error/ParseException.java → goodforgod/api/etherscan/error/EtherScanParseException.java}
  101. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanRateLimitException.java
  102. +31 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanResponseException.java
  103. +12 −0 src/main/java/io/goodforgod/api/etherscan/error/EtherScanTimeoutException.java
  104. +30 −0 src/main/java/io/goodforgod/api/etherscan/http/EthHttpClient.java
  105. +163 −0 src/main/java/io/goodforgod/api/etherscan/http/impl/UrlEthHttpClient.java
  106. +51 −0 src/main/java/io/goodforgod/api/etherscan/manager/RequestQueueManager.java
  107. +3 −3 .../impl/FakeQueueManager.java → goodforgod/api/etherscan/manager/impl/FakeRequestQueueManager.java}
  108. +54 −0 src/main/java/io/goodforgod/api/etherscan/manager/impl/SemaphoreRequestQueueManager.java
  109. +88 −0 src/main/java/io/goodforgod/api/etherscan/model/Abi.java
  110. +52 −0 src/main/java/io/goodforgod/api/etherscan/model/Balance.java
  111. +91 −0 src/main/java/io/goodforgod/api/etherscan/model/BaseTx.java
  112. +108 −0 src/main/java/io/goodforgod/api/etherscan/model/Block.java
  113. +79 −0 src/main/java/io/goodforgod/api/etherscan/model/BlockTx.java
  114. +198 −0 src/main/java/io/goodforgod/api/etherscan/model/BlockUncle.java
  115. +86 −0 src/main/java/io/goodforgod/api/etherscan/model/ContractCreation.java
  116. +124 −0 src/main/java/io/goodforgod/api/etherscan/model/EthSupply.java
  117. +148 −0 src/main/java/io/goodforgod/api/etherscan/model/GasOracle.java
  118. +248 −0 src/main/java/io/goodforgod/api/etherscan/model/Log.java
  119. +123 −0 src/main/java/io/goodforgod/api/etherscan/model/Price.java
  120. +80 −0 src/main/java/io/goodforgod/api/etherscan/model/Status.java
  121. +5 −11 src/main/java/io/{ → goodforgod}/api/etherscan/model/TokenBalance.java
  122. +209 −0 src/main/java/io/goodforgod/api/etherscan/model/Tx.java
  123. +239 −0 src/main/java/io/goodforgod/api/etherscan/model/TxErc1155.java
  124. +240 −0 src/main/java/io/goodforgod/api/etherscan/model/TxErc20.java
  125. +239 −0 src/main/java/io/goodforgod/api/etherscan/model/TxErc721.java
  126. +207 −0 src/main/java/io/goodforgod/api/etherscan/model/TxInternal.java
  127. +146 −0 src/main/java/io/goodforgod/api/etherscan/model/Wei.java
  128. +356 −0 src/main/java/io/goodforgod/api/etherscan/model/proxy/BlockProxy.java
  129. +237 −0 src/main/java/io/goodforgod/api/etherscan/model/proxy/ReceiptProxy.java
  130. +274 −0 src/main/java/io/goodforgod/api/etherscan/model/proxy/TxProxy.java
  131. +1 −3 src/main/java/io/{ → goodforgod}/api/etherscan/model/proxy/utility/BaseProxyTO.java
  132. +2 −4 src/main/java/io/{ → goodforgod}/api/etherscan/model/proxy/utility/BlockProxyTO.java
  133. +1 −3 src/main/java/io/{ → goodforgod}/api/etherscan/model/proxy/utility/ErrorProxyTO.java
  134. +1 −3 src/main/java/io/{ → goodforgod}/api/etherscan/model/proxy/utility/StringProxyTO.java
  135. +2 −4 src/main/java/io/{ → goodforgod}/api/etherscan/model/proxy/utility/TxInfoProxyTO.java
  136. +2 −4 src/main/java/io/{ → goodforgod}/api/etherscan/model/proxy/utility/TxProxyTO.java
  137. +1 −1 src/main/java/io/{ → goodforgod}/api/etherscan/model/query/LogOp.java
  138. +51 −0 src/main/java/io/goodforgod/api/etherscan/model/query/LogQuery.java
  139. +86 −0 src/main/java/io/goodforgod/api/etherscan/model/query/LogQueryBuilderImpl.java
  140. +30 −0 src/main/java/io/goodforgod/api/etherscan/model/query/LogQueryImpl.java
  141. +7 −6 ...an/model/query/impl/BaseLogQuery.java → goodforgod/api/etherscan/model/query/LogQueryParams.java}
  142. +17 −0 src/main/java/io/goodforgod/api/etherscan/model/query/LogTopicBuilder.java
  143. +24 −19 ...va/io/{api/etherscan/model/query/impl → goodforgod/api/etherscan/model/query}/LogTopicQuadro.java
  144. +11 −10 ...va/io/{api/etherscan/model/query/impl → goodforgod/api/etherscan/model/query}/LogTopicSingle.java
  145. +20 −16 ...va/io/{api/etherscan/model/query/impl → goodforgod/api/etherscan/model/query}/LogTopicTriple.java
  146. +17 −14 ...ava/io/{api/etherscan/model/query/impl → goodforgod/api/etherscan/model/query}/LogTopicTuple.java
  147. +1 −3 ...io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/BalanceResponseTO.java
  148. +1 −3 ...in/java/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/BalanceTO.java
  149. +1 −3 ...o/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/BaseListResponseTO.java
  150. +23 −0 src/main/java/io/goodforgod/api/etherscan/model/response/BaseResponseTO.java
  151. +1 −3 ...n/java/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/BlockParam.java
  152. +2 −4 ...a/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/BlockResponseTO.java
  153. +3 −0 src/main/java/io/goodforgod/api/etherscan/model/response/ContractCreationResponseTO.java
  154. +20 −0 src/main/java/io/goodforgod/api/etherscan/model/response/ContractCreationTO.java
  155. +16 −0 src/main/java/io/goodforgod/api/etherscan/model/response/EthSupplyResponseTO.java
  156. +14 −0 src/main/java/io/goodforgod/api/etherscan/model/response/GasEstimateResponseTO.java
  157. +16 −0 src/main/java/io/goodforgod/api/etherscan/model/response/GasOracleResponseTO.java
  158. +2 −4 ...ava/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/LogResponseTO.java
  159. +2 −4 ...a/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/PriceResponseTO.java
  160. +1 −3 ...i/etherscan/model/utility → goodforgod/api/etherscan/model/response}/ReceiptStatusResponseTO.java
  161. +1 −3 ...a/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/ReceiptStatusTO.java
  162. +2 −4 .../io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/StatusResponseTO.java
  163. +50 −0 src/main/java/io/goodforgod/api/etherscan/model/response/StringResponseTO.java
  164. +11 −0 src/main/java/io/goodforgod/api/etherscan/model/response/TxErc1155ResponseTO.java
  165. +11 −0 src/main/java/io/goodforgod/api/etherscan/model/response/TxErc20ResponseTO.java
  166. +11 −0 src/main/java/io/goodforgod/api/etherscan/model/response/TxErc721ResponseTO.java
  167. +2 −4 ...{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/TxInternalResponseTO.java
  168. +2 −4 ...java/io/{api/etherscan/model/utility → goodforgod/api/etherscan/model/response}/TxResponseTO.java
  169. +16 −0 src/main/java/io/goodforgod/api/etherscan/model/response/UncleBlockResponseTO.java
  170. +30 −21 src/main/java/io/{ → goodforgod}/api/etherscan/util/BasicUtils.java
  171. +0 −60 src/test/java/io/api/ApiRunner.java
  172. +0 −86 src/test/java/io/api/etherscan/EtherScanApiTest.java
  173. +0 −74 src/test/java/io/api/etherscan/account/AccountBalanceTest.java
  174. +0 −90 src/test/java/io/api/etherscan/account/AccountMinedBlocksTest.java
  175. +0 −93 src/test/java/io/api/etherscan/account/AccountTokenBalanceTest.java
  176. +0 −96 src/test/java/io/api/etherscan/account/AccountTxInternalByHashTest.java
  177. +0 −41 src/test/java/io/api/etherscan/contract/ContractApiTest.java
  178. +0 −355 src/test/java/io/api/etherscan/logs/LogQueryBuilderTest.java
  179. +0 −91 src/test/java/io/api/etherscan/logs/LogsApiTest.java
  180. +0 −19 src/test/java/io/api/etherscan/proxy/ProxyBlockLastNoApiTest.java
  181. +0 −46 src/test/java/io/api/etherscan/proxy/ProxyCallApiTest.java
  182. +0 −36 src/test/java/io/api/etherscan/proxy/ProxyCodeApiTest.java
  183. +0 −46 src/test/java/io/api/etherscan/proxy/ProxyGasApiTest.java
  184. +0 −35 src/test/java/io/api/etherscan/proxy/ProxyStorageApiTest.java
  185. +0 −43 src/test/java/io/api/etherscan/proxy/ProxyTxCountApiTest.java
  186. +0 −39 src/test/java/io/api/etherscan/proxy/ProxyTxSendRawApiTest.java
  187. +0 −29 src/test/java/io/api/etherscan/statistic/StatisticPriceApiTest.java
  188. +0 −35 src/test/java/io/api/etherscan/statistic/StatisticTokenSupplyApiTest.java
  189. +0 −42 src/test/java/io/api/etherscan/transaction/TransactionExecApiTest.java
  190. +0 −36 src/test/java/io/api/etherscan/transaction/TransactionReceiptApiTest.java
  191. +0 −54 src/test/java/io/api/manager/QueueManagerTest.java
  192. +0 −103 src/test/java/io/api/util/BasicUtilsTests.java
  193. +44 −0 src/test/java/io/goodforgod/api/etherscan/ApiRunner.java
  194. +78 −0 src/test/java/io/goodforgod/api/etherscan/EtherScanAPITests.java
  195. +17 −24 ...ount/AccountBalanceListTest.java → goodforgod/api/etherscan/account/AccountBalanceListTests.java}
  196. +40 −0 src/test/java/io/goodforgod/api/etherscan/account/AccountBalanceTests.java
  197. +53 −0 src/test/java/io/goodforgod/api/etherscan/account/AccountMinedBlocksTests.java
  198. +56 −0 src/test/java/io/goodforgod/api/etherscan/account/AccountTokenBalanceTests.java
  199. +22 −24 ...scan/account/AccountTxTokenTest.java → goodforgod/api/etherscan/account/AccountTxErc20Tests.java}
  200. +65 −0 src/test/java/io/goodforgod/api/etherscan/account/AccountTxInternalByHashTests.java
  201. +16 −16 ...ccount/AccountTxInternalTest.java → goodforgod/api/etherscan/account/AccountTxInternalTests.java}
  202. +81 −0 src/test/java/io/goodforgod/api/etherscan/account/AccountTxRc1155TokenTests.java
  203. +22 −22 ...nt/AccountTxRc721TokenTest.java → goodforgod/api/etherscan/account/AccountTxRc721TokenTests.java}
  204. +17 −19 ...pi/etherscan/account/AccountTxsTest.java → goodforgod/api/etherscan/account/AccountTxsTests.java}
  205. +12 −15 ...va/io/{api/etherscan/block/BlockApiTest.java → goodforgod/api/etherscan/block/BlockApiTests.java}
  206. +86 −0 src/test/java/io/goodforgod/api/etherscan/contract/ContractApiTests.java
  207. +32 −0 src/test/java/io/goodforgod/api/etherscan/gastracker/GasTrackerApiTests.java
  208. +320 −0 src/test/java/io/goodforgod/api/etherscan/logs/LogQueryBuilderTests.java
  209. +75 −0 src/test/java/io/goodforgod/api/etherscan/logs/LogsApiTests.java
  210. +45 −0 src/test/java/io/goodforgod/api/etherscan/manager/SemaphoreRequestQueueManagerTests.java
  211. +510 −0 src/test/java/io/goodforgod/api/etherscan/model/ModelBuilderTests.java
  212. +12 −25 .../etherscan/proxy/ProxyBlockApiTest.java → goodforgod/api/etherscan/proxy/ProxyBlockApiTests.java}
  213. +17 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyBlockLastNoApiTests.java
  214. +8 −11 .../proxy/ProxyBlockUncleApiTest.java → goodforgod/api/etherscan/proxy/ProxyBlockUncleApiTests.java}
  215. +45 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyCallApiTests.java
  216. +34 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyCodeApiTests.java
  217. +43 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyGasApiTests.java
  218. +31 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyStorageApiTests.java
  219. +15 −17 ...o/{api/etherscan/proxy/ProxyTxApiTest.java → goodforgod/api/etherscan/proxy/ProxyTxApiTests.java}
  220. +42 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyTxCountApiTests.java
  221. +14 −17 ...an/proxy/ProxyTxReceiptApiTest.java → goodforgod/api/etherscan/proxy/ProxyTxReceiptApiTests.java}
  222. +36 −0 src/test/java/io/goodforgod/api/etherscan/proxy/ProxyTxSendRawApiTests.java
  223. +27 −0 src/test/java/io/goodforgod/api/etherscan/statistic/StatisticPriceApiTests.java
  224. +9 −12 ...ic/StatisticSupplyApiTest.java → goodforgod/api/etherscan/statistic/StatisticSupplyApiTests.java}
  225. +28 −0 src/test/java/io/goodforgod/api/etherscan/statistic/StatisticSupplyTotalApiTests.java
  226. +34 −0 src/test/java/io/goodforgod/api/etherscan/statistic/StatisticTokenSupplyApiTests.java
  227. +2 −4 src/test/java/io/{api → goodforgod/api/etherscan}/support/AddressUtil.java
  228. +40 −0 src/test/java/io/goodforgod/api/etherscan/transaction/TransactionExecApiTests.java
  229. +34 −0 src/test/java/io/goodforgod/api/etherscan/transaction/TransactionReceiptApiTests.java
  230. +88 −0 src/test/java/io/goodforgod/api/etherscan/util/BasicUtilsTests.java
18 changes: 17 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
@@ -8,14 +8,30 @@ root = true
end_of_line = lf
charset = utf-8

# Json
[*.json]
indent_size = 2
indent_style = space
insert_final_newline = false
trim_trailing_whitespace = true

# Yaml
[{*.yml, *.yaml}]
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

# Property files
[*.properties]
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true


# XML files
[*.xml]
indent_size = 4
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
35 changes: 27 additions & 8 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -2,9 +2,8 @@
# and leave all files detected as binary untouched.
* text=auto

#

# The above will handle all files NOT found below
#
# These files are text and should be normalized (Convert crlf => lf)
*.bash text eol=lf
*.css text diff=css
@@ -26,16 +25,36 @@
*.xml text
*.yml text eol=lf


# These files are binary and should be left untouched
# (binary is a macro for -text -diff)
*.class binary
# Archives
*.7z binary
*.br binary
*.gz binary
*.tar binary
*.zip binary
*.jar binary
*.so binary
*.war binary
*.dll binary
*.ear binary
*.gif binary

# Documents
*.pdf binary

# Images
*.ico binary
*.jar binary
*.gif binary
*.jpg binary
*.jpeg binary
*.png binary
*.so binary
*.war binary
*.psd binary
*.webp binary

# Fonts
*.woff2 binary

# Other
*.exe binary
*.class binary
*.ear binary
43 changes: 0 additions & 43 deletions .github/workflows/gradle.yml

This file was deleted.

49 changes: 49 additions & 0 deletions .github/workflows/publish-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: CI Master

on:
release:
types: [ published ]

jobs:
publish-release:
runs-on: ubuntu-latest
name: Publish Release

steps:
- uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'

- name: Build
run: './gradlew classes'

- name: Test
run: './gradlew test jacocoTestReport'
env:
ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY_2 }}

- name: SonarQube
run: './gradlew sonar --info'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

- name: Publish Release to GitHub Packages
run: './gradlew publishMavenJavaPublicationToGitHubPackagesRepository'
env:
RELEASE_VERSION: ${{ github.ref_name }}
GITHUB_TOKEN: ${{ secrets.OSS_GITHUB_TOKEN }}
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.OSS_SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.OSS_SIGNING_PASSWORD }}

- name: Publish Release to OSSRH
run: './gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository'
env:
RELEASE_VERSION: ${{ github.ref_name }}
OSS_USERNAME: ${{ secrets.OSS_USERNAME }}
OSS_PASSWORD: ${{ secrets.OSS_PASSWORD }}
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.OSS_SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.OSS_SIGNING_PASSWORD }}
44 changes: 44 additions & 0 deletions .github/workflows/publish-snapshot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: CI Dev

on:
push:
paths:
- '**/workflows/*.yml'
- '**/java/**'
- '*.java'
- '*.gradle'
- '*.properties'
branches:
- dev

jobs:
publish-snapshot:
runs-on: ubuntu-latest
name: Publish Snapshot

steps:
- uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'

- name: Code Style
run: './gradlew spotlessCheck'

- name: Build
run: './gradlew classes'

- name: Test
run: './gradlew test jacocoTestReport'
env:
ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY_2 }}

- name: Publish Snapshot
run: './gradlew publish'
env:
OSS_USERNAME: ${{ secrets.OSS_USERNAME }}
OSS_PASSWORD: ${{ secrets.OSS_PASSWORD }}
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.OSS_SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.OSS_SIGNING_PASSWORD }}
55 changes: 55 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: CI Pull Request

on:
pull_request:
branches:
- master
- dev

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
java: [ '11', '17' ]
name: Java ${{ matrix.java }} Pull Request setup

steps:
- uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'adopt'

- name: Code Style
run: './gradlew spotlessCheck'

- name: Build
run: './gradlew classes'

- name: Test
if: matrix.java == '11'
run: './gradlew test jacocoTestReport'
env:
ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY_1 }}

- name: Test
if: matrix.java == '17'
run: './gradlew test jacocoTestReport'
env:
ETHERSCAN_API_KEY: ${{ secrets.ETHERSCAN_API_KEY_2 }}

- name: Test Report
if: matrix.java == '17'
uses: EnricoMi/publish-unit-test-result-action@v2
with:
files: |
**/test-results/**/*.xml
- name: SonarQube
if: matrix.java == '17'
run: './gradlew sonar --info'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
21 changes: 16 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,18 @@
/.settings/
.idea
.idea/httpRequests
*.iml
### Package Files
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

### Gradle template
.gradle
build
build/
target/

### Idea generated files
.idea
.settings/
*.iml
out/
23 changes: 23 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Contributing Code or Documentation Guide

## Running Tests

The new code should contain tests that check new behavior.

Run tests `./gradlew test` to check that code works as behavior.

## Code Style

The code base should remain clean, following industry best practices for organization, javadoc and style, as much as possible.

To run the Code Style check use `./gradlew spotlessCheck`.

If check found any errors, you can apply Code Style by running `./gradlew spotlessApply`

## Creating a pull request

Once you are satisfied with your changes:

- Commit changes to the local branch you created.
- Push that branch with changes to the corresponding remote branch on GitHub
- Submit a [pull request](https://help.github.com/articles/creating-a-pull-request) to `dev` branch.
Loading