Skip to content

Commit da76371

Browse files
committed
Add internal ID to consumer instances
References #50
1 parent 6283dad commit da76371

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

src/main/java/com/rabbitmq/stream/impl/StreamConsumer.java

+28
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,19 @@
2222
import com.rabbitmq.stream.impl.Client.QueryOffsetResponse;
2323
import com.rabbitmq.stream.impl.StreamConsumerBuilder.TrackingConfiguration;
2424
import com.rabbitmq.stream.impl.StreamEnvironment.TrackingConsumerRegistration;
25+
import java.util.Objects;
2526
import java.util.concurrent.atomic.AtomicBoolean;
27+
import java.util.concurrent.atomic.AtomicLong;
2628
import java.util.function.LongConsumer;
2729
import org.slf4j.Logger;
2830
import org.slf4j.LoggerFactory;
2931

3032
class StreamConsumer implements Consumer {
3133

34+
private static final AtomicLong ID_SEQUENCE = new AtomicLong(0);
35+
3236
private static final Logger LOGGER = LoggerFactory.getLogger(StreamConsumer.class);
37+
private final long id;
3338
private final Runnable closingTrackingCallback;
3439
private final AtomicBoolean closed = new AtomicBoolean(false);
3540
private final String name;
@@ -52,6 +57,7 @@ class StreamConsumer implements Consumer {
5257
boolean lazyInit,
5358
SubscriptionListener subscriptionListener) {
5459

60+
this.id = ID_SEQUENCE.getAndIncrement();
5561
try {
5662
this.name = name;
5763
this.stream = stream;
@@ -227,4 +233,26 @@ enum Status {
227233
NOT_AVAILABLE,
228234
CLOSED
229235
}
236+
237+
@Override
238+
public boolean equals(Object o) {
239+
if (this == o) {
240+
return true;
241+
}
242+
if (o == null || getClass() != o.getClass()) {
243+
return false;
244+
}
245+
StreamConsumer that = (StreamConsumer) o;
246+
return id == that.id && stream.equals(that.stream);
247+
}
248+
249+
@Override
250+
public int hashCode() {
251+
return Objects.hash(id, stream);
252+
}
253+
254+
@Override
255+
public String toString() {
256+
return "StreamConsumer{" + "id=" + id + ", stream='" + stream + '\'' + '}';
257+
}
230258
}

0 commit comments

Comments
 (0)