1010import com .dylibso .chicory .wasm .WasmModule ;
1111import com .dylibso .chicory .wasm .types .FunctionType ;
1212import com .dylibso .chicory .wasm .types .ValType ;
13- import com .google .common .util .concurrent .ThreadFactoryBuilder ;
1413import com .google .protobuf .ByteString ;
1514import com .google .protobuf .BytesValue ;
1615import com .google .protobuf .GeneratedMessageV3 ;
2928import java .security .SecureRandom ;
3029import java .time .Instant ;
3130import java .util .List ;
32- import java .util .concurrent .Executors ;
33- import java .util .concurrent .ScheduledExecutorService ;
3431import java .util .function .Function ;
3532import javax .crypto .Cipher ;
3633import javax .crypto .spec .IvParameterSpec ;
@@ -57,14 +54,10 @@ class WasmResolveApi {
5754 private final ExportFunction wasmMsgGuestSetResolverState ;
5855 private final ExportFunction wasmMsgFlushLogs ;
5956 private final ExportFunction wasmMsgGuestResolve ;
60- private static final ScheduledExecutorService logPollExecutor =
61- Executors .newScheduledThreadPool (1 , new ThreadFactoryBuilder ().setDaemon (true ).build ());
6257 private final ExportFunction wasmMsgGuestResolveWithSticky ;
6358
6459 public WasmResolveApi (WasmFlagLogger flagLogger ) {
6560 this .writeFlagLogs = flagLogger ;
66- logPollExecutor .scheduleAtFixedRate (
67- this ::flushLogs , 10 , 10 , java .util .concurrent .TimeUnit .SECONDS );
6861 try (InputStream wasmStream =
6962 getClass ().getClassLoader ().getResourceAsStream ("wasm/confidence_resolver.wasm" )) {
7063 if (wasmStream == null ) {
@@ -145,10 +138,6 @@ private Timestamp currentTime(Messages.Void unused) {
145138 return Timestamp .newBuilder ().setSeconds (Instant .now ().getEpochSecond ()).build ();
146139 }
147140
148- public void close () {
149- logPollExecutor .shutdownNow ();
150- }
151-
152141 public void setResolverState (byte [] state , String accountId ) {
153142 final var resolverStateRequest =
154143 Messages .SetResolverStateRequest .newBuilder ()
@@ -165,7 +154,7 @@ public void setResolverState(byte[] state, String accountId) {
165154 consumeResponse (respPtr , Messages .Void ::parseFrom );
166155 }
167156
168- private void flushLogs () {
157+ public void flushLogs () {
169158 final var voidRequest = Messages .Void .getDefaultInstance ();
170159 final var reqPtr = transferRequest (voidRequest );
171160 final var respPtr = (int ) wasmMsgFlushLogs .apply (reqPtr )[0 ];
0 commit comments