diff --git a/README.adoc b/README.adoc index 962c0a7..643c5cf 100644 --- a/README.adoc +++ b/README.adoc @@ -29,6 +29,11 @@ Here are some external resources for the development: If you receive a 404 HTTP status, this means that you are currently not allowed to view this repository because you do not have access. If you are an AEF member and do not have access, please ask the AEF office to grant you access to the repository. +== Usage of these protobuf definitions + +These protobuf definitions provide a data structure for data that is sent via agrirouter from one endpoint to one or multiple others. +The content of these messages is not relevant for the agrirouter; just for the receiving endpoints. + == Language specific compiling of the `*.proto` definitions diff --git a/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/Agrirouter/TechnicalMessageType/Gps.cs b/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/Agrirouter/TechnicalMessageType/Gps.cs index 126ba07..7b917fe 100644 --- a/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/Agrirouter/TechnicalMessageType/Gps.cs +++ b/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/Agrirouter/TechnicalMessageType/Gps.cs @@ -26,30 +26,35 @@ static GpsReflection() { string.Concat( "Ch50ZWNobmljYWxtZXNzYWdldHlwZS9ncHMucHJvdG8SH2Fncmlyb3V0ZXIu", "dGVjaG5pY2FsbWVzc2FnZXR5cGUaH2dvb2dsZS9wcm90b2J1Zi90aW1lc3Rh", - "bXAucHJvdG8aGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8itgYKB0dQU0xp", + "bXAucHJvdG8aGWdvb2dsZS9wcm90b2J1Zi9hbnkucHJvdG8igwgKB0dQU0xp", "c3QSRgoLZ3BzX2VudHJpZXMYASADKAsyMS5hZ3Jpcm91dGVyLnRlY2huaWNh", - "bG1lc3NhZ2V0eXBlLkdQU0xpc3QuR1BTRW50cnkSKAoJZXh0ZW5zaW9uGIAQ", - "IAMoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnkauAUKCEdQU0VudHJ5EhYKDnBv", - "c2l0aW9uX25vcnRoGAEgASgBEhUKDXBvc2l0aW9uX2Vhc3QYAiABKAESEwoL", - "cG9zaXRpb25fdXAYAyABKBISWQoPcG9zaXRpb25fc3RhdHVzGAQgASgOMkAu", - "YWdyaXJvdXRlci50ZWNobmljYWxtZXNzYWdldHlwZS5HUFNMaXN0LkdQU0Vu", - "dHJ5LlBvc2l0aW9uU3RhdHVzEgwKBHBkb3AYBSABKAESDAoEaGRvcBgGIAEo", - "ARIcChRudW1iZXJfb2Zfc2F0ZWxsaXRlcxgHIAEoDRI1ChFncHNfdXRjX3Rp", - "bWVzdGFtcBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASUwoM", - "ZmllbGRfc3RhdHVzGAkgASgOMj0uYWdyaXJvdXRlci50ZWNobmljYWxtZXNz", - "YWdldHlwZS5HUFNMaXN0LkdQU0VudHJ5LkZpZWxkU3RhdHVzEigKCWV4dGVu", - "c2lvbhiAECADKAsyFC5nb29nbGUucHJvdG9idWYuQW55Is4BCg5Qb3NpdGlv", - "blN0YXR1cxIMCghEX05PX0dQUxAAEgoKBkRfR05TUxABEgsKB0RfREdOU1MQ", - "AhISCg5EX1BSRUNJU0VfR05TUxADEhIKDkRfUlRLX0ZJTlRFR0VSEAQSDwoL", - "RF9SVEtfRkxPQVQQBRIRCg1EX0VTVF9EUl9NT0RFEAYSEgoORF9NQU5VQUxf", - "SU5QVVQQBxITCg9EX1NJTVVMQVRFX01PREUQCBILCgdEX0VSUk9SEA4SEwoP", - "RF9OT1RfQVZBSUxBQkxFEA8iTAoLRmllbGRTdGF0dXMSDgoKRlNfVU5LTk9X", - "ThAAEg4KCkZTX0lORklFTEQQARINCglGU19PTlJPQUQQAhIOCgpGU19PRkZS", - "T0FEEANiBnByb3RvMw==")); + "bG1lc3NhZ2V0eXBlLkdQU0xpc3QuR1BTRW50cnkSTQoOc291cmNlX2Rldmlj", + "ZXMYAiADKAsyNS5hZ3Jpcm91dGVyLnRlY2huaWNhbG1lc3NhZ2V0eXBlLkdQ", + "U0xpc3QuU291cmNlRGV2aWNlEigKCWV4dGVuc2lvbhiAECADKAsyFC5nb29n", + "bGUucHJvdG9idWYuQW55GtUFCghHUFNFbnRyeRIWCg5wb3NpdGlvbl9ub3J0", + "aBgBIAEoARIVCg1wb3NpdGlvbl9lYXN0GAIgASgBEhMKC3Bvc2l0aW9uX3Vw", + "GAMgASgSElkKD3Bvc2l0aW9uX3N0YXR1cxgEIAEoDjJALmFncmlyb3V0ZXIu", + "dGVjaG5pY2FsbWVzc2FnZXR5cGUuR1BTTGlzdC5HUFNFbnRyeS5Qb3NpdGlv", + "blN0YXR1cxIMCgRwZG9wGAUgASgBEgwKBGhkb3AYBiABKAESHAoUbnVtYmVy", + "X29mX3NhdGVsbGl0ZXMYByABKA0SNQoRZ3BzX3V0Y190aW1lc3RhbXAYCCAB", + "KAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wElMKDGZpZWxkX3N0YXR1", + "cxgJIAEoDjI9LmFncmlyb3V0ZXIudGVjaG5pY2FsbWVzc2FnZXR5cGUuR1BT", + "TGlzdC5HUFNFbnRyeS5GaWVsZFN0YXR1cxIbChNzb3VyY2VfZGV2aWNlX2lu", + "ZGV4GAogASgNEigKCWV4dGVuc2lvbhiAECADKAsyFC5nb29nbGUucHJvdG9i", + "dWYuQW55Is4BCg5Qb3NpdGlvblN0YXR1cxIMCghEX05PX0dQUxAAEgoKBkRf", + "R05TUxABEgsKB0RfREdOU1MQAhISCg5EX1BSRUNJU0VfR05TUxADEhIKDkRf", + "UlRLX0ZJTlRFR0VSEAQSDwoLRF9SVEtfRkxPQVQQBRIRCg1EX0VTVF9EUl9N", + "T0RFEAYSEgoORF9NQU5VQUxfSU5QVVQQBxITCg9EX1NJTVVMQVRFX01PREUQ", + "CBILCgdEX0VSUk9SEA4SEwoPRF9OT1RfQVZBSUxBQkxFEA8iTAoLRmllbGRT", + "dGF0dXMSDgoKRlNfVU5LTk9XThAAEg4KCkZTX0lORklFTEQQARINCglGU19P", + "TlJPQUQQAhIOCgpGU19PRkZST0FEEAMaXwoMU291cmNlRGV2aWNlEg0KBWlu", + "ZGV4GAEgASgNEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRIVCg1hZ3Jpcm91dGVy", + "X2lkGAMgASgJEhMKC2ludGVybmFsX2lkGAQgASgJYgZwcm90bzM=")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { global::Google.Protobuf.WellKnownTypes.TimestampReflection.Descriptor, global::Google.Protobuf.WellKnownTypes.AnyReflection.Descriptor, }, - new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] { - new pbr::GeneratedClrTypeInfo(typeof(global::Agrirouter.Technicalmessagetype.GPSList), global::Agrirouter.Technicalmessagetype.GPSList.Parser, new[]{ "GpsEntries", "Extension" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry), global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Parser, new[]{ "PositionNorth", "PositionEast", "PositionUp", "PositionStatus", "Pdop", "Hdop", "NumberOfSatellites", "GpsUtcTimestamp", "FieldStatus", "Extension" }, null, new[]{ typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus), typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus) }, null)}) + new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { + new pbr::GeneratedClrTypeInfo(typeof(global::Agrirouter.Technicalmessagetype.GPSList), global::Agrirouter.Technicalmessagetype.GPSList.Parser, new[]{ "GpsEntries", "SourceDevices", "Extension" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry), global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Parser, new[]{ "PositionNorth", "PositionEast", "PositionUp", "PositionStatus", "Pdop", "Hdop", "NumberOfSatellites", "GpsUtcTimestamp", "FieldStatus", "SourceDeviceIndex", "Extension" }, null, new[]{ typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus), typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus) }, null, null), + new pbr::GeneratedClrTypeInfo(typeof(global::Agrirouter.Technicalmessagetype.GPSList.Types.SourceDevice), global::Agrirouter.Technicalmessagetype.GPSList.Types.SourceDevice.Parser, new[]{ "Index", "DisplayName", "AgrirouterId", "InternalId" }, null, null, null, null)}) })); } #endregion @@ -59,7 +64,11 @@ static GpsReflection() { /// /// A list of GPS Positions /// - public sealed partial class GPSList : pb::IMessage { + public sealed partial class GPSList : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GPSList()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -85,6 +94,7 @@ public GPSList() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public GPSList(GPSList other) : this() { gpsEntries_ = other.gpsEntries_.Clone(); + sourceDevices_ = other.sourceDevices_.Clone(); extension_ = other.extension_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -104,6 +114,16 @@ public GPSList Clone() { get { return gpsEntries_; } } + /// Field number for the "source_devices" field. + public const int SourceDevicesFieldNumber = 2; + private static readonly pb::FieldCodec _repeated_sourceDevices_codec + = pb::FieldCodec.ForMessage(18, global::Agrirouter.Technicalmessagetype.GPSList.Types.SourceDevice.Parser); + private readonly pbc::RepeatedField sourceDevices_ = new pbc::RepeatedField(); + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public pbc::RepeatedField SourceDevices { + get { return sourceDevices_; } + } + /// Field number for the "extension" field. public const int ExtensionFieldNumber = 2048; private static readonly pb::FieldCodec _repeated_extension_codec @@ -131,6 +151,7 @@ public bool Equals(GPSList other) { return true; } if(!gpsEntries_.Equals(other.gpsEntries_)) return false; + if(!sourceDevices_.Equals(other.sourceDevices_)) return false; if(!extension_.Equals(other.extension_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -139,6 +160,7 @@ public bool Equals(GPSList other) { public override int GetHashCode() { int hash = 1; hash ^= gpsEntries_.GetHashCode(); + hash ^= sourceDevices_.GetHashCode(); hash ^= extension_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -153,17 +175,35 @@ public override string ToString() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else gpsEntries_.WriteTo(output, _repeated_gpsEntries_codec); + sourceDevices_.WriteTo(output, _repeated_sourceDevices_codec); extension_.WriteTo(output, _repeated_extension_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + gpsEntries_.WriteTo(ref output, _repeated_gpsEntries_codec); + sourceDevices_.WriteTo(ref output, _repeated_sourceDevices_codec); + extension_.WriteTo(ref output, _repeated_extension_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } } + #endif [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; size += gpsEntries_.CalculateSize(_repeated_gpsEntries_codec); + size += sourceDevices_.CalculateSize(_repeated_sourceDevices_codec); size += extension_.CalculateSize(_repeated_extension_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -177,12 +217,16 @@ public void MergeFrom(GPSList other) { return; } gpsEntries_.Add(other.gpsEntries_); + sourceDevices_.Add(other.sourceDevices_); extension_.Add(other.extension_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { @@ -193,13 +237,44 @@ public void MergeFrom(pb::CodedInputStream input) { gpsEntries_.AddEntriesFrom(input, _repeated_gpsEntries_codec); break; } + case 18: { + sourceDevices_.AddEntriesFrom(input, _repeated_sourceDevices_codec); + break; + } case 16386: { extension_.AddEntriesFrom(input, _repeated_extension_codec); break; } } } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 10: { + gpsEntries_.AddEntriesFrom(ref input, _repeated_gpsEntries_codec); + break; + } + case 18: { + sourceDevices_.AddEntriesFrom(ref input, _repeated_sourceDevices_codec); + break; + } + case 16386: { + extension_.AddEntriesFrom(ref input, _repeated_extension_codec); + break; + } + } + } } + #endif #region Nested types /// Container for nested types declared in the GPSList message type. @@ -208,7 +283,11 @@ public static partial class Types { /// ///One single GPS Position /// - public sealed partial class GPSEntry : pb::IMessage { + public sealed partial class GPSEntry : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GPSEntry()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] @@ -242,6 +321,7 @@ public GPSEntry(GPSEntry other) : this() { numberOfSatellites_ = other.numberOfSatellites_; gpsUtcTimestamp_ = other.gpsUtcTimestamp_ != null ? other.gpsUtcTimestamp_.Clone() : null; fieldStatus_ = other.fieldStatus_; + sourceDeviceIndex_ = other.sourceDeviceIndex_; extension_ = other.extension_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } @@ -295,7 +375,7 @@ public long PositionUp { /// Field number for the "position_status" field. public const int PositionStatusFieldNumber = 4; - private global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus positionStatus_ = 0; + private global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus positionStatus_ = global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus PositionStatus { get { return positionStatus_; } @@ -356,7 +436,7 @@ public uint NumberOfSatellites { /// Field number for the "field_status" field. public const int FieldStatusFieldNumber = 9; - private global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus fieldStatus_ = 0; + private global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus fieldStatus_ = global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown; /// ///Are we on a road, in a field or just somewhere offroad? /// @@ -368,6 +448,20 @@ public uint NumberOfSatellites { } } + /// Field number for the "source_device_index" field. + public const int SourceDeviceIndexFieldNumber = 10; + private uint sourceDeviceIndex_; + /// + ///The index of the source device in the SourceDeviceList + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public uint SourceDeviceIndex { + get { return sourceDeviceIndex_; } + set { + sourceDeviceIndex_ = value; + } + } + /// Field number for the "extension" field. public const int ExtensionFieldNumber = 2048; private static readonly pb::FieldCodec _repeated_extension_codec @@ -403,6 +497,7 @@ public bool Equals(GPSEntry other) { if (NumberOfSatellites != other.NumberOfSatellites) return false; if (!object.Equals(GpsUtcTimestamp, other.GpsUtcTimestamp)) return false; if (FieldStatus != other.FieldStatus) return false; + if (SourceDeviceIndex != other.SourceDeviceIndex) return false; if(!extension_.Equals(other.extension_)) return false; return Equals(_unknownFields, other._unknownFields); } @@ -413,12 +508,13 @@ public override int GetHashCode() { if (PositionNorth != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PositionNorth); if (PositionEast != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PositionEast); if (PositionUp != 0L) hash ^= PositionUp.GetHashCode(); - if (PositionStatus != 0) hash ^= PositionStatus.GetHashCode(); + if (PositionStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps) hash ^= PositionStatus.GetHashCode(); if (Pdop != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Pdop); if (Hdop != 0D) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Hdop); if (NumberOfSatellites != 0) hash ^= NumberOfSatellites.GetHashCode(); if (gpsUtcTimestamp_ != null) hash ^= GpsUtcTimestamp.GetHashCode(); - if (FieldStatus != 0) hash ^= FieldStatus.GetHashCode(); + if (FieldStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown) hash ^= FieldStatus.GetHashCode(); + if (SourceDeviceIndex != 0) hash ^= SourceDeviceIndex.GetHashCode(); hash ^= extension_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); @@ -433,6 +529,9 @@ public override string ToString() { [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else if (PositionNorth != 0D) { output.WriteRawTag(9); output.WriteDouble(PositionNorth); @@ -445,7 +544,7 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(24); output.WriteSInt64(PositionUp); } - if (PositionStatus != 0) { + if (PositionStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps) { output.WriteRawTag(32); output.WriteEnum((int) PositionStatus); } @@ -465,16 +564,71 @@ public void WriteTo(pb::CodedOutputStream output) { output.WriteRawTag(66); output.WriteMessage(GpsUtcTimestamp); } - if (FieldStatus != 0) { + if (FieldStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown) { output.WriteRawTag(72); output.WriteEnum((int) FieldStatus); } + if (SourceDeviceIndex != 0) { + output.WriteRawTag(80); + output.WriteUInt32(SourceDeviceIndex); + } extension_.WriteTo(output, _repeated_extension_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } + #endif } + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (PositionNorth != 0D) { + output.WriteRawTag(9); + output.WriteDouble(PositionNorth); + } + if (PositionEast != 0D) { + output.WriteRawTag(17); + output.WriteDouble(PositionEast); + } + if (PositionUp != 0L) { + output.WriteRawTag(24); + output.WriteSInt64(PositionUp); + } + if (PositionStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps) { + output.WriteRawTag(32); + output.WriteEnum((int) PositionStatus); + } + if (Pdop != 0D) { + output.WriteRawTag(41); + output.WriteDouble(Pdop); + } + if (Hdop != 0D) { + output.WriteRawTag(49); + output.WriteDouble(Hdop); + } + if (NumberOfSatellites != 0) { + output.WriteRawTag(56); + output.WriteUInt32(NumberOfSatellites); + } + if (gpsUtcTimestamp_ != null) { + output.WriteRawTag(66); + output.WriteMessage(GpsUtcTimestamp); + } + if (FieldStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown) { + output.WriteRawTag(72); + output.WriteEnum((int) FieldStatus); + } + if (SourceDeviceIndex != 0) { + output.WriteRawTag(80); + output.WriteUInt32(SourceDeviceIndex); + } + extension_.WriteTo(ref output, _repeated_extension_codec); + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; @@ -487,7 +641,7 @@ public int CalculateSize() { if (PositionUp != 0L) { size += 1 + pb::CodedOutputStream.ComputeSInt64Size(PositionUp); } - if (PositionStatus != 0) { + if (PositionStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) PositionStatus); } if (Pdop != 0D) { @@ -502,9 +656,12 @@ public int CalculateSize() { if (gpsUtcTimestamp_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(GpsUtcTimestamp); } - if (FieldStatus != 0) { + if (FieldStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) FieldStatus); } + if (SourceDeviceIndex != 0) { + size += 1 + pb::CodedOutputStream.ComputeUInt32Size(SourceDeviceIndex); + } size += extension_.CalculateSize(_repeated_extension_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); @@ -526,7 +683,7 @@ public void MergeFrom(GPSEntry other) { if (other.PositionUp != 0L) { PositionUp = other.PositionUp; } - if (other.PositionStatus != 0) { + if (other.PositionStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus.DNoGps) { PositionStatus = other.PositionStatus; } if (other.Pdop != 0D) { @@ -540,19 +697,25 @@ public void MergeFrom(GPSEntry other) { } if (other.gpsUtcTimestamp_ != null) { if (gpsUtcTimestamp_ == null) { - gpsUtcTimestamp_ = new global::Google.Protobuf.WellKnownTypes.Timestamp(); + GpsUtcTimestamp = new global::Google.Protobuf.WellKnownTypes.Timestamp(); } GpsUtcTimestamp.MergeFrom(other.GpsUtcTimestamp); } - if (other.FieldStatus != 0) { + if (other.FieldStatus != global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus.FsUnknown) { FieldStatus = other.FieldStatus; } + if (other.SourceDeviceIndex != 0) { + SourceDeviceIndex = other.SourceDeviceIndex; + } extension_.Add(other.extension_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { @@ -572,7 +735,7 @@ public void MergeFrom(pb::CodedInputStream input) { break; } case 32: { - positionStatus_ = (global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus) input.ReadEnum(); + PositionStatus = (global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus) input.ReadEnum(); break; } case 41: { @@ -589,13 +752,17 @@ public void MergeFrom(pb::CodedInputStream input) { } case 66: { if (gpsUtcTimestamp_ == null) { - gpsUtcTimestamp_ = new global::Google.Protobuf.WellKnownTypes.Timestamp(); + GpsUtcTimestamp = new global::Google.Protobuf.WellKnownTypes.Timestamp(); } - input.ReadMessage(gpsUtcTimestamp_); + input.ReadMessage(GpsUtcTimestamp); break; } case 72: { - fieldStatus_ = (global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus) input.ReadEnum(); + FieldStatus = (global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus) input.ReadEnum(); + break; + } + case 80: { + SourceDeviceIndex = input.ReadUInt32(); break; } case 16386: { @@ -604,7 +771,69 @@ public void MergeFrom(pb::CodedInputStream input) { } } } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 9: { + PositionNorth = input.ReadDouble(); + break; + } + case 17: { + PositionEast = input.ReadDouble(); + break; + } + case 24: { + PositionUp = input.ReadSInt64(); + break; + } + case 32: { + PositionStatus = (global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.PositionStatus) input.ReadEnum(); + break; + } + case 41: { + Pdop = input.ReadDouble(); + break; + } + case 49: { + Hdop = input.ReadDouble(); + break; + } + case 56: { + NumberOfSatellites = input.ReadUInt32(); + break; + } + case 66: { + if (gpsUtcTimestamp_ == null) { + GpsUtcTimestamp = new global::Google.Protobuf.WellKnownTypes.Timestamp(); + } + input.ReadMessage(GpsUtcTimestamp); + break; + } + case 72: { + FieldStatus = (global::Agrirouter.Technicalmessagetype.GPSList.Types.GPSEntry.Types.FieldStatus) input.ReadEnum(); + break; + } + case 80: { + SourceDeviceIndex = input.ReadUInt32(); + break; + } + case 16386: { + extension_.AddEntriesFrom(ref input, _repeated_extension_codec); + break; + } + } + } } + #endif #region Nested types /// Container for nested types declared in the GPSEntry message type. @@ -645,6 +874,9 @@ public enum PositionStatus { /// 9-13 Reserved /// [pbr::OriginalName("D_ERROR")] DError = 14, + /// + ///No GPS Receiver available + /// [pbr::OriginalName("D_NOT_AVAILABLE")] DNotAvailable = 15, } @@ -660,6 +892,298 @@ public enum FieldStatus { } + public sealed partial class SourceDevice : pb::IMessage + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + , pb::IBufferMessage + #endif + { + private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SourceDevice()); + private pb::UnknownFieldSet _unknownFields; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public static pb::MessageParser Parser { get { return _parser; } } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public static pbr::MessageDescriptor Descriptor { + get { return global::Agrirouter.Technicalmessagetype.GPSList.Descriptor.NestedTypes[1]; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + pbr::MessageDescriptor pb::IMessage.Descriptor { + get { return Descriptor; } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public SourceDevice() { + OnConstruction(); + } + + partial void OnConstruction(); + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public SourceDevice(SourceDevice other) : this() { + index_ = other.index_; + displayName_ = other.displayName_; + agrirouterId_ = other.agrirouterId_; + internalId_ = other.internalId_; + _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public SourceDevice Clone() { + return new SourceDevice(this); + } + + /// Field number for the "index" field. + public const int IndexFieldNumber = 1; + private uint index_; + /// + ///The index within the list of SourceDevices; Not necessarilly all values are there + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public uint Index { + get { return index_; } + set { + index_ = value; + } + } + + /// Field number for the "display_name" field. + public const int DisplayNameFieldNumber = 2; + private string displayName_ = ""; + /// + ///Proprietary name for displaying (might change during operation) + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public string DisplayName { + get { return displayName_; } + set { + displayName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "agrirouter_id" field. + public const int AgrirouterIdFieldNumber = 3; + private string agrirouterId_ = ""; + /// + ///The endpoint_id as mentioned in the ListEndpoints Result + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public string AgrirouterId { + get { return agrirouterId_; } + set { + agrirouterId_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + /// Field number for the "internal_id" field. + public const int InternalIdFieldNumber = 4; + private string internalId_ = ""; + /// + ///A proprietary but static id for sources outside of agrirouter + /// + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public string InternalId { + get { return internalId_; } + set { + internalId_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public override bool Equals(object other) { + return Equals(other as SourceDevice); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public bool Equals(SourceDevice other) { + if (ReferenceEquals(other, null)) { + return false; + } + if (ReferenceEquals(other, this)) { + return true; + } + if (Index != other.Index) return false; + if (DisplayName != other.DisplayName) return false; + if (AgrirouterId != other.AgrirouterId) return false; + if (InternalId != other.InternalId) return false; + return Equals(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public override int GetHashCode() { + int hash = 1; + if (Index != 0) hash ^= Index.GetHashCode(); + if (DisplayName.Length != 0) hash ^= DisplayName.GetHashCode(); + if (AgrirouterId.Length != 0) hash ^= AgrirouterId.GetHashCode(); + if (InternalId.Length != 0) hash ^= InternalId.GetHashCode(); + if (_unknownFields != null) { + hash ^= _unknownFields.GetHashCode(); + } + return hash; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public override string ToString() { + return pb::JsonFormatter.ToDiagnosticString(this); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public void WriteTo(pb::CodedOutputStream output) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + output.WriteRawMessage(this); + #else + if (Index != 0) { + output.WriteRawTag(8); + output.WriteUInt32(Index); + } + if (DisplayName.Length != 0) { + output.WriteRawTag(18); + output.WriteString(DisplayName); + } + if (AgrirouterId.Length != 0) { + output.WriteRawTag(26); + output.WriteString(AgrirouterId); + } + if (InternalId.Length != 0) { + output.WriteRawTag(34); + output.WriteString(InternalId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(output); + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) { + if (Index != 0) { + output.WriteRawTag(8); + output.WriteUInt32(Index); + } + if (DisplayName.Length != 0) { + output.WriteRawTag(18); + output.WriteString(DisplayName); + } + if (AgrirouterId.Length != 0) { + output.WriteRawTag(26); + output.WriteString(AgrirouterId); + } + if (InternalId.Length != 0) { + output.WriteRawTag(34); + output.WriteString(InternalId); + } + if (_unknownFields != null) { + _unknownFields.WriteTo(ref output); + } + } + #endif + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public int CalculateSize() { + int size = 0; + if (Index != 0) { + size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Index); + } + if (DisplayName.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(DisplayName); + } + if (AgrirouterId.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(AgrirouterId); + } + if (InternalId.Length != 0) { + size += 1 + pb::CodedOutputStream.ComputeStringSize(InternalId); + } + if (_unknownFields != null) { + size += _unknownFields.CalculateSize(); + } + return size; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public void MergeFrom(SourceDevice other) { + if (other == null) { + return; + } + if (other.Index != 0) { + Index = other.Index; + } + if (other.DisplayName.Length != 0) { + DisplayName = other.DisplayName; + } + if (other.AgrirouterId.Length != 0) { + AgrirouterId = other.AgrirouterId; + } + if (other.InternalId.Length != 0) { + InternalId = other.InternalId; + } + _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + public void MergeFrom(pb::CodedInputStream input) { + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + input.ReadRawMessage(this); + #else + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); + break; + case 8: { + Index = input.ReadUInt32(); + break; + } + case 18: { + DisplayName = input.ReadString(); + break; + } + case 26: { + AgrirouterId = input.ReadString(); + break; + } + case 34: { + InternalId = input.ReadString(); + break; + } + } + } + #endif + } + + #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE + [global::System.Diagnostics.DebuggerNonUserCodeAttribute] + void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) { + uint tag; + while ((tag = input.ReadTag()) != 0) { + switch(tag) { + default: + _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); + break; + case 8: { + Index = input.ReadUInt32(); + break; + } + case 18: { + DisplayName = input.ReadString(); + break; + } + case 26: { + AgrirouterId = input.ReadString(); + break; + } + case 34: { + InternalId = input.ReadString(); + break; + } + } + } + } + #endif + + } + } #endregion diff --git a/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions.csproj b/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions.csproj index e6b9539..b283a7b 100644 --- a/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions.csproj +++ b/dotnet/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions/AgrirouterTMTProtobufDefinitions.csproj @@ -1,7 +1,7 @@ - netstandard2.1 + netstandard2.0 agrirouter-tmt-protobuf-definitions Agrirouter TMT Protobuf Definitions Frank Wiebeler, Sascha Dömer @@ -12,11 +12,11 @@ agrirouter-tmt-protobuf-definitions agrirouter-tmt-protobuf-definitions https://github.com/DKE-Data/agrirouter-tmt-protobuf-definitions - 2.1.0 + 2.2.1 - + diff --git a/dotnet/agrirouter/protobuf/technicalmessagetype/gps.proto b/dotnet/agrirouter/protobuf/technicalmessagetype/gps.proto index 407784b..5b5d9d1 100644 --- a/dotnet/agrirouter/protobuf/technicalmessagetype/gps.proto +++ b/dotnet/agrirouter/protobuf/technicalmessagetype/gps.proto @@ -18,8 +18,8 @@ message GPSList{ D_MANUAL_INPUT = 7; D_SIMULATE_MODE = 8; // 9-13 Reserved - D_ERROR = 14;//Error receiving GPS position from the receiver - D_NOT_AVAILABLE = 15; + D_ERROR = 14; //Error receiving GPS position from the receiver + D_NOT_AVAILABLE = 15;//No GPS Receiver available } enum FieldStatus { FS_UNKNOWN = 0; @@ -36,8 +36,18 @@ message GPSList{ uint32 number_of_satellites = 7; google.protobuf.Timestamp gps_utc_timestamp = 8; FieldStatus field_status = 9;//Are we on a road, in a field or just somewhere offroad? + uint32 source_device_index = 10;//The index of the source device in the SourceDeviceList repeated google.protobuf.Any extension = 2048; // Used for proprietary purposes } + + message SourceDevice{ + uint32 index = 1;//The index within the list of SourceDevices; Not necessarilly all values are there + string display_name = 2;//Proprietary name for displaying (might change during operation) + string agrirouter_id = 3;//The endpoint_id as mentioned in the ListEndpoints Result + string internal_id = 4;//A proprietary but static id for sources outside of agrirouter + } + repeated GPSEntry gps_entries = 1; + repeated SourceDevice source_devices = 2; repeated google.protobuf.Any extension = 2048; // Used for proprietary purposes } \ No newline at end of file diff --git a/java/install_local.sh b/java/install_local.sh new file mode 100644 index 0000000..cec08b4 --- /dev/null +++ b/java/install_local.sh @@ -0,0 +1 @@ +mvn clean install -Pgenerate-protobuf-tmt diff --git a/java/pom.xml b/java/pom.xml index 9c5fd87..939e04d 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -4,7 +4,7 @@ com.agrirouter.proto agrirouter-tmt-protobuf-definitions - 2.1.0-SNAPSHOT + 2.2.0-SNAPSHOT AGRIROUTER - Technical Message Type Protobuf Definitions This project contains the Google Protocol Buffer (protobuf) definitions for those technical message types, that are exchanged as protobuf objects. For more informations see the technical integration guide. @@ -24,6 +24,11 @@ Sascha Doemer Cf4ThQgxcnxAovOUXTNv@saschadoemer.de + + frankwiebeler + Frank Wiebeler + dke-protobuf-tmt@dev4agriculture.de + diff --git a/java/src/main/java/agrirouter/technicalmessagetype/Gps.java b/java/src/main/java/agrirouter/technicalmessagetype/Gps.java index ce36218..cfccfd8 100644 --- a/java/src/main/java/agrirouter/technicalmessagetype/Gps.java +++ b/java/src/main/java/agrirouter/technicalmessagetype/Gps.java @@ -42,6 +42,30 @@ public interface GPSListOrBuilder extends agrirouter.technicalmessagetype.Gps.GPSList.GPSEntryOrBuilder getGpsEntriesOrBuilder( int index); + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + java.util.List + getSourceDevicesList(); + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice getSourceDevices(int index); + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + int getSourceDevicesCount(); + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + java.util.List + getSourceDevicesOrBuilderList(); + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder getSourceDevicesOrBuilder( + int index); + /** *
      * Used for proprietary purposes
