| | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import io.reactivex.Flowable; |
| | | import io.reactivex.disposables.Disposable; |
| | | import io.reactivex.functions.Function; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import okhttp3.Interceptor; |
| | | import okhttp3.OkHttpClient; |
| | | import okhttp3.Request; |
| | | import okhttp3.Response; |
| | | import org.reactivestreams.Subscription; |
| | | import org.springframework.data.repository.query.ParameterOutOfBoundsException; |
| | | import org.springframework.util.Base64Utils; |
| | | import org.web3j.abi.FunctionReturnDecoder; |
| | |
| | | import org.web3j.protocol.core.DefaultBlockParameterName; |
| | | import org.web3j.protocol.core.DefaultBlockParameterNumber; |
| | | import org.web3j.protocol.core.methods.request.EthFilter; |
| | | import org.web3j.protocol.core.methods.response.Log; |
| | | import org.web3j.protocol.core.methods.response.TransactionReceipt; |
| | | import org.web3j.protocol.http.HttpService; |
| | | import org.web3j.protocol.websocket.WebSocketClient; |
| | | import org.web3j.protocol.websocket.WebSocketService; |
| | | import org.web3j.tx.Contract; |
| | | import org.web3j.tx.gas.StaticGasProvider; |
| | | import org.web3j.utils.Async; |
| | | |
| | | import java.io.IOException; |
| | | import java.math.BigDecimal; |
| | | import java.math.BigInteger; |
| | | import java.math.RoundingMode; |
| | | import java.net.URI; |
| | | import java.nio.charset.StandardCharsets; |
| | | import java.rmi.activation.UnknownObjectException; |
| | |
| | | |
| | | } |
| | | |
| | | public static void wssBaseCoinEventListener(BigInteger startBlock, BaseCoinService event) { |
| | | WebSocketService ws = null; |
| | | WebSocketClient webSocketClient = null; |
| | | Web3j web3j = null; |
| | | |
| | | try { |
| | | webSocketClient = new WebSocketClient(new URI("wss://bsc-mainnet.nodereal.io/ws/v1/78074065950e4915aef4f12b6f357d16")); |
| | | ws = new WebSocketService(webSocketClient, true); |
| | | ws.connect(); |
| | | web3j = Web3j.build(ws); |
| | | |
| | | Disposable subscribe = web3j.replayPastAndFutureTransactionsFlowable(new DefaultBlockParameterNumber(startBlock)).subscribe(event::compile, error ->{ |
| | | log.error("监听链上异常", error); |
| | | }); |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | private static EthUsdtContract contract(String privateKey, String contractAddress, String url) { |
| | | Credentials credentials = Credentials.create(privateKey); |
| | |
| | | // log.error("--->", error); |
| | | // }); |
| | | |
| | | System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).totalSupply()); |
| | | // System.out.println(ChainService.getInstance(ChainEnum.BSC_TFC.name()).totalSupply()); |
| | | } |
| | | |
| | | } |