Skip to content

Commit 727e009

Browse files
committed
Reconnect feature
1 parent 4f7e7a8 commit 727e009

File tree

6 files changed

+64
-112
lines changed

6 files changed

+64
-112
lines changed

.idea/misc.xml

Lines changed: 24 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules/lib/lib.iml

Lines changed: 0 additions & 108 deletions
This file was deleted.

.idea/runConfigurations.xml

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/src/main/java/ua/naiksoftware/stomp/client/StompClient.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,34 @@ public StompClient(ConnectionProvider connectionProvider) {
4242
mWaitConnectionObservables = new ArrayList<>();
4343
}
4444

45+
/**
46+
* Connect without reconnect if connected
47+
*/
4548
public void connect() {
4649
connect(null);
4750
}
4851

52+
public void connect(boolean reconnect) {
53+
connect(null, reconnect);
54+
}
55+
56+
/**
57+
* Connect without reconnect if connected
58+
*
59+
* @param _headers might be null
60+
*/
4961
public void connect(List<StompHeader> _headers) {
62+
connect(_headers, false);
63+
}
64+
65+
/**
66+
* If already connected and reconnect=false - nope
67+
*
68+
* @param _headers might be null
69+
*/
70+
public void connect(List<StompHeader> _headers, boolean reconnect) {
71+
if (reconnect) disconnect();
72+
if (mConnected) return;
5073
mConnectionProvider.getLifecycleReceiver()
5174
.subscribe(lifecycleEvent -> {
5275
switch (lifecycleEvent.getType()) {
@@ -121,6 +144,7 @@ public Observable<LifecycleEvent> lifecycle() {
121144

122145
public void disconnect() {
123146
if (mMessagesSubscription != null) mMessagesSubscription.unsubscribe();
147+
mConnected = false;
124148
}
125149

126150
public Observable<StompMessage> topic(String destinationPath) {

0 commit comments

Comments
 (0)