@@ -104,6 +128,7 @@ private GPSList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
     }
     private GPSList() {
       gpsEntries_ = java.util.Collections.emptyList();
+      sourceDevices_ = java.util.Collections.emptyList();
       extension_ = java.util.Collections.emptyList();
     }
 
@@ -147,11 +172,20 @@ private GPSList(
                   input.readMessage(agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry.parser(), extensionRegistry));
               break;
             }
-            case 16386: {
+            case 18: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                extension_ = new java.util.ArrayList();
+                sourceDevices_ = new java.util.ArrayList();
                 mutable_bitField0_ |= 0x00000002;
               }
+              sourceDevices_.add(
+                  input.readMessage(agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.parser(), extensionRegistry));
+              break;
+            }
+            case 16386: {
+              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
+                extension_ = new java.util.ArrayList();
+                mutable_bitField0_ |= 0x00000004;
+              }
               extension_.add(
                   input.readMessage(com.google.protobuf.Any.parser(), extensionRegistry));
               break;
@@ -168,6 +202,9 @@ private GPSList(
           gpsEntries_ = java.util.Collections.unmodifiableList(gpsEntries_);
         }
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
+          sourceDevices_ = java.util.Collections.unmodifiableList(sourceDevices_);
+        }
+        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
           extension_ = java.util.Collections.unmodifiableList(extension_);
         }
         this.unknownFields = unknownFields.build();
