1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.handler.codec.http3;
17
18 import io.netty.util.internal.ObjectUtil;
19 import io.netty.util.internal.StringUtil;
20
21 import java.util.Objects;
22
23 public final class DefaultHttp3PushPromiseFrame implements Http3PushPromiseFrame {
24
25 private final long id;
26 private final Http3Headers headers;
27
28 public DefaultHttp3PushPromiseFrame(long id) {
29 this(id, new DefaultHttp3Headers());
30 }
31
32 public DefaultHttp3PushPromiseFrame(long id, Http3Headers headers) {
33 this.id = ObjectUtil.checkPositiveOrZero(id, "id");
34 this.headers = ObjectUtil.checkNotNull(headers, "headers");
35 }
36
37 @Override
38 public long id() {
39 return id;
40 }
41
42 @Override
43 public Http3Headers headers() {
44 return headers;
45 }
46
47 @Override
48 public boolean equals(Object o) {
49 if (this == o) {
50 return true;
51 }
52 if (o == null || getClass() != o.getClass()) {
53 return false;
54 }
55 DefaultHttp3PushPromiseFrame that = (DefaultHttp3PushPromiseFrame) o;
56 return id == that.id &&
57 Objects.equals(headers, that.headers);
58 }
59
60 @Override
61 public int hashCode() {
62 return Objects.hash(id, headers);
63 }
64
65 @Override
66 public String toString() {
67 return StringUtil.simpleClassName(this) + "(id=" + id() + ", headers=" + headers() + ')';
68 }
69 }