From 74c74744a91c42848cedcd44de057dcf9fc23cd4 Mon Sep 17 00:00:00 2001
From: Radek Davidek
Date: Fri, 16 May 2025 13:48:45 +0200
Subject: [PATCH] new LTC wallet API
---
.../java/cz/kamma/mining/bean/MiningBean.java | 48 ++++++++++++-------
src/main/webapp/META-INF/MANIFEST.MF | 3 ++
2 files changed, 35 insertions(+), 16 deletions(-)
create mode 100644 src/main/webapp/META-INF/MANIFEST.MF
diff --git a/src/main/java/cz/kamma/mining/bean/MiningBean.java b/src/main/java/cz/kamma/mining/bean/MiningBean.java
index 413fa55..ce20d33 100644
--- a/src/main/java/cz/kamma/mining/bean/MiningBean.java
+++ b/src/main/java/cz/kamma/mining/bean/MiningBean.java
@@ -7,7 +7,6 @@ import java.net.HttpURLConnection;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
@@ -109,14 +108,13 @@ public class MiningBean {
public void run() {
try {
if (ltcWallet != null && !"null".equals(ltcWallet) && ltcWallet.length() > 0) {
- restRequest = getStringResponse("https://litecoinblockexplorer.net/address/".concat(ltcWallet));
- if (restRequest != null && restRequest.length() > 0
- && restRequest.contains("Final Balance
")) {
- int index = restRequest.indexOf("Final Balance
")
- + "Final Balance
".length();
- String text = restRequest.substring(index, index + 11);
+ restRequest = getStringResponse(
+ "https://api.blockcypher.com/v1/ltc/main/addrs/".concat(ltcWallet).concat("/balance"));
+ if (restRequest != null && restRequest.length() > 0) {
+ JSONObject full = new JSONObject(restRequest);
+ String balance = (String) full.get("final_balance").toString();
- double res = Double.parseDouble(text);
+ double res = Double.parseDouble(balance) / 100000000;
if (res > 0d) {
resultStr = res + " LTC " + curSym + String.format("%.2f", (res * lastPrices[1]));
} else
@@ -588,12 +586,12 @@ public class MiningBean {
return (days > 0 ? days + "d " : "") + (hours > 0 ? hours + "h " : "") + (mins > 0 ? mins + "m " : "");
}
- public String getStringResponse(String urlStr) {
+ public static String getStringResponse(String urlStr) {
return getStringResponse(urlStr, Constants.DEFAULT_HTTP_CONNECTION_TIMEOUT, Constants.DEFAULT_HTTP_READ_TIMEOUT,
null);
}
- public String getStringResponse(String urlStr, Map headers) {
+ public static String getStringResponse(String urlStr, Map headers) {
return getStringResponse(urlStr, Constants.DEFAULT_HTTP_CONNECTION_TIMEOUT, Constants.DEFAULT_HTTP_READ_TIMEOUT,
headers);
}
@@ -635,7 +633,7 @@ public class MiningBean {
return output;
}
- public String getStringResponse(String urlStr, int timeout, int readTimeout, Map headers) {
+ public static String getStringResponse(String urlStr, int timeout, int readTimeout, Map headers) {
String output = "";
try {
@@ -666,11 +664,29 @@ public class MiningBean {
}
public static void main(String[] args) {
- int a = 0;
- a = a | 100;
- a = a | 1;
- a = a | 10;
- System.out.println(a);
+ String ltcWallet = "LZV1HpXEWoR1MWRiXeZSbkrgPfWE3oSwgh";
+ String restRequest = "";
+ try {
+ if (ltcWallet != null && !"null".equals(ltcWallet) && ltcWallet.length() > 0) {
+ restRequest = getStringResponse(
+ "https://api.blockcypher.com/v1/ltc/main/addrs/".concat(ltcWallet).concat("/balance"));
+ if (restRequest != null && restRequest.length() > 0) {
+ JSONObject full = new JSONObject(restRequest);
+ String balance = (String) full.get("final_balance").toString();
+
+ double res = Double.parseDouble(balance) / 100000000;
+ String curSym = "$";
+ String resultStr = "";
+ if (res > 0d) {
+ resultStr = res + " LTC " + curSym;
+ } else
+ resultStr = "Unknown";
+ System.out.println(resultStr);
+ }
+ }
+ } catch (Exception e) {
+ System.out.println(e.getMessage());
+ }
}
}
diff --git a/src/main/webapp/META-INF/MANIFEST.MF b/src/main/webapp/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..254272e
--- /dev/null
+++ b/src/main/webapp/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+