@@ -279,6 +316,15 @@ public interface GPSEntryOrBuilder extends
        */
       agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry.FieldStatus getFieldStatus();
 
+      /**
+       * 
+       *The index of the source device in the SourceDeviceList
+       * 
+ * + * uint32 source_device_index = 10; + */ + int getSourceDeviceIndex(); + /** *
        * Used for proprietary purposes
@@ -348,6 +394,7 @@ private GPSEntry() {
         hdop_ = 0D;
         numberOfSatellites_ = 0;
         fieldStatus_ = 0;
+        sourceDeviceIndex_ = 0;
         extension_ = java.util.Collections.emptyList();
       }
 
@@ -437,10 +484,15 @@ private GPSEntry(
                 fieldStatus_ = rawValue;
                 break;
               }
+              case 80: {
+
+                sourceDeviceIndex_ = input.readUInt32();
+                break;
+              }
               case 16386: {
-                if (!((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
+                if (!((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
                   extension_ = new java.util.ArrayList();
-                  mutable_bitField0_ |= 0x00000200;
+                  mutable_bitField0_ |= 0x00000400;
                 }
                 extension_.add(
                     input.readMessage(com.google.protobuf.Any.parser(), extensionRegistry));
@@ -454,7 +506,7 @@ private GPSEntry(
           throw new com.google.protobuf.InvalidProtocolBufferException(
               e).setUnfinishedMessage(this);
         } finally {
-          if (((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
+          if (((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
             extension_ = java.util.Collections.unmodifiableList(extension_);
           }
           this.unknownFields = unknownFields.build();
@@ -551,6 +603,10 @@ public enum PositionStatus
          */
         D_ERROR(14),
         /**
+         * 
+         *No GPS Receiver available
+         * 
+ * * D_NOT_AVAILABLE = 15; */ D_NOT_AVAILABLE(15), @@ -630,6 +686,10 @@ public enum PositionStatus */ public static final int D_ERROR_VALUE = 14; /** + *
+         *No GPS Receiver available
+         * 
+ * * D_NOT_AVAILABLE = 15; */ public static final int D_NOT_AVAILABLE_VALUE = 15; @@ -968,6 +1028,19 @@ public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry.FieldStatus getField return result == null ? agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry.FieldStatus.UNRECOGNIZED : result; } + public static final int SOURCE_DEVICE_INDEX_FIELD_NUMBER = 10; + private int sourceDeviceIndex_; + /** + *
+       *The index of the source device in the SourceDeviceList
+       * 
+ * + * uint32 source_device_index = 10; + */ + public int getSourceDeviceIndex() { + return sourceDeviceIndex_; + } + public static final int EXTENSION_FIELD_NUMBER = 2048; private java.util.List extension_; /** @@ -1062,6 +1135,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (fieldStatus_ != agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry.FieldStatus.FS_UNKNOWN.getNumber()) { output.writeEnum(9, fieldStatus_); } + if (sourceDeviceIndex_ != 0) { + output.writeUInt32(10, sourceDeviceIndex_); + } for (int i = 0; i < extension_.size(); i++) { output.writeMessage(2048, extension_.get(i)); } @@ -1109,6 +1185,10 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(9, fieldStatus_); } + if (sourceDeviceIndex_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(10, sourceDeviceIndex_); + } for (int i = 0; i < extension_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2048, extension_.get(i)); @@ -1156,6 +1236,8 @@ public boolean equals(final java.lang.Object obj) { .equals(other.getGpsUtcTimestamp()); } result = result && fieldStatus_ == other.fieldStatus_; + result = result && (getSourceDeviceIndex() + == other.getSourceDeviceIndex()); result = result && getExtensionList() .equals(other.getExtensionList()); result = result && unknownFields.equals(other.unknownFields); @@ -1194,6 +1276,8 @@ public int hashCode() { } hash = (37 * hash) + FIELD_STATUS_FIELD_NUMBER; hash = (53 * hash) + fieldStatus_; + hash = (37 * hash) + SOURCE_DEVICE_INDEX_FIELD_NUMBER; + hash = (53 * hash) + getSourceDeviceIndex(); if (getExtensionCount() > 0) { hash = (37 * hash) + EXTENSION_FIELD_NUMBER; hash = (53 * hash) + getExtensionList().hashCode(); @@ -1354,9 +1438,11 @@ public Builder clear() { } fieldStatus_ = 0; + sourceDeviceIndex_ = 0; + if (extensionBuilder_ == null) { extension_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000200); + bitField0_ = (bitField0_ & ~0x00000400); } else { extensionBuilder_.clear(); } @@ -1397,10 +1483,11 @@ public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry buildPartial() { result.gpsUtcTimestamp_ = gpsUtcTimestampBuilder_.build(); } result.fieldStatus_ = fieldStatus_; + result.sourceDeviceIndex_ = sourceDeviceIndex_; if (extensionBuilder_ == null) { - if (((bitField0_ & 0x00000200) == 0x00000200)) { + if (((bitField0_ & 0x00000400) == 0x00000400)) { extension_ = java.util.Collections.unmodifiableList(extension_); - bitField0_ = (bitField0_ & ~0x00000200); + bitField0_ = (bitField0_ & ~0x00000400); } result.extension_ = extension_; } else { @@ -1475,11 +1562,14 @@ public Builder mergeFrom(agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry ot if (other.fieldStatus_ != 0) { setFieldStatusValue(other.getFieldStatusValue()); } + if (other.getSourceDeviceIndex() != 0) { + setSourceDeviceIndex(other.getSourceDeviceIndex()); + } if (extensionBuilder_ == null) { if (!other.extension_.isEmpty()) { if (extension_.isEmpty()) { extension_ = other.extension_; - bitField0_ = (bitField0_ & ~0x00000200); + bitField0_ = (bitField0_ & ~0x00000400); } else { ensureExtensionIsMutable(); extension_.addAll(other.extension_); @@ -1492,7 +1582,7 @@ public Builder mergeFrom(agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry ot extensionBuilder_.dispose(); extensionBuilder_ = null; extension_ = other.extension_; - bitField0_ = (bitField0_ & ~0x00000200); + bitField0_ = (bitField0_ & ~0x00000400); extensionBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getExtensionFieldBuilder() : null; @@ -1970,12 +2060,50 @@ public Builder clearFieldStatus() { return this; } + private int sourceDeviceIndex_ ; + /** + *
+         *The index of the source device in the SourceDeviceList
+         * 
+ * + * uint32 source_device_index = 10; + */ + public int getSourceDeviceIndex() { + return sourceDeviceIndex_; + } + /** + *
+         *The index of the source device in the SourceDeviceList
+         * 
+ * + * uint32 source_device_index = 10; + */ + public Builder setSourceDeviceIndex(int value) { + + sourceDeviceIndex_ = value; + onChanged(); + return this; + } + /** + *
+         *The index of the source device in the SourceDeviceList
+         * 
+ * + * uint32 source_device_index = 10; + */ + public Builder clearSourceDeviceIndex() { + + sourceDeviceIndex_ = 0; + onChanged(); + return this; + } + private java.util.List extension_ = java.util.Collections.emptyList(); private void ensureExtensionIsMutable() { - if (!((bitField0_ & 0x00000200) == 0x00000200)) { + if (!((bitField0_ & 0x00000400) == 0x00000400)) { extension_ = new java.util.ArrayList(extension_); - bitField0_ |= 0x00000200; + bitField0_ |= 0x00000400; } } @@ -2169,7 +2297,7 @@ public Builder addAllExtension( public Builder clearExtension() { if (extensionBuilder_ == null) { extension_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000200); + bitField0_ = (bitField0_ & ~0x00000400); onChanged(); } else { extensionBuilder_.clear(); @@ -2274,7 +2402,7 @@ public com.google.protobuf.Any.Builder addExtensionBuilder( extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder>( extension_, - ((bitField0_ & 0x00000200) == 0x00000200), + ((bitField0_ & 0x00000400) == 0x00000400), getParentForChildren(), isClean()); extension_ = null; @@ -2330,154 +2458,1188 @@ public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry getDefaultInstanceFo } - public static final int GPS_ENTRIES_FIELD_NUMBER = 1; - private java.util.List gpsEntries_; - /** - * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; - */ - public java.util.List getGpsEntriesList() { - return gpsEntries_; - } - /** - * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; - */ - public java.util.List - getGpsEntriesOrBuilderList() { - return gpsEntries_; - } - /** - * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; - */ - public int getGpsEntriesCount() { - return gpsEntries_.size(); - } - /** - * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; - */ - public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry getGpsEntries(int index) { - return gpsEntries_.get(index); - } - /** - * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; - */ - public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntryOrBuilder getGpsEntriesOrBuilder( - int index) { - return gpsEntries_.get(index); - } + public interface SourceDeviceOrBuilder extends + // @@protoc_insertion_point(interface_extends:agrirouter.technicalmessagetype.GPSList.SourceDevice) + com.google.protobuf.MessageOrBuilder { - public static final int EXTENSION_FIELD_NUMBER = 2048; - private java.util.List extension_; - /** - *
-     * Used for proprietary purposes
-     * 
- * - * repeated .google.protobuf.Any extension = 2048; - */ - public java.util.List getExtensionList() { - return extension_; - } - /** - *
-     * Used for proprietary purposes
-     * 
- * - * repeated .google.protobuf.Any extension = 2048; - */ - public java.util.List - getExtensionOrBuilderList() { - return extension_; - } - /** - *
-     * Used for proprietary purposes
-     * 
- * - * repeated .google.protobuf.Any extension = 2048; - */ - public int getExtensionCount() { - return extension_.size(); - } - /** - *
-     * Used for proprietary purposes
-     * 
- * - * repeated .google.protobuf.Any extension = 2048; - */ - public com.google.protobuf.Any getExtension(int index) { - return extension_.get(index); - } - /** - *
-     * Used for proprietary purposes
-     * 
- * - * repeated .google.protobuf.Any extension = 2048; - */ - public com.google.protobuf.AnyOrBuilder getExtensionOrBuilder( - int index) { - return extension_.get(index); - } + /** + *
+       *The index within the list of SourceDevices; Not necessarilly all values are there
+       * 
+ * + * uint32 index = 1; + */ + int getIndex(); - private byte memoizedIsInitialized = -1; - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + /** + *
+       *Proprietary name for displaying (might change during operation)
+       * 
+ * + * string display_name = 2; + */ + java.lang.String getDisplayName(); + /** + *
+       *Proprietary name for displaying (might change during operation)
+       * 
+ * + * string display_name = 2; + */ + com.google.protobuf.ByteString + getDisplayNameBytes(); - memoizedIsInitialized = 1; - return true; - } + /** + *
+       *The endpoint_id as mentioned in the ListEndpoints Result
+       * 
+ * + * string agrirouter_id = 3; + */ + java.lang.String getAgrirouterId(); + /** + *
+       *The endpoint_id as mentioned in the ListEndpoints Result
+       * 
+ * + * string agrirouter_id = 3; + */ + com.google.protobuf.ByteString + getAgrirouterIdBytes(); - public void writeTo(com.google.protobuf.CodedOutputStream output) - throws java.io.IOException { - for (int i = 0; i < gpsEntries_.size(); i++) { - output.writeMessage(1, gpsEntries_.get(i)); - } - for (int i = 0; i < extension_.size(); i++) { - output.writeMessage(2048, extension_.get(i)); - } - unknownFields.writeTo(output); + /** + *
+       *A proprietary but static id for sources outside of agrirouter
+       * 
+ * + * string internal_id = 4; + */ + java.lang.String getInternalId(); + /** + *
+       *A proprietary but static id for sources outside of agrirouter
+       * 
+ * + * string internal_id = 4; + */ + com.google.protobuf.ByteString + getInternalIdBytes(); } - - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - for (int i = 0; i < gpsEntries_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(1, gpsEntries_.get(i)); + /** + * Protobuf type {@code agrirouter.technicalmessagetype.GPSList.SourceDevice} + */ + public static final class SourceDevice extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:agrirouter.technicalmessagetype.GPSList.SourceDevice) + SourceDeviceOrBuilder { + private static final long serialVersionUID = 0L; + // Use SourceDevice.newBuilder() to construct. + private SourceDevice(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); } - for (int i = 0; i < extension_.size(); i++) { - size += com.google.protobuf.CodedOutputStream - .computeMessageSize(2048, extension_.get(i)); + private SourceDevice() { + index_ = 0; + displayName_ = ""; + agrirouterId_ = ""; + internalId_ = ""; } - size += unknownFields.getSerializedSize(); - memoizedSize = size; - return size; - } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof agrirouter.technicalmessagetype.Gps.GPSList)) { - return super.equals(obj); + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; } - agrirouter.technicalmessagetype.Gps.GPSList other = (agrirouter.technicalmessagetype.Gps.GPSList) obj; - - boolean result = true; - result = result && getGpsEntriesList() - .equals(other.getGpsEntriesList()); - result = result && getExtensionList() - .equals(other.getExtensionList()); - result = result && unknownFields.equals(other.unknownFields); - return result; - } - + private SourceDevice( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownFieldProto3( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + case 8: { + + index_ = input.readUInt32(); + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + displayName_ = s; + break; + } + case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + agrirouterId_ = s; + break; + } + case 34: { + java.lang.String s = input.readStringRequireUtf8(); + + internalId_ = s; + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return agrirouter.technicalmessagetype.Gps.internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return agrirouter.technicalmessagetype.Gps.internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_fieldAccessorTable + .ensureFieldAccessorsInitialized( + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.class, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder.class); + } + + public static final int INDEX_FIELD_NUMBER = 1; + private int index_; + /** + *
+       *The index within the list of SourceDevices; Not necessarilly all values are there
+       * 
+ * + * uint32 index = 1; + */ + public int getIndex() { + return index_; + } + + public static final int DISPLAY_NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object displayName_; + /** + *
+       *Proprietary name for displaying (might change during operation)
+       * 
+ * + * string display_name = 2; + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } + } + /** + *
+       *Proprietary name for displaying (might change during operation)
+       * 
+ * + * string display_name = 2; + */ + public com.google.protobuf.ByteString + getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int AGRIROUTER_ID_FIELD_NUMBER = 3; + private volatile java.lang.Object agrirouterId_; + /** + *
+       *The endpoint_id as mentioned in the ListEndpoints Result
+       * 
+ * + * string agrirouter_id = 3; + */ + public java.lang.String getAgrirouterId() { + java.lang.Object ref = agrirouterId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + agrirouterId_ = s; + return s; + } + } + /** + *
+       *The endpoint_id as mentioned in the ListEndpoints Result
+       * 
+ * + * string agrirouter_id = 3; + */ + public com.google.protobuf.ByteString + getAgrirouterIdBytes() { + java.lang.Object ref = agrirouterId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + agrirouterId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int INTERNAL_ID_FIELD_NUMBER = 4; + private volatile java.lang.Object internalId_; + /** + *
+       *A proprietary but static id for sources outside of agrirouter
+       * 
+ * + * string internal_id = 4; + */ + public java.lang.String getInternalId() { + java.lang.Object ref = internalId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + internalId_ = s; + return s; + } + } + /** + *
+       *A proprietary but static id for sources outside of agrirouter
+       * 
+ * + * string internal_id = 4; + */ + public com.google.protobuf.ByteString + getInternalIdBytes() { + java.lang.Object ref = internalId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + internalId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (index_ != 0) { + output.writeUInt32(1, index_); + } + if (!getDisplayNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_); + } + if (!getAgrirouterIdBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, agrirouterId_); + } + if (!getInternalIdBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 4, internalId_); + } + unknownFields.writeTo(output); + } + + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (index_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeUInt32Size(1, index_); + } + if (!getDisplayNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_); + } + if (!getAgrirouterIdBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, agrirouterId_); + } + if (!getInternalIdBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, internalId_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice)) { + return super.equals(obj); + } + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice other = (agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice) obj; + + boolean result = true; + result = result && (getIndex() + == other.getIndex()); + result = result && getDisplayName() + .equals(other.getDisplayName()); + result = result && getAgrirouterId() + .equals(other.getAgrirouterId()); + result = result && getInternalId() + .equals(other.getInternalId()); + result = result && unknownFields.equals(other.unknownFields); + return result; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + INDEX_FIELD_NUMBER; + hash = (53 * hash) + getIndex(); + hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER; + hash = (53 * hash) + getDisplayName().hashCode(); + hash = (37 * hash) + AGRIROUTER_ID_FIELD_NUMBER; + hash = (53 * hash) + getAgrirouterId().hashCode(); + hash = (37 * hash) + INTERNAL_ID_FIELD_NUMBER; + hash = (53 * hash) + getInternalId().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code agrirouter.technicalmessagetype.GPSList.SourceDevice} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:agrirouter.technicalmessagetype.GPSList.SourceDevice) + agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return agrirouter.technicalmessagetype.Gps.internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return agrirouter.technicalmessagetype.Gps.internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_fieldAccessorTable + .ensureFieldAccessorsInitialized( + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.class, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder.class); + } + + // Construct using agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + public Builder clear() { + super.clear(); + index_ = 0; + + displayName_ = ""; + + agrirouterId_ = ""; + + internalId_ = ""; + + return this; + } + + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return agrirouter.technicalmessagetype.Gps.internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_descriptor; + } + + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice getDefaultInstanceForType() { + return agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.getDefaultInstance(); + } + + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice build() { + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice buildPartial() { + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice result = new agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice(this); + result.index_ = index_; + result.displayName_ = displayName_; + result.agrirouterId_ = agrirouterId_; + result.internalId_ = internalId_; + onBuilt(); + return result; + } + + public Builder clone() { + return (Builder) super.clone(); + } + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.setField(field, value); + } + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return (Builder) super.clearField(field); + } + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return (Builder) super.clearOneof(oneof); + } + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return (Builder) super.setRepeatedField(field, index, value); + } + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.addRepeatedField(field, value); + } + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice) { + return mergeFrom((agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice other) { + if (other == agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.getDefaultInstance()) return this; + if (other.getIndex() != 0) { + setIndex(other.getIndex()); + } + if (!other.getDisplayName().isEmpty()) { + displayName_ = other.displayName_; + onChanged(); + } + if (!other.getAgrirouterId().isEmpty()) { + agrirouterId_ = other.agrirouterId_; + onChanged(); + } + if (!other.getInternalId().isEmpty()) { + internalId_ = other.internalId_; + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + public final boolean isInitialized() { + return true; + } + + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private int index_ ; + /** + *
+         *The index within the list of SourceDevices; Not necessarilly all values are there
+         * 
+ * + * uint32 index = 1; + */ + public int getIndex() { + return index_; + } + /** + *
+         *The index within the list of SourceDevices; Not necessarilly all values are there
+         * 
+ * + * uint32 index = 1; + */ + public Builder setIndex(int value) { + + index_ = value; + onChanged(); + return this; + } + /** + *
+         *The index within the list of SourceDevices; Not necessarilly all values are there
+         * 
+ * + * uint32 index = 1; + */ + public Builder clearIndex() { + + index_ = 0; + onChanged(); + return this; + } + + private java.lang.Object displayName_ = ""; + /** + *
+         *Proprietary name for displaying (might change during operation)
+         * 
+ * + * string display_name = 2; + */ + public java.lang.String getDisplayName() { + java.lang.Object ref = displayName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + displayName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+         *Proprietary name for displaying (might change during operation)
+         * 
+ * + * string display_name = 2; + */ + public com.google.protobuf.ByteString + getDisplayNameBytes() { + java.lang.Object ref = displayName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + displayName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+         *Proprietary name for displaying (might change during operation)
+         * 
+ * + * string display_name = 2; + */ + public Builder setDisplayName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + displayName_ = value; + onChanged(); + return this; + } + /** + *
+         *Proprietary name for displaying (might change during operation)
+         * 
+ * + * string display_name = 2; + */ + public Builder clearDisplayName() { + + displayName_ = getDefaultInstance().getDisplayName(); + onChanged(); + return this; + } + /** + *
+         *Proprietary name for displaying (might change during operation)
+         * 
+ * + * string display_name = 2; + */ + public Builder setDisplayNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + displayName_ = value; + onChanged(); + return this; + } + + private java.lang.Object agrirouterId_ = ""; + /** + *
+         *The endpoint_id as mentioned in the ListEndpoints Result
+         * 
+ * + * string agrirouter_id = 3; + */ + public java.lang.String getAgrirouterId() { + java.lang.Object ref = agrirouterId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + agrirouterId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+         *The endpoint_id as mentioned in the ListEndpoints Result
+         * 
+ * + * string agrirouter_id = 3; + */ + public com.google.protobuf.ByteString + getAgrirouterIdBytes() { + java.lang.Object ref = agrirouterId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + agrirouterId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+         *The endpoint_id as mentioned in the ListEndpoints Result
+         * 
+ * + * string agrirouter_id = 3; + */ + public Builder setAgrirouterId( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + agrirouterId_ = value; + onChanged(); + return this; + } + /** + *
+         *The endpoint_id as mentioned in the ListEndpoints Result
+         * 
+ * + * string agrirouter_id = 3; + */ + public Builder clearAgrirouterId() { + + agrirouterId_ = getDefaultInstance().getAgrirouterId(); + onChanged(); + return this; + } + /** + *
+         *The endpoint_id as mentioned in the ListEndpoints Result
+         * 
+ * + * string agrirouter_id = 3; + */ + public Builder setAgrirouterIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + agrirouterId_ = value; + onChanged(); + return this; + } + + private java.lang.Object internalId_ = ""; + /** + *
+         *A proprietary but static id for sources outside of agrirouter
+         * 
+ * + * string internal_id = 4; + */ + public java.lang.String getInternalId() { + java.lang.Object ref = internalId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + internalId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+         *A proprietary but static id for sources outside of agrirouter
+         * 
+ * + * string internal_id = 4; + */ + public com.google.protobuf.ByteString + getInternalIdBytes() { + java.lang.Object ref = internalId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + internalId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+         *A proprietary but static id for sources outside of agrirouter
+         * 
+ * + * string internal_id = 4; + */ + public Builder setInternalId( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + internalId_ = value; + onChanged(); + return this; + } + /** + *
+         *A proprietary but static id for sources outside of agrirouter
+         * 
+ * + * string internal_id = 4; + */ + public Builder clearInternalId() { + + internalId_ = getDefaultInstance().getInternalId(); + onChanged(); + return this; + } + /** + *
+         *A proprietary but static id for sources outside of agrirouter
+         * 
+ * + * string internal_id = 4; + */ + public Builder setInternalIdBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + internalId_ = value; + onChanged(); + return this; + } + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFieldsProto3(unknownFields); + } + + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:agrirouter.technicalmessagetype.GPSList.SourceDevice) + } + + // @@protoc_insertion_point(class_scope:agrirouter.technicalmessagetype.GPSList.SourceDevice) + private static final agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice(); + } + + public static agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + public SourceDevice parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new SourceDevice(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public static final int GPS_ENTRIES_FIELD_NUMBER = 1; + private java.util.List gpsEntries_; + /** + * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; + */ + public java.util.List getGpsEntriesList() { + return gpsEntries_; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; + */ + public java.util.List + getGpsEntriesOrBuilderList() { + return gpsEntries_; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; + */ + public int getGpsEntriesCount() { + return gpsEntries_.size(); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry getGpsEntries(int index) { + return gpsEntries_.get(index); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.GPSEntry gps_entries = 1; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntryOrBuilder getGpsEntriesOrBuilder( + int index) { + return gpsEntries_.get(index); + } + + public static final int SOURCE_DEVICES_FIELD_NUMBER = 2; + private java.util.List sourceDevices_; + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public java.util.List getSourceDevicesList() { + return sourceDevices_; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public java.util.List + getSourceDevicesOrBuilderList() { + return sourceDevices_; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public int getSourceDevicesCount() { + return sourceDevices_.size(); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice getSourceDevices(int index) { + return sourceDevices_.get(index); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder getSourceDevicesOrBuilder( + int index) { + return sourceDevices_.get(index); + } + + public static final int EXTENSION_FIELD_NUMBER = 2048; + private java.util.List extension_; + /** + *
+     * Used for proprietary purposes
+     * 
+ * + * repeated .google.protobuf.Any extension = 2048; + */ + public java.util.List getExtensionList() { + return extension_; + } + /** + *
+     * Used for proprietary purposes
+     * 
+ * + * repeated .google.protobuf.Any extension = 2048; + */ + public java.util.List + getExtensionOrBuilderList() { + return extension_; + } + /** + *
+     * Used for proprietary purposes
+     * 
+ * + * repeated .google.protobuf.Any extension = 2048; + */ + public int getExtensionCount() { + return extension_.size(); + } + /** + *
+     * Used for proprietary purposes
+     * 
+ * + * repeated .google.protobuf.Any extension = 2048; + */ + public com.google.protobuf.Any getExtension(int index) { + return extension_.get(index); + } + /** + *
+     * Used for proprietary purposes
+     * 
+ * + * repeated .google.protobuf.Any extension = 2048; + */ + public com.google.protobuf.AnyOrBuilder getExtensionOrBuilder( + int index) { + return extension_.get(index); + } + + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < gpsEntries_.size(); i++) { + output.writeMessage(1, gpsEntries_.get(i)); + } + for (int i = 0; i < sourceDevices_.size(); i++) { + output.writeMessage(2, sourceDevices_.get(i)); + } + for (int i = 0; i < extension_.size(); i++) { + output.writeMessage(2048, extension_.get(i)); + } + unknownFields.writeTo(output); + } + + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (int i = 0; i < gpsEntries_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, gpsEntries_.get(i)); + } + for (int i = 0; i < sourceDevices_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, sourceDevices_.get(i)); + } + for (int i = 0; i < extension_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2048, extension_.get(i)); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof agrirouter.technicalmessagetype.Gps.GPSList)) { + return super.equals(obj); + } + agrirouter.technicalmessagetype.Gps.GPSList other = (agrirouter.technicalmessagetype.Gps.GPSList) obj; + + boolean result = true; + result = result && getGpsEntriesList() + .equals(other.getGpsEntriesList()); + result = result && getSourceDevicesList() + .equals(other.getSourceDevicesList()); + result = result && getExtensionList() + .equals(other.getExtensionList()); + result = result && unknownFields.equals(other.unknownFields); + return result; + } + @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { @@ -2489,6 +3651,10 @@ public int hashCode() { hash = (37 * hash) + GPS_ENTRIES_FIELD_NUMBER; hash = (53 * hash) + getGpsEntriesList().hashCode(); } + if (getSourceDevicesCount() > 0) { + hash = (37 * hash) + SOURCE_DEVICES_FIELD_NUMBER; + hash = (53 * hash) + getSourceDevicesList().hashCode(); + } if (getExtensionCount() > 0) { hash = (37 * hash) + EXTENSION_FIELD_NUMBER; hash = (53 * hash) + getExtensionList().hashCode(); @@ -2623,6 +3789,7 @@ private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getGpsEntriesFieldBuilder(); + getSourceDevicesFieldBuilder(); getExtensionFieldBuilder(); } } @@ -2634,9 +3801,15 @@ public Builder clear() { } else { gpsEntriesBuilder_.clear(); } + if (sourceDevicesBuilder_ == null) { + sourceDevices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + } else { + sourceDevicesBuilder_.clear(); + } if (extensionBuilder_ == null) { extension_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); } else { extensionBuilder_.clear(); } @@ -2672,11 +3845,20 @@ public agrirouter.technicalmessagetype.Gps.GPSList buildPartial() { } else { result.gpsEntries_ = gpsEntriesBuilder_.build(); } - if (extensionBuilder_ == null) { + if (sourceDevicesBuilder_ == null) { if (((bitField0_ & 0x00000002) == 0x00000002)) { - extension_ = java.util.Collections.unmodifiableList(extension_); + sourceDevices_ = java.util.Collections.unmodifiableList(sourceDevices_); bitField0_ = (bitField0_ & ~0x00000002); } + result.sourceDevices_ = sourceDevices_; + } else { + result.sourceDevices_ = sourceDevicesBuilder_.build(); + } + if (extensionBuilder_ == null) { + if (((bitField0_ & 0x00000004) == 0x00000004)) { + extension_ = java.util.Collections.unmodifiableList(extension_); + bitField0_ = (bitField0_ & ~0x00000004); + } result.extension_ = extension_; } else { result.extension_ = extensionBuilder_.build(); @@ -2748,11 +3930,37 @@ public Builder mergeFrom(agrirouter.technicalmessagetype.Gps.GPSList other) { } } } + if (sourceDevicesBuilder_ == null) { + if (!other.sourceDevices_.isEmpty()) { + if (sourceDevices_.isEmpty()) { + sourceDevices_ = other.sourceDevices_; + bitField0_ = (bitField0_ & ~0x00000002); + } else { + ensureSourceDevicesIsMutable(); + sourceDevices_.addAll(other.sourceDevices_); + } + onChanged(); + } + } else { + if (!other.sourceDevices_.isEmpty()) { + if (sourceDevicesBuilder_.isEmpty()) { + sourceDevicesBuilder_.dispose(); + sourceDevicesBuilder_ = null; + sourceDevices_ = other.sourceDevices_; + bitField0_ = (bitField0_ & ~0x00000002); + sourceDevicesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getSourceDevicesFieldBuilder() : null; + } else { + sourceDevicesBuilder_.addAllMessages(other.sourceDevices_); + } + } + } if (extensionBuilder_ == null) { if (!other.extension_.isEmpty()) { if (extension_.isEmpty()) { extension_ = other.extension_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); } else { ensureExtensionIsMutable(); extension_.addAll(other.extension_); @@ -2765,7 +3973,7 @@ public Builder mergeFrom(agrirouter.technicalmessagetype.Gps.GPSList other) { extensionBuilder_.dispose(); extensionBuilder_ = null; extension_ = other.extension_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); extensionBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getExtensionFieldBuilder() : null; @@ -3042,12 +4250,252 @@ public agrirouter.technicalmessagetype.Gps.GPSList.GPSEntry.Builder addGpsEntrie return gpsEntriesBuilder_; } + private java.util.List sourceDevices_ = + java.util.Collections.emptyList(); + private void ensureSourceDevicesIsMutable() { + if (!((bitField0_ & 0x00000002) == 0x00000002)) { + sourceDevices_ = new java.util.ArrayList(sourceDevices_); + bitField0_ |= 0x00000002; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder, agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder> sourceDevicesBuilder_; + + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public java.util.List getSourceDevicesList() { + if (sourceDevicesBuilder_ == null) { + return java.util.Collections.unmodifiableList(sourceDevices_); + } else { + return sourceDevicesBuilder_.getMessageList(); + } + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public int getSourceDevicesCount() { + if (sourceDevicesBuilder_ == null) { + return sourceDevices_.size(); + } else { + return sourceDevicesBuilder_.getCount(); + } + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice getSourceDevices(int index) { + if (sourceDevicesBuilder_ == null) { + return sourceDevices_.get(index); + } else { + return sourceDevicesBuilder_.getMessage(index); + } + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder setSourceDevices( + int index, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice value) { + if (sourceDevicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourceDevicesIsMutable(); + sourceDevices_.set(index, value); + onChanged(); + } else { + sourceDevicesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder setSourceDevices( + int index, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder builderForValue) { + if (sourceDevicesBuilder_ == null) { + ensureSourceDevicesIsMutable(); + sourceDevices_.set(index, builderForValue.build()); + onChanged(); + } else { + sourceDevicesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder addSourceDevices(agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice value) { + if (sourceDevicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourceDevicesIsMutable(); + sourceDevices_.add(value); + onChanged(); + } else { + sourceDevicesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder addSourceDevices( + int index, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice value) { + if (sourceDevicesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureSourceDevicesIsMutable(); + sourceDevices_.add(index, value); + onChanged(); + } else { + sourceDevicesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder addSourceDevices( + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder builderForValue) { + if (sourceDevicesBuilder_ == null) { + ensureSourceDevicesIsMutable(); + sourceDevices_.add(builderForValue.build()); + onChanged(); + } else { + sourceDevicesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder addSourceDevices( + int index, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder builderForValue) { + if (sourceDevicesBuilder_ == null) { + ensureSourceDevicesIsMutable(); + sourceDevices_.add(index, builderForValue.build()); + onChanged(); + } else { + sourceDevicesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder addAllSourceDevices( + java.lang.Iterable values) { + if (sourceDevicesBuilder_ == null) { + ensureSourceDevicesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, sourceDevices_); + onChanged(); + } else { + sourceDevicesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder clearSourceDevices() { + if (sourceDevicesBuilder_ == null) { + sourceDevices_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + } else { + sourceDevicesBuilder_.clear(); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public Builder removeSourceDevices(int index) { + if (sourceDevicesBuilder_ == null) { + ensureSourceDevicesIsMutable(); + sourceDevices_.remove(index); + onChanged(); + } else { + sourceDevicesBuilder_.remove(index); + } + return this; + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder getSourceDevicesBuilder( + int index) { + return getSourceDevicesFieldBuilder().getBuilder(index); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder getSourceDevicesOrBuilder( + int index) { + if (sourceDevicesBuilder_ == null) { + return sourceDevices_.get(index); } else { + return sourceDevicesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public java.util.List + getSourceDevicesOrBuilderList() { + if (sourceDevicesBuilder_ != null) { + return sourceDevicesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(sourceDevices_); + } + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder addSourceDevicesBuilder() { + return getSourceDevicesFieldBuilder().addBuilder( + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.getDefaultInstance()); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder addSourceDevicesBuilder( + int index) { + return getSourceDevicesFieldBuilder().addBuilder( + index, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.getDefaultInstance()); + } + /** + * repeated .agrirouter.technicalmessagetype.GPSList.SourceDevice source_devices = 2; + */ + public java.util.List + getSourceDevicesBuilderList() { + return getSourceDevicesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder, agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder> + getSourceDevicesFieldBuilder() { + if (sourceDevicesBuilder_ == null) { + sourceDevicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice, agrirouter.technicalmessagetype.Gps.GPSList.SourceDevice.Builder, agrirouter.technicalmessagetype.Gps.GPSList.SourceDeviceOrBuilder>( + sourceDevices_, + ((bitField0_ & 0x00000002) == 0x00000002), + getParentForChildren(), + isClean()); + sourceDevices_ = null; + } + return sourceDevicesBuilder_; + } + private java.util.List extension_ = java.util.Collections.emptyList(); private void ensureExtensionIsMutable() { - if (!((bitField0_ & 0x00000002) == 0x00000002)) { + if (!((bitField0_ & 0x00000004) == 0x00000004)) { extension_ = new java.util.ArrayList(extension_); - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000004; } } @@ -3241,7 +4689,7 @@ public Builder addAllExtension( public Builder clearExtension() { if (extensionBuilder_ == null) { extension_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); } else { extensionBuilder_.clear(); @@ -3346,7 +4794,7 @@ public com.google.protobuf.Any.Builder addExtensionBuilder( extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder>( extension_, - ((bitField0_ & 0x00000002) == 0x00000002), + ((bitField0_ & 0x00000004) == 0x00000004), getParentForChildren(), isClean()); extension_ = null; @@ -3412,6 +4860,11 @@ public agrirouter.technicalmessagetype.Gps.GPSList getDefaultInstanceForType() { private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_agrirouter_technicalmessagetype_GPSList_GPSEntry_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { @@ -3424,27 +4877,33 @@ public agrirouter.technicalmessagetype.Gps.GPSList getDefaultInstanceForType() { "\n\036technicalmessagetype/gps.proto\022\037agriro" + "uter.technicalmessagetype\032\037google/protob" + "uf/timestamp.proto\032\031google/protobuf/any." + - "proto\"\266\006\n\007GPSList\022F\n\013gps_entries\030\001 \003(\01321" + + "proto\"\203\010\n\007GPSList\022F\n\013gps_entries\030\001 \003(\01321" + ".agrirouter.technicalmessagetype.GPSList" + - ".GPSEntry\022(\n\textension\030\200\020 \003(\0132\024.google.p" + - "rotobuf.Any\032\270\005\n\010GPSEntry\022\026\n\016position_nor" + - "th\030\001 \001(\001\022\025\n\rposition_east\030\002 \001(\001\022\023\n\013posit" + - "ion_up\030\003 \001(\022\022Y\n\017position_status\030\004 \001(\0162@." + + ".GPSEntry\022M\n\016source_devices\030\002 \003(\01325.agri" + + "router.technicalmessagetype.GPSList.Sour" + + "ceDevice\022(\n\textension\030\200\020 \003(\0132\024.google.pr" + + "otobuf.Any\032\325\005\n\010GPSEntry\022\026\n\016position_nort" + + "h\030\001 \001(\001\022\025\n\rposition_east\030\002 \001(\001\022\023\n\013positi" + + "on_up\030\003 \001(\022\022Y\n\017position_status\030\004 \001(\0162@.a" + + "grirouter.technicalmessagetype.GPSList.G" + + "PSEntry.PositionStatus\022\014\n\004pdop\030\005 \001(\001\022\014\n\004" + + "hdop\030\006 \001(\001\022\034\n\024number_of_satellites\030\007 \001(\r" + + "\0225\n\021gps_utc_timestamp\030\010 \001(\0132\032.google.pro" + + "tobuf.Timestamp\022S\n\014field_status\030\t \001(\0162=." + "agrirouter.technicalmessagetype.GPSList." + - "GPSEntry.PositionStatus\022\014\n\004pdop\030\005 \001(\001\022\014\n" + - "\004hdop\030\006 \001(\001\022\034\n\024number_of_satellites\030\007 \001(" + - "\r\0225\n\021gps_utc_timestamp\030\010 \001(\0132\032.google.pr" + - "otobuf.Timestamp\022S\n\014field_status\030\t \001(\0162=" + - ".agrirouter.technicalmessagetype.GPSList" + - ".GPSEntry.FieldStatus\022(\n\textension\030\200\020 \003(" + - "\0132\024.google.protobuf.Any\"\316\001\n\016PositionStat" + - "us\022\014\n\010D_NO_GPS\020\000\022\n\n\006D_GNSS\020\001\022\013\n\007D_DGNSS\020" + - "\002\022\022\n\016D_PRECISE_GNSS\020\003\022\022\n\016D_RTK_FINTEGER\020" + - "\004\022\017\n\013D_RTK_FLOAT\020\005\022\021\n\rD_EST_DR_MODE\020\006\022\022\n" + - "\016D_MANUAL_INPUT\020\007\022\023\n\017D_SIMULATE_MODE\020\010\022\013" + - "\n\007D_ERROR\020\016\022\023\n\017D_NOT_AVAILABLE\020\017\"L\n\013Fiel" + - "dStatus\022\016\n\nFS_UNKNOWN\020\000\022\016\n\nFS_INFIELD\020\001\022" + - "\r\n\tFS_ONROAD\020\002\022\016\n\nFS_OFFROAD\020\003b\006proto3" + "GPSEntry.FieldStatus\022\033\n\023source_device_in" + + "dex\030\n \001(\r\022(\n\textension\030\200\020 \003(\0132\024.google.p" + + "rotobuf.Any\"\316\001\n\016PositionStatus\022\014\n\010D_NO_G" + + "PS\020\000\022\n\n\006D_GNSS\020\001\022\013\n\007D_DGNSS\020\002\022\022\n\016D_PRECI" + + "SE_GNSS\020\003\022\022\n\016D_RTK_FINTEGER\020\004\022\017\n\013D_RTK_F" + + "LOAT\020\005\022\021\n\rD_EST_DR_MODE\020\006\022\022\n\016D_MANUAL_IN" + + "PUT\020\007\022\023\n\017D_SIMULATE_MODE\020\010\022\013\n\007D_ERROR\020\016\022" + + "\023\n\017D_NOT_AVAILABLE\020\017\"L\n\013FieldStatus\022\016\n\nF" + + "S_UNKNOWN\020\000\022\016\n\nFS_INFIELD\020\001\022\r\n\tFS_ONROAD" + + "\020\002\022\016\n\nFS_OFFROAD\020\003\032_\n\014SourceDevice\022\r\n\005in" + + "dex\030\001 \001(\r\022\024\n\014display_name\030\002 \001(\t\022\025\n\ragrir" + + "outer_id\030\003 \001(\t\022\023\n\013internal_id\030\004 \001(\tb\006pro" + + "to3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -3465,13 +4924,19 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( internal_static_agrirouter_technicalmessagetype_GPSList_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_agrirouter_technicalmessagetype_GPSList_descriptor, - new java.lang.String[] { "GpsEntries", "Extension", }); + new java.lang.String[] { "GpsEntries", "SourceDevices", "Extension", }); internal_static_agrirouter_technicalmessagetype_GPSList_GPSEntry_descriptor = internal_static_agrirouter_technicalmessagetype_GPSList_descriptor.getNestedTypes().get(0); internal_static_agrirouter_technicalmessagetype_GPSList_GPSEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_agrirouter_technicalmessagetype_GPSList_GPSEntry_descriptor, - new java.lang.String[] { "PositionNorth", "PositionEast", "PositionUp", "PositionStatus", "Pdop", "Hdop", "NumberOfSatellites", "GpsUtcTimestamp", "FieldStatus", "Extension", }); + new java.lang.String[] { "PositionNorth", "PositionEast", "PositionUp", "PositionStatus", "Pdop", "Hdop", "NumberOfSatellites", "GpsUtcTimestamp", "FieldStatus", "SourceDeviceIndex", "Extension", }); + internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_descriptor = + internal_static_agrirouter_technicalmessagetype_GPSList_descriptor.getNestedTypes().get(1); + internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_agrirouter_technicalmessagetype_GPSList_SourceDevice_descriptor, + new java.lang.String[] { "Index", "DisplayName", "AgrirouterId", "InternalId", }); com.google.protobuf.TimestampProto.getDescriptor(); com.google.protobuf.AnyProto.getDescriptor(); } diff --git a/java/src/main/resources/com/dke/data/agrirouter/proto/technicalmessagetype/gps.proto b/java/src/main/resources/com/dke/data/agrirouter/proto/technicalmessagetype/gps.proto index 017740b..5b5d9d1 100644 --- a/java/src/main/resources/com/dke/data/agrirouter/proto/technicalmessagetype/gps.proto +++ b/java/src/main/resources/com/dke/data/agrirouter/proto/technicalmessagetype/gps.proto @@ -19,7 +19,7 @@ message GPSList{ D_SIMULATE_MODE = 8; // 9-13 Reserved D_ERROR = 14; //Error receiving GPS position from the receiver - D_NOT_AVAILABLE = 15; + D_NOT_AVAILABLE = 15;//No GPS Receiver available } enum FieldStatus { FS_UNKNOWN = 0; @@ -36,8 +36,18 @@ message GPSList{ uint32 number_of_satellites = 7; google.protobuf.Timestamp gps_utc_timestamp = 8; FieldStatus field_status = 9;//Are we on a road, in a field or just somewhere offroad? + uint32 source_device_index = 10;//The index of the source device in the SourceDeviceList repeated google.protobuf.Any extension = 2048; // Used for proprietary purposes } + + message SourceDevice{ + uint32 index = 1;//The index within the list of SourceDevices; Not necessarilly all values are there + string display_name = 2;//Proprietary name for displaying (might change during operation) + string agrirouter_id = 3;//The endpoint_id as mentioned in the ListEndpoints Result + string internal_id = 4;//A proprietary but static id for sources outside of agrirouter + } + repeated GPSEntry gps_entries = 1; + repeated SourceDevice source_devices = 2; repeated google.protobuf.Any extension = 2048; // Used for proprietary purposes } \ No newline at end of file