git.iko.soy/opencode-android
on master help sign in
150 lines 5.2 kB history raw
1package soy.iko.opencode.shared;
4public abstract class MessageStatus {
6 abstract public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError;
8 public static MessageStatus deserialize(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
9 int index = deserializer.deserialize_variant_index();
10 switch (index) {
11 case 0: return Sent.load(deserializer);
12 case 1: return Pending.load(deserializer);
13 case 2: return Failed.load(deserializer);
14 default: throw new com.novi.serde.DeserializationError("Unknown variant index for MessageStatus: " + index);
15 }
16 }
18 public byte[] bincodeSerialize() throws com.novi.serde.SerializationError {
19 com.novi.serde.Serializer serializer = new com.novi.bincode.BincodeSerializer();
20 serialize(serializer);
21 return serializer.get_bytes();
22 }
24 public static MessageStatus bincodeDeserialize(byte[] input) throws com.novi.serde.DeserializationError {
25 if (input == null) {
26 throw new com.novi.serde.DeserializationError("Cannot deserialize null array");
27 }
28 com.novi.serde.Deserializer deserializer = new com.novi.bincode.BincodeDeserializer(input);
29 MessageStatus value = deserialize(deserializer);
30 if (deserializer.get_buffer_offset() < input.length) {
31 throw new com.novi.serde.DeserializationError("Some input bytes were not read");
32 }
33 return value;
34 }
36 public static final class Sent extends MessageStatus {
37 public Sent() {
38 }
40 public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError {
41 serializer.increase_container_depth();
42 serializer.serialize_variant_index(0);
43 serializer.decrease_container_depth();
44 }
46 static Sent load(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
47 deserializer.increase_container_depth();
48 Builder builder = new Builder();
49 deserializer.decrease_container_depth();
50 return builder.build();
51 }
53 public boolean equals(Object obj) {
54 if (this == obj) return true;
55 if (obj == null) return false;
56 if (getClass() != obj.getClass()) return false;
57 Sent other = (Sent) obj;
58 return true;
59 }
61 public int hashCode() {
62 int value = 7;
63 return value;
64 }
66 public static final class Builder {
67 public Sent build() {
68 return new Sent(
69 );
70 }
71 }
72 }
74 public static final class Pending extends MessageStatus {
75 public Pending() {
76 }
78 public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError {
79 serializer.increase_container_depth();
80 serializer.serialize_variant_index(1);
81 serializer.decrease_container_depth();
82 }
84 static Pending load(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
85 deserializer.increase_container_depth();
86 Builder builder = new Builder();
87 deserializer.decrease_container_depth();
88 return builder.build();
89 }
91 public boolean equals(Object obj) {
92 if (this == obj) return true;
93 if (obj == null) return false;
94 if (getClass() != obj.getClass()) return false;
95 Pending other = (Pending) obj;
96 return true;
97 }
99 public int hashCode() {
100 int value = 7;
101 return value;
102 }
104 public static final class Builder {
105 public Pending build() {
106 return new Pending(
107 );
108 }
109 }
110 }
112 public static final class Failed extends MessageStatus {
113 public Failed() {
114 }
116 public void serialize(com.novi.serde.Serializer serializer) throws com.novi.serde.SerializationError {
117 serializer.increase_container_depth();
118 serializer.serialize_variant_index(2);
119 serializer.decrease_container_depth();
120 }
122 static Failed load(com.novi.serde.Deserializer deserializer) throws com.novi.serde.DeserializationError {
123 deserializer.increase_container_depth();
124 Builder builder = new Builder();
125 deserializer.decrease_container_depth();
126 return builder.build();
127 }
129 public boolean equals(Object obj) {
130 if (this == obj) return true;
131 if (obj == null) return false;
132 if (getClass() != obj.getClass()) return false;
133 Failed other = (Failed) obj;
134 return true;
135 }
137 public int hashCode() {
138 int value = 7;
139 return value;
140 }
142 public static final class Builder {
143 public Failed build() {
144 return new Failed(
145 );
146 }
147 }
148 }