// Code generated by protocol buffer compiler. Do not edit! package emu.nebula.proto; import java.io.IOException; import us.hebi.quickbuf.FieldName; import us.hebi.quickbuf.InvalidProtocolBufferException; import us.hebi.quickbuf.JsonSink; import us.hebi.quickbuf.JsonSource; import us.hebi.quickbuf.MessageFactory; import us.hebi.quickbuf.ProtoMessage; import us.hebi.quickbuf.ProtoSink; import us.hebi.quickbuf.ProtoSource; import us.hebi.quickbuf.RepeatedByte; import us.hebi.quickbuf.RepeatedInt; import us.hebi.quickbuf.RepeatedMessage; public final class InfinityTowerInfo { /** * Protobuf type {@code InfinityTowerInfoResp} */ public static final class InfinityTowerInfoResp extends ProtoMessage implements Cloneable { private static final long serialVersionUID = 0L; /** * optional uint32 BountyLevel = 1; */ private int bountyLevel; /** * optional bytes NextPackage = 2047; */ private final RepeatedByte nextPackage = RepeatedByte.newEmptyInstance(); /** * repeated uint32 PlotsIds = 2; */ private final RepeatedInt plotsIds = RepeatedInt.newEmptyInstance(); /** * repeated .InfinityTowerLevelInfo Infos = 3; */ private final RepeatedMessage infos = RepeatedMessage.newEmptyInstance(Public.InfinityTowerLevelInfo.getFactory()); private InfinityTowerInfoResp() { } /** * @return a new empty instance of {@code InfinityTowerInfoResp} */ public static InfinityTowerInfoResp newInstance() { return new InfinityTowerInfoResp(); } /** * optional uint32 BountyLevel = 1; * @return whether the bountyLevel field is set */ public boolean hasBountyLevel() { return (bitField0_ & 0x00000001) != 0; } /** * optional uint32 BountyLevel = 1; * @return this */ public InfinityTowerInfoResp clearBountyLevel() { bitField0_ &= ~0x00000001; bountyLevel = 0; return this; } /** * optional uint32 BountyLevel = 1; * @return the bountyLevel */ public int getBountyLevel() { return bountyLevel; } /** * optional uint32 BountyLevel = 1; * @param value the bountyLevel to set * @return this */ public InfinityTowerInfoResp setBountyLevel(final int value) { bitField0_ |= 0x00000001; bountyLevel = value; return this; } /** * optional bytes NextPackage = 2047; * @return whether the nextPackage field is set */ public boolean hasNextPackage() { return (bitField0_ & 0x00000002) != 0; } /** * optional bytes NextPackage = 2047; * @return this */ public InfinityTowerInfoResp clearNextPackage() { bitField0_ &= ~0x00000002; nextPackage.clear(); return this; } /** * optional bytes NextPackage = 2047; * * This method returns the internal storage object without modifying any has state. * The returned object should not be modified and be treated as read-only. * * Use {@link #getMutableNextPackage()} if you want to modify it. * * @return internal storage object for reading */ public RepeatedByte getNextPackage() { return nextPackage; } /** * optional bytes NextPackage = 2047; * * This method returns the internal storage object and sets the corresponding * has state. The returned object will become part of this message and its * contents may be modified as long as the has state is not cleared. * * @return internal storage object for modifications */ public RepeatedByte getMutableNextPackage() { bitField0_ |= 0x00000002; return nextPackage; } /** * optional bytes NextPackage = 2047; * @param value the nextPackage to add * @return this */ public InfinityTowerInfoResp addNextPackage(final byte value) { bitField0_ |= 0x00000002; nextPackage.add(value); return this; } /** * optional bytes NextPackage = 2047; * @param values the nextPackage to add * @return this */ public InfinityTowerInfoResp addAllNextPackage(final byte... values) { bitField0_ |= 0x00000002; nextPackage.addAll(values); return this; } /** * optional bytes NextPackage = 2047; * @param values the nextPackage to set * @return this */ public InfinityTowerInfoResp setNextPackage(final byte... values) { bitField0_ |= 0x00000002; nextPackage.copyFrom(values); return this; } /** * repeated uint32 PlotsIds = 2; * @return whether the plotsIds field is set */ public boolean hasPlotsIds() { return (bitField0_ & 0x00000004) != 0; } /** * repeated uint32 PlotsIds = 2; * @return this */ public InfinityTowerInfoResp clearPlotsIds() { bitField0_ &= ~0x00000004; plotsIds.clear(); return this; } /** * repeated uint32 PlotsIds = 2; * * This method returns the internal storage object without modifying any has state. * The returned object should not be modified and be treated as read-only. * * Use {@link #getMutablePlotsIds()} if you want to modify it. * * @return internal storage object for reading */ public RepeatedInt getPlotsIds() { return plotsIds; } /** * repeated uint32 PlotsIds = 2; * * This method returns the internal storage object and sets the corresponding * has state. The returned object will become part of this message and its * contents may be modified as long as the has state is not cleared. * * @return internal storage object for modifications */ public RepeatedInt getMutablePlotsIds() { bitField0_ |= 0x00000004; return plotsIds; } /** * repeated uint32 PlotsIds = 2; * @param value the plotsIds to add * @return this */ public InfinityTowerInfoResp addPlotsIds(final int value) { bitField0_ |= 0x00000004; plotsIds.add(value); return this; } /** * repeated uint32 PlotsIds = 2; * @param values the plotsIds to add * @return this */ public InfinityTowerInfoResp addAllPlotsIds(final int... values) { bitField0_ |= 0x00000004; plotsIds.addAll(values); return this; } /** * repeated .InfinityTowerLevelInfo Infos = 3; * @return whether the infos field is set */ public boolean hasInfos() { return (bitField0_ & 0x00000008) != 0; } /** * repeated .InfinityTowerLevelInfo Infos = 3; * @return this */ public InfinityTowerInfoResp clearInfos() { bitField0_ &= ~0x00000008; infos.clear(); return this; } /** * repeated .InfinityTowerLevelInfo Infos = 3; * * This method returns the internal storage object without modifying any has state. * The returned object should not be modified and be treated as read-only. * * Use {@link #getMutableInfos()} if you want to modify it. * * @return internal storage object for reading */ public RepeatedMessage getInfos() { return infos; } /** * repeated .InfinityTowerLevelInfo Infos = 3; * * This method returns the internal storage object and sets the corresponding * has state. The returned object will become part of this message and its * contents may be modified as long as the has state is not cleared. * * @return internal storage object for modifications */ public RepeatedMessage getMutableInfos() { bitField0_ |= 0x00000008; return infos; } /** * repeated .InfinityTowerLevelInfo Infos = 3; * @param value the infos to add * @return this */ public InfinityTowerInfoResp addInfos(final Public.InfinityTowerLevelInfo value) { bitField0_ |= 0x00000008; infos.add(value); return this; } /** * repeated .InfinityTowerLevelInfo Infos = 3; * @param values the infos to add * @return this */ public InfinityTowerInfoResp addAllInfos(final Public.InfinityTowerLevelInfo... values) { bitField0_ |= 0x00000008; infos.addAll(values); return this; } @Override public InfinityTowerInfoResp copyFrom(final InfinityTowerInfoResp other) { cachedSize = other.cachedSize; if ((bitField0_ | other.bitField0_) != 0) { bitField0_ = other.bitField0_; bountyLevel = other.bountyLevel; nextPackage.copyFrom(other.nextPackage); plotsIds.copyFrom(other.plotsIds); infos.copyFrom(other.infos); } return this; } @Override public InfinityTowerInfoResp mergeFrom(final InfinityTowerInfoResp other) { if (other.isEmpty()) { return this; } cachedSize = -1; if (other.hasBountyLevel()) { setBountyLevel(other.bountyLevel); } if (other.hasNextPackage()) { getMutableNextPackage().copyFrom(other.nextPackage); } if (other.hasPlotsIds()) { getMutablePlotsIds().addAll(other.plotsIds); } if (other.hasInfos()) { getMutableInfos().addAll(other.infos); } return this; } @Override public InfinityTowerInfoResp clear() { if (isEmpty()) { return this; } cachedSize = -1; bitField0_ = 0; bountyLevel = 0; nextPackage.clear(); plotsIds.clear(); infos.clear(); return this; } @Override public InfinityTowerInfoResp clearQuick() { if (isEmpty()) { return this; } cachedSize = -1; bitField0_ = 0; nextPackage.clear(); plotsIds.clear(); infos.clearQuick(); return this; } @Override public boolean equals(Object o) { if (o == this) { return true; } if (!(o instanceof InfinityTowerInfoResp)) { return false; } InfinityTowerInfoResp other = (InfinityTowerInfoResp) o; return bitField0_ == other.bitField0_ && (!hasBountyLevel() || bountyLevel == other.bountyLevel) && (!hasNextPackage() || nextPackage.equals(other.nextPackage)) && (!hasPlotsIds() || plotsIds.equals(other.plotsIds)) && (!hasInfos() || infos.equals(other.infos)); } @Override public void writeTo(final ProtoSink output) throws IOException { if ((bitField0_ & 0x00000001) != 0) { output.writeRawByte((byte) 8); output.writeUInt32NoTag(bountyLevel); } if ((bitField0_ & 0x00000002) != 0) { output.writeRawLittleEndian16((short) 32762); output.writeBytesNoTag(nextPackage); } if ((bitField0_ & 0x00000004) != 0) { for (int i = 0; i < plotsIds.length(); i++) { output.writeRawByte((byte) 16); output.writeUInt32NoTag(plotsIds.array()[i]); } } if ((bitField0_ & 0x00000008) != 0) { for (int i = 0; i < infos.length(); i++) { output.writeRawByte((byte) 26); output.writeMessageNoTag(infos.get(i)); } } } @Override protected int computeSerializedSize() { int size = 0; if ((bitField0_ & 0x00000001) != 0) { size += 1 + ProtoSink.computeUInt32SizeNoTag(bountyLevel); } if ((bitField0_ & 0x00000002) != 0) { size += 2 + ProtoSink.computeBytesSizeNoTag(nextPackage); } if ((bitField0_ & 0x00000004) != 0) { size += (1 * plotsIds.length()) + ProtoSink.computeRepeatedUInt32SizeNoTag(plotsIds); } if ((bitField0_ & 0x00000008) != 0) { size += (1 * infos.length()) + ProtoSink.computeRepeatedMessageSizeNoTag(infos); } return size; } @Override @SuppressWarnings("fallthrough") public InfinityTowerInfoResp mergeFrom(final ProtoSource input) throws IOException { // Enabled Fall-Through Optimization (QuickBuffers) int tag = input.readTag(); while (true) { switch (tag) { case 8: { // bountyLevel bountyLevel = input.readUInt32(); bitField0_ |= 0x00000001; tag = input.readTag(); if (tag != 16378) { break; } } case 16378: { // nextPackage input.readBytes(nextPackage); bitField0_ |= 0x00000002; tag = input.readTag(); if (tag != 18) { break; } } case 18: { // plotsIds [packed=true] input.readPackedUInt32(plotsIds, tag); bitField0_ |= 0x00000004; tag = input.readTag(); if (tag != 26) { break; } } case 26: { // infos tag = input.readRepeatedMessage(infos, tag); bitField0_ |= 0x00000008; if (tag != 0) { break; } } case 0: { return this; } default: { if (!input.skipField(tag)) { return this; } tag = input.readTag(); break; } case 16: { // plotsIds [packed=false] tag = input.readRepeatedUInt32(plotsIds, tag); bitField0_ |= 0x00000004; break; } } } } @Override public void writeTo(final JsonSink output) throws IOException { output.beginObject(); if ((bitField0_ & 0x00000001) != 0) { output.writeUInt32(FieldNames.bountyLevel, bountyLevel); } if ((bitField0_ & 0x00000002) != 0) { output.writeBytes(FieldNames.nextPackage, nextPackage); } if ((bitField0_ & 0x00000004) != 0) { output.writeRepeatedUInt32(FieldNames.plotsIds, plotsIds); } if ((bitField0_ & 0x00000008) != 0) { output.writeRepeatedMessage(FieldNames.infos, infos); } output.endObject(); } @Override public InfinityTowerInfoResp mergeFrom(final JsonSource input) throws IOException { if (!input.beginObject()) { return this; } while (!input.isAtEnd()) { switch (input.readFieldHash()) { case -2147349127: { if (input.isAtField(FieldNames.bountyLevel)) { if (!input.trySkipNullValue()) { bountyLevel = input.readUInt32(); bitField0_ |= 0x00000001; } } else { input.skipUnknownField(); } break; } case -2082324045: { if (input.isAtField(FieldNames.nextPackage)) { if (!input.trySkipNullValue()) { input.readBytes(nextPackage); bitField0_ |= 0x00000002; } } else { input.skipUnknownField(); } break; } case -1954480698: { if (input.isAtField(FieldNames.plotsIds)) { if (!input.trySkipNullValue()) { input.readRepeatedUInt32(plotsIds); bitField0_ |= 0x00000004; } } else { input.skipUnknownField(); } break; } case 70795621: { if (input.isAtField(FieldNames.infos)) { if (!input.trySkipNullValue()) { input.readRepeatedMessage(infos); bitField0_ |= 0x00000008; } } else { input.skipUnknownField(); } break; } default: { input.skipUnknownField(); break; } } } input.endObject(); return this; } @Override public InfinityTowerInfoResp clone() { return new InfinityTowerInfoResp().copyFrom(this); } @Override public boolean isEmpty() { return ((bitField0_) == 0); } public static InfinityTowerInfoResp parseFrom(final byte[] data) throws InvalidProtocolBufferException { return ProtoMessage.mergeFrom(new InfinityTowerInfoResp(), data).checkInitialized(); } public static InfinityTowerInfoResp parseFrom(final ProtoSource input) throws IOException { return ProtoMessage.mergeFrom(new InfinityTowerInfoResp(), input).checkInitialized(); } public static InfinityTowerInfoResp parseFrom(final JsonSource input) throws IOException { return ProtoMessage.mergeFrom(new InfinityTowerInfoResp(), input).checkInitialized(); } /** * @return factory for creating InfinityTowerInfoResp messages */ public static MessageFactory getFactory() { return InfinityTowerInfoRespFactory.INSTANCE; } private enum InfinityTowerInfoRespFactory implements MessageFactory { INSTANCE; @Override public InfinityTowerInfoResp create() { return InfinityTowerInfoResp.newInstance(); } } /** * Contains name constants used for serializing JSON */ static class FieldNames { static final FieldName bountyLevel = FieldName.forField("BountyLevel"); static final FieldName nextPackage = FieldName.forField("NextPackage"); static final FieldName plotsIds = FieldName.forField("PlotsIds"); static final FieldName infos = FieldName.forField("Infos"); } } }