Package org.ngengine.nostr4j
Class NostrRelay
java.lang.Object
org.ngengine.nostr4j.NostrRelay
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected long
protected boolean
protected boolean
protected final org.ngengine.platform.transport.WebsocketTransport
protected boolean
protected final org.ngengine.platform.AsyncExecutor
protected boolean
protected final List
<NostrRelayComponent> protected final Queue
<org.ngengine.nostr4j.NostrRelay.QueuedMessage> protected boolean
protected AtomicReference
<org.ngengine.platform.AsyncTask> protected final ExponentialBackoff
protected boolean
protected NostrRelayInfo
protected final String
protected boolean
protected final Map
<String, NostrMessageAck> -
Constructor Summary
ConstructorsConstructorDescriptionNostrRelay
(String url) NostrRelay
(String url, org.ngengine.platform.AsyncExecutor executor) -
Method Summary
Modifier and TypeMethodDescriptionaddComponent
(NostrRelayComponent listener) void
afterSendMessage
(NostrMessage message) void
beforeSendMessage
(NostrMessage message) org.ngengine.platform.AsyncTask
<NostrRelay> connect()
org.ngengine.platform.AsyncTask
<NostrRelay> disconnect
(String reason) long
getAckTimeout
(TimeUnit outputUnit) <T extends NostrRelayComponent>
TgetComponent
(Class<T> clazz) getInfo()
getUrl()
boolean
boolean
boolean
boolean
protected void
loop()
removeComponent
(NostrRelayComponent listener) protected <T> void
runInRelayExecutor
(BiConsumer<Consumer<T>, Consumer<Throwable>> runnable, boolean enqueue) org.ngengine.platform.AsyncTask
<NostrMessageAck> sendMessage
(NostrMessage message) void
setAckTimeout
(long time, TimeUnit unit) void
setAsyncEventsVerification
(boolean v) void
setAutoReconnect
(boolean reconnect) void
setVerifyEvents
(boolean verify)
-
Field Details
-
connector
protected final org.ngengine.platform.transport.WebsocketTransport connector -
url
-
listeners
-
waitingEventsAck
-
executor
protected final org.ngengine.platform.AsyncExecutor executor -
reconnectionBackoff
-
ackTimeoutS
protected volatile long ackTimeoutS -
reconnectOnDrop
protected volatile boolean reconnectOnDrop -
disconnectedByClient
protected volatile boolean disconnectedByClient -
connected
protected volatile boolean connected -
connecting
protected volatile boolean connecting -
firstConnection
protected volatile boolean firstConnection -
verifyEvents
protected volatile boolean verifyEvents -
parallelEvents
protected volatile boolean parallelEvents -
messageQueue
-
connectCallbacks
-
queue
-
relayInfo
-
-
Constructor Details
-
NostrRelay
-
NostrRelay
-
-
Method Details
-
getInfo
- Throws:
IOException
-
setVerifyEvents
public void setVerifyEvents(boolean verify) -
isVerifyEvents
public boolean isVerifyEvents() -
setAsyncEventsVerification
public void setAsyncEventsVerification(boolean v) -
isAsyncEventsVerification
public boolean isAsyncEventsVerification() -
runInRelayExecutor
protected <T> void runInRelayExecutor(BiConsumer<Consumer<T>, Consumer<Throwable>> runnable, boolean enqueue) -
setAutoReconnect
public void setAutoReconnect(boolean reconnect) -
isAutoReconnect
public boolean isAutoReconnect() -
setAckTimeout
-
getAckTimeout
-
addComponent
-
removeComponent
-
getComponent
-
isConnected
public boolean isConnected() -
beforeSendMessage
-
afterSendMessage
-
sendMessage
-
getUrl
-
connect
-
disconnect
-
loop
protected void loop()
-