Skip to content

Commit dd8a3a1

Browse files
authored
Extract from main 2.11 branch things not specific to 2.11 (#1241)
1 parent e0d25fd commit dd8a3a1

File tree

6 files changed

+53
-47
lines changed

6 files changed

+53
-47
lines changed

src/main/java/io/nats/client/api/SourceBase.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import static io.nats.client.support.JsonUtils.beginJson;
3030
import static io.nats.client.support.JsonUtils.endJson;
3131
import static io.nats.client.support.JsonValueUtils.readValue;
32-
import static io.nats.client.support.Validator.consumerFilterSubjectsAreEquivalent;
32+
import static io.nats.client.support.Validator.listsAreEquivalent;
3333

3434
public abstract class SourceBase implements JsonSerializable {
3535
private final String name;
@@ -194,7 +194,7 @@ public boolean equals(Object o) {
194194
if (!Objects.equals(filterSubject, that.filterSubject))
195195
return false;
196196
if (!Objects.equals(external, that.external)) return false;
197-
return consumerFilterSubjectsAreEquivalent(subjectTransforms, that.subjectTransforms);
197+
return listsAreEquivalent(subjectTransforms, that.subjectTransforms);
198198
}
199199

200200
@Override

src/main/java/io/nats/client/impl/NatsJetStream.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -395,7 +395,7 @@ else if (!serverCC.getDeliverGroup().equals(settledDeliverGroup)) {
395395
settledFilterSubjects = serverCC.getFilterSubjects();
396396
}
397397
}
398-
else if (!consumerFilterSubjectsAreEquivalent(settledFilterSubjects, serverCC.getFilterSubjects())) {
398+
else if (!listsAreEquivalent(settledFilterSubjects, serverCC.getFilterSubjects())) {
399399
throw JsSubSubjectDoesNotMatchFilter.instance();
400400
}
401401

@@ -528,9 +528,9 @@ public List<String> getChanges(ConsumerConfiguration serverCc) {
528528
if (deliverSubject != null && !deliverSubject.equals(serverCcc.deliverSubject)) { changes.add("deliverSubject"); }
529529
if (deliverGroup != null && !deliverGroup.equals(serverCcc.deliverGroup)) { changes.add("deliverGroup"); }
530530

531-
if (backoff != null && !consumerFilterSubjectsAreEquivalent(backoff, serverCcc.backoff)) { changes.add("backoff"); }
531+
if (backoff != null && !listsAreEquivalent(backoff, serverCcc.backoff)) { changes.add("backoff"); }
532532
if (metadata != null && !mapsAreEquivalent(metadata, serverCcc.metadata)) { changes.add("metadata"); }
533-
if (filterSubjects != null && !consumerFilterSubjectsAreEquivalent(filterSubjects, serverCcc.filterSubjects)) { changes.add("filterSubjects"); }
533+
if (filterSubjects != null && !listsAreEquivalent(filterSubjects, serverCcc.filterSubjects)) { changes.add("filterSubjects"); }
534534

535535
// do not need to check Durable because the original is retrieved by the durable name
536536

src/main/java/io/nats/client/support/ApiConstants.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ public interface ApiConstants {
7878
String FIRST_TS = "first_ts";
7979
String FLOW_CONTROL = "flow_control";
8080
String GO = "go";
81+
String GROUP = "group";
8182
String HDRS = "hdrs";
8283
String HEADERS = "headers";
8384
String HEADERS_ONLY = "headers_only";
@@ -117,6 +118,8 @@ public interface ApiConstants {
117118
String MAX_STORAGE = "max_storage";
118119
String MAX_STREAMS = "max_streams";
119120
String MAX_WAITING = "max_waiting"; // this is correct! the meaning name is different than the field name
121+
String MIN_PENDING = "min_pending";
122+
String MIN_ACK_PENDING = "min_ack_pending";
120123
String MEM_STORAGE = "mem_storage";
121124
String MEMORY = "memory";
122125
String MEMORY_MAX_STREAM_BYTES = "memory_max_stream_bytes";
@@ -153,6 +156,8 @@ public interface ApiConstants {
153156
String PAUSE_UNTIL = "pause_until";
154157
String PLACEMENT = "placement";
155158
String PORT = "port";
159+
String PRIORITY_GROUPS = "priority_groups";
160+
String PRIORITY_POLICY = "priority_policy";
156161
String PROCESSING_TIME = "processing_time";
157162
String PROTO = "proto";
158163
String PURGED = "purged";

src/main/java/io/nats/client/support/Status.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ public class Status {
2727
public static final int NOT_FOUND_CODE = 404;
2828
public static final int REQUEST_TIMEOUT_CODE = 408;
2929
public static final int CONFLICT_CODE = 409;
30+
public static final int EOB = 204;
3031

3132
public static String BAD_REQUEST = "Bad Request"; // 400
3233
public static String NO_MESSAGES = "No Messages"; // 404

src/main/java/io/nats/client/support/Validator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -623,7 +623,7 @@ public static boolean isSemVer(String s) {
623623
// This function tests filter subject equivalency
624624
// It does not care what order and also assumes that there are no duplicates.
625625
// From the server: consumer subject filters cannot overlap [10138]
626-
public static <T> boolean consumerFilterSubjectsAreEquivalent(List<T> l1, List<T> l2)
626+
public static <T> boolean listsAreEquivalent(List<T> l1, List<T> l2)
627627
{
628628
if (l1 == null || l1.isEmpty()) {
629629
return l2 == null || l2.isEmpty();

src/test/java/io/nats/client/support/ValidatorTests.java

Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -560,47 +560,47 @@ public void testConsumerFilterSubjectsAreEquivalent() {
560560
List<String> l5 = null;
561561
List<String> l6 = new ArrayList<>();
562562

563-
assertTrue(consumerFilterSubjectsAreEquivalent(l1, l1));
564-
assertTrue(consumerFilterSubjectsAreEquivalent(l1, l2));
565-
assertFalse(consumerFilterSubjectsAreEquivalent(l1, l3));
566-
assertFalse(consumerFilterSubjectsAreEquivalent(l1, l4));
567-
assertFalse(consumerFilterSubjectsAreEquivalent(l1, l5));
568-
assertFalse(consumerFilterSubjectsAreEquivalent(l1, l6));
569-
570-
assertTrue(consumerFilterSubjectsAreEquivalent(l2, l1));
571-
assertTrue(consumerFilterSubjectsAreEquivalent(l2, l2));
572-
assertFalse(consumerFilterSubjectsAreEquivalent(l2, l3));
573-
assertFalse(consumerFilterSubjectsAreEquivalent(l2, l4));
574-
assertFalse(consumerFilterSubjectsAreEquivalent(l2, l5));
575-
assertFalse(consumerFilterSubjectsAreEquivalent(l2, l6));
576-
577-
assertFalse(consumerFilterSubjectsAreEquivalent(l3, l1));
578-
assertFalse(consumerFilterSubjectsAreEquivalent(l3, l2));
579-
assertTrue(consumerFilterSubjectsAreEquivalent(l3, l3));
580-
assertFalse(consumerFilterSubjectsAreEquivalent(l3, l4));
581-
assertFalse(consumerFilterSubjectsAreEquivalent(l3, l5));
582-
assertFalse(consumerFilterSubjectsAreEquivalent(l3, l6));
583-
584-
assertFalse(consumerFilterSubjectsAreEquivalent(l4, l1));
585-
assertFalse(consumerFilterSubjectsAreEquivalent(l4, l2));
586-
assertFalse(consumerFilterSubjectsAreEquivalent(l4, l3));
587-
assertTrue(consumerFilterSubjectsAreEquivalent(l4, l4));
588-
assertFalse(consumerFilterSubjectsAreEquivalent(l4, l5));
589-
assertFalse(consumerFilterSubjectsAreEquivalent(l4, l6));
590-
591-
assertFalse(consumerFilterSubjectsAreEquivalent(l5, l1));
592-
assertFalse(consumerFilterSubjectsAreEquivalent(l5, l2));
593-
assertFalse(consumerFilterSubjectsAreEquivalent(l5, l3));
594-
assertFalse(consumerFilterSubjectsAreEquivalent(l5, l4));
595-
assertTrue(consumerFilterSubjectsAreEquivalent(l5, l5));
596-
assertTrue(consumerFilterSubjectsAreEquivalent(l5, l6));
597-
598-
assertFalse(consumerFilterSubjectsAreEquivalent(l6, l1));
599-
assertFalse(consumerFilterSubjectsAreEquivalent(l6, l2));
600-
assertFalse(consumerFilterSubjectsAreEquivalent(l6, l3));
601-
assertFalse(consumerFilterSubjectsAreEquivalent(l6, l4));
602-
assertTrue(consumerFilterSubjectsAreEquivalent(l6, l5));
603-
assertTrue(consumerFilterSubjectsAreEquivalent(l6, l6));
563+
assertTrue(listsAreEquivalent(l1, l1));
564+
assertTrue(listsAreEquivalent(l1, l2));
565+
assertFalse(listsAreEquivalent(l1, l3));
566+
assertFalse(listsAreEquivalent(l1, l4));
567+
assertFalse(listsAreEquivalent(l1, l5));
568+
assertFalse(listsAreEquivalent(l1, l6));
569+
570+
assertTrue(listsAreEquivalent(l2, l1));
571+
assertTrue(listsAreEquivalent(l2, l2));
572+
assertFalse(listsAreEquivalent(l2, l3));
573+
assertFalse(listsAreEquivalent(l2, l4));
574+
assertFalse(listsAreEquivalent(l2, l5));
575+
assertFalse(listsAreEquivalent(l2, l6));
576+
577+
assertFalse(listsAreEquivalent(l3, l1));
578+
assertFalse(listsAreEquivalent(l3, l2));
579+
assertTrue(listsAreEquivalent(l3, l3));
580+
assertFalse(listsAreEquivalent(l3, l4));
581+
assertFalse(listsAreEquivalent(l3, l5));
582+
assertFalse(listsAreEquivalent(l3, l6));
583+
584+
assertFalse(listsAreEquivalent(l4, l1));
585+
assertFalse(listsAreEquivalent(l4, l2));
586+
assertFalse(listsAreEquivalent(l4, l3));
587+
assertTrue(listsAreEquivalent(l4, l4));
588+
assertFalse(listsAreEquivalent(l4, l5));
589+
assertFalse(listsAreEquivalent(l4, l6));
590+
591+
assertFalse(listsAreEquivalent(l5, l1));
592+
assertFalse(listsAreEquivalent(l5, l2));
593+
assertFalse(listsAreEquivalent(l5, l3));
594+
assertFalse(listsAreEquivalent(l5, l4));
595+
assertTrue(listsAreEquivalent(l5, l5));
596+
assertTrue(listsAreEquivalent(l5, l6));
597+
598+
assertFalse(listsAreEquivalent(l6, l1));
599+
assertFalse(listsAreEquivalent(l6, l2));
600+
assertFalse(listsAreEquivalent(l6, l3));
601+
assertFalse(listsAreEquivalent(l6, l4));
602+
assertTrue(listsAreEquivalent(l6, l5));
603+
assertTrue(listsAreEquivalent(l6, l6));
604604
}
605605

606606
@Test

0 commit comments

Comments
 (0)