From 0bbab8d8d96c27f1b65172e88478d6f5de6179d8 Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Thu, 1 Apr 2021 17:16:42 +0800 Subject: [PATCH 001/214] Initial commit --- README.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..cb64040 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# iotdb-client-c- +c# client for iotdb From 23f38328a9829a77bb2f9fb79bcbe48b71d75eae Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Thu, 1 Apr 2021 17:17:18 +0800 Subject: [PATCH 002/214] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cb64040..5b3ab78 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,2 @@ -# iotdb-client-c- +# iotdb-client-csharp c# client for iotdb From b4a24b1ffa714ef59dda8069d1080428941780a8 Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 1 Apr 2021 17:31:26 +0800 Subject: [PATCH 003/214] add rpc code --- .gitignore | 3 + rpc/EndPoint.cs | 129 + rpc/ServerProperties.cs | 172 + rpc/TSCancelOperationReq.cs | 127 + rpc/TSCloseOperationReq.cs | 181 + rpc/TSCloseSessionReq.cs | 105 + rpc/TSCreateMultiTimeseriesReq.cs | 541 ++ rpc/TSCreateTimeseriesReq.cs | 399 + rpc/TSDeleteDataReq.cs | 190 + rpc/TSExecuteBatchStatementReq.cs | 146 + rpc/TSExecuteStatementReq.cs | 261 + rpc/TSExecuteStatementResp.cs | 444 + rpc/TSFetchMetadataReq.cs | 171 + rpc/TSFetchMetadataResp.cs | 235 + rpc/TSFetchResultsReq.cs | 237 + rpc/TSFetchResultsResp.cs | 230 + rpc/TSGetOperationStatusReq.cs | 127 + rpc/TSGetTimeZoneResp.cs | 132 + rpc/TSIService.cs | 11551 +++++++++++++++++++++++++ rpc/TSInsertRecordReq.cs | 216 + rpc/TSInsertRecordsOfOneDeviceReq.cs | 269 + rpc/TSInsertRecordsReq.cs | 286 + rpc/TSInsertStringRecordReq.cs | 233 + rpc/TSInsertStringRecordsReq.cs | 303 + rpc/TSInsertTabletReq.cs | 281 + rpc/TSInsertTabletsReq.cs | 385 + rpc/TSOpenSessionReq.cs | 264 + rpc/TSOpenSessionResp.cs | 231 + rpc/TSProtocolVersion.cs | 13 + rpc/TSQueryDataSet.cs | 189 + rpc/TSQueryNonAlignDataSet.cs | 165 + rpc/TSRawDataQueryReq.cs | 288 + rpc/TSSetTimeZoneReq.cs | 129 + rpc/TSStatus.cs | 234 + 34 files changed, 18867 insertions(+) create mode 100644 .gitignore create mode 100644 rpc/EndPoint.cs create mode 100644 rpc/ServerProperties.cs create mode 100644 rpc/TSCancelOperationReq.cs create mode 100644 rpc/TSCloseOperationReq.cs create mode 100644 rpc/TSCloseSessionReq.cs create mode 100644 rpc/TSCreateMultiTimeseriesReq.cs create mode 100644 rpc/TSCreateTimeseriesReq.cs create mode 100644 rpc/TSDeleteDataReq.cs create mode 100644 rpc/TSExecuteBatchStatementReq.cs create mode 100644 rpc/TSExecuteStatementReq.cs create mode 100644 rpc/TSExecuteStatementResp.cs create mode 100644 rpc/TSFetchMetadataReq.cs create mode 100644 rpc/TSFetchMetadataResp.cs create mode 100644 rpc/TSFetchResultsReq.cs create mode 100644 rpc/TSFetchResultsResp.cs create mode 100644 rpc/TSGetOperationStatusReq.cs create mode 100644 rpc/TSGetTimeZoneResp.cs create mode 100644 rpc/TSIService.cs create mode 100644 rpc/TSInsertRecordReq.cs create mode 100644 rpc/TSInsertRecordsOfOneDeviceReq.cs create mode 100644 rpc/TSInsertRecordsReq.cs create mode 100644 rpc/TSInsertStringRecordReq.cs create mode 100644 rpc/TSInsertStringRecordsReq.cs create mode 100644 rpc/TSInsertTabletReq.cs create mode 100644 rpc/TSInsertTabletsReq.cs create mode 100644 rpc/TSOpenSessionReq.cs create mode 100644 rpc/TSOpenSessionResp.cs create mode 100644 rpc/TSProtocolVersion.cs create mode 100644 rpc/TSQueryDataSet.cs create mode 100644 rpc/TSQueryNonAlignDataSet.cs create mode 100644 rpc/TSRawDataQueryReq.cs create mode 100644 rpc/TSSetTimeZoneReq.cs create mode 100644 rpc/TSStatus.cs diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..08c2e49 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +#dotnet project files +obj/ +*.csproj diff --git a/rpc/EndPoint.cs b/rpc/EndPoint.cs new file mode 100644 index 0000000..e3589fe --- /dev/null +++ b/rpc/EndPoint.cs @@ -0,0 +1,129 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class EndPoint : TBase +{ + + public string Ip { get; set; } + + public int Port { get; set; } + + public EndPoint() { + } + + public EndPoint(string ip, int port) : this() { + this.Ip = ip; + this.Port = port; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_ip = false; + bool isset_port = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.String) { + Ip = iprot.ReadString(); + isset_ip = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.I32) { + Port = iprot.ReadI32(); + isset_port = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_ip) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Ip not set"); + if (!isset_port) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Port not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("EndPoint"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Ip == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Ip not set"); + field.Name = "ip"; + field.Type = TType.String; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteString(Ip); + oprot.WriteFieldEnd(); + field.Name = "port"; + field.Type = TType.I32; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteI32(Port); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("EndPoint("); + __sb.Append(", Ip: "); + __sb.Append(Ip); + __sb.Append(", Port: "); + __sb.Append(Port); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/ServerProperties.cs b/rpc/ServerProperties.cs new file mode 100644 index 0000000..f4d74c0 --- /dev/null +++ b/rpc/ServerProperties.cs @@ -0,0 +1,172 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class ServerProperties : TBase +{ + + public string Version { get; set; } + + public List SupportedTimeAggregationOperations { get; set; } + + public string TimestampPrecision { get; set; } + + public ServerProperties() { + } + + public ServerProperties(string version, List supportedTimeAggregationOperations, string timestampPrecision) : this() { + this.Version = version; + this.SupportedTimeAggregationOperations = supportedTimeAggregationOperations; + this.TimestampPrecision = timestampPrecision; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_version = false; + bool isset_supportedTimeAggregationOperations = false; + bool isset_timestampPrecision = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.String) { + Version = iprot.ReadString(); + isset_version = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + SupportedTimeAggregationOperations = new List(); + TList _list233 = iprot.ReadListBegin(); + for( int _i234 = 0; _i234 < _list233.Count; ++_i234) + { + string _elem235; + _elem235 = iprot.ReadString(); + SupportedTimeAggregationOperations.Add(_elem235); + } + iprot.ReadListEnd(); + } + isset_supportedTimeAggregationOperations = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.String) { + TimestampPrecision = iprot.ReadString(); + isset_timestampPrecision = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_version) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Version not set"); + if (!isset_supportedTimeAggregationOperations) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SupportedTimeAggregationOperations not set"); + if (!isset_timestampPrecision) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampPrecision not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("ServerProperties"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Version == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Version not set"); + field.Name = "version"; + field.Type = TType.String; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteString(Version); + oprot.WriteFieldEnd(); + if (SupportedTimeAggregationOperations == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SupportedTimeAggregationOperations not set"); + field.Name = "supportedTimeAggregationOperations"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, SupportedTimeAggregationOperations.Count)); + foreach (string _iter236 in SupportedTimeAggregationOperations) + { + oprot.WriteString(_iter236); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (TimestampPrecision == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampPrecision not set"); + field.Name = "timestampPrecision"; + field.Type = TType.String; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteString(TimestampPrecision); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("ServerProperties("); + __sb.Append(", Version: "); + __sb.Append(Version); + __sb.Append(", SupportedTimeAggregationOperations: "); + __sb.Append(SupportedTimeAggregationOperations); + __sb.Append(", TimestampPrecision: "); + __sb.Append(TimestampPrecision); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSCancelOperationReq.cs b/rpc/TSCancelOperationReq.cs new file mode 100644 index 0000000..c859255 --- /dev/null +++ b/rpc/TSCancelOperationReq.cs @@ -0,0 +1,127 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSCancelOperationReq : TBase +{ + + public long SessionId { get; set; } + + public long QueryId { get; set; } + + public TSCancelOperationReq() { + } + + public TSCancelOperationReq(long sessionId, long queryId) : this() { + this.SessionId = sessionId; + this.QueryId = queryId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_queryId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.I64) { + QueryId = iprot.ReadI64(); + isset_queryId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_queryId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field QueryId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSCancelOperationReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteI64(QueryId); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSCancelOperationReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", QueryId: "); + __sb.Append(QueryId); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSCloseOperationReq.cs b/rpc/TSCloseOperationReq.cs new file mode 100644 index 0000000..426ece2 --- /dev/null +++ b/rpc/TSCloseOperationReq.cs @@ -0,0 +1,181 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSCloseOperationReq : TBase +{ + private long _queryId; + private long _statementId; + + public long SessionId { get; set; } + + public long QueryId + { + get + { + return _queryId; + } + set + { + __isset.queryId = true; + this._queryId = value; + } + } + + public long StatementId + { + get + { + return _statementId; + } + set + { + __isset.statementId = true; + this._statementId = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool queryId; + public bool statementId; + } + + public TSCloseOperationReq() { + } + + public TSCloseOperationReq(long sessionId) : this() { + this.SessionId = sessionId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.I64) { + QueryId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I64) { + StatementId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSCloseOperationReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (__isset.queryId) { + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteI64(QueryId); + oprot.WriteFieldEnd(); + } + if (__isset.statementId) { + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI64(StatementId); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSCloseOperationReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + if (__isset.queryId) { + __sb.Append(", QueryId: "); + __sb.Append(QueryId); + } + if (__isset.statementId) { + __sb.Append(", StatementId: "); + __sb.Append(StatementId); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSCloseSessionReq.cs b/rpc/TSCloseSessionReq.cs new file mode 100644 index 0000000..b058a1d --- /dev/null +++ b/rpc/TSCloseSessionReq.cs @@ -0,0 +1,105 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSCloseSessionReq : TBase +{ + + public long SessionId { get; set; } + + public TSCloseSessionReq() { + } + + public TSCloseSessionReq(long sessionId) : this() { + this.SessionId = sessionId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSCloseSessionReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSCloseSessionReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSCreateMultiTimeseriesReq.cs b/rpc/TSCreateMultiTimeseriesReq.cs new file mode 100644 index 0000000..f6190f9 --- /dev/null +++ b/rpc/TSCreateMultiTimeseriesReq.cs @@ -0,0 +1,541 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSCreateMultiTimeseriesReq : TBase +{ + private List> _propsList; + private List> _tagsList; + private List> _attributesList; + private List _measurementAliasList; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public List> PropsList + { + get + { + return _propsList; + } + set + { + __isset.propsList = true; + this._propsList = value; + } + } + + public List> TagsList + { + get + { + return _tagsList; + } + set + { + __isset.tagsList = true; + this._tagsList = value; + } + } + + public List> AttributesList + { + get + { + return _attributesList; + } + set + { + __isset.attributesList = true; + this._attributesList = value; + } + } + + public List MeasurementAliasList + { + get + { + return _measurementAliasList; + } + set + { + __isset.measurementAliasList = true; + this._measurementAliasList = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool propsList; + public bool tagsList; + public bool attributesList; + public bool measurementAliasList; + } + + public TSCreateMultiTimeseriesReq() { + } + + public TSCreateMultiTimeseriesReq(long sessionId, List paths, List dataTypes, List encodings, List compressors) : this() { + this.SessionId = sessionId; + this.Paths = paths; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + Paths = new List(); + TList _list186 = iprot.ReadListBegin(); + for( int _i187 = 0; _i187 < _list186.Count; ++_i187) + { + string _elem188; + _elem188 = iprot.ReadString(); + Paths.Add(_elem188); + } + iprot.ReadListEnd(); + } + isset_paths = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + DataTypes = new List(); + TList _list189 = iprot.ReadListBegin(); + for( int _i190 = 0; _i190 < _list189.Count; ++_i190) + { + int _elem191; + _elem191 = iprot.ReadI32(); + DataTypes.Add(_elem191); + } + iprot.ReadListEnd(); + } + isset_dataTypes = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.List) { + { + Encodings = new List(); + TList _list192 = iprot.ReadListBegin(); + for( int _i193 = 0; _i193 < _list192.Count; ++_i193) + { + int _elem194; + _elem194 = iprot.ReadI32(); + Encodings.Add(_elem194); + } + iprot.ReadListEnd(); + } + isset_encodings = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.List) { + { + Compressors = new List(); + TList _list195 = iprot.ReadListBegin(); + for( int _i196 = 0; _i196 < _list195.Count; ++_i196) + { + int _elem197; + _elem197 = iprot.ReadI32(); + Compressors.Add(_elem197); + } + iprot.ReadListEnd(); + } + isset_compressors = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.List) { + { + PropsList = new List>(); + TList _list198 = iprot.ReadListBegin(); + for( int _i199 = 0; _i199 < _list198.Count; ++_i199) + { + Dictionary _elem200; + { + _elem200 = new Dictionary(); + TMap _map201 = iprot.ReadMapBegin(); + for( int _i202 = 0; _i202 < _map201.Count; ++_i202) + { + string _key203; + string _val204; + _key203 = iprot.ReadString(); + _val204 = iprot.ReadString(); + _elem200[_key203] = _val204; + } + iprot.ReadMapEnd(); + } + PropsList.Add(_elem200); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 7: + if (field.Type == TType.List) { + { + TagsList = new List>(); + TList _list205 = iprot.ReadListBegin(); + for( int _i206 = 0; _i206 < _list205.Count; ++_i206) + { + Dictionary _elem207; + { + _elem207 = new Dictionary(); + TMap _map208 = iprot.ReadMapBegin(); + for( int _i209 = 0; _i209 < _map208.Count; ++_i209) + { + string _key210; + string _val211; + _key210 = iprot.ReadString(); + _val211 = iprot.ReadString(); + _elem207[_key210] = _val211; + } + iprot.ReadMapEnd(); + } + TagsList.Add(_elem207); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 8: + if (field.Type == TType.List) { + { + AttributesList = new List>(); + TList _list212 = iprot.ReadListBegin(); + for( int _i213 = 0; _i213 < _list212.Count; ++_i213) + { + Dictionary _elem214; + { + _elem214 = new Dictionary(); + TMap _map215 = iprot.ReadMapBegin(); + for( int _i216 = 0; _i216 < _map215.Count; ++_i216) + { + string _key217; + string _val218; + _key217 = iprot.ReadString(); + _val218 = iprot.ReadString(); + _elem214[_key217] = _val218; + } + iprot.ReadMapEnd(); + } + AttributesList.Add(_elem214); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 9: + if (field.Type == TType.List) { + { + MeasurementAliasList = new List(); + TList _list219 = iprot.ReadListBegin(); + for( int _i220 = 0; _i220 < _list219.Count; ++_i220) + { + string _elem221; + _elem221 = iprot.ReadString(); + MeasurementAliasList.Add(_elem221); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_paths) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + if (!isset_dataTypes) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DataTypes not set"); + if (!isset_encodings) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Encodings not set"); + if (!isset_compressors) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Compressors not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSCreateMultiTimeseriesReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Paths == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Paths.Count)); + foreach (string _iter222 in Paths) + { + oprot.WriteString(_iter222); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (DataTypes == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DataTypes not set"); + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I32, DataTypes.Count)); + foreach (int _iter223 in DataTypes) + { + oprot.WriteI32(_iter223); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Encodings == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Encodings not set"); + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I32, Encodings.Count)); + foreach (int _iter224 in Encodings) + { + oprot.WriteI32(_iter224); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Compressors == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Compressors not set"); + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 5; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I32, Compressors.Count)); + foreach (int _iter225 in Compressors) + { + oprot.WriteI32(_iter225); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (PropsList != null && __isset.propsList) { + field.Name = "propsList"; + field.Type = TType.List; + field.ID = 6; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.Map, PropsList.Count)); + foreach (Dictionary _iter226 in PropsList) + { + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, _iter226.Count)); + foreach (string _iter227 in _iter226.Keys) + { + oprot.WriteString(_iter227); + oprot.WriteString(_iter226[_iter227]); + } + oprot.WriteMapEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (TagsList != null && __isset.tagsList) { + field.Name = "tagsList"; + field.Type = TType.List; + field.ID = 7; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.Map, TagsList.Count)); + foreach (Dictionary _iter228 in TagsList) + { + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, _iter228.Count)); + foreach (string _iter229 in _iter228.Keys) + { + oprot.WriteString(_iter229); + oprot.WriteString(_iter228[_iter229]); + } + oprot.WriteMapEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (AttributesList != null && __isset.attributesList) { + field.Name = "attributesList"; + field.Type = TType.List; + field.ID = 8; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.Map, AttributesList.Count)); + foreach (Dictionary _iter230 in AttributesList) + { + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, _iter230.Count)); + foreach (string _iter231 in _iter230.Keys) + { + oprot.WriteString(_iter231); + oprot.WriteString(_iter230[_iter231]); + } + oprot.WriteMapEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (MeasurementAliasList != null && __isset.measurementAliasList) { + field.Name = "measurementAliasList"; + field.Type = TType.List; + field.ID = 9; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, MeasurementAliasList.Count)); + foreach (string _iter232 in MeasurementAliasList) + { + oprot.WriteString(_iter232); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSCreateMultiTimeseriesReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Paths: "); + __sb.Append(Paths); + __sb.Append(", DataTypes: "); + __sb.Append(DataTypes); + __sb.Append(", Encodings: "); + __sb.Append(Encodings); + __sb.Append(", Compressors: "); + __sb.Append(Compressors); + if (PropsList != null && __isset.propsList) { + __sb.Append(", PropsList: "); + __sb.Append(PropsList); + } + if (TagsList != null && __isset.tagsList) { + __sb.Append(", TagsList: "); + __sb.Append(TagsList); + } + if (AttributesList != null && __isset.attributesList) { + __sb.Append(", AttributesList: "); + __sb.Append(AttributesList); + } + if (MeasurementAliasList != null && __isset.measurementAliasList) { + __sb.Append(", MeasurementAliasList: "); + __sb.Append(MeasurementAliasList); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSCreateTimeseriesReq.cs b/rpc/TSCreateTimeseriesReq.cs new file mode 100644 index 0000000..46f2815 --- /dev/null +++ b/rpc/TSCreateTimeseriesReq.cs @@ -0,0 +1,399 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSCreateTimeseriesReq : TBase +{ + private Dictionary _props; + private Dictionary _tags; + private Dictionary _attributes; + private string _measurementAlias; + + public long SessionId { get; set; } + + public string Path { get; set; } + + public int DataType { get; set; } + + public int Encoding { get; set; } + + public int Compressor { get; set; } + + public Dictionary Props + { + get + { + return _props; + } + set + { + __isset.props = true; + this._props = value; + } + } + + public Dictionary Tags + { + get + { + return _tags; + } + set + { + __isset.tags = true; + this._tags = value; + } + } + + public Dictionary Attributes + { + get + { + return _attributes; + } + set + { + __isset.attributes = true; + this._attributes = value; + } + } + + public string MeasurementAlias + { + get + { + return _measurementAlias; + } + set + { + __isset.measurementAlias = true; + this._measurementAlias = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool props; + public bool tags; + public bool attributes; + public bool measurementAlias; + } + + public TSCreateTimeseriesReq() { + } + + public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int encoding, int compressor) : this() { + this.SessionId = sessionId; + this.Path = path; + this.DataType = dataType; + this.Encoding = encoding; + this.Compressor = compressor; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_path = false; + bool isset_dataType = false; + bool isset_encoding = false; + bool isset_compressor = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + Path = iprot.ReadString(); + isset_path = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I32) { + DataType = iprot.ReadI32(); + isset_dataType = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.I32) { + Encoding = iprot.ReadI32(); + isset_encoding = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.I32) { + Compressor = iprot.ReadI32(); + isset_compressor = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.Map) { + { + Props = new Dictionary(); + TMap _map167 = iprot.ReadMapBegin(); + for( int _i168 = 0; _i168 < _map167.Count; ++_i168) + { + string _key169; + string _val170; + _key169 = iprot.ReadString(); + _val170 = iprot.ReadString(); + Props[_key169] = _val170; + } + iprot.ReadMapEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 7: + if (field.Type == TType.Map) { + { + Tags = new Dictionary(); + TMap _map171 = iprot.ReadMapBegin(); + for( int _i172 = 0; _i172 < _map171.Count; ++_i172) + { + string _key173; + string _val174; + _key173 = iprot.ReadString(); + _val174 = iprot.ReadString(); + Tags[_key173] = _val174; + } + iprot.ReadMapEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 8: + if (field.Type == TType.Map) { + { + Attributes = new Dictionary(); + TMap _map175 = iprot.ReadMapBegin(); + for( int _i176 = 0; _i176 < _map175.Count; ++_i176) + { + string _key177; + string _val178; + _key177 = iprot.ReadString(); + _val178 = iprot.ReadString(); + Attributes[_key177] = _val178; + } + iprot.ReadMapEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 9: + if (field.Type == TType.String) { + MeasurementAlias = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_path) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Path not set"); + if (!isset_dataType) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DataType not set"); + if (!isset_encoding) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Encoding not set"); + if (!isset_compressor) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Compressor not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSCreateTimeseriesReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Path == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Path not set"); + field.Name = "path"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(Path); + oprot.WriteFieldEnd(); + field.Name = "dataType"; + field.Type = TType.I32; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI32(DataType); + oprot.WriteFieldEnd(); + field.Name = "encoding"; + field.Type = TType.I32; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteI32(Encoding); + oprot.WriteFieldEnd(); + field.Name = "compressor"; + field.Type = TType.I32; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteI32(Compressor); + oprot.WriteFieldEnd(); + if (Props != null && __isset.props) { + field.Name = "props"; + field.Type = TType.Map; + field.ID = 6; + oprot.WriteFieldBegin(field); + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, Props.Count)); + foreach (string _iter179 in Props.Keys) + { + oprot.WriteString(_iter179); + oprot.WriteString(Props[_iter179]); + } + oprot.WriteMapEnd(); + } + oprot.WriteFieldEnd(); + } + if (Tags != null && __isset.tags) { + field.Name = "tags"; + field.Type = TType.Map; + field.ID = 7; + oprot.WriteFieldBegin(field); + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, Tags.Count)); + foreach (string _iter180 in Tags.Keys) + { + oprot.WriteString(_iter180); + oprot.WriteString(Tags[_iter180]); + } + oprot.WriteMapEnd(); + } + oprot.WriteFieldEnd(); + } + if (Attributes != null && __isset.attributes) { + field.Name = "attributes"; + field.Type = TType.Map; + field.ID = 8; + oprot.WriteFieldBegin(field); + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, Attributes.Count)); + foreach (string _iter181 in Attributes.Keys) + { + oprot.WriteString(_iter181); + oprot.WriteString(Attributes[_iter181]); + } + oprot.WriteMapEnd(); + } + oprot.WriteFieldEnd(); + } + if (MeasurementAlias != null && __isset.measurementAlias) { + field.Name = "measurementAlias"; + field.Type = TType.String; + field.ID = 9; + oprot.WriteFieldBegin(field); + oprot.WriteString(MeasurementAlias); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSCreateTimeseriesReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Path: "); + __sb.Append(Path); + __sb.Append(", DataType: "); + __sb.Append(DataType); + __sb.Append(", Encoding: "); + __sb.Append(Encoding); + __sb.Append(", Compressor: "); + __sb.Append(Compressor); + if (Props != null && __isset.props) { + __sb.Append(", Props: "); + __sb.Append(Props); + } + if (Tags != null && __isset.tags) { + __sb.Append(", Tags: "); + __sb.Append(Tags); + } + if (Attributes != null && __isset.attributes) { + __sb.Append(", Attributes: "); + __sb.Append(Attributes); + } + if (MeasurementAlias != null && __isset.measurementAlias) { + __sb.Append(", MeasurementAlias: "); + __sb.Append(MeasurementAlias); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSDeleteDataReq.cs b/rpc/TSDeleteDataReq.cs new file mode 100644 index 0000000..55b7f5c --- /dev/null +++ b/rpc/TSDeleteDataReq.cs @@ -0,0 +1,190 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSDeleteDataReq : TBase +{ + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public long StartTime { get; set; } + + public long EndTime { get; set; } + + public TSDeleteDataReq() { + } + + public TSDeleteDataReq(long sessionId, List paths, long startTime, long endTime) : this() { + this.SessionId = sessionId; + this.Paths = paths; + this.StartTime = startTime; + this.EndTime = endTime; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_startTime = false; + bool isset_endTime = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + Paths = new List(); + TList _list163 = iprot.ReadListBegin(); + for( int _i164 = 0; _i164 < _list163.Count; ++_i164) + { + string _elem165; + _elem165 = iprot.ReadString(); + Paths.Add(_elem165); + } + iprot.ReadListEnd(); + } + isset_paths = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I64) { + StartTime = iprot.ReadI64(); + isset_startTime = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.I64) { + EndTime = iprot.ReadI64(); + isset_endTime = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_paths) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + if (!isset_startTime) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StartTime not set"); + if (!isset_endTime) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field EndTime not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSDeleteDataReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Paths == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Paths.Count)); + foreach (string _iter166 in Paths) + { + oprot.WriteString(_iter166); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + field.Name = "startTime"; + field.Type = TType.I64; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI64(StartTime); + oprot.WriteFieldEnd(); + field.Name = "endTime"; + field.Type = TType.I64; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteI64(EndTime); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSDeleteDataReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Paths: "); + __sb.Append(Paths); + __sb.Append(", StartTime: "); + __sb.Append(StartTime); + __sb.Append(", EndTime: "); + __sb.Append(EndTime); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSExecuteBatchStatementReq.cs b/rpc/TSExecuteBatchStatementReq.cs new file mode 100644 index 0000000..21df2e1 --- /dev/null +++ b/rpc/TSExecuteBatchStatementReq.cs @@ -0,0 +1,146 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSExecuteBatchStatementReq : TBase +{ + + public long SessionId { get; set; } + + public List Statements { get; set; } + + public TSExecuteBatchStatementReq() { + } + + public TSExecuteBatchStatementReq(long sessionId, List statements) : this() { + this.SessionId = sessionId; + this.Statements = statements; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_statements = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + Statements = new List(); + TList _list43 = iprot.ReadListBegin(); + for( int _i44 = 0; _i44 < _list43.Count; ++_i44) + { + string _elem45; + _elem45 = iprot.ReadString(); + Statements.Add(_elem45); + } + iprot.ReadListEnd(); + } + isset_statements = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_statements) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statements not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSExecuteBatchStatementReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Statements == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statements not set"); + field.Name = "statements"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Statements.Count)); + foreach (string _iter46 in Statements) + { + oprot.WriteString(_iter46); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSExecuteBatchStatementReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Statements: "); + __sb.Append(Statements); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSExecuteStatementReq.cs b/rpc/TSExecuteStatementReq.cs new file mode 100644 index 0000000..5113a6e --- /dev/null +++ b/rpc/TSExecuteStatementReq.cs @@ -0,0 +1,261 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSExecuteStatementReq : TBase +{ + private int _fetchSize; + private long _timeout; + private bool _enableRedirectQuery; + + public long SessionId { get; set; } + + public string Statement { get; set; } + + public long StatementId { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool fetchSize; + public bool timeout; + public bool enableRedirectQuery; + } + + public TSExecuteStatementReq() { + } + + public TSExecuteStatementReq(long sessionId, string statement, long statementId) : this() { + this.SessionId = sessionId; + this.Statement = statement; + this.StatementId = statementId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_statement = false; + bool isset_statementId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + Statement = iprot.ReadString(); + isset_statement = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I64) { + StatementId = iprot.ReadI64(); + isset_statementId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.I32) { + FetchSize = iprot.ReadI32(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.I64) { + Timeout = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.Bool) { + EnableRedirectQuery = iprot.ReadBool(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_statement) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); + if (!isset_statementId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StatementId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSExecuteStatementReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Statement == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); + field.Name = "statement"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(Statement); + oprot.WriteFieldEnd(); + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI64(StatementId); + oprot.WriteFieldEnd(); + if (__isset.fetchSize) { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteI32(FetchSize); + oprot.WriteFieldEnd(); + } + if (__isset.timeout) { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteI64(Timeout); + oprot.WriteFieldEnd(); + } + if (__isset.enableRedirectQuery) { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 6; + oprot.WriteFieldBegin(field); + oprot.WriteBool(EnableRedirectQuery); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSExecuteStatementReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Statement: "); + __sb.Append(Statement); + __sb.Append(", StatementId: "); + __sb.Append(StatementId); + if (__isset.fetchSize) { + __sb.Append(", FetchSize: "); + __sb.Append(FetchSize); + } + if (__isset.timeout) { + __sb.Append(", Timeout: "); + __sb.Append(Timeout); + } + if (__isset.enableRedirectQuery) { + __sb.Append(", EnableRedirectQuery: "); + __sb.Append(EnableRedirectQuery); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSExecuteStatementResp.cs b/rpc/TSExecuteStatementResp.cs new file mode 100644 index 0000000..c4b5f92 --- /dev/null +++ b/rpc/TSExecuteStatementResp.cs @@ -0,0 +1,444 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSExecuteStatementResp : TBase +{ + private long _queryId; + private List _columns; + private string _operationType; + private bool _ignoreTimeStamp; + private List _dataTypeList; + private TSQueryDataSet _queryDataSet; + private TSQueryNonAlignDataSet _nonAlignQueryDataSet; + private Dictionary _columnNameIndexMap; + + public TSStatus Status { get; set; } + + public long QueryId + { + get + { + return _queryId; + } + set + { + __isset.queryId = true; + this._queryId = value; + } + } + + public List Columns + { + get + { + return _columns; + } + set + { + __isset.columns = true; + this._columns = value; + } + } + + public string OperationType + { + get + { + return _operationType; + } + set + { + __isset.operationType = true; + this._operationType = value; + } + } + + public bool IgnoreTimeStamp + { + get + { + return _ignoreTimeStamp; + } + set + { + __isset.ignoreTimeStamp = true; + this._ignoreTimeStamp = value; + } + } + + public List DataTypeList + { + get + { + return _dataTypeList; + } + set + { + __isset.dataTypeList = true; + this._dataTypeList = value; + } + } + + public TSQueryDataSet QueryDataSet + { + get + { + return _queryDataSet; + } + set + { + __isset.queryDataSet = true; + this._queryDataSet = value; + } + } + + public TSQueryNonAlignDataSet NonAlignQueryDataSet + { + get + { + return _nonAlignQueryDataSet; + } + set + { + __isset.nonAlignQueryDataSet = true; + this._nonAlignQueryDataSet = value; + } + } + + public Dictionary ColumnNameIndexMap + { + get + { + return _columnNameIndexMap; + } + set + { + __isset.columnNameIndexMap = true; + this._columnNameIndexMap = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool queryId; + public bool columns; + public bool operationType; + public bool ignoreTimeStamp; + public bool dataTypeList; + public bool queryDataSet; + public bool nonAlignQueryDataSet; + public bool columnNameIndexMap; + } + + public TSExecuteStatementResp() { + } + + public TSExecuteStatementResp(TSStatus status) : this() { + this.Status = status; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Status = new TSStatus(); + Status.Read(iprot); + isset_status = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.I64) { + QueryId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + Columns = new List(); + TList _list20 = iprot.ReadListBegin(); + for( int _i21 = 0; _i21 < _list20.Count; ++_i21) + { + string _elem22; + _elem22 = iprot.ReadString(); + Columns.Add(_elem22); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.String) { + OperationType = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.Bool) { + IgnoreTimeStamp = iprot.ReadBool(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.List) { + { + DataTypeList = new List(); + TList _list23 = iprot.ReadListBegin(); + for( int _i24 = 0; _i24 < _list23.Count; ++_i24) + { + string _elem25; + _elem25 = iprot.ReadString(); + DataTypeList.Add(_elem25); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 7: + if (field.Type == TType.Struct) { + QueryDataSet = new TSQueryDataSet(); + QueryDataSet.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 8: + if (field.Type == TType.Struct) { + NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); + NonAlignQueryDataSet.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 9: + if (field.Type == TType.Map) { + { + ColumnNameIndexMap = new Dictionary(); + TMap _map26 = iprot.ReadMapBegin(); + for( int _i27 = 0; _i27 < _map26.Count; ++_i27) + { + string _key28; + int _val29; + _key28 = iprot.ReadString(); + _val29 = iprot.ReadI32(); + ColumnNameIndexMap[_key28] = _val29; + } + iprot.ReadMapEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_status) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSExecuteStatementResp"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Status == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Status.Write(oprot); + oprot.WriteFieldEnd(); + if (__isset.queryId) { + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteI64(QueryId); + oprot.WriteFieldEnd(); + } + if (Columns != null && __isset.columns) { + field.Name = "columns"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Columns.Count)); + foreach (string _iter30 in Columns) + { + oprot.WriteString(_iter30); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (OperationType != null && __isset.operationType) { + field.Name = "operationType"; + field.Type = TType.String; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteString(OperationType); + oprot.WriteFieldEnd(); + } + if (__isset.ignoreTimeStamp) { + field.Name = "ignoreTimeStamp"; + field.Type = TType.Bool; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteBool(IgnoreTimeStamp); + oprot.WriteFieldEnd(); + } + if (DataTypeList != null && __isset.dataTypeList) { + field.Name = "dataTypeList"; + field.Type = TType.List; + field.ID = 6; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, DataTypeList.Count)); + foreach (string _iter31 in DataTypeList) + { + oprot.WriteString(_iter31); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (QueryDataSet != null && __isset.queryDataSet) { + field.Name = "queryDataSet"; + field.Type = TType.Struct; + field.ID = 7; + oprot.WriteFieldBegin(field); + QueryDataSet.Write(oprot); + oprot.WriteFieldEnd(); + } + if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { + field.Name = "nonAlignQueryDataSet"; + field.Type = TType.Struct; + field.ID = 8; + oprot.WriteFieldBegin(field); + NonAlignQueryDataSet.Write(oprot); + oprot.WriteFieldEnd(); + } + if (ColumnNameIndexMap != null && __isset.columnNameIndexMap) { + field.Name = "columnNameIndexMap"; + field.Type = TType.Map; + field.ID = 9; + oprot.WriteFieldBegin(field); + { + oprot.WriteMapBegin(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count)); + foreach (string _iter32 in ColumnNameIndexMap.Keys) + { + oprot.WriteString(_iter32); + oprot.WriteI32(ColumnNameIndexMap[_iter32]); + } + oprot.WriteMapEnd(); + } + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSExecuteStatementResp("); + __sb.Append(", Status: "); + __sb.Append(Status== null ? "" : Status.ToString()); + if (__isset.queryId) { + __sb.Append(", QueryId: "); + __sb.Append(QueryId); + } + if (Columns != null && __isset.columns) { + __sb.Append(", Columns: "); + __sb.Append(Columns); + } + if (OperationType != null && __isset.operationType) { + __sb.Append(", OperationType: "); + __sb.Append(OperationType); + } + if (__isset.ignoreTimeStamp) { + __sb.Append(", IgnoreTimeStamp: "); + __sb.Append(IgnoreTimeStamp); + } + if (DataTypeList != null && __isset.dataTypeList) { + __sb.Append(", DataTypeList: "); + __sb.Append(DataTypeList); + } + if (QueryDataSet != null && __isset.queryDataSet) { + __sb.Append(", QueryDataSet: "); + __sb.Append(QueryDataSet== null ? "" : QueryDataSet.ToString()); + } + if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { + __sb.Append(", NonAlignQueryDataSet: "); + __sb.Append(NonAlignQueryDataSet== null ? "" : NonAlignQueryDataSet.ToString()); + } + if (ColumnNameIndexMap != null && __isset.columnNameIndexMap) { + __sb.Append(", ColumnNameIndexMap: "); + __sb.Append(ColumnNameIndexMap); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSFetchMetadataReq.cs b/rpc/TSFetchMetadataReq.cs new file mode 100644 index 0000000..db232f1 --- /dev/null +++ b/rpc/TSFetchMetadataReq.cs @@ -0,0 +1,171 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSFetchMetadataReq : TBase +{ + private string _columnPath; + + public long SessionId { get; set; } + + public string Type { get; set; } + + public string ColumnPath + { + get + { + return _columnPath; + } + set + { + __isset.columnPath = true; + this._columnPath = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool columnPath; + } + + public TSFetchMetadataReq() { + } + + public TSFetchMetadataReq(long sessionId, string type) : this() { + this.SessionId = sessionId; + this.Type = type; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_type = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + Type = iprot.ReadString(); + isset_type = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.String) { + ColumnPath = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_type) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Type not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSFetchMetadataReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Type == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Type not set"); + field.Name = "type"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(Type); + oprot.WriteFieldEnd(); + if (ColumnPath != null && __isset.columnPath) { + field.Name = "columnPath"; + field.Type = TType.String; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteString(ColumnPath); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSFetchMetadataReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Type: "); + __sb.Append(Type); + if (ColumnPath != null && __isset.columnPath) { + __sb.Append(", ColumnPath: "); + __sb.Append(ColumnPath); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSFetchMetadataResp.cs b/rpc/TSFetchMetadataResp.cs new file mode 100644 index 0000000..97dd2f2 --- /dev/null +++ b/rpc/TSFetchMetadataResp.cs @@ -0,0 +1,235 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSFetchMetadataResp : TBase +{ + private string _metadataInJson; + private List _columnsList; + private string _dataType; + + public TSStatus Status { get; set; } + + public string MetadataInJson + { + get + { + return _metadataInJson; + } + set + { + __isset.metadataInJson = true; + this._metadataInJson = value; + } + } + + public List ColumnsList + { + get + { + return _columnsList; + } + set + { + __isset.columnsList = true; + this._columnsList = value; + } + } + + public string DataType + { + get + { + return _dataType; + } + set + { + __isset.dataType = true; + this._dataType = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool metadataInJson; + public bool columnsList; + public bool dataType; + } + + public TSFetchMetadataResp() { + } + + public TSFetchMetadataResp(TSStatus status) : this() { + this.Status = status; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Status = new TSStatus(); + Status.Read(iprot); + isset_status = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + MetadataInJson = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + ColumnsList = new List(); + TList _list47 = iprot.ReadListBegin(); + for( int _i48 = 0; _i48 < _list47.Count; ++_i48) + { + string _elem49; + _elem49 = iprot.ReadString(); + ColumnsList.Add(_elem49); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.String) { + DataType = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_status) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSFetchMetadataResp"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Status == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Status.Write(oprot); + oprot.WriteFieldEnd(); + if (MetadataInJson != null && __isset.metadataInJson) { + field.Name = "metadataInJson"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(MetadataInJson); + oprot.WriteFieldEnd(); + } + if (ColumnsList != null && __isset.columnsList) { + field.Name = "columnsList"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, ColumnsList.Count)); + foreach (string _iter50 in ColumnsList) + { + oprot.WriteString(_iter50); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (DataType != null && __isset.dataType) { + field.Name = "dataType"; + field.Type = TType.String; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteString(DataType); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSFetchMetadataResp("); + __sb.Append(", Status: "); + __sb.Append(Status== null ? "" : Status.ToString()); + if (MetadataInJson != null && __isset.metadataInJson) { + __sb.Append(", MetadataInJson: "); + __sb.Append(MetadataInJson); + } + if (ColumnsList != null && __isset.columnsList) { + __sb.Append(", ColumnsList: "); + __sb.Append(ColumnsList); + } + if (DataType != null && __isset.dataType) { + __sb.Append(", DataType: "); + __sb.Append(DataType); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSFetchResultsReq.cs b/rpc/TSFetchResultsReq.cs new file mode 100644 index 0000000..3161eaa --- /dev/null +++ b/rpc/TSFetchResultsReq.cs @@ -0,0 +1,237 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSFetchResultsReq : TBase +{ + private long _timeout; + + public long SessionId { get; set; } + + public string Statement { get; set; } + + public int FetchSize { get; set; } + + public long QueryId { get; set; } + + public bool IsAlign { get; set; } + + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool timeout; + } + + public TSFetchResultsReq() { + } + + public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long queryId, bool isAlign) : this() { + this.SessionId = sessionId; + this.Statement = statement; + this.FetchSize = fetchSize; + this.QueryId = queryId; + this.IsAlign = isAlign; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_statement = false; + bool isset_fetchSize = false; + bool isset_queryId = false; + bool isset_isAlign = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + Statement = iprot.ReadString(); + isset_statement = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I32) { + FetchSize = iprot.ReadI32(); + isset_fetchSize = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.I64) { + QueryId = iprot.ReadI64(); + isset_queryId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.Bool) { + IsAlign = iprot.ReadBool(); + isset_isAlign = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.I64) { + Timeout = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_statement) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); + if (!isset_fetchSize) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field FetchSize not set"); + if (!isset_queryId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field QueryId not set"); + if (!isset_isAlign) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field IsAlign not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSFetchResultsReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Statement == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); + field.Name = "statement"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(Statement); + oprot.WriteFieldEnd(); + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI32(FetchSize); + oprot.WriteFieldEnd(); + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteI64(QueryId); + oprot.WriteFieldEnd(); + field.Name = "isAlign"; + field.Type = TType.Bool; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteBool(IsAlign); + oprot.WriteFieldEnd(); + if (__isset.timeout) { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 6; + oprot.WriteFieldBegin(field); + oprot.WriteI64(Timeout); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSFetchResultsReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Statement: "); + __sb.Append(Statement); + __sb.Append(", FetchSize: "); + __sb.Append(FetchSize); + __sb.Append(", QueryId: "); + __sb.Append(QueryId); + __sb.Append(", IsAlign: "); + __sb.Append(IsAlign); + if (__isset.timeout) { + __sb.Append(", Timeout: "); + __sb.Append(Timeout); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSFetchResultsResp.cs b/rpc/TSFetchResultsResp.cs new file mode 100644 index 0000000..037b315 --- /dev/null +++ b/rpc/TSFetchResultsResp.cs @@ -0,0 +1,230 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSFetchResultsResp : TBase +{ + private TSQueryDataSet _queryDataSet; + private TSQueryNonAlignDataSet _nonAlignQueryDataSet; + + public TSStatus Status { get; set; } + + public bool HasResultSet { get; set; } + + public bool IsAlign { get; set; } + + public TSQueryDataSet QueryDataSet + { + get + { + return _queryDataSet; + } + set + { + __isset.queryDataSet = true; + this._queryDataSet = value; + } + } + + public TSQueryNonAlignDataSet NonAlignQueryDataSet + { + get + { + return _nonAlignQueryDataSet; + } + set + { + __isset.nonAlignQueryDataSet = true; + this._nonAlignQueryDataSet = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool queryDataSet; + public bool nonAlignQueryDataSet; + } + + public TSFetchResultsResp() { + } + + public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : this() { + this.Status = status; + this.HasResultSet = hasResultSet; + this.IsAlign = isAlign; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_hasResultSet = false; + bool isset_isAlign = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Status = new TSStatus(); + Status.Read(iprot); + isset_status = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.Bool) { + HasResultSet = iprot.ReadBool(); + isset_hasResultSet = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.Bool) { + IsAlign = iprot.ReadBool(); + isset_isAlign = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.Struct) { + QueryDataSet = new TSQueryDataSet(); + QueryDataSet.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.Struct) { + NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); + NonAlignQueryDataSet.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_status) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + if (!isset_hasResultSet) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field HasResultSet not set"); + if (!isset_isAlign) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field IsAlign not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSFetchResultsResp"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Status == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Status.Write(oprot); + oprot.WriteFieldEnd(); + field.Name = "hasResultSet"; + field.Type = TType.Bool; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteBool(HasResultSet); + oprot.WriteFieldEnd(); + field.Name = "isAlign"; + field.Type = TType.Bool; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteBool(IsAlign); + oprot.WriteFieldEnd(); + if (QueryDataSet != null && __isset.queryDataSet) { + field.Name = "queryDataSet"; + field.Type = TType.Struct; + field.ID = 4; + oprot.WriteFieldBegin(field); + QueryDataSet.Write(oprot); + oprot.WriteFieldEnd(); + } + if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { + field.Name = "nonAlignQueryDataSet"; + field.Type = TType.Struct; + field.ID = 5; + oprot.WriteFieldBegin(field); + NonAlignQueryDataSet.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSFetchResultsResp("); + __sb.Append(", Status: "); + __sb.Append(Status== null ? "" : Status.ToString()); + __sb.Append(", HasResultSet: "); + __sb.Append(HasResultSet); + __sb.Append(", IsAlign: "); + __sb.Append(IsAlign); + if (QueryDataSet != null && __isset.queryDataSet) { + __sb.Append(", QueryDataSet: "); + __sb.Append(QueryDataSet== null ? "" : QueryDataSet.ToString()); + } + if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { + __sb.Append(", NonAlignQueryDataSet: "); + __sb.Append(NonAlignQueryDataSet== null ? "" : NonAlignQueryDataSet.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSGetOperationStatusReq.cs b/rpc/TSGetOperationStatusReq.cs new file mode 100644 index 0000000..7739a2f --- /dev/null +++ b/rpc/TSGetOperationStatusReq.cs @@ -0,0 +1,127 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSGetOperationStatusReq : TBase +{ + + public long SessionId { get; set; } + + public long QueryId { get; set; } + + public TSGetOperationStatusReq() { + } + + public TSGetOperationStatusReq(long sessionId, long queryId) : this() { + this.SessionId = sessionId; + this.QueryId = queryId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_queryId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.I64) { + QueryId = iprot.ReadI64(); + isset_queryId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_queryId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field QueryId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSGetOperationStatusReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteI64(QueryId); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSGetOperationStatusReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", QueryId: "); + __sb.Append(QueryId); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSGetTimeZoneResp.cs b/rpc/TSGetTimeZoneResp.cs new file mode 100644 index 0000000..ba0477d --- /dev/null +++ b/rpc/TSGetTimeZoneResp.cs @@ -0,0 +1,132 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSGetTimeZoneResp : TBase +{ + + public TSStatus Status { get; set; } + + public string TimeZone { get; set; } + + public TSGetTimeZoneResp() { + } + + public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() { + this.Status = status; + this.TimeZone = timeZone; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_timeZone = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Status = new TSStatus(); + Status.Read(iprot); + isset_status = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + TimeZone = iprot.ReadString(); + isset_timeZone = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_status) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + if (!isset_timeZone) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSGetTimeZoneResp"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Status == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Status.Write(oprot); + oprot.WriteFieldEnd(); + if (TimeZone == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); + field.Name = "timeZone"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(TimeZone); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSGetTimeZoneResp("); + __sb.Append(", Status: "); + __sb.Append(Status== null ? "" : Status.ToString()); + __sb.Append(", TimeZone: "); + __sb.Append(TimeZone); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSIService.cs b/rpc/TSIService.cs new file mode 100644 index 0000000..f64e0be --- /dev/null +++ b/rpc/TSIService.cs @@ -0,0 +1,11551 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + +public partial class TSIService { + public interface ISync { + TSOpenSessionResp openSession(TSOpenSessionReq req); + TSStatus closeSession(TSCloseSessionReq req); + TSExecuteStatementResp executeStatement(TSExecuteStatementReq req); + TSStatus executeBatchStatement(TSExecuteBatchStatementReq req); + TSExecuteStatementResp executeQueryStatement(TSExecuteStatementReq req); + TSExecuteStatementResp executeUpdateStatement(TSExecuteStatementReq req); + TSFetchResultsResp fetchResults(TSFetchResultsReq req); + TSFetchMetadataResp fetchMetadata(TSFetchMetadataReq req); + TSStatus cancelOperation(TSCancelOperationReq req); + TSStatus closeOperation(TSCloseOperationReq req); + TSGetTimeZoneResp getTimeZone(long sessionId); + TSStatus setTimeZone(TSSetTimeZoneReq req); + ServerProperties getProperties(); + TSStatus setStorageGroup(long sessionId, string storageGroup); + TSStatus createTimeseries(TSCreateTimeseriesReq req); + TSStatus createMultiTimeseries(TSCreateMultiTimeseriesReq req); + TSStatus deleteTimeseries(long sessionId, List path); + TSStatus deleteStorageGroups(long sessionId, List storageGroup); + TSStatus insertRecord(TSInsertRecordReq req); + TSStatus insertStringRecord(TSInsertStringRecordReq req); + TSStatus insertTablet(TSInsertTabletReq req); + TSStatus insertTablets(TSInsertTabletsReq req); + TSStatus insertRecords(TSInsertRecordsReq req); + TSStatus insertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req); + TSStatus insertStringRecords(TSInsertStringRecordsReq req); + TSStatus testInsertTablet(TSInsertTabletReq req); + TSStatus testInsertTablets(TSInsertTabletsReq req); + TSStatus testInsertRecord(TSInsertRecordReq req); + TSStatus testInsertStringRecord(TSInsertStringRecordReq req); + TSStatus testInsertRecords(TSInsertRecordsReq req); + TSStatus testInsertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req); + TSStatus testInsertStringRecords(TSInsertStringRecordsReq req); + TSStatus deleteData(TSDeleteDataReq req); + TSExecuteStatementResp executeRawDataQuery(TSRawDataQueryReq req); + long requestStatementId(long sessionId); + } + + public interface Iface : ISync { + #if SILVERLIGHT + IAsyncResult Begin_openSession(AsyncCallback callback, object state, TSOpenSessionReq req); + TSOpenSessionResp End_openSession(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_closeSession(AsyncCallback callback, object state, TSCloseSessionReq req); + TSStatus End_closeSession(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_executeStatement(AsyncCallback callback, object state, TSExecuteStatementReq req); + TSExecuteStatementResp End_executeStatement(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_executeBatchStatement(AsyncCallback callback, object state, TSExecuteBatchStatementReq req); + TSStatus End_executeBatchStatement(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_executeQueryStatement(AsyncCallback callback, object state, TSExecuteStatementReq req); + TSExecuteStatementResp End_executeQueryStatement(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_executeUpdateStatement(AsyncCallback callback, object state, TSExecuteStatementReq req); + TSExecuteStatementResp End_executeUpdateStatement(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_fetchResults(AsyncCallback callback, object state, TSFetchResultsReq req); + TSFetchResultsResp End_fetchResults(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_fetchMetadata(AsyncCallback callback, object state, TSFetchMetadataReq req); + TSFetchMetadataResp End_fetchMetadata(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_cancelOperation(AsyncCallback callback, object state, TSCancelOperationReq req); + TSStatus End_cancelOperation(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_closeOperation(AsyncCallback callback, object state, TSCloseOperationReq req); + TSStatus End_closeOperation(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_getTimeZone(AsyncCallback callback, object state, long sessionId); + TSGetTimeZoneResp End_getTimeZone(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_setTimeZone(AsyncCallback callback, object state, TSSetTimeZoneReq req); + TSStatus End_setTimeZone(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_getProperties(AsyncCallback callback, object state); + ServerProperties End_getProperties(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_setStorageGroup(AsyncCallback callback, object state, long sessionId, string storageGroup); + TSStatus End_setStorageGroup(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_createTimeseries(AsyncCallback callback, object state, TSCreateTimeseriesReq req); + TSStatus End_createTimeseries(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_createMultiTimeseries(AsyncCallback callback, object state, TSCreateMultiTimeseriesReq req); + TSStatus End_createMultiTimeseries(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_deleteTimeseries(AsyncCallback callback, object state, long sessionId, List path); + TSStatus End_deleteTimeseries(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_deleteStorageGroups(AsyncCallback callback, object state, long sessionId, List storageGroup); + TSStatus End_deleteStorageGroups(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertRecord(AsyncCallback callback, object state, TSInsertRecordReq req); + TSStatus End_insertRecord(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req); + TSStatus End_insertStringRecord(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertTablet(AsyncCallback callback, object state, TSInsertTabletReq req); + TSStatus End_insertTablet(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req); + TSStatus End_insertTablets(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req); + TSStatus End_insertRecords(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req); + TSStatus End_insertRecordsOfOneDevice(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_insertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req); + TSStatus End_insertStringRecords(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertTablet(AsyncCallback callback, object state, TSInsertTabletReq req); + TSStatus End_testInsertTablet(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req); + TSStatus End_testInsertTablets(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertRecord(AsyncCallback callback, object state, TSInsertRecordReq req); + TSStatus End_testInsertRecord(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req); + TSStatus End_testInsertStringRecord(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req); + TSStatus End_testInsertRecords(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req); + TSStatus End_testInsertRecordsOfOneDevice(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_testInsertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req); + TSStatus End_testInsertStringRecords(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_deleteData(AsyncCallback callback, object state, TSDeleteDataReq req); + TSStatus End_deleteData(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_executeRawDataQuery(AsyncCallback callback, object state, TSRawDataQueryReq req); + TSExecuteStatementResp End_executeRawDataQuery(IAsyncResult asyncResult); + #endif + #if SILVERLIGHT + IAsyncResult Begin_requestStatementId(AsyncCallback callback, object state, long sessionId); + long End_requestStatementId(IAsyncResult asyncResult); + #endif + } + + public class Client : IDisposable, Iface { + public Client(TProtocol prot) : this(prot, prot) + { + } + + public Client(TProtocol iprot, TProtocol oprot) + { + iprot_ = iprot; + oprot_ = oprot; + } + + protected TProtocol iprot_; + protected TProtocol oprot_; + protected int seqid_; + + public TProtocol InputProtocol + { + get { return iprot_; } + } + public TProtocol OutputProtocol + { + get { return oprot_; } + } + + + #region " IDisposable Support " + private bool _IsDisposed; + + // IDisposable + public void Dispose() + { + Dispose(true); + } + + + protected virtual void Dispose(bool disposing) + { + if (!_IsDisposed) + { + if (disposing) + { + if (iprot_ != null) + { + ((IDisposable)iprot_).Dispose(); + } + if (oprot_ != null) + { + ((IDisposable)oprot_).Dispose(); + } + } + } + _IsDisposed = true; + } + #endregion + + + + #if SILVERLIGHT + + public IAsyncResult Begin_openSession(AsyncCallback callback, object state, TSOpenSessionReq req) + { + return send_openSession(callback, state, req); + } + + public TSOpenSessionResp End_openSession(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_openSession(); + } + + #endif + + public TSOpenSessionResp openSession(TSOpenSessionReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_openSession(null, null, req); + return End_openSession(asyncResult); + + #else + send_openSession(req); + return recv_openSession(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_openSession(AsyncCallback callback, object state, TSOpenSessionReq req) + { + oprot_.WriteMessageBegin(new TMessage("openSession", TMessageType.Call, seqid_)); + openSession_args args = new openSession_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_openSession(TSOpenSessionReq req) + { + oprot_.WriteMessageBegin(new TMessage("openSession", TMessageType.Call, seqid_)); + openSession_args args = new openSession_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSOpenSessionResp recv_openSession() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + openSession_result result = new openSession_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "openSession failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_closeSession(AsyncCallback callback, object state, TSCloseSessionReq req) + { + return send_closeSession(callback, state, req); + } + + public TSStatus End_closeSession(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_closeSession(); + } + + #endif + + public TSStatus closeSession(TSCloseSessionReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_closeSession(null, null, req); + return End_closeSession(asyncResult); + + #else + send_closeSession(req); + return recv_closeSession(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_closeSession(AsyncCallback callback, object state, TSCloseSessionReq req) + { + oprot_.WriteMessageBegin(new TMessage("closeSession", TMessageType.Call, seqid_)); + closeSession_args args = new closeSession_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_closeSession(TSCloseSessionReq req) + { + oprot_.WriteMessageBegin(new TMessage("closeSession", TMessageType.Call, seqid_)); + closeSession_args args = new closeSession_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_closeSession() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + closeSession_result result = new closeSession_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeSession failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_executeStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + { + return send_executeStatement(callback, state, req); + } + + public TSExecuteStatementResp End_executeStatement(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_executeStatement(); + } + + #endif + + public TSExecuteStatementResp executeStatement(TSExecuteStatementReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_executeStatement(null, null, req); + return End_executeStatement(asyncResult); + + #else + send_executeStatement(req); + return recv_executeStatement(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_executeStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Call, seqid_)); + executeStatement_args args = new executeStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_executeStatement(TSExecuteStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Call, seqid_)); + executeStatement_args args = new executeStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSExecuteStatementResp recv_executeStatement() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + executeStatement_result result = new executeStatement_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeStatement failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_executeBatchStatement(AsyncCallback callback, object state, TSExecuteBatchStatementReq req) + { + return send_executeBatchStatement(callback, state, req); + } + + public TSStatus End_executeBatchStatement(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_executeBatchStatement(); + } + + #endif + + public TSStatus executeBatchStatement(TSExecuteBatchStatementReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_executeBatchStatement(null, null, req); + return End_executeBatchStatement(asyncResult); + + #else + send_executeBatchStatement(req); + return recv_executeBatchStatement(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_executeBatchStatement(AsyncCallback callback, object state, TSExecuteBatchStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Call, seqid_)); + executeBatchStatement_args args = new executeBatchStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_executeBatchStatement(TSExecuteBatchStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Call, seqid_)); + executeBatchStatement_args args = new executeBatchStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_executeBatchStatement() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + executeBatchStatement_result result = new executeBatchStatement_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeBatchStatement failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_executeQueryStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + { + return send_executeQueryStatement(callback, state, req); + } + + public TSExecuteStatementResp End_executeQueryStatement(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_executeQueryStatement(); + } + + #endif + + public TSExecuteStatementResp executeQueryStatement(TSExecuteStatementReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_executeQueryStatement(null, null, req); + return End_executeQueryStatement(asyncResult); + + #else + send_executeQueryStatement(req); + return recv_executeQueryStatement(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_executeQueryStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Call, seqid_)); + executeQueryStatement_args args = new executeQueryStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_executeQueryStatement(TSExecuteStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Call, seqid_)); + executeQueryStatement_args args = new executeQueryStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSExecuteStatementResp recv_executeQueryStatement() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + executeQueryStatement_result result = new executeQueryStatement_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeQueryStatement failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_executeUpdateStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + { + return send_executeUpdateStatement(callback, state, req); + } + + public TSExecuteStatementResp End_executeUpdateStatement(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_executeUpdateStatement(); + } + + #endif + + public TSExecuteStatementResp executeUpdateStatement(TSExecuteStatementReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_executeUpdateStatement(null, null, req); + return End_executeUpdateStatement(asyncResult); + + #else + send_executeUpdateStatement(req); + return recv_executeUpdateStatement(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_executeUpdateStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Call, seqid_)); + executeUpdateStatement_args args = new executeUpdateStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_executeUpdateStatement(TSExecuteStatementReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Call, seqid_)); + executeUpdateStatement_args args = new executeUpdateStatement_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSExecuteStatementResp recv_executeUpdateStatement() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + executeUpdateStatement_result result = new executeUpdateStatement_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeUpdateStatement failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_fetchResults(AsyncCallback callback, object state, TSFetchResultsReq req) + { + return send_fetchResults(callback, state, req); + } + + public TSFetchResultsResp End_fetchResults(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_fetchResults(); + } + + #endif + + public TSFetchResultsResp fetchResults(TSFetchResultsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_fetchResults(null, null, req); + return End_fetchResults(asyncResult); + + #else + send_fetchResults(req); + return recv_fetchResults(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_fetchResults(AsyncCallback callback, object state, TSFetchResultsReq req) + { + oprot_.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Call, seqid_)); + fetchResults_args args = new fetchResults_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_fetchResults(TSFetchResultsReq req) + { + oprot_.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Call, seqid_)); + fetchResults_args args = new fetchResults_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSFetchResultsResp recv_fetchResults() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + fetchResults_result result = new fetchResults_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchResults failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_fetchMetadata(AsyncCallback callback, object state, TSFetchMetadataReq req) + { + return send_fetchMetadata(callback, state, req); + } + + public TSFetchMetadataResp End_fetchMetadata(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_fetchMetadata(); + } + + #endif + + public TSFetchMetadataResp fetchMetadata(TSFetchMetadataReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_fetchMetadata(null, null, req); + return End_fetchMetadata(asyncResult); + + #else + send_fetchMetadata(req); + return recv_fetchMetadata(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_fetchMetadata(AsyncCallback callback, object state, TSFetchMetadataReq req) + { + oprot_.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Call, seqid_)); + fetchMetadata_args args = new fetchMetadata_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_fetchMetadata(TSFetchMetadataReq req) + { + oprot_.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Call, seqid_)); + fetchMetadata_args args = new fetchMetadata_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSFetchMetadataResp recv_fetchMetadata() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + fetchMetadata_result result = new fetchMetadata_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchMetadata failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_cancelOperation(AsyncCallback callback, object state, TSCancelOperationReq req) + { + return send_cancelOperation(callback, state, req); + } + + public TSStatus End_cancelOperation(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_cancelOperation(); + } + + #endif + + public TSStatus cancelOperation(TSCancelOperationReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_cancelOperation(null, null, req); + return End_cancelOperation(asyncResult); + + #else + send_cancelOperation(req); + return recv_cancelOperation(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_cancelOperation(AsyncCallback callback, object state, TSCancelOperationReq req) + { + oprot_.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Call, seqid_)); + cancelOperation_args args = new cancelOperation_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_cancelOperation(TSCancelOperationReq req) + { + oprot_.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Call, seqid_)); + cancelOperation_args args = new cancelOperation_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_cancelOperation() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + cancelOperation_result result = new cancelOperation_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "cancelOperation failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_closeOperation(AsyncCallback callback, object state, TSCloseOperationReq req) + { + return send_closeOperation(callback, state, req); + } + + public TSStatus End_closeOperation(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_closeOperation(); + } + + #endif + + public TSStatus closeOperation(TSCloseOperationReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_closeOperation(null, null, req); + return End_closeOperation(asyncResult); + + #else + send_closeOperation(req); + return recv_closeOperation(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_closeOperation(AsyncCallback callback, object state, TSCloseOperationReq req) + { + oprot_.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Call, seqid_)); + closeOperation_args args = new closeOperation_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_closeOperation(TSCloseOperationReq req) + { + oprot_.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Call, seqid_)); + closeOperation_args args = new closeOperation_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_closeOperation() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + closeOperation_result result = new closeOperation_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeOperation failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_getTimeZone(AsyncCallback callback, object state, long sessionId) + { + return send_getTimeZone(callback, state, sessionId); + } + + public TSGetTimeZoneResp End_getTimeZone(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_getTimeZone(); + } + + #endif + + public TSGetTimeZoneResp getTimeZone(long sessionId) + { + #if SILVERLIGHT + var asyncResult = Begin_getTimeZone(null, null, sessionId); + return End_getTimeZone(asyncResult); + + #else + send_getTimeZone(sessionId); + return recv_getTimeZone(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_getTimeZone(AsyncCallback callback, object state, long sessionId) + { + oprot_.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Call, seqid_)); + getTimeZone_args args = new getTimeZone_args(); + args.SessionId = sessionId; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_getTimeZone(long sessionId) + { + oprot_.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Call, seqid_)); + getTimeZone_args args = new getTimeZone_args(); + args.SessionId = sessionId; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSGetTimeZoneResp recv_getTimeZone() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + getTimeZone_result result = new getTimeZone_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getTimeZone failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_setTimeZone(AsyncCallback callback, object state, TSSetTimeZoneReq req) + { + return send_setTimeZone(callback, state, req); + } + + public TSStatus End_setTimeZone(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_setTimeZone(); + } + + #endif + + public TSStatus setTimeZone(TSSetTimeZoneReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_setTimeZone(null, null, req); + return End_setTimeZone(asyncResult); + + #else + send_setTimeZone(req); + return recv_setTimeZone(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_setTimeZone(AsyncCallback callback, object state, TSSetTimeZoneReq req) + { + oprot_.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Call, seqid_)); + setTimeZone_args args = new setTimeZone_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_setTimeZone(TSSetTimeZoneReq req) + { + oprot_.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Call, seqid_)); + setTimeZone_args args = new setTimeZone_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_setTimeZone() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + setTimeZone_result result = new setTimeZone_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setTimeZone failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_getProperties(AsyncCallback callback, object state) + { + return send_getProperties(callback, state); + } + + public ServerProperties End_getProperties(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_getProperties(); + } + + #endif + + public ServerProperties getProperties() + { + #if SILVERLIGHT + var asyncResult = Begin_getProperties(null, null); + return End_getProperties(asyncResult); + + #else + send_getProperties(); + return recv_getProperties(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_getProperties(AsyncCallback callback, object state) + { + oprot_.WriteMessageBegin(new TMessage("getProperties", TMessageType.Call, seqid_)); + getProperties_args args = new getProperties_args(); + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_getProperties() + { + oprot_.WriteMessageBegin(new TMessage("getProperties", TMessageType.Call, seqid_)); + getProperties_args args = new getProperties_args(); + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public ServerProperties recv_getProperties() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + getProperties_result result = new getProperties_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getProperties failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_setStorageGroup(AsyncCallback callback, object state, long sessionId, string storageGroup) + { + return send_setStorageGroup(callback, state, sessionId, storageGroup); + } + + public TSStatus End_setStorageGroup(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_setStorageGroup(); + } + + #endif + + public TSStatus setStorageGroup(long sessionId, string storageGroup) + { + #if SILVERLIGHT + var asyncResult = Begin_setStorageGroup(null, null, sessionId, storageGroup); + return End_setStorageGroup(asyncResult); + + #else + send_setStorageGroup(sessionId, storageGroup); + return recv_setStorageGroup(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_setStorageGroup(AsyncCallback callback, object state, long sessionId, string storageGroup) + { + oprot_.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Call, seqid_)); + setStorageGroup_args args = new setStorageGroup_args(); + args.SessionId = sessionId; + args.StorageGroup = storageGroup; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_setStorageGroup(long sessionId, string storageGroup) + { + oprot_.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Call, seqid_)); + setStorageGroup_args args = new setStorageGroup_args(); + args.SessionId = sessionId; + args.StorageGroup = storageGroup; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_setStorageGroup() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + setStorageGroup_result result = new setStorageGroup_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setStorageGroup failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_createTimeseries(AsyncCallback callback, object state, TSCreateTimeseriesReq req) + { + return send_createTimeseries(callback, state, req); + } + + public TSStatus End_createTimeseries(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_createTimeseries(); + } + + #endif + + public TSStatus createTimeseries(TSCreateTimeseriesReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_createTimeseries(null, null, req); + return End_createTimeseries(asyncResult); + + #else + send_createTimeseries(req); + return recv_createTimeseries(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_createTimeseries(AsyncCallback callback, object state, TSCreateTimeseriesReq req) + { + oprot_.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Call, seqid_)); + createTimeseries_args args = new createTimeseries_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_createTimeseries(TSCreateTimeseriesReq req) + { + oprot_.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Call, seqid_)); + createTimeseries_args args = new createTimeseries_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_createTimeseries() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + createTimeseries_result result = new createTimeseries_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_createMultiTimeseries(AsyncCallback callback, object state, TSCreateMultiTimeseriesReq req) + { + return send_createMultiTimeseries(callback, state, req); + } + + public TSStatus End_createMultiTimeseries(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_createMultiTimeseries(); + } + + #endif + + public TSStatus createMultiTimeseries(TSCreateMultiTimeseriesReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_createMultiTimeseries(null, null, req); + return End_createMultiTimeseries(asyncResult); + + #else + send_createMultiTimeseries(req); + return recv_createMultiTimeseries(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_createMultiTimeseries(AsyncCallback callback, object state, TSCreateMultiTimeseriesReq req) + { + oprot_.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Call, seqid_)); + createMultiTimeseries_args args = new createMultiTimeseries_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_createMultiTimeseries(TSCreateMultiTimeseriesReq req) + { + oprot_.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Call, seqid_)); + createMultiTimeseries_args args = new createMultiTimeseries_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_createMultiTimeseries() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + createMultiTimeseries_result result = new createMultiTimeseries_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createMultiTimeseries failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_deleteTimeseries(AsyncCallback callback, object state, long sessionId, List path) + { + return send_deleteTimeseries(callback, state, sessionId, path); + } + + public TSStatus End_deleteTimeseries(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_deleteTimeseries(); + } + + #endif + + public TSStatus deleteTimeseries(long sessionId, List path) + { + #if SILVERLIGHT + var asyncResult = Begin_deleteTimeseries(null, null, sessionId, path); + return End_deleteTimeseries(asyncResult); + + #else + send_deleteTimeseries(sessionId, path); + return recv_deleteTimeseries(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_deleteTimeseries(AsyncCallback callback, object state, long sessionId, List path) + { + oprot_.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Call, seqid_)); + deleteTimeseries_args args = new deleteTimeseries_args(); + args.SessionId = sessionId; + args.Path = path; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_deleteTimeseries(long sessionId, List path) + { + oprot_.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Call, seqid_)); + deleteTimeseries_args args = new deleteTimeseries_args(); + args.SessionId = sessionId; + args.Path = path; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_deleteTimeseries() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + deleteTimeseries_result result = new deleteTimeseries_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteTimeseries failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_deleteStorageGroups(AsyncCallback callback, object state, long sessionId, List storageGroup) + { + return send_deleteStorageGroups(callback, state, sessionId, storageGroup); + } + + public TSStatus End_deleteStorageGroups(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_deleteStorageGroups(); + } + + #endif + + public TSStatus deleteStorageGroups(long sessionId, List storageGroup) + { + #if SILVERLIGHT + var asyncResult = Begin_deleteStorageGroups(null, null, sessionId, storageGroup); + return End_deleteStorageGroups(asyncResult); + + #else + send_deleteStorageGroups(sessionId, storageGroup); + return recv_deleteStorageGroups(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_deleteStorageGroups(AsyncCallback callback, object state, long sessionId, List storageGroup) + { + oprot_.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Call, seqid_)); + deleteStorageGroups_args args = new deleteStorageGroups_args(); + args.SessionId = sessionId; + args.StorageGroup = storageGroup; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_deleteStorageGroups(long sessionId, List storageGroup) + { + oprot_.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Call, seqid_)); + deleteStorageGroups_args args = new deleteStorageGroups_args(); + args.SessionId = sessionId; + args.StorageGroup = storageGroup; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_deleteStorageGroups() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + deleteStorageGroups_result result = new deleteStorageGroups_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteStorageGroups failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) + { + return send_insertRecord(callback, state, req); + } + + public TSStatus End_insertRecord(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertRecord(); + } + + #endif + + public TSStatus insertRecord(TSInsertRecordReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertRecord(null, null, req); + return End_insertRecord(asyncResult); + + #else + send_insertRecord(req); + return recv_insertRecord(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Call, seqid_)); + insertRecord_args args = new insertRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertRecord(TSInsertRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Call, seqid_)); + insertRecord_args args = new insertRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertRecord() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertRecord_result result = new insertRecord_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecord failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) + { + return send_insertStringRecord(callback, state, req); + } + + public TSStatus End_insertStringRecord(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertStringRecord(); + } + + #endif + + public TSStatus insertStringRecord(TSInsertStringRecordReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertStringRecord(null, null, req); + return End_insertStringRecord(asyncResult); + + #else + send_insertStringRecord(req); + return recv_insertStringRecord(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Call, seqid_)); + insertStringRecord_args args = new insertStringRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertStringRecord(TSInsertStringRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Call, seqid_)); + insertStringRecord_args args = new insertStringRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertStringRecord() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertStringRecord_result result = new insertStringRecord_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecord failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) + { + return send_insertTablet(callback, state, req); + } + + public TSStatus End_insertTablet(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertTablet(); + } + + #endif + + public TSStatus insertTablet(TSInsertTabletReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertTablet(null, null, req); + return End_insertTablet(asyncResult); + + #else + send_insertTablet(req); + return recv_insertTablet(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Call, seqid_)); + insertTablet_args args = new insertTablet_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertTablet(TSInsertTabletReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Call, seqid_)); + insertTablet_args args = new insertTablet_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertTablet() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertTablet_result result = new insertTablet_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablet failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) + { + return send_insertTablets(callback, state, req); + } + + public TSStatus End_insertTablets(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertTablets(); + } + + #endif + + public TSStatus insertTablets(TSInsertTabletsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertTablets(null, null, req); + return End_insertTablets(asyncResult); + + #else + send_insertTablets(req); + return recv_insertTablets(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Call, seqid_)); + insertTablets_args args = new insertTablets_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertTablets(TSInsertTabletsReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Call, seqid_)); + insertTablets_args args = new insertTablets_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertTablets() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertTablets_result result = new insertTablets_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablets failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) + { + return send_insertRecords(callback, state, req); + } + + public TSStatus End_insertRecords(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertRecords(); + } + + #endif + + public TSStatus insertRecords(TSInsertRecordsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertRecords(null, null, req); + return End_insertRecords(asyncResult); + + #else + send_insertRecords(req); + return recv_insertRecords(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Call, seqid_)); + insertRecords_args args = new insertRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertRecords(TSInsertRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Call, seqid_)); + insertRecords_args args = new insertRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertRecords() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertRecords_result result = new insertRecords_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecords failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) + { + return send_insertRecordsOfOneDevice(callback, state, req); + } + + public TSStatus End_insertRecordsOfOneDevice(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertRecordsOfOneDevice(); + } + + #endif + + public TSStatus insertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertRecordsOfOneDevice(null, null, req); + return End_insertRecordsOfOneDevice(asyncResult); + + #else + send_insertRecordsOfOneDevice(req); + return recv_insertRecordsOfOneDevice(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, seqid_)); + insertRecordsOfOneDevice_args args = new insertRecordsOfOneDevice_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, seqid_)); + insertRecordsOfOneDevice_args args = new insertRecordsOfOneDevice_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertRecordsOfOneDevice() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertRecordsOfOneDevice_result result = new insertRecordsOfOneDevice_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_insertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) + { + return send_insertStringRecords(callback, state, req); + } + + public TSStatus End_insertStringRecords(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_insertStringRecords(); + } + + #endif + + public TSStatus insertStringRecords(TSInsertStringRecordsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_insertStringRecords(null, null, req); + return End_insertStringRecords(asyncResult); + + #else + send_insertStringRecords(req); + return recv_insertStringRecords(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_insertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Call, seqid_)); + insertStringRecords_args args = new insertStringRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_insertStringRecords(TSInsertStringRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Call, seqid_)); + insertStringRecords_args args = new insertStringRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_insertStringRecords() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + insertStringRecords_result result = new insertStringRecords_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecords failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) + { + return send_testInsertTablet(callback, state, req); + } + + public TSStatus End_testInsertTablet(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertTablet(); + } + + #endif + + public TSStatus testInsertTablet(TSInsertTabletReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertTablet(null, null, req); + return End_testInsertTablet(asyncResult); + + #else + send_testInsertTablet(req); + return recv_testInsertTablet(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Call, seqid_)); + testInsertTablet_args args = new testInsertTablet_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertTablet(TSInsertTabletReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Call, seqid_)); + testInsertTablet_args args = new testInsertTablet_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertTablet() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertTablet_result result = new testInsertTablet_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablet failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) + { + return send_testInsertTablets(callback, state, req); + } + + public TSStatus End_testInsertTablets(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertTablets(); + } + + #endif + + public TSStatus testInsertTablets(TSInsertTabletsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertTablets(null, null, req); + return End_testInsertTablets(asyncResult); + + #else + send_testInsertTablets(req); + return recv_testInsertTablets(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Call, seqid_)); + testInsertTablets_args args = new testInsertTablets_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertTablets(TSInsertTabletsReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Call, seqid_)); + testInsertTablets_args args = new testInsertTablets_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertTablets() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertTablets_result result = new testInsertTablets_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablets failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) + { + return send_testInsertRecord(callback, state, req); + } + + public TSStatus End_testInsertRecord(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertRecord(); + } + + #endif + + public TSStatus testInsertRecord(TSInsertRecordReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertRecord(null, null, req); + return End_testInsertRecord(asyncResult); + + #else + send_testInsertRecord(req); + return recv_testInsertRecord(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Call, seqid_)); + testInsertRecord_args args = new testInsertRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertRecord(TSInsertRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Call, seqid_)); + testInsertRecord_args args = new testInsertRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertRecord() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertRecord_result result = new testInsertRecord_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecord failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) + { + return send_testInsertStringRecord(callback, state, req); + } + + public TSStatus End_testInsertStringRecord(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertStringRecord(); + } + + #endif + + public TSStatus testInsertStringRecord(TSInsertStringRecordReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertStringRecord(null, null, req); + return End_testInsertStringRecord(asyncResult); + + #else + send_testInsertStringRecord(req); + return recv_testInsertStringRecord(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Call, seqid_)); + testInsertStringRecord_args args = new testInsertStringRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertStringRecord(TSInsertStringRecordReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Call, seqid_)); + testInsertStringRecord_args args = new testInsertStringRecord_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertStringRecord() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertStringRecord_result result = new testInsertStringRecord_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecord failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) + { + return send_testInsertRecords(callback, state, req); + } + + public TSStatus End_testInsertRecords(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertRecords(); + } + + #endif + + public TSStatus testInsertRecords(TSInsertRecordsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertRecords(null, null, req); + return End_testInsertRecords(asyncResult); + + #else + send_testInsertRecords(req); + return recv_testInsertRecords(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Call, seqid_)); + testInsertRecords_args args = new testInsertRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertRecords(TSInsertRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Call, seqid_)); + testInsertRecords_args args = new testInsertRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertRecords() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertRecords_result result = new testInsertRecords_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecords failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) + { + return send_testInsertRecordsOfOneDevice(callback, state, req); + } + + public TSStatus End_testInsertRecordsOfOneDevice(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertRecordsOfOneDevice(); + } + + #endif + + public TSStatus testInsertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertRecordsOfOneDevice(null, null, req); + return End_testInsertRecordsOfOneDevice(asyncResult); + + #else + send_testInsertRecordsOfOneDevice(req); + return recv_testInsertRecordsOfOneDevice(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, seqid_)); + testInsertRecordsOfOneDevice_args args = new testInsertRecordsOfOneDevice_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, seqid_)); + testInsertRecordsOfOneDevice_args args = new testInsertRecordsOfOneDevice_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertRecordsOfOneDevice() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertRecordsOfOneDevice_result result = new testInsertRecordsOfOneDevice_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecordsOfOneDevice failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_testInsertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) + { + return send_testInsertStringRecords(callback, state, req); + } + + public TSStatus End_testInsertStringRecords(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_testInsertStringRecords(); + } + + #endif + + public TSStatus testInsertStringRecords(TSInsertStringRecordsReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_testInsertStringRecords(null, null, req); + return End_testInsertStringRecords(asyncResult); + + #else + send_testInsertStringRecords(req); + return recv_testInsertStringRecords(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_testInsertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Call, seqid_)); + testInsertStringRecords_args args = new testInsertStringRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_testInsertStringRecords(TSInsertStringRecordsReq req) + { + oprot_.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Call, seqid_)); + testInsertStringRecords_args args = new testInsertStringRecords_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_testInsertStringRecords() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + testInsertStringRecords_result result = new testInsertStringRecords_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecords failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_deleteData(AsyncCallback callback, object state, TSDeleteDataReq req) + { + return send_deleteData(callback, state, req); + } + + public TSStatus End_deleteData(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_deleteData(); + } + + #endif + + public TSStatus deleteData(TSDeleteDataReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_deleteData(null, null, req); + return End_deleteData(asyncResult); + + #else + send_deleteData(req); + return recv_deleteData(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_deleteData(AsyncCallback callback, object state, TSDeleteDataReq req) + { + oprot_.WriteMessageBegin(new TMessage("deleteData", TMessageType.Call, seqid_)); + deleteData_args args = new deleteData_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_deleteData(TSDeleteDataReq req) + { + oprot_.WriteMessageBegin(new TMessage("deleteData", TMessageType.Call, seqid_)); + deleteData_args args = new deleteData_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSStatus recv_deleteData() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + deleteData_result result = new deleteData_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteData failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_executeRawDataQuery(AsyncCallback callback, object state, TSRawDataQueryReq req) + { + return send_executeRawDataQuery(callback, state, req); + } + + public TSExecuteStatementResp End_executeRawDataQuery(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_executeRawDataQuery(); + } + + #endif + + public TSExecuteStatementResp executeRawDataQuery(TSRawDataQueryReq req) + { + #if SILVERLIGHT + var asyncResult = Begin_executeRawDataQuery(null, null, req); + return End_executeRawDataQuery(asyncResult); + + #else + send_executeRawDataQuery(req); + return recv_executeRawDataQuery(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_executeRawDataQuery(AsyncCallback callback, object state, TSRawDataQueryReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Call, seqid_)); + executeRawDataQuery_args args = new executeRawDataQuery_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_executeRawDataQuery(TSRawDataQueryReq req) + { + oprot_.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Call, seqid_)); + executeRawDataQuery_args args = new executeRawDataQuery_args(); + args.Req = req; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public TSExecuteStatementResp recv_executeRawDataQuery() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + executeRawDataQuery_result result = new executeRawDataQuery_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); + } + + + #if SILVERLIGHT + + public IAsyncResult Begin_requestStatementId(AsyncCallback callback, object state, long sessionId) + { + return send_requestStatementId(callback, state, sessionId); + } + + public long End_requestStatementId(IAsyncResult asyncResult) + { + oprot_.Transport.EndFlush(asyncResult); + return recv_requestStatementId(); + } + + #endif + + public long requestStatementId(long sessionId) + { + #if SILVERLIGHT + var asyncResult = Begin_requestStatementId(null, null, sessionId); + return End_requestStatementId(asyncResult); + + #else + send_requestStatementId(sessionId); + return recv_requestStatementId(); + + #endif + } + #if SILVERLIGHT + public IAsyncResult send_requestStatementId(AsyncCallback callback, object state, long sessionId) + { + oprot_.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Call, seqid_)); + requestStatementId_args args = new requestStatementId_args(); + args.SessionId = sessionId; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + return oprot_.Transport.BeginFlush(callback, state); + } + + #else + + public void send_requestStatementId(long sessionId) + { + oprot_.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Call, seqid_)); + requestStatementId_args args = new requestStatementId_args(); + args.SessionId = sessionId; + args.Write(oprot_); + oprot_.WriteMessageEnd(); + oprot_.Transport.Flush(); + } + #endif + + public long recv_requestStatementId() + { + TMessage msg = iprot_.ReadMessageBegin(); + if (msg.Type == TMessageType.Exception) { + TApplicationException x = TApplicationException.Read(iprot_); + iprot_.ReadMessageEnd(); + throw x; + } + requestStatementId_result result = new requestStatementId_result(); + result.Read(iprot_); + iprot_.ReadMessageEnd(); + if (result.__isset.success) { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); + } + + } + public class Processor : TProcessor { + public Processor(ISync iface) + { + iface_ = iface; + processMap_["openSession"] = openSession_Process; + processMap_["closeSession"] = closeSession_Process; + processMap_["executeStatement"] = executeStatement_Process; + processMap_["executeBatchStatement"] = executeBatchStatement_Process; + processMap_["executeQueryStatement"] = executeQueryStatement_Process; + processMap_["executeUpdateStatement"] = executeUpdateStatement_Process; + processMap_["fetchResults"] = fetchResults_Process; + processMap_["fetchMetadata"] = fetchMetadata_Process; + processMap_["cancelOperation"] = cancelOperation_Process; + processMap_["closeOperation"] = closeOperation_Process; + processMap_["getTimeZone"] = getTimeZone_Process; + processMap_["setTimeZone"] = setTimeZone_Process; + processMap_["getProperties"] = getProperties_Process; + processMap_["setStorageGroup"] = setStorageGroup_Process; + processMap_["createTimeseries"] = createTimeseries_Process; + processMap_["createMultiTimeseries"] = createMultiTimeseries_Process; + processMap_["deleteTimeseries"] = deleteTimeseries_Process; + processMap_["deleteStorageGroups"] = deleteStorageGroups_Process; + processMap_["insertRecord"] = insertRecord_Process; + processMap_["insertStringRecord"] = insertStringRecord_Process; + processMap_["insertTablet"] = insertTablet_Process; + processMap_["insertTablets"] = insertTablets_Process; + processMap_["insertRecords"] = insertRecords_Process; + processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_Process; + processMap_["insertStringRecords"] = insertStringRecords_Process; + processMap_["testInsertTablet"] = testInsertTablet_Process; + processMap_["testInsertTablets"] = testInsertTablets_Process; + processMap_["testInsertRecord"] = testInsertRecord_Process; + processMap_["testInsertStringRecord"] = testInsertStringRecord_Process; + processMap_["testInsertRecords"] = testInsertRecords_Process; + processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_Process; + processMap_["testInsertStringRecords"] = testInsertStringRecords_Process; + processMap_["deleteData"] = deleteData_Process; + processMap_["executeRawDataQuery"] = executeRawDataQuery_Process; + processMap_["requestStatementId"] = requestStatementId_Process; + } + + protected delegate void ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot); + private ISync iface_; + protected Dictionary processMap_ = new Dictionary(); + + public bool Process(TProtocol iprot, TProtocol oprot) + { + try + { + TMessage msg = iprot.ReadMessageBegin(); + ProcessFunction fn; + processMap_.TryGetValue(msg.Name, out fn); + if (fn == null) { + TProtocolUtil.Skip(iprot, TType.Struct); + iprot.ReadMessageEnd(); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); + oprot.WriteMessageBegin(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID)); + x.Write(oprot); + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + return true; + } + fn(msg.SeqID, iprot, oprot); + } + catch (IOException) + { + return false; + } + return true; + } + + public void openSession_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + openSession_args args = new openSession_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + openSession_result result = new openSession_result(); + try + { + result.Success = iface_.openSession(args.Req); + oprot.WriteMessageBegin(new TMessage("openSession", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("openSession", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void closeSession_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + closeSession_args args = new closeSession_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + closeSession_result result = new closeSession_result(); + try + { + result.Success = iface_.closeSession(args.Req); + oprot.WriteMessageBegin(new TMessage("closeSession", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("closeSession", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void executeStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + executeStatement_args args = new executeStatement_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + executeStatement_result result = new executeStatement_result(); + try + { + result.Success = iface_.executeStatement(args.Req); + oprot.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void executeBatchStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + executeBatchStatement_args args = new executeBatchStatement_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + executeBatchStatement_result result = new executeBatchStatement_result(); + try + { + result.Success = iface_.executeBatchStatement(args.Req); + oprot.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void executeQueryStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + executeQueryStatement_args args = new executeQueryStatement_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + executeQueryStatement_result result = new executeQueryStatement_result(); + try + { + result.Success = iface_.executeQueryStatement(args.Req); + oprot.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void executeUpdateStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + executeUpdateStatement_args args = new executeUpdateStatement_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + executeUpdateStatement_result result = new executeUpdateStatement_result(); + try + { + result.Success = iface_.executeUpdateStatement(args.Req); + oprot.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void fetchResults_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + fetchResults_args args = new fetchResults_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + fetchResults_result result = new fetchResults_result(); + try + { + result.Success = iface_.fetchResults(args.Req); + oprot.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void fetchMetadata_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + fetchMetadata_args args = new fetchMetadata_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + fetchMetadata_result result = new fetchMetadata_result(); + try + { + result.Success = iface_.fetchMetadata(args.Req); + oprot.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void cancelOperation_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + cancelOperation_args args = new cancelOperation_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + cancelOperation_result result = new cancelOperation_result(); + try + { + result.Success = iface_.cancelOperation(args.Req); + oprot.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void closeOperation_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + closeOperation_args args = new closeOperation_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + closeOperation_result result = new closeOperation_result(); + try + { + result.Success = iface_.closeOperation(args.Req); + oprot.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void getTimeZone_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + getTimeZone_args args = new getTimeZone_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + getTimeZone_result result = new getTimeZone_result(); + try + { + result.Success = iface_.getTimeZone(args.SessionId); + oprot.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void setTimeZone_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + setTimeZone_args args = new setTimeZone_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + setTimeZone_result result = new setTimeZone_result(); + try + { + result.Success = iface_.setTimeZone(args.Req); + oprot.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void getProperties_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + getProperties_args args = new getProperties_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + getProperties_result result = new getProperties_result(); + try + { + result.Success = iface_.getProperties(); + oprot.WriteMessageBegin(new TMessage("getProperties", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("getProperties", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void setStorageGroup_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + setStorageGroup_args args = new setStorageGroup_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + setStorageGroup_result result = new setStorageGroup_result(); + try + { + result.Success = iface_.setStorageGroup(args.SessionId, args.StorageGroup); + oprot.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void createTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + createTimeseries_args args = new createTimeseries_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + createTimeseries_result result = new createTimeseries_result(); + try + { + result.Success = iface_.createTimeseries(args.Req); + oprot.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void createMultiTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + createMultiTimeseries_args args = new createMultiTimeseries_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + createMultiTimeseries_result result = new createMultiTimeseries_result(); + try + { + result.Success = iface_.createMultiTimeseries(args.Req); + oprot.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void deleteTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + deleteTimeseries_args args = new deleteTimeseries_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + deleteTimeseries_result result = new deleteTimeseries_result(); + try + { + result.Success = iface_.deleteTimeseries(args.SessionId, args.Path); + oprot.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void deleteStorageGroups_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + deleteStorageGroups_args args = new deleteStorageGroups_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + deleteStorageGroups_result result = new deleteStorageGroups_result(); + try + { + result.Success = iface_.deleteStorageGroups(args.SessionId, args.StorageGroup); + oprot.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertRecord_args args = new insertRecord_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertRecord_result result = new insertRecord_result(); + try + { + result.Success = iface_.insertRecord(args.Req); + oprot.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertStringRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertStringRecord_args args = new insertStringRecord_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertStringRecord_result result = new insertStringRecord_result(); + try + { + result.Success = iface_.insertStringRecord(args.Req); + oprot.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertTablet_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertTablet_args args = new insertTablet_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertTablet_result result = new insertTablet_result(); + try + { + result.Success = iface_.insertTablet(args.Req); + oprot.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertTablets_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertTablets_args args = new insertTablets_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertTablets_result result = new insertTablets_result(); + try + { + result.Success = iface_.insertTablets(args.Req); + oprot.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertRecords_args args = new insertRecords_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertRecords_result result = new insertRecords_result(); + try + { + result.Success = iface_.insertRecords(args.Req); + oprot.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertRecordsOfOneDevice_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertRecordsOfOneDevice_args args = new insertRecordsOfOneDevice_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertRecordsOfOneDevice_result result = new insertRecordsOfOneDevice_result(); + try + { + result.Success = iface_.insertRecordsOfOneDevice(args.Req); + oprot.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void insertStringRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + insertStringRecords_args args = new insertStringRecords_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + insertStringRecords_result result = new insertStringRecords_result(); + try + { + result.Success = iface_.insertStringRecords(args.Req); + oprot.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertTablet_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertTablet_args args = new testInsertTablet_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertTablet_result result = new testInsertTablet_result(); + try + { + result.Success = iface_.testInsertTablet(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertTablets_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertTablets_args args = new testInsertTablets_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertTablets_result result = new testInsertTablets_result(); + try + { + result.Success = iface_.testInsertTablets(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertRecord_args args = new testInsertRecord_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertRecord_result result = new testInsertRecord_result(); + try + { + result.Success = iface_.testInsertRecord(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertStringRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertStringRecord_args args = new testInsertStringRecord_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertStringRecord_result result = new testInsertStringRecord_result(); + try + { + result.Success = iface_.testInsertStringRecord(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertRecords_args args = new testInsertRecords_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertRecords_result result = new testInsertRecords_result(); + try + { + result.Success = iface_.testInsertRecords(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertRecordsOfOneDevice_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertRecordsOfOneDevice_args args = new testInsertRecordsOfOneDevice_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertRecordsOfOneDevice_result result = new testInsertRecordsOfOneDevice_result(); + try + { + result.Success = iface_.testInsertRecordsOfOneDevice(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void testInsertStringRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + testInsertStringRecords_args args = new testInsertStringRecords_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + testInsertStringRecords_result result = new testInsertStringRecords_result(); + try + { + result.Success = iface_.testInsertStringRecords(args.Req); + oprot.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void deleteData_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + deleteData_args args = new deleteData_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + deleteData_result result = new deleteData_result(); + try + { + result.Success = iface_.deleteData(args.Req); + oprot.WriteMessageBegin(new TMessage("deleteData", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("deleteData", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void executeRawDataQuery_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + executeRawDataQuery_args args = new executeRawDataQuery_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + executeRawDataQuery_result result = new executeRawDataQuery_result(); + try + { + result.Success = iface_.executeRawDataQuery(args.Req); + oprot.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + public void requestStatementId_Process(int seqid, TProtocol iprot, TProtocol oprot) + { + requestStatementId_args args = new requestStatementId_args(); + args.Read(iprot); + iprot.ReadMessageEnd(); + requestStatementId_result result = new requestStatementId_result(); + try + { + result.Success = iface_.requestStatementId(args.SessionId); + oprot.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Reply, seqid)); + result.Write(oprot); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + Console.Error.WriteLine("Error occurred in processor:"); + Console.Error.WriteLine(ex.ToString()); + TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); + oprot.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Exception, seqid)); + x.Write(oprot); + } + oprot.WriteMessageEnd(); + oprot.Transport.Flush(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class openSession_args : TBase + { + private TSOpenSessionReq _req; + + public TSOpenSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public openSession_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSOpenSessionReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("openSession_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("openSession_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class openSession_result : TBase + { + private TSOpenSessionResp _success; + + public TSOpenSessionResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public openSession_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSOpenSessionResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("openSession_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("openSession_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class closeSession_args : TBase + { + private TSCloseSessionReq _req; + + public TSCloseSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public closeSession_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSCloseSessionReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("closeSession_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("closeSession_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class closeSession_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public closeSession_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("closeSession_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("closeSession_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeStatement_args : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public executeStatement_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSExecuteStatementReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeStatement_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeStatement_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeStatement_result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public executeStatement_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSExecuteStatementResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeStatement_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeStatement_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeBatchStatement_args : TBase + { + private TSExecuteBatchStatementReq _req; + + public TSExecuteBatchStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public executeBatchStatement_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSExecuteBatchStatementReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeBatchStatement_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeBatchStatement_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeBatchStatement_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public executeBatchStatement_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeBatchStatement_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeBatchStatement_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeQueryStatement_args : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public executeQueryStatement_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSExecuteStatementReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeQueryStatement_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeQueryStatement_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeQueryStatement_result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public executeQueryStatement_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSExecuteStatementResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeQueryStatement_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeQueryStatement_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeUpdateStatement_args : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public executeUpdateStatement_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSExecuteStatementReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeUpdateStatement_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeUpdateStatement_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeUpdateStatement_result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public executeUpdateStatement_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSExecuteStatementResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeUpdateStatement_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeUpdateStatement_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class fetchResults_args : TBase + { + private TSFetchResultsReq _req; + + public TSFetchResultsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public fetchResults_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSFetchResultsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("fetchResults_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("fetchResults_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class fetchResults_result : TBase + { + private TSFetchResultsResp _success; + + public TSFetchResultsResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public fetchResults_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSFetchResultsResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("fetchResults_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("fetchResults_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class fetchMetadata_args : TBase + { + private TSFetchMetadataReq _req; + + public TSFetchMetadataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public fetchMetadata_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSFetchMetadataReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("fetchMetadata_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("fetchMetadata_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class fetchMetadata_result : TBase + { + private TSFetchMetadataResp _success; + + public TSFetchMetadataResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public fetchMetadata_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSFetchMetadataResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("fetchMetadata_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("fetchMetadata_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class cancelOperation_args : TBase + { + private TSCancelOperationReq _req; + + public TSCancelOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public cancelOperation_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSCancelOperationReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("cancelOperation_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("cancelOperation_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class cancelOperation_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public cancelOperation_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("cancelOperation_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("cancelOperation_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class closeOperation_args : TBase + { + private TSCloseOperationReq _req; + + public TSCloseOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public closeOperation_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSCloseOperationReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("closeOperation_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("closeOperation_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class closeOperation_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public closeOperation_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("closeOperation_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("closeOperation_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class getTimeZone_args : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool sessionId; + } + + public getTimeZone_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("getTimeZone_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (__isset.sessionId) { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("getTimeZone_args("); + bool __first = true; + if (__isset.sessionId) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("SessionId: "); + __sb.Append(SessionId); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class getTimeZone_result : TBase + { + private TSGetTimeZoneResp _success; + + public TSGetTimeZoneResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public getTimeZone_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSGetTimeZoneResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("getTimeZone_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("getTimeZone_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class setTimeZone_args : TBase + { + private TSSetTimeZoneReq _req; + + public TSSetTimeZoneReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public setTimeZone_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSSetTimeZoneReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("setTimeZone_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("setTimeZone_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class setTimeZone_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public setTimeZone_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("setTimeZone_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("setTimeZone_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class getProperties_args : TBase + { + + public getProperties_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("getProperties_args"); + oprot.WriteStructBegin(struc); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("getProperties_args("); + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class getProperties_result : TBase + { + private ServerProperties _success; + + public ServerProperties Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public getProperties_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new ServerProperties(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("getProperties_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("getProperties_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class setStorageGroup_args : TBase + { + private long _sessionId; + private string _storageGroup; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public string StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool sessionId; + public bool storageGroup; + } + + public setStorageGroup_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + StorageGroup = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("setStorageGroup_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (__isset.sessionId) { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + } + if (StorageGroup != null && __isset.storageGroup) { + field.Name = "storageGroup"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(StorageGroup); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("setStorageGroup_args("); + bool __first = true; + if (__isset.sessionId) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("SessionId: "); + __sb.Append(SessionId); + } + if (StorageGroup != null && __isset.storageGroup) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("StorageGroup: "); + __sb.Append(StorageGroup); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class setStorageGroup_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public setStorageGroup_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("setStorageGroup_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("setStorageGroup_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class createTimeseries_args : TBase + { + private TSCreateTimeseriesReq _req; + + public TSCreateTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public createTimeseries_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSCreateTimeseriesReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("createTimeseries_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("createTimeseries_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class createTimeseries_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public createTimeseries_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("createTimeseries_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("createTimeseries_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class createMultiTimeseries_args : TBase + { + private TSCreateMultiTimeseriesReq _req; + + public TSCreateMultiTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public createMultiTimeseries_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSCreateMultiTimeseriesReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("createMultiTimeseries_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("createMultiTimeseries_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class createMultiTimeseries_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public createMultiTimeseries_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("createMultiTimeseries_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("createMultiTimeseries_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class deleteTimeseries_args : TBase + { + private long _sessionId; + private List _path; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List Path + { + get + { + return _path; + } + set + { + __isset.path = true; + this._path = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool sessionId; + public bool path; + } + + public deleteTimeseries_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + Path = new List(); + TList _list237 = iprot.ReadListBegin(); + for( int _i238 = 0; _i238 < _list237.Count; ++_i238) + { + string _elem239; + _elem239 = iprot.ReadString(); + Path.Add(_elem239); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("deleteTimeseries_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (__isset.sessionId) { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + } + if (Path != null && __isset.path) { + field.Name = "path"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Path.Count)); + foreach (string _iter240 in Path) + { + oprot.WriteString(_iter240); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("deleteTimeseries_args("); + bool __first = true; + if (__isset.sessionId) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("SessionId: "); + __sb.Append(SessionId); + } + if (Path != null && __isset.path) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Path: "); + __sb.Append(Path); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class deleteTimeseries_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public deleteTimeseries_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("deleteTimeseries_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("deleteTimeseries_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class deleteStorageGroups_args : TBase + { + private long _sessionId; + private List _storageGroup; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool sessionId; + public bool storageGroup; + } + + public deleteStorageGroups_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + StorageGroup = new List(); + TList _list241 = iprot.ReadListBegin(); + for( int _i242 = 0; _i242 < _list241.Count; ++_i242) + { + string _elem243; + _elem243 = iprot.ReadString(); + StorageGroup.Add(_elem243); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("deleteStorageGroups_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (__isset.sessionId) { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + } + if (StorageGroup != null && __isset.storageGroup) { + field.Name = "storageGroup"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, StorageGroup.Count)); + foreach (string _iter244 in StorageGroup) + { + oprot.WriteString(_iter244); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("deleteStorageGroups_args("); + bool __first = true; + if (__isset.sessionId) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("SessionId: "); + __sb.Append(SessionId); + } + if (StorageGroup != null && __isset.storageGroup) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("StorageGroup: "); + __sb.Append(StorageGroup); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class deleteStorageGroups_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public deleteStorageGroups_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("deleteStorageGroups_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("deleteStorageGroups_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertRecord_args : TBase + { + private TSInsertRecordReq _req; + + public TSInsertRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertRecord_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertRecordReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertRecord_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertRecord_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertRecord_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertRecord_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertRecord_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertRecord_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertStringRecord_args : TBase + { + private TSInsertStringRecordReq _req; + + public TSInsertStringRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertStringRecord_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertStringRecordReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertStringRecord_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertStringRecord_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertStringRecord_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertStringRecord_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertStringRecord_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertStringRecord_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertTablet_args : TBase + { + private TSInsertTabletReq _req; + + public TSInsertTabletReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertTablet_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertTabletReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertTablet_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertTablet_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertTablet_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertTablet_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertTablet_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertTablet_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertTablets_args : TBase + { + private TSInsertTabletsReq _req; + + public TSInsertTabletsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertTablets_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertTabletsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertTablets_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertTablets_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertTablets_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertTablets_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertTablets_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertTablets_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertRecords_args : TBase + { + private TSInsertRecordsReq _req; + + public TSInsertRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertRecords_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertRecordsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertRecords_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertRecords_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertRecords_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertRecords_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertRecords_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertRecords_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertRecordsOfOneDevice_args : TBase + { + private TSInsertRecordsOfOneDeviceReq _req; + + public TSInsertRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertRecordsOfOneDevice_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertRecordsOfOneDeviceReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertRecordsOfOneDevice_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertRecordsOfOneDevice_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertRecordsOfOneDevice_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertRecordsOfOneDevice_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertRecordsOfOneDevice_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertRecordsOfOneDevice_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertStringRecords_args : TBase + { + private TSInsertStringRecordsReq _req; + + public TSInsertStringRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public insertStringRecords_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertStringRecordsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertStringRecords_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertStringRecords_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class insertStringRecords_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public insertStringRecords_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("insertStringRecords_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("insertStringRecords_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertTablet_args : TBase + { + private TSInsertTabletReq _req; + + public TSInsertTabletReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertTablet_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertTabletReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertTablet_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertTablet_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertTablet_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertTablet_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertTablet_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertTablet_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertTablets_args : TBase + { + private TSInsertTabletsReq _req; + + public TSInsertTabletsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertTablets_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertTabletsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertTablets_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertTablets_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertTablets_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertTablets_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertTablets_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertTablets_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertRecord_args : TBase + { + private TSInsertRecordReq _req; + + public TSInsertRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertRecord_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertRecordReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertRecord_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertRecord_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertRecord_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertRecord_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertRecord_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertRecord_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertStringRecord_args : TBase + { + private TSInsertStringRecordReq _req; + + public TSInsertStringRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertStringRecord_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertStringRecordReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertStringRecord_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertStringRecord_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertStringRecord_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertStringRecord_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertStringRecord_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertStringRecord_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertRecords_args : TBase + { + private TSInsertRecordsReq _req; + + public TSInsertRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertRecords_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertRecordsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertRecords_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertRecords_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertRecords_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertRecords_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertRecords_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertRecords_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertRecordsOfOneDevice_args : TBase + { + private TSInsertRecordsOfOneDeviceReq _req; + + public TSInsertRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertRecordsOfOneDevice_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertRecordsOfOneDeviceReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertRecordsOfOneDevice_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertRecordsOfOneDevice_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertRecordsOfOneDevice_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertRecordsOfOneDevice_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertStringRecords_args : TBase + { + private TSInsertStringRecordsReq _req; + + public TSInsertStringRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public testInsertStringRecords_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSInsertStringRecordsReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertStringRecords_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertStringRecords_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class testInsertStringRecords_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public testInsertStringRecords_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("testInsertStringRecords_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("testInsertStringRecords_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class deleteData_args : TBase + { + private TSDeleteDataReq _req; + + public TSDeleteDataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public deleteData_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSDeleteDataReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("deleteData_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("deleteData_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class deleteData_result : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public deleteData_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSStatus(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("deleteData_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("deleteData_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeRawDataQuery_args : TBase + { + private TSRawDataQueryReq _req; + + public TSRawDataQueryReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool req; + } + + public executeRawDataQuery_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Req = new TSRawDataQueryReq(); + Req.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeRawDataQuery_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Req != null && __isset.req) { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Req.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeRawDataQuery_args("); + bool __first = true; + if (Req != null && __isset.req) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Req: "); + __sb.Append(Req== null ? "" : Req.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class executeRawDataQuery_result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public executeRawDataQuery_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { + Success = new TSExecuteStatementResp(); + Success.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("executeRawDataQuery_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + if (Success != null) { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + oprot.WriteFieldBegin(field); + Success.Write(oprot); + oprot.WriteFieldEnd(); + } + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("executeRawDataQuery_result("); + bool __first = true; + if (Success != null && __isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success== null ? "" : Success.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class requestStatementId_args : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool sessionId; + } + + public requestStatementId_args() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("requestStatementId_args"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (__isset.sessionId) { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("requestStatementId_args("); + bool __first = true; + if (__isset.sessionId) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("SessionId: "); + __sb.Append(SessionId); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + + + #if !SILVERLIGHT + [Serializable] + #endif + public partial class requestStatementId_result : TBase + { + private long _success; + + public long Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool success; + } + + public requestStatementId_result() { + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.I64) { + Success = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("requestStatementId_result"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + + if (this.__isset.success) { + field.Name = "Success"; + field.Type = TType.I64; + field.ID = 0; + oprot.WriteFieldBegin(field); + oprot.WriteI64(Success); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("requestStatementId_result("); + bool __first = true; + if (__isset.success) { + if(!__first) { __sb.Append(", "); } + __first = false; + __sb.Append("Success: "); + __sb.Append(Success); + } + __sb.Append(")"); + return __sb.ToString(); + } + + } + +} diff --git a/rpc/TSInsertRecordReq.cs b/rpc/TSInsertRecordReq.cs new file mode 100644 index 0000000..19e2f17 --- /dev/null +++ b/rpc/TSInsertRecordReq.cs @@ -0,0 +1,216 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertRecordReq : TBase +{ + + public long SessionId { get; set; } + + public string DeviceId { get; set; } + + public List Measurements { get; set; } + + public byte[] Values { get; set; } + + public long Timestamp { get; set; } + + public TSInsertRecordReq() { + } + + public TSInsertRecordReq(long sessionId, string deviceId, List measurements, byte[] values, long timestamp) : this() { + this.SessionId = sessionId; + this.DeviceId = deviceId; + this.Measurements = measurements; + this.Values = values; + this.Timestamp = timestamp; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceId = false; + bool isset_measurements = false; + bool isset_values = false; + bool isset_timestamp = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + DeviceId = iprot.ReadString(); + isset_deviceId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + Measurements = new List(); + TList _list51 = iprot.ReadListBegin(); + for( int _i52 = 0; _i52 < _list51.Count; ++_i52) + { + string _elem53; + _elem53 = iprot.ReadString(); + Measurements.Add(_elem53); + } + iprot.ReadListEnd(); + } + isset_measurements = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.String) { + Values = iprot.ReadBinary(); + isset_values = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.I64) { + Timestamp = iprot.ReadI64(); + isset_timestamp = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + if (!isset_measurements) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + if (!isset_values) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + if (!isset_timestamp) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamp not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertRecordReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceId == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(DeviceId); + oprot.WriteFieldEnd(); + if (Measurements == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Measurements.Count)); + foreach (string _iter54 in Measurements) + { + oprot.WriteString(_iter54); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Values == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + field.Name = "values"; + field.Type = TType.String; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteBinary(Values); + oprot.WriteFieldEnd(); + field.Name = "timestamp"; + field.Type = TType.I64; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteI64(Timestamp); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertRecordReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceId: "); + __sb.Append(DeviceId); + __sb.Append(", Measurements: "); + __sb.Append(Measurements); + __sb.Append(", Values: "); + __sb.Append(Values); + __sb.Append(", Timestamp: "); + __sb.Append(Timestamp); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSInsertRecordsOfOneDeviceReq.cs b/rpc/TSInsertRecordsOfOneDeviceReq.cs new file mode 100644 index 0000000..fa20f2c --- /dev/null +++ b/rpc/TSInsertRecordsOfOneDeviceReq.cs @@ -0,0 +1,269 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertRecordsOfOneDeviceReq : TBase +{ + + public long SessionId { get; set; } + + public string DeviceId { get; set; } + + public List> MeasurementsList { get; set; } + + public List ValuesList { get; set; } + + public List Timestamps { get; set; } + + public TSInsertRecordsOfOneDeviceReq() { + } + + public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List> measurementsList, List valuesList, List timestamps) : this() { + this.SessionId = sessionId; + this.DeviceId = deviceId; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceId = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + DeviceId = iprot.ReadString(); + isset_deviceId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + MeasurementsList = new List>(); + TList _list123 = iprot.ReadListBegin(); + for( int _i124 = 0; _i124 < _list123.Count; ++_i124) + { + List _elem125; + { + _elem125 = new List(); + TList _list126 = iprot.ReadListBegin(); + for( int _i127 = 0; _i127 < _list126.Count; ++_i127) + { + string _elem128; + _elem128 = iprot.ReadString(); + _elem125.Add(_elem128); + } + iprot.ReadListEnd(); + } + MeasurementsList.Add(_elem125); + } + iprot.ReadListEnd(); + } + isset_measurementsList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.List) { + { + ValuesList = new List(); + TList _list129 = iprot.ReadListBegin(); + for( int _i130 = 0; _i130 < _list129.Count; ++_i130) + { + byte[] _elem131; + _elem131 = iprot.ReadBinary(); + ValuesList.Add(_elem131); + } + iprot.ReadListEnd(); + } + isset_valuesList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.List) { + { + Timestamps = new List(); + TList _list132 = iprot.ReadListBegin(); + for( int _i133 = 0; _i133 < _list132.Count; ++_i133) + { + long _elem134; + _elem134 = iprot.ReadI64(); + Timestamps.Add(_elem134); + } + iprot.ReadListEnd(); + } + isset_timestamps = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + if (!isset_measurementsList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + if (!isset_valuesList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + if (!isset_timestamps) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertRecordsOfOneDeviceReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceId == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(DeviceId); + oprot.WriteFieldEnd(); + if (MeasurementsList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); + foreach (List _iter135 in MeasurementsList) + { + { + oprot.WriteListBegin(new TList(TType.String, _iter135.Count)); + foreach (string _iter136 in _iter135) + { + oprot.WriteString(_iter136); + } + oprot.WriteListEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (ValuesList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, ValuesList.Count)); + foreach (byte[] _iter137 in ValuesList) + { + oprot.WriteBinary(_iter137); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Timestamps == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I64, Timestamps.Count)); + foreach (long _iter138 in Timestamps) + { + oprot.WriteI64(_iter138); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceId: "); + __sb.Append(DeviceId); + __sb.Append(", MeasurementsList: "); + __sb.Append(MeasurementsList); + __sb.Append(", ValuesList: "); + __sb.Append(ValuesList); + __sb.Append(", Timestamps: "); + __sb.Append(Timestamps); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSInsertRecordsReq.cs b/rpc/TSInsertRecordsReq.cs new file mode 100644 index 0000000..dfb1e93 --- /dev/null +++ b/rpc/TSInsertRecordsReq.cs @@ -0,0 +1,286 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertRecordsReq : TBase +{ + + public long SessionId { get; set; } + + public List DeviceIds { get; set; } + + public List> MeasurementsList { get; set; } + + public List ValuesList { get; set; } + + public List Timestamps { get; set; } + + public TSInsertRecordsReq() { + } + + public TSInsertRecordsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestamps) : this() { + this.SessionId = sessionId; + this.DeviceIds = deviceIds; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceIds = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + DeviceIds = new List(); + TList _list103 = iprot.ReadListBegin(); + for( int _i104 = 0; _i104 < _list103.Count; ++_i104) + { + string _elem105; + _elem105 = iprot.ReadString(); + DeviceIds.Add(_elem105); + } + iprot.ReadListEnd(); + } + isset_deviceIds = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + MeasurementsList = new List>(); + TList _list106 = iprot.ReadListBegin(); + for( int _i107 = 0; _i107 < _list106.Count; ++_i107) + { + List _elem108; + { + _elem108 = new List(); + TList _list109 = iprot.ReadListBegin(); + for( int _i110 = 0; _i110 < _list109.Count; ++_i110) + { + string _elem111; + _elem111 = iprot.ReadString(); + _elem108.Add(_elem111); + } + iprot.ReadListEnd(); + } + MeasurementsList.Add(_elem108); + } + iprot.ReadListEnd(); + } + isset_measurementsList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.List) { + { + ValuesList = new List(); + TList _list112 = iprot.ReadListBegin(); + for( int _i113 = 0; _i113 < _list112.Count; ++_i113) + { + byte[] _elem114; + _elem114 = iprot.ReadBinary(); + ValuesList.Add(_elem114); + } + iprot.ReadListEnd(); + } + isset_valuesList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.List) { + { + Timestamps = new List(); + TList _list115 = iprot.ReadListBegin(); + for( int _i116 = 0; _i116 < _list115.Count; ++_i116) + { + long _elem117; + _elem117 = iprot.ReadI64(); + Timestamps.Add(_elem117); + } + iprot.ReadListEnd(); + } + isset_timestamps = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceIds) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + if (!isset_measurementsList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + if (!isset_valuesList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + if (!isset_timestamps) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertRecordsReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceIds == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + field.Name = "deviceIds"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, DeviceIds.Count)); + foreach (string _iter118 in DeviceIds) + { + oprot.WriteString(_iter118); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (MeasurementsList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); + foreach (List _iter119 in MeasurementsList) + { + { + oprot.WriteListBegin(new TList(TType.String, _iter119.Count)); + foreach (string _iter120 in _iter119) + { + oprot.WriteString(_iter120); + } + oprot.WriteListEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (ValuesList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, ValuesList.Count)); + foreach (byte[] _iter121 in ValuesList) + { + oprot.WriteBinary(_iter121); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Timestamps == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I64, Timestamps.Count)); + foreach (long _iter122 in Timestamps) + { + oprot.WriteI64(_iter122); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertRecordsReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceIds: "); + __sb.Append(DeviceIds); + __sb.Append(", MeasurementsList: "); + __sb.Append(MeasurementsList); + __sb.Append(", ValuesList: "); + __sb.Append(ValuesList); + __sb.Append(", Timestamps: "); + __sb.Append(Timestamps); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSInsertStringRecordReq.cs b/rpc/TSInsertStringRecordReq.cs new file mode 100644 index 0000000..dcf935a --- /dev/null +++ b/rpc/TSInsertStringRecordReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertStringRecordReq : TBase +{ + + public long SessionId { get; set; } + + public string DeviceId { get; set; } + + public List Measurements { get; set; } + + public List Values { get; set; } + + public long Timestamp { get; set; } + + public TSInsertStringRecordReq() { + } + + public TSInsertStringRecordReq(long sessionId, string deviceId, List measurements, List values, long timestamp) : this() { + this.SessionId = sessionId; + this.DeviceId = deviceId; + this.Measurements = measurements; + this.Values = values; + this.Timestamp = timestamp; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceId = false; + bool isset_measurements = false; + bool isset_values = false; + bool isset_timestamp = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + DeviceId = iprot.ReadString(); + isset_deviceId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + Measurements = new List(); + TList _list55 = iprot.ReadListBegin(); + for( int _i56 = 0; _i56 < _list55.Count; ++_i56) + { + string _elem57; + _elem57 = iprot.ReadString(); + Measurements.Add(_elem57); + } + iprot.ReadListEnd(); + } + isset_measurements = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.List) { + { + Values = new List(); + TList _list58 = iprot.ReadListBegin(); + for( int _i59 = 0; _i59 < _list58.Count; ++_i59) + { + string _elem60; + _elem60 = iprot.ReadString(); + Values.Add(_elem60); + } + iprot.ReadListEnd(); + } + isset_values = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.I64) { + Timestamp = iprot.ReadI64(); + isset_timestamp = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + if (!isset_measurements) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + if (!isset_values) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + if (!isset_timestamp) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamp not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertStringRecordReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceId == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(DeviceId); + oprot.WriteFieldEnd(); + if (Measurements == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Measurements.Count)); + foreach (string _iter61 in Measurements) + { + oprot.WriteString(_iter61); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Values == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + field.Name = "values"; + field.Type = TType.List; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Values.Count)); + foreach (string _iter62 in Values) + { + oprot.WriteString(_iter62); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + field.Name = "timestamp"; + field.Type = TType.I64; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteI64(Timestamp); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertStringRecordReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceId: "); + __sb.Append(DeviceId); + __sb.Append(", Measurements: "); + __sb.Append(Measurements); + __sb.Append(", Values: "); + __sb.Append(Values); + __sb.Append(", Timestamp: "); + __sb.Append(Timestamp); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSInsertStringRecordsReq.cs b/rpc/TSInsertStringRecordsReq.cs new file mode 100644 index 0000000..93a7c55 --- /dev/null +++ b/rpc/TSInsertStringRecordsReq.cs @@ -0,0 +1,303 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertStringRecordsReq : TBase +{ + + public long SessionId { get; set; } + + public List DeviceIds { get; set; } + + public List> MeasurementsList { get; set; } + + public List> ValuesList { get; set; } + + public List Timestamps { get; set; } + + public TSInsertStringRecordsReq() { + } + + public TSInsertStringRecordsReq(long sessionId, List deviceIds, List> measurementsList, List> valuesList, List timestamps) : this() { + this.SessionId = sessionId; + this.DeviceIds = deviceIds; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceIds = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + DeviceIds = new List(); + TList _list139 = iprot.ReadListBegin(); + for( int _i140 = 0; _i140 < _list139.Count; ++_i140) + { + string _elem141; + _elem141 = iprot.ReadString(); + DeviceIds.Add(_elem141); + } + iprot.ReadListEnd(); + } + isset_deviceIds = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + MeasurementsList = new List>(); + TList _list142 = iprot.ReadListBegin(); + for( int _i143 = 0; _i143 < _list142.Count; ++_i143) + { + List _elem144; + { + _elem144 = new List(); + TList _list145 = iprot.ReadListBegin(); + for( int _i146 = 0; _i146 < _list145.Count; ++_i146) + { + string _elem147; + _elem147 = iprot.ReadString(); + _elem144.Add(_elem147); + } + iprot.ReadListEnd(); + } + MeasurementsList.Add(_elem144); + } + iprot.ReadListEnd(); + } + isset_measurementsList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.List) { + { + ValuesList = new List>(); + TList _list148 = iprot.ReadListBegin(); + for( int _i149 = 0; _i149 < _list148.Count; ++_i149) + { + List _elem150; + { + _elem150 = new List(); + TList _list151 = iprot.ReadListBegin(); + for( int _i152 = 0; _i152 < _list151.Count; ++_i152) + { + string _elem153; + _elem153 = iprot.ReadString(); + _elem150.Add(_elem153); + } + iprot.ReadListEnd(); + } + ValuesList.Add(_elem150); + } + iprot.ReadListEnd(); + } + isset_valuesList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.List) { + { + Timestamps = new List(); + TList _list154 = iprot.ReadListBegin(); + for( int _i155 = 0; _i155 < _list154.Count; ++_i155) + { + long _elem156; + _elem156 = iprot.ReadI64(); + Timestamps.Add(_elem156); + } + iprot.ReadListEnd(); + } + isset_timestamps = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceIds) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + if (!isset_measurementsList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + if (!isset_valuesList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + if (!isset_timestamps) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertStringRecordsReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceIds == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + field.Name = "deviceIds"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, DeviceIds.Count)); + foreach (string _iter157 in DeviceIds) + { + oprot.WriteString(_iter157); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (MeasurementsList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); + foreach (List _iter158 in MeasurementsList) + { + { + oprot.WriteListBegin(new TList(TType.String, _iter158.Count)); + foreach (string _iter159 in _iter158) + { + oprot.WriteString(_iter159); + } + oprot.WriteListEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (ValuesList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.List, ValuesList.Count)); + foreach (List _iter160 in ValuesList) + { + { + oprot.WriteListBegin(new TList(TType.String, _iter160.Count)); + foreach (string _iter161 in _iter160) + { + oprot.WriteString(_iter161); + } + oprot.WriteListEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Timestamps == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I64, Timestamps.Count)); + foreach (long _iter162 in Timestamps) + { + oprot.WriteI64(_iter162); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertStringRecordsReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceIds: "); + __sb.Append(DeviceIds); + __sb.Append(", MeasurementsList: "); + __sb.Append(MeasurementsList); + __sb.Append(", ValuesList: "); + __sb.Append(ValuesList); + __sb.Append(", Timestamps: "); + __sb.Append(Timestamps); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSInsertTabletReq.cs b/rpc/TSInsertTabletReq.cs new file mode 100644 index 0000000..de8fab9 --- /dev/null +++ b/rpc/TSInsertTabletReq.cs @@ -0,0 +1,281 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertTabletReq : TBase +{ + + public long SessionId { get; set; } + + public string DeviceId { get; set; } + + public List Measurements { get; set; } + + public byte[] Values { get; set; } + + public byte[] Timestamps { get; set; } + + public List Types { get; set; } + + public int Size { get; set; } + + public TSInsertTabletReq() { + } + + public TSInsertTabletReq(long sessionId, string deviceId, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() { + this.SessionId = sessionId; + this.DeviceId = deviceId; + this.Measurements = measurements; + this.Values = values; + this.Timestamps = timestamps; + this.Types = types; + this.Size = size; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceId = false; + bool isset_measurements = false; + bool isset_values = false; + bool isset_timestamps = false; + bool isset_types = false; + bool isset_size = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + DeviceId = iprot.ReadString(); + isset_deviceId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + Measurements = new List(); + TList _list63 = iprot.ReadListBegin(); + for( int _i64 = 0; _i64 < _list63.Count; ++_i64) + { + string _elem65; + _elem65 = iprot.ReadString(); + Measurements.Add(_elem65); + } + iprot.ReadListEnd(); + } + isset_measurements = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.String) { + Values = iprot.ReadBinary(); + isset_values = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.String) { + Timestamps = iprot.ReadBinary(); + isset_timestamps = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.List) { + { + Types = new List(); + TList _list66 = iprot.ReadListBegin(); + for( int _i67 = 0; _i67 < _list66.Count; ++_i67) + { + int _elem68; + _elem68 = iprot.ReadI32(); + Types.Add(_elem68); + } + iprot.ReadListEnd(); + } + isset_types = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 7: + if (field.Type == TType.I32) { + Size = iprot.ReadI32(); + isset_size = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + if (!isset_measurements) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + if (!isset_values) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + if (!isset_timestamps) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + if (!isset_types) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Types not set"); + if (!isset_size) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Size not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertTabletReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceId == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(DeviceId); + oprot.WriteFieldEnd(); + if (Measurements == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Measurements.Count)); + foreach (string _iter69 in Measurements) + { + oprot.WriteString(_iter69); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (Values == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + field.Name = "values"; + field.Type = TType.String; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteBinary(Values); + oprot.WriteFieldEnd(); + if (Timestamps == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + field.Name = "timestamps"; + field.Type = TType.String; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteBinary(Timestamps); + oprot.WriteFieldEnd(); + if (Types == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Types not set"); + field.Name = "types"; + field.Type = TType.List; + field.ID = 6; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I32, Types.Count)); + foreach (int _iter70 in Types) + { + oprot.WriteI32(_iter70); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + field.Name = "size"; + field.Type = TType.I32; + field.ID = 7; + oprot.WriteFieldBegin(field); + oprot.WriteI32(Size); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertTabletReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceId: "); + __sb.Append(DeviceId); + __sb.Append(", Measurements: "); + __sb.Append(Measurements); + __sb.Append(", Values: "); + __sb.Append(Values); + __sb.Append(", Timestamps: "); + __sb.Append(Timestamps); + __sb.Append(", Types: "); + __sb.Append(Types); + __sb.Append(", Size: "); + __sb.Append(Size); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSInsertTabletsReq.cs b/rpc/TSInsertTabletsReq.cs new file mode 100644 index 0000000..90d5ef6 --- /dev/null +++ b/rpc/TSInsertTabletsReq.cs @@ -0,0 +1,385 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSInsertTabletsReq : TBase +{ + + public long SessionId { get; set; } + + public List DeviceIds { get; set; } + + public List> MeasurementsList { get; set; } + + public List ValuesList { get; set; } + + public List TimestampsList { get; set; } + + public List> TypesList { get; set; } + + public List SizeList { get; set; } + + public TSInsertTabletsReq() { + } + + public TSInsertTabletsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() { + this.SessionId = sessionId; + this.DeviceIds = deviceIds; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.TimestampsList = timestampsList; + this.TypesList = typesList; + this.SizeList = sizeList; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_deviceIds = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestampsList = false; + bool isset_typesList = false; + bool isset_sizeList = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + DeviceIds = new List(); + TList _list71 = iprot.ReadListBegin(); + for( int _i72 = 0; _i72 < _list71.Count; ++_i72) + { + string _elem73; + _elem73 = iprot.ReadString(); + DeviceIds.Add(_elem73); + } + iprot.ReadListEnd(); + } + isset_deviceIds = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + MeasurementsList = new List>(); + TList _list74 = iprot.ReadListBegin(); + for( int _i75 = 0; _i75 < _list74.Count; ++_i75) + { + List _elem76; + { + _elem76 = new List(); + TList _list77 = iprot.ReadListBegin(); + for( int _i78 = 0; _i78 < _list77.Count; ++_i78) + { + string _elem79; + _elem79 = iprot.ReadString(); + _elem76.Add(_elem79); + } + iprot.ReadListEnd(); + } + MeasurementsList.Add(_elem76); + } + iprot.ReadListEnd(); + } + isset_measurementsList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.List) { + { + ValuesList = new List(); + TList _list80 = iprot.ReadListBegin(); + for( int _i81 = 0; _i81 < _list80.Count; ++_i81) + { + byte[] _elem82; + _elem82 = iprot.ReadBinary(); + ValuesList.Add(_elem82); + } + iprot.ReadListEnd(); + } + isset_valuesList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.List) { + { + TimestampsList = new List(); + TList _list83 = iprot.ReadListBegin(); + for( int _i84 = 0; _i84 < _list83.Count; ++_i84) + { + byte[] _elem85; + _elem85 = iprot.ReadBinary(); + TimestampsList.Add(_elem85); + } + iprot.ReadListEnd(); + } + isset_timestampsList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.List) { + { + TypesList = new List>(); + TList _list86 = iprot.ReadListBegin(); + for( int _i87 = 0; _i87 < _list86.Count; ++_i87) + { + List _elem88; + { + _elem88 = new List(); + TList _list89 = iprot.ReadListBegin(); + for( int _i90 = 0; _i90 < _list89.Count; ++_i90) + { + int _elem91; + _elem91 = iprot.ReadI32(); + _elem88.Add(_elem91); + } + iprot.ReadListEnd(); + } + TypesList.Add(_elem88); + } + iprot.ReadListEnd(); + } + isset_typesList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 7: + if (field.Type == TType.List) { + { + SizeList = new List(); + TList _list92 = iprot.ReadListBegin(); + for( int _i93 = 0; _i93 < _list92.Count; ++_i93) + { + int _elem94; + _elem94 = iprot.ReadI32(); + SizeList.Add(_elem94); + } + iprot.ReadListEnd(); + } + isset_sizeList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_deviceIds) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + if (!isset_measurementsList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + if (!isset_valuesList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + if (!isset_timestampsList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampsList not set"); + if (!isset_typesList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TypesList not set"); + if (!isset_sizeList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SizeList not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSInsertTabletsReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (DeviceIds == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + field.Name = "deviceIds"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, DeviceIds.Count)); + foreach (string _iter95 in DeviceIds) + { + oprot.WriteString(_iter95); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (MeasurementsList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); + foreach (List _iter96 in MeasurementsList) + { + { + oprot.WriteListBegin(new TList(TType.String, _iter96.Count)); + foreach (string _iter97 in _iter96) + { + oprot.WriteString(_iter97); + } + oprot.WriteListEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (ValuesList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, ValuesList.Count)); + foreach (byte[] _iter98 in ValuesList) + { + oprot.WriteBinary(_iter98); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (TimestampsList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampsList not set"); + field.Name = "timestampsList"; + field.Type = TType.List; + field.ID = 5; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, TimestampsList.Count)); + foreach (byte[] _iter99 in TimestampsList) + { + oprot.WriteBinary(_iter99); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (TypesList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TypesList not set"); + field.Name = "typesList"; + field.Type = TType.List; + field.ID = 6; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.List, TypesList.Count)); + foreach (List _iter100 in TypesList) + { + { + oprot.WriteListBegin(new TList(TType.I32, _iter100.Count)); + foreach (int _iter101 in _iter100) + { + oprot.WriteI32(_iter101); + } + oprot.WriteListEnd(); + } + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (SizeList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SizeList not set"); + field.Name = "sizeList"; + field.Type = TType.List; + field.ID = 7; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.I32, SizeList.Count)); + foreach (int _iter102 in SizeList) + { + oprot.WriteI32(_iter102); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSInsertTabletsReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", DeviceIds: "); + __sb.Append(DeviceIds); + __sb.Append(", MeasurementsList: "); + __sb.Append(MeasurementsList); + __sb.Append(", ValuesList: "); + __sb.Append(ValuesList); + __sb.Append(", TimestampsList: "); + __sb.Append(TimestampsList); + __sb.Append(", TypesList: "); + __sb.Append(TypesList); + __sb.Append(", SizeList: "); + __sb.Append(SizeList); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSOpenSessionReq.cs b/rpc/TSOpenSessionReq.cs new file mode 100644 index 0000000..81042f7 --- /dev/null +++ b/rpc/TSOpenSessionReq.cs @@ -0,0 +1,264 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSOpenSessionReq : TBase +{ + private string _username; + private string _password; + private Dictionary _configuration; + + /// + /// + /// + /// + public TSProtocolVersion Client_protocol { get; set; } + + public string ZoneId { get; set; } + + public string Username + { + get + { + return _username; + } + set + { + __isset.username = true; + this._username = value; + } + } + + public string Password + { + get + { + return _password; + } + set + { + __isset.password = true; + this._password = value; + } + } + + public Dictionary Configuration + { + get + { + return _configuration; + } + set + { + __isset.configuration = true; + this._configuration = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool username; + public bool password; + public bool configuration; + } + + public TSOpenSessionReq() { + this.Client_protocol = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; + } + + public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this() { + this.Client_protocol = client_protocol; + this.ZoneId = zoneId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_client_protocol = false; + bool isset_zoneId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) { + Client_protocol = (TSProtocolVersion)iprot.ReadI32(); + isset_client_protocol = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + ZoneId = iprot.ReadString(); + isset_zoneId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.String) { + Username = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.String) { + Password = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.Map) { + { + Configuration = new Dictionary(); + TMap _map38 = iprot.ReadMapBegin(); + for( int _i39 = 0; _i39 < _map38.Count; ++_i39) + { + string _key40; + string _val41; + _key40 = iprot.ReadString(); + _val41 = iprot.ReadString(); + Configuration[_key40] = _val41; + } + iprot.ReadMapEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_client_protocol) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Client_protocol not set"); + if (!isset_zoneId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ZoneId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSOpenSessionReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "client_protocol"; + field.Type = TType.I32; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI32((int)Client_protocol); + oprot.WriteFieldEnd(); + if (ZoneId == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ZoneId not set"); + field.Name = "zoneId"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(ZoneId); + oprot.WriteFieldEnd(); + if (Username != null && __isset.username) { + field.Name = "username"; + field.Type = TType.String; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteString(Username); + oprot.WriteFieldEnd(); + } + if (Password != null && __isset.password) { + field.Name = "password"; + field.Type = TType.String; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteString(Password); + oprot.WriteFieldEnd(); + } + if (Configuration != null && __isset.configuration) { + field.Name = "configuration"; + field.Type = TType.Map; + field.ID = 5; + oprot.WriteFieldBegin(field); + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, Configuration.Count)); + foreach (string _iter42 in Configuration.Keys) + { + oprot.WriteString(_iter42); + oprot.WriteString(Configuration[_iter42]); + } + oprot.WriteMapEnd(); + } + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSOpenSessionReq("); + __sb.Append(", Client_protocol: "); + __sb.Append(Client_protocol); + __sb.Append(", ZoneId: "); + __sb.Append(ZoneId); + if (Username != null && __isset.username) { + __sb.Append(", Username: "); + __sb.Append(Username); + } + if (Password != null && __isset.password) { + __sb.Append(", Password: "); + __sb.Append(Password); + } + if (Configuration != null && __isset.configuration) { + __sb.Append(", Configuration: "); + __sb.Append(Configuration); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSOpenSessionResp.cs b/rpc/TSOpenSessionResp.cs new file mode 100644 index 0000000..3b93a03 --- /dev/null +++ b/rpc/TSOpenSessionResp.cs @@ -0,0 +1,231 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSOpenSessionResp : TBase +{ + private long _sessionId; + private Dictionary _configuration; + + public TSStatus Status { get; set; } + + /// + /// + /// + /// + public TSProtocolVersion ServerProtocolVersion { get; set; } + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public Dictionary Configuration + { + get + { + return _configuration; + } + set + { + __isset.configuration = true; + this._configuration = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool sessionId; + public bool configuration; + } + + public TSOpenSessionResp() { + this.ServerProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V1; + } + + public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersion) : this() { + this.Status = status; + this.ServerProtocolVersion = serverProtocolVersion; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_serverProtocolVersion = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { + Status = new TSStatus(); + Status.Read(iprot); + isset_status = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.I32) { + ServerProtocolVersion = (TSProtocolVersion)iprot.ReadI32(); + isset_serverProtocolVersion = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.Map) { + { + Configuration = new Dictionary(); + TMap _map33 = iprot.ReadMapBegin(); + for( int _i34 = 0; _i34 < _map33.Count; ++_i34) + { + string _key35; + string _val36; + _key35 = iprot.ReadString(); + _val36 = iprot.ReadString(); + Configuration[_key35] = _val36; + } + iprot.ReadMapEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_status) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + if (!isset_serverProtocolVersion) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ServerProtocolVersion not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSOpenSessionResp"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Status == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + oprot.WriteFieldBegin(field); + Status.Write(oprot); + oprot.WriteFieldEnd(); + field.Name = "serverProtocolVersion"; + field.Type = TType.I32; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteI32((int)ServerProtocolVersion); + oprot.WriteFieldEnd(); + if (__isset.sessionId) { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + } + if (Configuration != null && __isset.configuration) { + field.Name = "configuration"; + field.Type = TType.Map; + field.ID = 4; + oprot.WriteFieldBegin(field); + { + oprot.WriteMapBegin(new TMap(TType.String, TType.String, Configuration.Count)); + foreach (string _iter37 in Configuration.Keys) + { + oprot.WriteString(_iter37); + oprot.WriteString(Configuration[_iter37]); + } + oprot.WriteMapEnd(); + } + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSOpenSessionResp("); + __sb.Append(", Status: "); + __sb.Append(Status== null ? "" : Status.ToString()); + __sb.Append(", ServerProtocolVersion: "); + __sb.Append(ServerProtocolVersion); + if (__isset.sessionId) { + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + } + if (Configuration != null && __isset.configuration) { + __sb.Append(", Configuration: "); + __sb.Append(Configuration); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSProtocolVersion.cs b/rpc/TSProtocolVersion.cs new file mode 100644 index 0000000..73480ea --- /dev/null +++ b/rpc/TSProtocolVersion.cs @@ -0,0 +1,13 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ + +public enum TSProtocolVersion +{ + IOTDB_SERVICE_PROTOCOL_V1 = 0, + IOTDB_SERVICE_PROTOCOL_V2 = 1, + IOTDB_SERVICE_PROTOCOL_V3 = 2, +} diff --git a/rpc/TSQueryDataSet.cs b/rpc/TSQueryDataSet.cs new file mode 100644 index 0000000..1bc12bf --- /dev/null +++ b/rpc/TSQueryDataSet.cs @@ -0,0 +1,189 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSQueryDataSet : TBase +{ + + public byte[] Time { get; set; } + + public List ValueList { get; set; } + + public List BitmapList { get; set; } + + public TSQueryDataSet() { + } + + public TSQueryDataSet(byte[] time, List valueList, List bitmapList) : this() { + this.Time = time; + this.ValueList = valueList; + this.BitmapList = bitmapList; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_time = false; + bool isset_valueList = false; + bool isset_bitmapList = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.String) { + Time = iprot.ReadBinary(); + isset_time = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + ValueList = new List(); + TList _list4 = iprot.ReadListBegin(); + for( int _i5 = 0; _i5 < _list4.Count; ++_i5) + { + byte[] _elem6; + _elem6 = iprot.ReadBinary(); + ValueList.Add(_elem6); + } + iprot.ReadListEnd(); + } + isset_valueList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + BitmapList = new List(); + TList _list7 = iprot.ReadListBegin(); + for( int _i8 = 0; _i8 < _list7.Count; ++_i8) + { + byte[] _elem9; + _elem9 = iprot.ReadBinary(); + BitmapList.Add(_elem9); + } + iprot.ReadListEnd(); + } + isset_bitmapList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_time) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Time not set"); + if (!isset_valueList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); + if (!isset_bitmapList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field BitmapList not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSQueryDataSet"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (Time == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Time not set"); + field.Name = "time"; + field.Type = TType.String; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteBinary(Time); + oprot.WriteFieldEnd(); + if (ValueList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); + field.Name = "valueList"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, ValueList.Count)); + foreach (byte[] _iter10 in ValueList) + { + oprot.WriteBinary(_iter10); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (BitmapList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field BitmapList not set"); + field.Name = "bitmapList"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, BitmapList.Count)); + foreach (byte[] _iter11 in BitmapList) + { + oprot.WriteBinary(_iter11); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSQueryDataSet("); + __sb.Append(", Time: "); + __sb.Append(Time); + __sb.Append(", ValueList: "); + __sb.Append(ValueList); + __sb.Append(", BitmapList: "); + __sb.Append(BitmapList); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSQueryNonAlignDataSet.cs b/rpc/TSQueryNonAlignDataSet.cs new file mode 100644 index 0000000..b40c7f7 --- /dev/null +++ b/rpc/TSQueryNonAlignDataSet.cs @@ -0,0 +1,165 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSQueryNonAlignDataSet : TBase +{ + + public List TimeList { get; set; } + + public List ValueList { get; set; } + + public TSQueryNonAlignDataSet() { + } + + public TSQueryNonAlignDataSet(List timeList, List valueList) : this() { + this.TimeList = timeList; + this.ValueList = valueList; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_timeList = false; + bool isset_valueList = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.List) { + { + TimeList = new List(); + TList _list12 = iprot.ReadListBegin(); + for( int _i13 = 0; _i13 < _list12.Count; ++_i13) + { + byte[] _elem14; + _elem14 = iprot.ReadBinary(); + TimeList.Add(_elem14); + } + iprot.ReadListEnd(); + } + isset_timeList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + ValueList = new List(); + TList _list15 = iprot.ReadListBegin(); + for( int _i16 = 0; _i16 < _list15.Count; ++_i16) + { + byte[] _elem17; + _elem17 = iprot.ReadBinary(); + ValueList.Add(_elem17); + } + iprot.ReadListEnd(); + } + isset_valueList = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_timeList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeList not set"); + if (!isset_valueList) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSQueryNonAlignDataSet"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + if (TimeList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeList not set"); + field.Name = "timeList"; + field.Type = TType.List; + field.ID = 1; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, TimeList.Count)); + foreach (byte[] _iter18 in TimeList) + { + oprot.WriteBinary(_iter18); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (ValueList == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); + field.Name = "valueList"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, ValueList.Count)); + foreach (byte[] _iter19 in ValueList) + { + oprot.WriteBinary(_iter19); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSQueryNonAlignDataSet("); + __sb.Append(", TimeList: "); + __sb.Append(TimeList); + __sb.Append(", ValueList: "); + __sb.Append(ValueList); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSRawDataQueryReq.cs b/rpc/TSRawDataQueryReq.cs new file mode 100644 index 0000000..70df250 --- /dev/null +++ b/rpc/TSRawDataQueryReq.cs @@ -0,0 +1,288 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSRawDataQueryReq : TBase +{ + private int _fetchSize; + private bool _enableRedirectQuery; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long StartTime { get; set; } + + public long EndTime { get; set; } + + public long StatementId { get; set; } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool fetchSize; + public bool enableRedirectQuery; + } + + public TSRawDataQueryReq() { + } + + public TSRawDataQueryReq(long sessionId, List paths, long startTime, long endTime, long statementId) : this() { + this.SessionId = sessionId; + this.Paths = paths; + this.StartTime = startTime; + this.EndTime = endTime; + this.StatementId = statementId; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_startTime = false; + bool isset_endTime = false; + bool isset_statementId = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.List) { + { + Paths = new List(); + TList _list182 = iprot.ReadListBegin(); + for( int _i183 = 0; _i183 < _list182.Count; ++_i183) + { + string _elem184; + _elem184 = iprot.ReadString(); + Paths.Add(_elem184); + } + iprot.ReadListEnd(); + } + isset_paths = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.I32) { + FetchSize = iprot.ReadI32(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.I64) { + StartTime = iprot.ReadI64(); + isset_startTime = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 5: + if (field.Type == TType.I64) { + EndTime = iprot.ReadI64(); + isset_endTime = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 6: + if (field.Type == TType.I64) { + StatementId = iprot.ReadI64(); + isset_statementId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 7: + if (field.Type == TType.Bool) { + EnableRedirectQuery = iprot.ReadBool(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_paths) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + if (!isset_startTime) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StartTime not set"); + if (!isset_endTime) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field EndTime not set"); + if (!isset_statementId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StatementId not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSRawDataQueryReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (Paths == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.String, Paths.Count)); + foreach (string _iter185 in Paths) + { + oprot.WriteString(_iter185); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + if (__isset.fetchSize) { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + oprot.WriteFieldBegin(field); + oprot.WriteI32(FetchSize); + oprot.WriteFieldEnd(); + } + field.Name = "startTime"; + field.Type = TType.I64; + field.ID = 4; + oprot.WriteFieldBegin(field); + oprot.WriteI64(StartTime); + oprot.WriteFieldEnd(); + field.Name = "endTime"; + field.Type = TType.I64; + field.ID = 5; + oprot.WriteFieldBegin(field); + oprot.WriteI64(EndTime); + oprot.WriteFieldEnd(); + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 6; + oprot.WriteFieldBegin(field); + oprot.WriteI64(StatementId); + oprot.WriteFieldEnd(); + if (__isset.enableRedirectQuery) { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 7; + oprot.WriteFieldBegin(field); + oprot.WriteBool(EnableRedirectQuery); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSRawDataQueryReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", Paths: "); + __sb.Append(Paths); + if (__isset.fetchSize) { + __sb.Append(", FetchSize: "); + __sb.Append(FetchSize); + } + __sb.Append(", StartTime: "); + __sb.Append(StartTime); + __sb.Append(", EndTime: "); + __sb.Append(EndTime); + __sb.Append(", StatementId: "); + __sb.Append(StatementId); + if (__isset.enableRedirectQuery) { + __sb.Append(", EnableRedirectQuery: "); + __sb.Append(EnableRedirectQuery); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSSetTimeZoneReq.cs b/rpc/TSSetTimeZoneReq.cs new file mode 100644 index 0000000..32a7310 --- /dev/null +++ b/rpc/TSSetTimeZoneReq.cs @@ -0,0 +1,129 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSSetTimeZoneReq : TBase +{ + + public long SessionId { get; set; } + + public string TimeZone { get; set; } + + public TSSetTimeZoneReq() { + } + + public TSSetTimeZoneReq(long sessionId, string timeZone) : this() { + this.SessionId = sessionId; + this.TimeZone = timeZone; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_timeZone = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) { + SessionId = iprot.ReadI64(); + isset_sessionId = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + TimeZone = iprot.ReadString(); + isset_timeZone = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_sessionId) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + if (!isset_timeZone) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSSetTimeZoneReq"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI64(SessionId); + oprot.WriteFieldEnd(); + if (TimeZone == null) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); + field.Name = "timeZone"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(TimeZone); + oprot.WriteFieldEnd(); + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSSetTimeZoneReq("); + __sb.Append(", SessionId: "); + __sb.Append(SessionId); + __sb.Append(", TimeZone: "); + __sb.Append(TimeZone); + __sb.Append(")"); + return __sb.ToString(); + } + +} + diff --git a/rpc/TSStatus.cs b/rpc/TSStatus.cs new file mode 100644 index 0000000..28bb4e8 --- /dev/null +++ b/rpc/TSStatus.cs @@ -0,0 +1,234 @@ +/** + * Autogenerated by Thrift Compiler (0.13.0) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Thrift; +using Thrift.Collections; +using System.Runtime.Serialization; +using Thrift.Protocol; +using Thrift.Transport; + + +#if !SILVERLIGHT +[Serializable] +#endif +public partial class TSStatus : TBase +{ + private string _message; + private List _subStatus; + private EndPoint _redirectNode; + + public int Code { get; set; } + + public string Message + { + get + { + return _message; + } + set + { + __isset.message = true; + this._message = value; + } + } + + public List SubStatus + { + get + { + return _subStatus; + } + set + { + __isset.subStatus = true; + this._subStatus = value; + } + } + + public EndPoint RedirectNode + { + get + { + return _redirectNode; + } + set + { + __isset.redirectNode = true; + this._redirectNode = value; + } + } + + + public Isset __isset; + #if !SILVERLIGHT + [Serializable] + #endif + public struct Isset { + public bool message; + public bool subStatus; + public bool redirectNode; + } + + public TSStatus() { + } + + public TSStatus(int code) : this() { + this.Code = code; + } + + public void Read (TProtocol iprot) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_code = false; + TField field; + iprot.ReadStructBegin(); + while (true) + { + field = iprot.ReadFieldBegin(); + if (field.Type == TType.Stop) { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) { + Code = iprot.ReadI32(); + isset_code = true; + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 2: + if (field.Type == TType.String) { + Message = iprot.ReadString(); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 3: + if (field.Type == TType.List) { + { + SubStatus = new List(); + TList _list0 = iprot.ReadListBegin(); + for( int _i1 = 0; _i1 < _list0.Count; ++_i1) + { + TSStatus _elem2; + _elem2 = new TSStatus(); + _elem2.Read(iprot); + SubStatus.Add(_elem2); + } + iprot.ReadListEnd(); + } + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + case 4: + if (field.Type == TType.Struct) { + RedirectNode = new EndPoint(); + RedirectNode.Read(iprot); + } else { + TProtocolUtil.Skip(iprot, field.Type); + } + break; + default: + TProtocolUtil.Skip(iprot, field.Type); + break; + } + iprot.ReadFieldEnd(); + } + iprot.ReadStructEnd(); + if (!isset_code) + throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Code not set"); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public void Write(TProtocol oprot) { + oprot.IncrementRecursionDepth(); + try + { + TStruct struc = new TStruct("TSStatus"); + oprot.WriteStructBegin(struc); + TField field = new TField(); + field.Name = "code"; + field.Type = TType.I32; + field.ID = 1; + oprot.WriteFieldBegin(field); + oprot.WriteI32(Code); + oprot.WriteFieldEnd(); + if (Message != null && __isset.message) { + field.Name = "message"; + field.Type = TType.String; + field.ID = 2; + oprot.WriteFieldBegin(field); + oprot.WriteString(Message); + oprot.WriteFieldEnd(); + } + if (SubStatus != null && __isset.subStatus) { + field.Name = "subStatus"; + field.Type = TType.List; + field.ID = 3; + oprot.WriteFieldBegin(field); + { + oprot.WriteListBegin(new TList(TType.Struct, SubStatus.Count)); + foreach (TSStatus _iter3 in SubStatus) + { + _iter3.Write(oprot); + } + oprot.WriteListEnd(); + } + oprot.WriteFieldEnd(); + } + if (RedirectNode != null && __isset.redirectNode) { + field.Name = "redirectNode"; + field.Type = TType.Struct; + field.ID = 4; + oprot.WriteFieldBegin(field); + RedirectNode.Write(oprot); + oprot.WriteFieldEnd(); + } + oprot.WriteFieldStop(); + oprot.WriteStructEnd(); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override string ToString() { + StringBuilder __sb = new StringBuilder("TSStatus("); + __sb.Append(", Code: "); + __sb.Append(Code); + if (Message != null && __isset.message) { + __sb.Append(", Message: "); + __sb.Append(Message); + } + if (SubStatus != null && __isset.subStatus) { + __sb.Append(", SubStatus: "); + __sb.Append(SubStatus); + } + if (RedirectNode != null && __isset.redirectNode) { + __sb.Append(", RedirectNode: "); + __sb.Append(RedirectNode== null ? "" : RedirectNode.ToString()); + } + __sb.Append(")"); + return __sb.ToString(); + } + +} + From 2b4db3fca77d3fa29bdfc8ba6a57181d7f268055 Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 1 Apr 2021 21:22:53 +0800 Subject: [PATCH 004/214] update rpc --- .vscode/launch.json | 27 + .vscode/tasks.json | 42 + rpc/EndPoint.cs | 160 +- rpc/ServerProperties.cs | 246 +- rpc/TSCancelOperationReq.cs | 140 +- rpc/TSCloseOperationReq.cs | 194 +- rpc/TSCloseSessionReq.cs | 112 +- rpc/TSCreateMultiTimeseriesReq.cs | 676 +- rpc/TSCreateTimeseriesReq.cs | 472 +- rpc/TSDeleteDataReq.cs | 234 +- rpc/TSExecuteBatchStatementReq.cs | 178 +- rpc/TSExecuteStatementReq.cs | 307 +- rpc/TSExecuteStatementResp.cs | 510 +- rpc/TSFetchMetadataReq.cs | 203 +- rpc/TSFetchMetadataResp.cs | 269 +- rpc/TSFetchResultsReq.cs | 287 +- rpc/TSFetchResultsResp.cs | 270 +- rpc/TSGetOperationStatusReq.cs | 140 +- rpc/TSGetTimeZoneResp.cs | 180 +- rpc/TSIService.cs | 19054 +++++++++++++------------ rpc/TSInsertRecordReq.cs | 302 +- rpc/TSInsertRecordsOfOneDeviceReq.cs | 376 +- rpc/TSInsertRecordsReq.cs | 394 +- rpc/TSInsertStringRecordReq.cs | 320 +- rpc/TSInsertStringRecordsReq.cs | 412 +- rpc/TSInsertTabletReq.cs | 416 +- rpc/TSInsertTabletsReq.cs | 544 +- rpc/TSOpenSessionReq.cs | 305 +- rpc/TSOpenSessionResp.cs | 268 +- rpc/TSProtocolVersion.cs | 5 +- rpc/TSQueryDataSet.cs | 264 +- rpc/TSQueryNonAlignDataSet.cs | 216 +- rpc/TSRawDataQueryReq.cs | 344 +- rpc/TSSetTimeZoneReq.cs | 160 +- rpc/TSStatus.cs | 251 +- rpc/rpc.Extensions.cs | 295 + 36 files changed, 16516 insertions(+), 12057 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 .vscode/tasks.json create mode 100644 rpc/rpc.Extensions.cs diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..fa0a45b --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,27 @@ +{ + "version": "0.2.0", + "configurations": [ + { + // Use IntelliSense to find out which attributes exist for C# debugging + // Use hover for the description of the existing attributes + // For further information visit https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md + "name": ".NET Core Launch (console)", + "type": "coreclr", + "request": "launch", + "preLaunchTask": "build", + // If you have changed target frameworks, make sure to update the program path. + "program": "${workspaceFolder}/bin/Debug/net5.0/iotdb-client-csharp.dll", + "args": [], + "cwd": "${workspaceFolder}", + // For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console + "console": "internalConsole", + "stopAtEntry": false + }, + { + "name": ".NET Core Attach", + "type": "coreclr", + "request": "attach", + "processId": "${command:pickProcess}" + } + ] +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..1305512 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,42 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "command": "dotnet", + "type": "process", + "args": [ + "build", + "${workspaceFolder}/iotdb-client-csharp.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "publish", + "command": "dotnet", + "type": "process", + "args": [ + "publish", + "${workspaceFolder}/iotdb-client-csharp.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "watch", + "command": "dotnet", + "type": "process", + "args": [ + "watch", + "run", + "${workspaceFolder}/iotdb-client-csharp.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary" + ], + "problemMatcher": "$msCompile" + } + ] +} \ No newline at end of file diff --git a/rpc/EndPoint.cs b/rpc/EndPoint.cs index e3589fe..228785d 100644 --- a/rpc/EndPoint.cs +++ b/rpc/EndPoint.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class EndPoint : TBase { @@ -26,15 +36,28 @@ public partial class EndPoint : TBase public int Port { get; set; } - public EndPoint() { + public EndPoint() + { } - public EndPoint(string ip, int port) : this() { + public EndPoint(string ip, int port) : this() + { this.Ip = ip; this.Port = port; } - public void Read (TProtocol iprot) + public EndPoint DeepCopy() + { + var tmp0 = new EndPoint(); + if((Ip != null)) + { + tmp0.Ip = this.Ip; + } + tmp0.Port = this.Port; + return tmp0; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,42 +65,56 @@ public void Read (TProtocol iprot) bool isset_ip = false; bool isset_port = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.String) { - Ip = iprot.ReadString(); + if (field.Type == TType.String) + { + Ip = await iprot.ReadStringAsync(cancellationToken); isset_ip = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.I32) { - Port = iprot.ReadI32(); + if (field.Type == TType.I32) + { + Port = await iprot.ReadI32Async(cancellationToken); isset_port = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_ip) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Ip not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_port) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Port not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -85,29 +122,31 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("EndPoint"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Ip == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Ip not set"); - field.Name = "ip"; - field.Type = TType.String; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteString(Ip); - oprot.WriteFieldEnd(); + var struc = new TStruct("EndPoint"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Ip != null)) + { + field.Name = "ip"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Ip, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } field.Name = "port"; field.Type = TType.I32; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteI32(Port); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Port, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -115,15 +154,38 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("EndPoint("); - __sb.Append(", Ip: "); - __sb.Append(Ip); - __sb.Append(", Port: "); - __sb.Append(Port); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is EndPoint other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Ip, other.Ip) + && System.Object.Equals(Port, other.Port); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Ip != null)) + { + hashcode = (hashcode * 397) + Ip.GetHashCode(); + } + hashcode = (hashcode * 397) + Port.GetHashCode(); + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("EndPoint("); + if((Ip != null)) + { + sb.Append(", Ip: "); + Ip.ToString(sb); + } + sb.Append(", Port: "); + Port.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/ServerProperties.cs b/rpc/ServerProperties.cs index f4d74c0..fcb5984 100644 --- a/rpc/ServerProperties.cs +++ b/rpc/ServerProperties.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class ServerProperties : TBase { @@ -28,16 +38,36 @@ public partial class ServerProperties : TBase public string TimestampPrecision { get; set; } - public ServerProperties() { + public ServerProperties() + { } - public ServerProperties(string version, List supportedTimeAggregationOperations, string timestampPrecision) : this() { + public ServerProperties(string version, List supportedTimeAggregationOperations, string timestampPrecision) : this() + { this.Version = version; this.SupportedTimeAggregationOperations = supportedTimeAggregationOperations; this.TimestampPrecision = timestampPrecision; } - public void Read (TProtocol iprot) + public ServerProperties DeepCopy() + { + var tmp293 = new ServerProperties(); + if((Version != null)) + { + tmp293.Version = this.Version; + } + if((SupportedTimeAggregationOperations != null)) + { + tmp293.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); + } + if((TimestampPrecision != null)) + { + tmp293.TimestampPrecision = this.TimestampPrecision; + } + return tmp293; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -46,62 +76,81 @@ public void Read (TProtocol iprot) bool isset_supportedTimeAggregationOperations = false; bool isset_timestampPrecision = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.String) { - Version = iprot.ReadString(); + if (field.Type == TType.String) + { + Version = await iprot.ReadStringAsync(cancellationToken); isset_version = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - SupportedTimeAggregationOperations = new List(); - TList _list233 = iprot.ReadListBegin(); - for( int _i234 = 0; _i234 < _list233.Count; ++_i234) + TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); + SupportedTimeAggregationOperations = new List(_list294.Count); + for(int _i295 = 0; _i295 < _list294.Count; ++_i295) { - string _elem235; - _elem235 = iprot.ReadString(); - SupportedTimeAggregationOperations.Add(_elem235); + string _elem296; + _elem296 = await iprot.ReadStringAsync(cancellationToken); + SupportedTimeAggregationOperations.Add(_elem296); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_supportedTimeAggregationOperations = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.String) { - TimestampPrecision = iprot.ReadString(); + if (field.Type == TType.String) + { + TimestampPrecision = await iprot.ReadStringAsync(cancellationToken); isset_timestampPrecision = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_version) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Version not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_supportedTimeAggregationOperations) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SupportedTimeAggregationOperations not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestampPrecision) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampPrecision not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -109,46 +158,50 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("ServerProperties"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Version == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Version not set"); - field.Name = "version"; - field.Type = TType.String; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteString(Version); - oprot.WriteFieldEnd(); - if (SupportedTimeAggregationOperations == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SupportedTimeAggregationOperations not set"); - field.Name = "supportedTimeAggregationOperations"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + var struc = new TStruct("ServerProperties"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Version != null)) { - oprot.WriteListBegin(new TList(TType.String, SupportedTimeAggregationOperations.Count)); - foreach (string _iter236 in SupportedTimeAggregationOperations) + field.Name = "version"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Version, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SupportedTimeAggregationOperations != null)) + { + field.Name = "supportedTimeAggregationOperations"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter236); + await oprot.WriteListBeginAsync(new TList(TType.String, SupportedTimeAggregationOperations.Count), cancellationToken); + foreach (string _iter297 in SupportedTimeAggregationOperations) + { + await oprot.WriteStringAsync(_iter297, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TimestampPrecision != null)) + { + field.Name = "timestampPrecision"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TimestampPrecision, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (TimestampPrecision == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampPrecision not set"); - field.Name = "timestampPrecision"; - field.Type = TType.String; - field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteString(TimestampPrecision); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -156,17 +209,54 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("ServerProperties("); - __sb.Append(", Version: "); - __sb.Append(Version); - __sb.Append(", SupportedTimeAggregationOperations: "); - __sb.Append(SupportedTimeAggregationOperations); - __sb.Append(", TimestampPrecision: "); - __sb.Append(TimestampPrecision); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is ServerProperties other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Version, other.Version) + && TCollections.Equals(SupportedTimeAggregationOperations, other.SupportedTimeAggregationOperations) + && System.Object.Equals(TimestampPrecision, other.TimestampPrecision); } + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Version != null)) + { + hashcode = (hashcode * 397) + Version.GetHashCode(); + } + if((SupportedTimeAggregationOperations != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SupportedTimeAggregationOperations); + } + if((TimestampPrecision != null)) + { + hashcode = (hashcode * 397) + TimestampPrecision.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("ServerProperties("); + if((Version != null)) + { + sb.Append(", Version: "); + Version.ToString(sb); + } + if((SupportedTimeAggregationOperations != null)) + { + sb.Append(", SupportedTimeAggregationOperations: "); + SupportedTimeAggregationOperations.ToString(sb); + } + if((TimestampPrecision != null)) + { + sb.Append(", TimestampPrecision: "); + TimestampPrecision.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSCancelOperationReq.cs b/rpc/TSCancelOperationReq.cs index c859255..46f4ec6 100644 --- a/rpc/TSCancelOperationReq.cs +++ b/rpc/TSCancelOperationReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSCancelOperationReq : TBase { @@ -26,15 +36,25 @@ public partial class TSCancelOperationReq : TBase public long QueryId { get; set; } - public TSCancelOperationReq() { + public TSCancelOperationReq() + { } - public TSCancelOperationReq(long sessionId, long queryId) : this() { + public TSCancelOperationReq(long sessionId, long queryId) : this() + { this.SessionId = sessionId; this.QueryId = queryId; } - public void Read (TProtocol iprot) + public TSCancelOperationReq DeepCopy() + { + var tmp69 = new TSCancelOperationReq(); + tmp69.SessionId = this.SessionId; + tmp69.QueryId = this.QueryId; + return tmp69; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,42 +62,56 @@ public void Read (TProtocol iprot) bool isset_sessionId = false; bool isset_queryId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.I64) { - QueryId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); isset_queryId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_queryId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field QueryId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -85,27 +119,28 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSCancelOperationReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSCancelOperationReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "queryId"; field.Type = TType.I64; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteI64(QueryId); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -113,15 +148,32 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSCancelOperationReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", QueryId: "); - __sb.Append(QueryId); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSCancelOperationReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(QueryId, other.QueryId); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSCancelOperationReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + sb.Append(", QueryId: "); + QueryId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSCloseOperationReq.cs b/rpc/TSCloseOperationReq.cs index 426ece2..0e95fc9 100644 --- a/rpc/TSCloseOperationReq.cs +++ b/rpc/TSCloseOperationReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSCloseOperationReq : TBase { private long _queryId; @@ -54,68 +64,100 @@ public long StatementId public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool queryId; public bool statementId; } - public TSCloseOperationReq() { + public TSCloseOperationReq() + { } - public TSCloseOperationReq(long sessionId) : this() { + public TSCloseOperationReq(long sessionId) : this() + { this.SessionId = sessionId; } - public void Read (TProtocol iprot) + public TSCloseOperationReq DeepCopy() + { + var tmp71 = new TSCloseOperationReq(); + tmp71.SessionId = this.SessionId; + if(__isset.queryId) + { + tmp71.QueryId = this.QueryId; + } + tmp71.__isset.queryId = this.__isset.queryId; + if(__isset.statementId) + { + tmp71.StatementId = this.StatementId; + } + tmp71.__isset.statementId = this.__isset.statementId; + return tmp71; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { bool isset_sessionId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.I64) { - QueryId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I64) { - StatementId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -123,37 +165,40 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSCloseOperationReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSCloseOperationReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (__isset.queryId) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.queryId) + { field.Name = "queryId"; field.Type = TType.I64; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteI64(QueryId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (__isset.statementId) { + if(__isset.statementId) + { field.Name = "statementId"; field.Type = TType.I64; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI64(StatementId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -161,21 +206,48 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSCloseOperationReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - if (__isset.queryId) { - __sb.Append(", QueryId: "); - __sb.Append(QueryId); - } - if (__isset.statementId) { - __sb.Append(", StatementId: "); - __sb.Append(StatementId); + public override bool Equals(object that) + { + if (!(that is TSCloseOperationReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && ((__isset.queryId == other.__isset.queryId) && ((!__isset.queryId) || (System.Object.Equals(QueryId, other.QueryId)))) + && ((__isset.statementId == other.__isset.statementId) && ((!__isset.statementId) || (System.Object.Equals(StatementId, other.StatementId)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if(__isset.queryId) + { + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + if(__isset.statementId) + { + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + } } - __sb.Append(")"); - return __sb.ToString(); + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSCloseOperationReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if(__isset.queryId) + { + sb.Append(", QueryId: "); + QueryId.ToString(sb); + } + if(__isset.statementId) + { + sb.Append(", StatementId: "); + StatementId.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSCloseSessionReq.cs b/rpc/TSCloseSessionReq.cs index b058a1d..3b73ab3 100644 --- a/rpc/TSCloseSessionReq.cs +++ b/rpc/TSCloseSessionReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,61 +9,89 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSCloseSessionReq : TBase { public long SessionId { get; set; } - public TSCloseSessionReq() { + public TSCloseSessionReq() + { } - public TSCloseSessionReq(long sessionId) : this() { + public TSCloseSessionReq(long sessionId) : this() + { this.SessionId = sessionId; } - public void Read (TProtocol iprot) + public TSCloseSessionReq DeepCopy() + { + var tmp57 = new TSCloseSessionReq(); + tmp57.SessionId = this.SessionId; + return tmp57; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { bool isset_sessionId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -71,21 +99,22 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSCloseSessionReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSCloseSessionReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -93,13 +122,28 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSCloseSessionReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSCloseSessionReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId); } + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCloseSessionReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSCreateMultiTimeseriesReq.cs b/rpc/TSCreateMultiTimeseriesReq.cs index f6190f9..e833703 100644 --- a/rpc/TSCreateMultiTimeseriesReq.cs +++ b/rpc/TSCreateMultiTimeseriesReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSCreateMultiTimeseriesReq : TBase { private List> _propsList; @@ -90,20 +100,20 @@ public List MeasurementAliasList public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool propsList; public bool tagsList; public bool attributesList; public bool measurementAliasList; } - public TSCreateMultiTimeseriesReq() { + public TSCreateMultiTimeseriesReq() + { } - public TSCreateMultiTimeseriesReq(long sessionId, List paths, List dataTypes, List encodings, List compressors) : this() { + public TSCreateMultiTimeseriesReq(long sessionId, List paths, List dataTypes, List encodings, List compressors) : this() + { this.SessionId = sessionId; this.Paths = paths; this.DataTypes = dataTypes; @@ -111,7 +121,50 @@ public TSCreateMultiTimeseriesReq(long sessionId, List paths, List this.Compressors = compressors; } - public void Read (TProtocol iprot) + public TSCreateMultiTimeseriesReq DeepCopy() + { + var tmp244 = new TSCreateMultiTimeseriesReq(); + tmp244.SessionId = this.SessionId; + if((Paths != null)) + { + tmp244.Paths = this.Paths.DeepCopy(); + } + if((DataTypes != null)) + { + tmp244.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp244.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp244.Compressors = this.Compressors.DeepCopy(); + } + if((PropsList != null) && __isset.propsList) + { + tmp244.PropsList = this.PropsList.DeepCopy(); + } + tmp244.__isset.propsList = this.__isset.propsList; + if((TagsList != null) && __isset.tagsList) + { + tmp244.TagsList = this.TagsList.DeepCopy(); + } + tmp244.__isset.tagsList = this.__isset.tagsList; + if((AttributesList != null) && __isset.attributesList) + { + tmp244.AttributesList = this.AttributesList.DeepCopy(); + } + tmp244.__isset.attributesList = this.__isset.attributesList; + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + tmp244.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); + } + tmp244.__isset.measurementAliasList = this.__isset.measurementAliasList; + return tmp244; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -122,216 +175,257 @@ public void Read (TProtocol iprot) bool isset_encodings = false; bool isset_compressors = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Paths = new List(); - TList _list186 = iprot.ReadListBegin(); - for( int _i187 = 0; _i187 < _list186.Count; ++_i187) + TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list245.Count); + for(int _i246 = 0; _i246 < _list245.Count; ++_i246) { - string _elem188; - _elem188 = iprot.ReadString(); - Paths.Add(_elem188); + string _elem247; + _elem247 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem247); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_paths = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - DataTypes = new List(); - TList _list189 = iprot.ReadListBegin(); - for( int _i190 = 0; _i190 < _list189.Count; ++_i190) + TList _list248 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list248.Count); + for(int _i249 = 0; _i249 < _list248.Count; ++_i249) { - int _elem191; - _elem191 = iprot.ReadI32(); - DataTypes.Add(_elem191); + int _elem250; + _elem250 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem250); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_dataTypes = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Encodings = new List(); - TList _list192 = iprot.ReadListBegin(); - for( int _i193 = 0; _i193 < _list192.Count; ++_i193) + TList _list251 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list251.Count); + for(int _i252 = 0; _i252 < _list251.Count; ++_i252) { - int _elem194; - _elem194 = iprot.ReadI32(); - Encodings.Add(_elem194); + int _elem253; + _elem253 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem253); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_encodings = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Compressors = new List(); - TList _list195 = iprot.ReadListBegin(); - for( int _i196 = 0; _i196 < _list195.Count; ++_i196) + TList _list254 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list254.Count); + for(int _i255 = 0; _i255 < _list254.Count; ++_i255) { - int _elem197; - _elem197 = iprot.ReadI32(); - Compressors.Add(_elem197); + int _elem256; + _elem256 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem256); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_compressors = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - PropsList = new List>(); - TList _list198 = iprot.ReadListBegin(); - for( int _i199 = 0; _i199 < _list198.Count; ++_i199) + TList _list257 = await iprot.ReadListBeginAsync(cancellationToken); + PropsList = new List>(_list257.Count); + for(int _i258 = 0; _i258 < _list257.Count; ++_i258) { - Dictionary _elem200; + Dictionary _elem259; { - _elem200 = new Dictionary(); - TMap _map201 = iprot.ReadMapBegin(); - for( int _i202 = 0; _i202 < _map201.Count; ++_i202) + TMap _map260 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem259 = new Dictionary(_map260.Count); + for(int _i261 = 0; _i261 < _map260.Count; ++_i261) { - string _key203; - string _val204; - _key203 = iprot.ReadString(); - _val204 = iprot.ReadString(); - _elem200[_key203] = _val204; + string _key262; + string _val263; + _key262 = await iprot.ReadStringAsync(cancellationToken); + _val263 = await iprot.ReadStringAsync(cancellationToken); + _elem259[_key262] = _val263; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - PropsList.Add(_elem200); + PropsList.Add(_elem259); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 7: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - TagsList = new List>(); - TList _list205 = iprot.ReadListBegin(); - for( int _i206 = 0; _i206 < _list205.Count; ++_i206) + TList _list264 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list264.Count); + for(int _i265 = 0; _i265 < _list264.Count; ++_i265) { - Dictionary _elem207; + Dictionary _elem266; { - _elem207 = new Dictionary(); - TMap _map208 = iprot.ReadMapBegin(); - for( int _i209 = 0; _i209 < _map208.Count; ++_i209) + TMap _map267 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem266 = new Dictionary(_map267.Count); + for(int _i268 = 0; _i268 < _map267.Count; ++_i268) { - string _key210; - string _val211; - _key210 = iprot.ReadString(); - _val211 = iprot.ReadString(); - _elem207[_key210] = _val211; + string _key269; + string _val270; + _key269 = await iprot.ReadStringAsync(cancellationToken); + _val270 = await iprot.ReadStringAsync(cancellationToken); + _elem266[_key269] = _val270; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - TagsList.Add(_elem207); + TagsList.Add(_elem266); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 8: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - AttributesList = new List>(); - TList _list212 = iprot.ReadListBegin(); - for( int _i213 = 0; _i213 < _list212.Count; ++_i213) + TList _list271 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list271.Count); + for(int _i272 = 0; _i272 < _list271.Count; ++_i272) { - Dictionary _elem214; + Dictionary _elem273; { - _elem214 = new Dictionary(); - TMap _map215 = iprot.ReadMapBegin(); - for( int _i216 = 0; _i216 < _map215.Count; ++_i216) + TMap _map274 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem273 = new Dictionary(_map274.Count); + for(int _i275 = 0; _i275 < _map274.Count; ++_i275) { - string _key217; - string _val218; - _key217 = iprot.ReadString(); - _val218 = iprot.ReadString(); - _elem214[_key217] = _val218; + string _key276; + string _val277; + _key276 = await iprot.ReadStringAsync(cancellationToken); + _val277 = await iprot.ReadStringAsync(cancellationToken); + _elem273[_key276] = _val277; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - AttributesList.Add(_elem214); + AttributesList.Add(_elem273); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 9: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - MeasurementAliasList = new List(); - TList _list219 = iprot.ReadListBegin(); - for( int _i220 = 0; _i220 < _list219.Count; ++_i220) + TList _list278 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAliasList = new List(_list278.Count); + for(int _i279 = 0; _i279 < _list278.Count; ++_i279) { - string _elem221; - _elem221 = iprot.ReadString(); - MeasurementAliasList.Add(_elem221); + string _elem280; + _elem280 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAliasList.Add(_elem280); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_paths) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_dataTypes) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DataTypes not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_encodings) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Encodings not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_compressors) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Compressors not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -339,165 +433,174 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSCreateMultiTimeseriesReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSCreateMultiTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Paths == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) { - oprot.WriteListBegin(new TList(TType.String, Paths.Count)); - foreach (string _iter222 in Paths) + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter222); + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter281 in Paths) + { + await oprot.WriteStringAsync(_iter281, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (DataTypes == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DataTypes not set"); - field.Name = "dataTypes"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + if((DataTypes != null)) { - oprot.WriteListBegin(new TList(TType.I32, DataTypes.Count)); - foreach (int _iter223 in DataTypes) + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI32(_iter223); + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter282 in DataTypes) + { + await oprot.WriteI32Async(_iter282, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Encodings == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Encodings not set"); - field.Name = "encodings"; - field.Type = TType.List; - field.ID = 4; - oprot.WriteFieldBegin(field); + if((Encodings != null)) { - oprot.WriteListBegin(new TList(TType.I32, Encodings.Count)); - foreach (int _iter224 in Encodings) + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI32(_iter224); + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter283 in Encodings) + { + await oprot.WriteI32Async(_iter283, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Compressors == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Compressors not set"); - field.Name = "compressors"; - field.Type = TType.List; - field.ID = 5; - oprot.WriteFieldBegin(field); + if((Compressors != null)) { - oprot.WriteListBegin(new TList(TType.I32, Compressors.Count)); - foreach (int _iter225 in Compressors) + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI32(_iter225); + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter284 in Compressors) + { + await oprot.WriteI32Async(_iter284, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (PropsList != null && __isset.propsList) { + if((PropsList != null) && __isset.propsList) + { field.Name = "propsList"; field.Type = TType.List; field.ID = 6; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.Map, PropsList.Count)); - foreach (Dictionary _iter226 in PropsList) + await oprot.WriteListBeginAsync(new TList(TType.Map, PropsList.Count), cancellationToken); + foreach (Dictionary _iter285 in PropsList) { { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, _iter226.Count)); - foreach (string _iter227 in _iter226.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter285.Count), cancellationToken); + foreach (string _iter286 in _iter285.Keys) { - oprot.WriteString(_iter227); - oprot.WriteString(_iter226[_iter227]); + await oprot.WriteStringAsync(_iter286, cancellationToken); + await oprot.WriteStringAsync(_iter285[_iter286], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (TagsList != null && __isset.tagsList) { + if((TagsList != null) && __isset.tagsList) + { field.Name = "tagsList"; field.Type = TType.List; field.ID = 7; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.Map, TagsList.Count)); - foreach (Dictionary _iter228 in TagsList) + await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); + foreach (Dictionary _iter287 in TagsList) { { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, _iter228.Count)); - foreach (string _iter229 in _iter228.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter287.Count), cancellationToken); + foreach (string _iter288 in _iter287.Keys) { - oprot.WriteString(_iter229); - oprot.WriteString(_iter228[_iter229]); + await oprot.WriteStringAsync(_iter288, cancellationToken); + await oprot.WriteStringAsync(_iter287[_iter288], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (AttributesList != null && __isset.attributesList) { + if((AttributesList != null) && __isset.attributesList) + { field.Name = "attributesList"; field.Type = TType.List; field.ID = 8; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.Map, AttributesList.Count)); - foreach (Dictionary _iter230 in AttributesList) + await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); + foreach (Dictionary _iter289 in AttributesList) { { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, _iter230.Count)); - foreach (string _iter231 in _iter230.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter289.Count), cancellationToken); + foreach (string _iter290 in _iter289.Keys) { - oprot.WriteString(_iter231); - oprot.WriteString(_iter230[_iter231]); + await oprot.WriteStringAsync(_iter290, cancellationToken); + await oprot.WriteStringAsync(_iter289[_iter290], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (MeasurementAliasList != null && __isset.measurementAliasList) { + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { field.Name = "measurementAliasList"; field.Type = TType.List; field.ID = 9; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.String, MeasurementAliasList.Count)); - foreach (string _iter232 in MeasurementAliasList) + await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAliasList.Count), cancellationToken); + foreach (string _iter291 in MeasurementAliasList) { - oprot.WriteString(_iter232); + await oprot.WriteStringAsync(_iter291, cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -505,37 +608,108 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSCreateMultiTimeseriesReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Paths: "); - __sb.Append(Paths); - __sb.Append(", DataTypes: "); - __sb.Append(DataTypes); - __sb.Append(", Encodings: "); - __sb.Append(Encodings); - __sb.Append(", Compressors: "); - __sb.Append(Compressors); - if (PropsList != null && __isset.propsList) { - __sb.Append(", PropsList: "); - __sb.Append(PropsList); + public override bool Equals(object that) + { + if (!(that is TSCreateMultiTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors) + && ((__isset.propsList == other.__isset.propsList) && ((!__isset.propsList) || (TCollections.Equals(PropsList, other.PropsList)))) + && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) + && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))) + && ((__isset.measurementAliasList == other.__isset.measurementAliasList) && ((!__isset.measurementAliasList) || (TCollections.Equals(MeasurementAliasList, other.MeasurementAliasList)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + if((PropsList != null) && __isset.propsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(PropsList); + } + if((TagsList != null) && __isset.tagsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); + } + if((AttributesList != null) && __isset.attributesList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); + } + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAliasList); + } } - if (TagsList != null && __isset.tagsList) { - __sb.Append(", TagsList: "); - __sb.Append(TagsList); + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateMultiTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); } - if (AttributesList != null && __isset.attributesList) { - __sb.Append(", AttributesList: "); - __sb.Append(AttributesList); + if((PropsList != null) && __isset.propsList) + { + sb.Append(", PropsList: "); + PropsList.ToString(sb); + } + if((TagsList != null) && __isset.tagsList) + { + sb.Append(", TagsList: "); + TagsList.ToString(sb); } - if (MeasurementAliasList != null && __isset.measurementAliasList) { - __sb.Append(", MeasurementAliasList: "); - __sb.Append(MeasurementAliasList); + if((AttributesList != null) && __isset.attributesList) + { + sb.Append(", AttributesList: "); + AttributesList.ToString(sb); } - __sb.Append(")"); - return __sb.ToString(); + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + sb.Append(", MeasurementAliasList: "); + MeasurementAliasList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - } diff --git a/rpc/TSCreateTimeseriesReq.cs b/rpc/TSCreateTimeseriesReq.cs index 46f2815..367492b 100644 --- a/rpc/TSCreateTimeseriesReq.cs +++ b/rpc/TSCreateTimeseriesReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSCreateTimeseriesReq : TBase { private Dictionary _props; @@ -90,20 +100,20 @@ public string MeasurementAlias public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool props; public bool tags; public bool attributes; public bool measurementAlias; } - public TSCreateTimeseriesReq() { + public TSCreateTimeseriesReq() + { } - public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int encoding, int compressor) : this() { + public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int encoding, int compressor) : this() + { this.SessionId = sessionId; this.Path = path; this.DataType = dataType; @@ -111,7 +121,41 @@ public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int enco this.Compressor = compressor; } - public void Read (TProtocol iprot) + public TSCreateTimeseriesReq DeepCopy() + { + var tmp221 = new TSCreateTimeseriesReq(); + tmp221.SessionId = this.SessionId; + if((Path != null)) + { + tmp221.Path = this.Path; + } + tmp221.DataType = this.DataType; + tmp221.Encoding = this.Encoding; + tmp221.Compressor = this.Compressor; + if((Props != null) && __isset.props) + { + tmp221.Props = this.Props.DeepCopy(); + } + tmp221.__isset.props = this.__isset.props; + if((Tags != null) && __isset.tags) + { + tmp221.Tags = this.Tags.DeepCopy(); + } + tmp221.__isset.tags = this.__isset.tags; + if((Attributes != null) && __isset.attributes) + { + tmp221.Attributes = this.Attributes.DeepCopy(); + } + tmp221.__isset.attributes = this.__isset.attributes; + if((MeasurementAlias != null) && __isset.measurementAlias) + { + tmp221.MeasurementAlias = this.MeasurementAlias; + } + tmp221.__isset.measurementAlias = this.__isset.measurementAlias; + return tmp221; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -122,136 +166,177 @@ public void Read (TProtocol iprot) bool isset_encoding = false; bool isset_compressor = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - Path = iprot.ReadString(); + if (field.Type == TType.String) + { + Path = await iprot.ReadStringAsync(cancellationToken); isset_path = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I32) { - DataType = iprot.ReadI32(); + if (field.Type == TType.I32) + { + DataType = await iprot.ReadI32Async(cancellationToken); isset_dataType = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.I32) { - Encoding = iprot.ReadI32(); + if (field.Type == TType.I32) + { + Encoding = await iprot.ReadI32Async(cancellationToken); isset_encoding = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.I32) { - Compressor = iprot.ReadI32(); + if (field.Type == TType.I32) + { + Compressor = await iprot.ReadI32Async(cancellationToken); isset_compressor = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.Map) { + if (field.Type == TType.Map) + { { - Props = new Dictionary(); - TMap _map167 = iprot.ReadMapBegin(); - for( int _i168 = 0; _i168 < _map167.Count; ++_i168) + TMap _map222 = await iprot.ReadMapBeginAsync(cancellationToken); + Props = new Dictionary(_map222.Count); + for(int _i223 = 0; _i223 < _map222.Count; ++_i223) { - string _key169; - string _val170; - _key169 = iprot.ReadString(); - _val170 = iprot.ReadString(); - Props[_key169] = _val170; + string _key224; + string _val225; + _key224 = await iprot.ReadStringAsync(cancellationToken); + _val225 = await iprot.ReadStringAsync(cancellationToken); + Props[_key224] = _val225; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 7: - if (field.Type == TType.Map) { + if (field.Type == TType.Map) + { { - Tags = new Dictionary(); - TMap _map171 = iprot.ReadMapBegin(); - for( int _i172 = 0; _i172 < _map171.Count; ++_i172) + TMap _map226 = await iprot.ReadMapBeginAsync(cancellationToken); + Tags = new Dictionary(_map226.Count); + for(int _i227 = 0; _i227 < _map226.Count; ++_i227) { - string _key173; - string _val174; - _key173 = iprot.ReadString(); - _val174 = iprot.ReadString(); - Tags[_key173] = _val174; + string _key228; + string _val229; + _key228 = await iprot.ReadStringAsync(cancellationToken); + _val229 = await iprot.ReadStringAsync(cancellationToken); + Tags[_key228] = _val229; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 8: - if (field.Type == TType.Map) { + if (field.Type == TType.Map) + { { - Attributes = new Dictionary(); - TMap _map175 = iprot.ReadMapBegin(); - for( int _i176 = 0; _i176 < _map175.Count; ++_i176) + TMap _map230 = await iprot.ReadMapBeginAsync(cancellationToken); + Attributes = new Dictionary(_map230.Count); + for(int _i231 = 0; _i231 < _map230.Count; ++_i231) { - string _key177; - string _val178; - _key177 = iprot.ReadString(); - _val178 = iprot.ReadString(); - Attributes[_key177] = _val178; + string _key232; + string _val233; + _key232 = await iprot.ReadStringAsync(cancellationToken); + _val233 = await iprot.ReadStringAsync(cancellationToken); + Attributes[_key232] = _val233; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 9: - if (field.Type == TType.String) { - MeasurementAlias = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + MeasurementAlias = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_path) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Path not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_dataType) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DataType not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_encoding) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Encoding not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_compressor) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Compressor not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -259,103 +344,109 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSCreateTimeseriesReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSCreateTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Path == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Path not set"); - field.Name = "path"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(Path); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Path != null)) + { + field.Name = "path"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Path, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } field.Name = "dataType"; field.Type = TType.I32; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI32(DataType); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(DataType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "encoding"; field.Type = TType.I32; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteI32(Encoding); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Encoding, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "compressor"; field.Type = TType.I32; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteI32(Compressor); - oprot.WriteFieldEnd(); - if (Props != null && __isset.props) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Compressor, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Props != null) && __isset.props) + { field.Name = "props"; field.Type = TType.Map; field.ID = 6; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, Props.Count)); - foreach (string _iter179 in Props.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Props.Count), cancellationToken); + foreach (string _iter234 in Props.Keys) { - oprot.WriteString(_iter179); - oprot.WriteString(Props[_iter179]); + await oprot.WriteStringAsync(_iter234, cancellationToken); + await oprot.WriteStringAsync(Props[_iter234], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (Tags != null && __isset.tags) { + if((Tags != null) && __isset.tags) + { field.Name = "tags"; field.Type = TType.Map; field.ID = 7; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, Tags.Count)); - foreach (string _iter180 in Tags.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Tags.Count), cancellationToken); + foreach (string _iter235 in Tags.Keys) { - oprot.WriteString(_iter180); - oprot.WriteString(Tags[_iter180]); + await oprot.WriteStringAsync(_iter235, cancellationToken); + await oprot.WriteStringAsync(Tags[_iter235], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (Attributes != null && __isset.attributes) { + if((Attributes != null) && __isset.attributes) + { field.Name = "attributes"; field.Type = TType.Map; field.ID = 8; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, Attributes.Count)); - foreach (string _iter181 in Attributes.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Attributes.Count), cancellationToken); + foreach (string _iter236 in Attributes.Keys) { - oprot.WriteString(_iter181); - oprot.WriteString(Attributes[_iter181]); + await oprot.WriteStringAsync(_iter236, cancellationToken); + await oprot.WriteStringAsync(Attributes[_iter236], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (MeasurementAlias != null && __isset.measurementAlias) { + if((MeasurementAlias != null) && __isset.measurementAlias) + { field.Name = "measurementAlias"; field.Type = TType.String; field.ID = 9; - oprot.WriteFieldBegin(field); - oprot.WriteString(MeasurementAlias); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(MeasurementAlias, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -363,37 +454,90 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSCreateTimeseriesReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Path: "); - __sb.Append(Path); - __sb.Append(", DataType: "); - __sb.Append(DataType); - __sb.Append(", Encoding: "); - __sb.Append(Encoding); - __sb.Append(", Compressor: "); - __sb.Append(Compressor); - if (Props != null && __isset.props) { - __sb.Append(", Props: "); - __sb.Append(Props); + public override bool Equals(object that) + { + if (!(that is TSCreateTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Path, other.Path) + && System.Object.Equals(DataType, other.DataType) + && System.Object.Equals(Encoding, other.Encoding) + && System.Object.Equals(Compressor, other.Compressor) + && ((__isset.props == other.__isset.props) && ((!__isset.props) || (TCollections.Equals(Props, other.Props)))) + && ((__isset.tags == other.__isset.tags) && ((!__isset.tags) || (TCollections.Equals(Tags, other.Tags)))) + && ((__isset.attributes == other.__isset.attributes) && ((!__isset.attributes) || (TCollections.Equals(Attributes, other.Attributes)))) + && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (System.Object.Equals(MeasurementAlias, other.MeasurementAlias)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Path != null)) + { + hashcode = (hashcode * 397) + Path.GetHashCode(); + } + hashcode = (hashcode * 397) + DataType.GetHashCode(); + hashcode = (hashcode * 397) + Encoding.GetHashCode(); + hashcode = (hashcode * 397) + Compressor.GetHashCode(); + if((Props != null) && __isset.props) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Props); + } + if((Tags != null) && __isset.tags) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Tags); + } + if((Attributes != null) && __isset.attributes) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Attributes); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + hashcode = (hashcode * 397) + MeasurementAlias.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Path != null)) + { + sb.Append(", Path: "); + Path.ToString(sb); } - if (Tags != null && __isset.tags) { - __sb.Append(", Tags: "); - __sb.Append(Tags); + sb.Append(", DataType: "); + DataType.ToString(sb); + sb.Append(", Encoding: "); + Encoding.ToString(sb); + sb.Append(", Compressor: "); + Compressor.ToString(sb); + if((Props != null) && __isset.props) + { + sb.Append(", Props: "); + Props.ToString(sb); } - if (Attributes != null && __isset.attributes) { - __sb.Append(", Attributes: "); - __sb.Append(Attributes); + if((Tags != null) && __isset.tags) + { + sb.Append(", Tags: "); + Tags.ToString(sb); } - if (MeasurementAlias != null && __isset.measurementAlias) { - __sb.Append(", MeasurementAlias: "); - __sb.Append(MeasurementAlias); + if((Attributes != null) && __isset.attributes) + { + sb.Append(", Attributes: "); + Attributes.ToString(sb); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + sb.Append(", MeasurementAlias: "); + MeasurementAlias.ToString(sb); } - __sb.Append(")"); - return __sb.ToString(); + sb.Append(')'); + return sb.ToString(); } - } diff --git a/rpc/TSDeleteDataReq.cs b/rpc/TSDeleteDataReq.cs index 55b7f5c..b8a00cd 100644 --- a/rpc/TSDeleteDataReq.cs +++ b/rpc/TSDeleteDataReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSDeleteDataReq : TBase { @@ -30,17 +40,32 @@ public partial class TSDeleteDataReq : TBase public long EndTime { get; set; } - public TSDeleteDataReq() { + public TSDeleteDataReq() + { } - public TSDeleteDataReq(long sessionId, List paths, long startTime, long endTime) : this() { + public TSDeleteDataReq(long sessionId, List paths, long startTime, long endTime) : this() + { this.SessionId = sessionId; this.Paths = paths; this.StartTime = startTime; this.EndTime = endTime; } - public void Read (TProtocol iprot) + public TSDeleteDataReq DeepCopy() + { + var tmp215 = new TSDeleteDataReq(); + tmp215.SessionId = this.SessionId; + if((Paths != null)) + { + tmp215.Paths = this.Paths.DeepCopy(); + } + tmp215.StartTime = this.StartTime; + tmp215.EndTime = this.EndTime; + return tmp215; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -50,72 +75,96 @@ public void Read (TProtocol iprot) bool isset_startTime = false; bool isset_endTime = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Paths = new List(); - TList _list163 = iprot.ReadListBegin(); - for( int _i164 = 0; _i164 < _list163.Count; ++_i164) + TList _list216 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list216.Count); + for(int _i217 = 0; _i217 < _list216.Count; ++_i217) { - string _elem165; - _elem165 = iprot.ReadString(); - Paths.Add(_elem165); + string _elem218; + _elem218 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem218); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_paths = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I64) { - StartTime = iprot.ReadI64(); + if (field.Type == TType.I64) + { + StartTime = await iprot.ReadI64Async(cancellationToken); isset_startTime = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.I64) { - EndTime = iprot.ReadI64(); + if (field.Type == TType.I64) + { + EndTime = await iprot.ReadI64Async(cancellationToken); isset_endTime = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_paths) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_startTime) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StartTime not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_endTime) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field EndTime not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -123,48 +172,50 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSDeleteDataReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSDeleteDataReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Paths == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) { - oprot.WriteListBegin(new TList(TType.String, Paths.Count)); - foreach (string _iter166 in Paths) + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter166); + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter219 in Paths) + { + await oprot.WriteStringAsync(_iter219, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); field.Name = "startTime"; field.Type = TType.I64; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI64(StartTime); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StartTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "endTime"; field.Type = TType.I64; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteI64(EndTime); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(EndTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -172,19 +223,46 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSDeleteDataReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Paths: "); - __sb.Append(Paths); - __sb.Append(", StartTime: "); - __sb.Append(StartTime); - __sb.Append(", EndTime: "); - __sb.Append(EndTime); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSDeleteDataReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && System.Object.Equals(StartTime, other.StartTime) + && System.Object.Equals(EndTime, other.EndTime); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + hashcode = (hashcode * 397) + StartTime.GetHashCode(); + hashcode = (hashcode * 397) + EndTime.GetHashCode(); + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSDeleteDataReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + sb.Append(", StartTime: "); + StartTime.ToString(sb); + sb.Append(", EndTime: "); + EndTime.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSExecuteBatchStatementReq.cs b/rpc/TSExecuteBatchStatementReq.cs index 21df2e1..126d1ce 100644 --- a/rpc/TSExecuteBatchStatementReq.cs +++ b/rpc/TSExecuteBatchStatementReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSExecuteBatchStatementReq : TBase { @@ -26,15 +36,28 @@ public partial class TSExecuteBatchStatementReq : TBase public List Statements { get; set; } - public TSExecuteBatchStatementReq() { + public TSExecuteBatchStatementReq() + { } - public TSExecuteBatchStatementReq(long sessionId, List statements) : this() { + public TSExecuteBatchStatementReq(long sessionId, List statements) : this() + { this.SessionId = sessionId; this.Statements = statements; } - public void Read (TProtocol iprot) + public TSExecuteBatchStatementReq DeepCopy() + { + var tmp61 = new TSExecuteBatchStatementReq(); + tmp61.SessionId = this.SessionId; + if((Statements != null)) + { + tmp61.Statements = this.Statements.DeepCopy(); + } + return tmp61; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,52 +65,66 @@ public void Read (TProtocol iprot) bool isset_sessionId = false; bool isset_statements = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Statements = new List(); - TList _list43 = iprot.ReadListBegin(); - for( int _i44 = 0; _i44 < _list43.Count; ++_i44) + TList _list62 = await iprot.ReadListBeginAsync(cancellationToken); + Statements = new List(_list62.Count); + for(int _i63 = 0; _i63 < _list62.Count; ++_i63) { - string _elem45; - _elem45 = iprot.ReadString(); - Statements.Add(_elem45); + string _elem64; + _elem64 = await iprot.ReadStringAsync(cancellationToken); + Statements.Add(_elem64); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_statements = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_statements) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statements not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -95,36 +132,38 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSExecuteBatchStatementReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSExecuteBatchStatementReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Statements == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statements not set"); - field.Name = "statements"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Statements != null)) { - oprot.WriteListBegin(new TList(TType.String, Statements.Count)); - foreach (string _iter46 in Statements) + field.Name = "statements"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter46); + await oprot.WriteListBeginAsync(new TList(TType.String, Statements.Count), cancellationToken); + foreach (string _iter65 in Statements) + { + await oprot.WriteStringAsync(_iter65, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -132,15 +171,38 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSExecuteBatchStatementReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Statements: "); - __sb.Append(Statements); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSExecuteBatchStatementReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Statements, other.Statements); } + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Statements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Statements); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSExecuteBatchStatementReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Statements != null)) + { + sb.Append(", Statements: "); + Statements.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSExecuteStatementReq.cs b/rpc/TSExecuteStatementReq.cs index 5113a6e..7d0b092 100644 --- a/rpc/TSExecuteStatementReq.cs +++ b/rpc/TSExecuteStatementReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSExecuteStatementReq : TBase { private int _fetchSize; @@ -72,25 +82,52 @@ public bool EnableRedirectQuery public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool fetchSize; public bool timeout; public bool enableRedirectQuery; } - public TSExecuteStatementReq() { + public TSExecuteStatementReq() + { } - public TSExecuteStatementReq(long sessionId, string statement, long statementId) : this() { + public TSExecuteStatementReq(long sessionId, string statement, long statementId) : this() + { this.SessionId = sessionId; this.Statement = statement; this.StatementId = statementId; } - public void Read (TProtocol iprot) + public TSExecuteStatementReq DeepCopy() + { + var tmp59 = new TSExecuteStatementReq(); + tmp59.SessionId = this.SessionId; + if((Statement != null)) + { + tmp59.Statement = this.Statement; + } + tmp59.StatementId = this.StatementId; + if(__isset.fetchSize) + { + tmp59.FetchSize = this.FetchSize; + } + tmp59.__isset.fetchSize = this.__isset.fetchSize; + if(__isset.timeout) + { + tmp59.Timeout = this.Timeout; + } + tmp59.__isset.timeout = this.__isset.timeout; + if(__isset.enableRedirectQuery) + { + tmp59.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp59.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + return tmp59; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -99,73 +136,101 @@ public void Read (TProtocol iprot) bool isset_statement = false; bool isset_statementId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - Statement = iprot.ReadString(); + if (field.Type == TType.String) + { + Statement = await iprot.ReadStringAsync(cancellationToken); isset_statement = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I64) { - StatementId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); isset_statementId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.I32) { - FetchSize = iprot.ReadI32(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.I64) { - Timeout = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.Bool) { - EnableRedirectQuery = iprot.ReadBool(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_statement) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_statementId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StatementId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -173,59 +238,64 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSExecuteStatementReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSExecuteStatementReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Statement == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); - field.Name = "statement"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(Statement); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Statement != null)) + { + field.Name = "statement"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Statement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } field.Name = "statementId"; field.Type = TType.I64; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI64(StatementId); - oprot.WriteFieldEnd(); - if (__isset.fetchSize) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.fetchSize) + { field.Name = "fetchSize"; field.Type = TType.I32; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteI32(FetchSize); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (__isset.timeout) { + if(__isset.timeout) + { field.Name = "timeout"; field.Type = TType.I64; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteI64(Timeout); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (__isset.enableRedirectQuery) { + if(__isset.enableRedirectQuery) + { field.Name = "enableRedirectQuery"; field.Type = TType.Bool; field.ID = 6; - oprot.WriteFieldBegin(field); - oprot.WriteBool(EnableRedirectQuery); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -233,29 +303,72 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSExecuteStatementReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Statement: "); - __sb.Append(Statement); - __sb.Append(", StatementId: "); - __sb.Append(StatementId); - if (__isset.fetchSize) { - __sb.Append(", FetchSize: "); - __sb.Append(FetchSize); + public override bool Equals(object that) + { + if (!(that is TSExecuteStatementReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Statement, other.Statement) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Statement != null)) + { + hashcode = (hashcode * 397) + Statement.GetHashCode(); + } + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSExecuteStatementReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Statement != null)) + { + sb.Append(", Statement: "); + Statement.ToString(sb); } - if (__isset.timeout) { - __sb.Append(", Timeout: "); - __sb.Append(Timeout); + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); } - if (__isset.enableRedirectQuery) { - __sb.Append(", EnableRedirectQuery: "); - __sb.Append(EnableRedirectQuery); + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); } - __sb.Append(")"); - return __sb.ToString(); + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - } diff --git a/rpc/TSExecuteStatementResp.cs b/rpc/TSExecuteStatementResp.cs index c4b5f92..75e8a94 100644 --- a/rpc/TSExecuteStatementResp.cs +++ b/rpc/TSExecuteStatementResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSExecuteStatementResp : TBase { private long _queryId; @@ -138,10 +148,8 @@ public Dictionary ColumnNameIndexMap public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool queryId; public bool columns; public bool operationType; @@ -152,137 +160,222 @@ public struct Isset { public bool columnNameIndexMap; } - public TSExecuteStatementResp() { + public TSExecuteStatementResp() + { } - public TSExecuteStatementResp(TSStatus status) : this() { + public TSExecuteStatementResp(TSStatus status) : this() + { this.Status = status; } - public void Read (TProtocol iprot) + public TSExecuteStatementResp DeepCopy() + { + var tmp28 = new TSExecuteStatementResp(); + if((Status != null)) + { + tmp28.Status = (TSStatus)this.Status.DeepCopy(); + } + if(__isset.queryId) + { + tmp28.QueryId = this.QueryId; + } + tmp28.__isset.queryId = this.__isset.queryId; + if((Columns != null) && __isset.columns) + { + tmp28.Columns = this.Columns.DeepCopy(); + } + tmp28.__isset.columns = this.__isset.columns; + if((OperationType != null) && __isset.operationType) + { + tmp28.OperationType = this.OperationType; + } + tmp28.__isset.operationType = this.__isset.operationType; + if(__isset.ignoreTimeStamp) + { + tmp28.IgnoreTimeStamp = this.IgnoreTimeStamp; + } + tmp28.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; + if((DataTypeList != null) && __isset.dataTypeList) + { + tmp28.DataTypeList = this.DataTypeList.DeepCopy(); + } + tmp28.__isset.dataTypeList = this.__isset.dataTypeList; + if((QueryDataSet != null) && __isset.queryDataSet) + { + tmp28.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + } + tmp28.__isset.queryDataSet = this.__isset.queryDataSet; + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + tmp28.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + } + tmp28.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + tmp28.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + } + tmp28.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; + return tmp28; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { bool isset_status = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { Status = new TSStatus(); - Status.Read(iprot); + await Status.ReadAsync(iprot, cancellationToken); isset_status = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.I64) { - QueryId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Columns = new List(); - TList _list20 = iprot.ReadListBegin(); - for( int _i21 = 0; _i21 < _list20.Count; ++_i21) + TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); + Columns = new List(_list29.Count); + for(int _i30 = 0; _i30 < _list29.Count; ++_i30) { - string _elem22; - _elem22 = iprot.ReadString(); - Columns.Add(_elem22); + string _elem31; + _elem31 = await iprot.ReadStringAsync(cancellationToken); + Columns.Add(_elem31); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.String) { - OperationType = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + OperationType = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.Bool) { - IgnoreTimeStamp = iprot.ReadBool(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.Bool) + { + IgnoreTimeStamp = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - DataTypeList = new List(); - TList _list23 = iprot.ReadListBegin(); - for( int _i24 = 0; _i24 < _list23.Count; ++_i24) + TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypeList = new List(_list32.Count); + for(int _i33 = 0; _i33 < _list32.Count; ++_i33) { - string _elem25; - _elem25 = iprot.ReadString(); - DataTypeList.Add(_elem25); + string _elem34; + _elem34 = await iprot.ReadStringAsync(cancellationToken); + DataTypeList.Add(_elem34); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 7: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { QueryDataSet = new TSQueryDataSet(); - QueryDataSet.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + await QueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 8: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); - NonAlignQueryDataSet.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + await NonAlignQueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 9: - if (field.Type == TType.Map) { + if (field.Type == TType.Map) + { { - ColumnNameIndexMap = new Dictionary(); - TMap _map26 = iprot.ReadMapBegin(); - for( int _i27 = 0; _i27 < _map26.Count; ++_i27) + TMap _map35 = await iprot.ReadMapBeginAsync(cancellationToken); + ColumnNameIndexMap = new Dictionary(_map35.Count); + for(int _i36 = 0; _i36 < _map35.Count; ++_i36) { - string _key28; - int _val29; - _key28 = iprot.ReadString(); - _val29 = iprot.ReadI32(); - ColumnNameIndexMap[_key28] = _val29; + string _key37; + int _val38; + _key37 = await iprot.ReadStringAsync(cancellationToken); + _val38 = await iprot.ReadI32Async(cancellationToken); + ColumnNameIndexMap[_key37] = _val38; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_status) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -290,109 +383,119 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSExecuteStatementResp"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Status == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Status.Write(oprot); - oprot.WriteFieldEnd(); - if (__isset.queryId) { + var struc = new TStruct("TSExecuteStatementResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.queryId) + { field.Name = "queryId"; field.Type = TType.I64; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteI64(QueryId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (Columns != null && __isset.columns) { + if((Columns != null) && __isset.columns) + { field.Name = "columns"; field.Type = TType.List; field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.String, Columns.Count)); - foreach (string _iter30 in Columns) + await oprot.WriteListBeginAsync(new TList(TType.String, Columns.Count), cancellationToken); + foreach (string _iter39 in Columns) { - oprot.WriteString(_iter30); + await oprot.WriteStringAsync(_iter39, cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (OperationType != null && __isset.operationType) { + if((OperationType != null) && __isset.operationType) + { field.Name = "operationType"; field.Type = TType.String; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteString(OperationType); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(OperationType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (__isset.ignoreTimeStamp) { + if(__isset.ignoreTimeStamp) + { field.Name = "ignoreTimeStamp"; field.Type = TType.Bool; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteBool(IgnoreTimeStamp); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IgnoreTimeStamp, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (DataTypeList != null && __isset.dataTypeList) { + if((DataTypeList != null) && __isset.dataTypeList) + { field.Name = "dataTypeList"; field.Type = TType.List; field.ID = 6; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.String, DataTypeList.Count)); - foreach (string _iter31 in DataTypeList) + await oprot.WriteListBeginAsync(new TList(TType.String, DataTypeList.Count), cancellationToken); + foreach (string _iter40 in DataTypeList) { - oprot.WriteString(_iter31); + await oprot.WriteStringAsync(_iter40, cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (QueryDataSet != null && __isset.queryDataSet) { + if((QueryDataSet != null) && __isset.queryDataSet) + { field.Name = "queryDataSet"; field.Type = TType.Struct; field.ID = 7; - oprot.WriteFieldBegin(field); - QueryDataSet.Write(oprot); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await QueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { field.Name = "nonAlignQueryDataSet"; field.Type = TType.Struct; field.ID = 8; - oprot.WriteFieldBegin(field); - NonAlignQueryDataSet.Write(oprot); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (ColumnNameIndexMap != null && __isset.columnNameIndexMap) { + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { field.Name = "columnNameIndexMap"; field.Type = TType.Map; field.ID = 9; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteMapBegin(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count)); - foreach (string _iter32 in ColumnNameIndexMap.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count), cancellationToken); + foreach (string _iter41 in ColumnNameIndexMap.Keys) { - oprot.WriteString(_iter32); - oprot.WriteI32(ColumnNameIndexMap[_iter32]); + await oprot.WriteStringAsync(_iter41, cancellationToken); + await oprot.WriteI32Async(ColumnNameIndexMap[_iter41], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -400,45 +503,114 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSExecuteStatementResp("); - __sb.Append(", Status: "); - __sb.Append(Status== null ? "" : Status.ToString()); - if (__isset.queryId) { - __sb.Append(", QueryId: "); - __sb.Append(QueryId); - } - if (Columns != null && __isset.columns) { - __sb.Append(", Columns: "); - __sb.Append(Columns); - } - if (OperationType != null && __isset.operationType) { - __sb.Append(", OperationType: "); - __sb.Append(OperationType); - } - if (__isset.ignoreTimeStamp) { - __sb.Append(", IgnoreTimeStamp: "); - __sb.Append(IgnoreTimeStamp); - } - if (DataTypeList != null && __isset.dataTypeList) { - __sb.Append(", DataTypeList: "); - __sb.Append(DataTypeList); - } - if (QueryDataSet != null && __isset.queryDataSet) { - __sb.Append(", QueryDataSet: "); - __sb.Append(QueryDataSet== null ? "" : QueryDataSet.ToString()); - } - if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { - __sb.Append(", NonAlignQueryDataSet: "); - __sb.Append(NonAlignQueryDataSet== null ? "" : NonAlignQueryDataSet.ToString()); - } - if (ColumnNameIndexMap != null && __isset.columnNameIndexMap) { - __sb.Append(", ColumnNameIndexMap: "); - __sb.Append(ColumnNameIndexMap); - } - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSExecuteStatementResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && ((__isset.queryId == other.__isset.queryId) && ((!__isset.queryId) || (System.Object.Equals(QueryId, other.QueryId)))) + && ((__isset.columns == other.__isset.columns) && ((!__isset.columns) || (TCollections.Equals(Columns, other.Columns)))) + && ((__isset.operationType == other.__isset.operationType) && ((!__isset.operationType) || (System.Object.Equals(OperationType, other.OperationType)))) + && ((__isset.ignoreTimeStamp == other.__isset.ignoreTimeStamp) && ((!__isset.ignoreTimeStamp) || (System.Object.Equals(IgnoreTimeStamp, other.IgnoreTimeStamp)))) + && ((__isset.dataTypeList == other.__isset.dataTypeList) && ((!__isset.dataTypeList) || (TCollections.Equals(DataTypeList, other.DataTypeList)))) + && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) + && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))) + && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if(__isset.queryId) + { + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + if((Columns != null) && __isset.columns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Columns); + } + if((OperationType != null) && __isset.operationType) + { + hashcode = (hashcode * 397) + OperationType.GetHashCode(); + } + if(__isset.ignoreTimeStamp) + { + hashcode = (hashcode * 397) + IgnoreTimeStamp.GetHashCode(); + } + if((DataTypeList != null) && __isset.dataTypeList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypeList); + } + if((QueryDataSet != null) && __isset.queryDataSet) + { + hashcode = (hashcode * 397) + QueryDataSet.GetHashCode(); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); + } + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnNameIndexMap); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSExecuteStatementResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if(__isset.queryId) + { + sb.Append(", QueryId: "); + QueryId.ToString(sb); + } + if((Columns != null) && __isset.columns) + { + sb.Append(", Columns: "); + Columns.ToString(sb); + } + if((OperationType != null) && __isset.operationType) + { + sb.Append(", OperationType: "); + OperationType.ToString(sb); + } + if(__isset.ignoreTimeStamp) + { + sb.Append(", IgnoreTimeStamp: "); + IgnoreTimeStamp.ToString(sb); + } + if((DataTypeList != null) && __isset.dataTypeList) + { + sb.Append(", DataTypeList: "); + DataTypeList.ToString(sb); + } + if((QueryDataSet != null) && __isset.queryDataSet) + { + sb.Append(", QueryDataSet: "); + QueryDataSet.ToString(sb); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + sb.Append(", NonAlignQueryDataSet: "); + NonAlignQueryDataSet.ToString(sb); + } + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + sb.Append(", ColumnNameIndexMap: "); + ColumnNameIndexMap.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSFetchMetadataReq.cs b/rpc/TSFetchMetadataReq.cs index db232f1..b0a6a54 100644 --- a/rpc/TSFetchMetadataReq.cs +++ b/rpc/TSFetchMetadataReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSFetchMetadataReq : TBase { private string _columnPath; @@ -42,22 +52,38 @@ public string ColumnPath public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool columnPath; } - public TSFetchMetadataReq() { + public TSFetchMetadataReq() + { } - public TSFetchMetadataReq(long sessionId, string type) : this() { + public TSFetchMetadataReq(long sessionId, string type) : this() + { this.SessionId = sessionId; this.Type = type; } - public void Read (TProtocol iprot) + public TSFetchMetadataReq DeepCopy() + { + var tmp83 = new TSFetchMetadataReq(); + tmp83.SessionId = this.SessionId; + if((Type != null)) + { + tmp83.Type = this.Type; + } + if((ColumnPath != null) && __isset.columnPath) + { + tmp83.ColumnPath = this.ColumnPath; + } + tmp83.__isset.columnPath = this.__isset.columnPath; + return tmp83; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -65,49 +91,66 @@ public void Read (TProtocol iprot) bool isset_sessionId = false; bool isset_type = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - Type = iprot.ReadString(); + if (field.Type == TType.String) + { + Type = await iprot.ReadStringAsync(cancellationToken); isset_type = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.String) { - ColumnPath = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + ColumnPath = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_type) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Type not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -115,37 +158,40 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSFetchMetadataReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSFetchMetadataReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Type == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Type not set"); - field.Name = "type"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(Type); - oprot.WriteFieldEnd(); - if (ColumnPath != null && __isset.columnPath) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Type != null)) + { + field.Name = "type"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Type, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ColumnPath != null) && __isset.columnPath) + { field.Name = "columnPath"; field.Type = TType.String; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteString(ColumnPath); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(ColumnPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -153,19 +199,48 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSFetchMetadataReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Type: "); - __sb.Append(Type); - if (ColumnPath != null && __isset.columnPath) { - __sb.Append(", ColumnPath: "); - __sb.Append(ColumnPath); + public override bool Equals(object that) + { + if (!(that is TSFetchMetadataReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Type, other.Type) + && ((__isset.columnPath == other.__isset.columnPath) && ((!__isset.columnPath) || (System.Object.Equals(ColumnPath, other.ColumnPath)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Type != null)) + { + hashcode = (hashcode * 397) + Type.GetHashCode(); + } + if((ColumnPath != null) && __isset.columnPath) + { + hashcode = (hashcode * 397) + ColumnPath.GetHashCode(); + } } - __sb.Append(")"); - return __sb.ToString(); + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSFetchMetadataReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Type != null)) + { + sb.Append(", Type: "); + Type.ToString(sb); + } + if((ColumnPath != null) && __isset.columnPath) + { + sb.Append(", ColumnPath: "); + ColumnPath.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSFetchMetadataResp.cs b/rpc/TSFetchMetadataResp.cs index 97dd2f2..f34d1f1 100644 --- a/rpc/TSFetchMetadataResp.cs +++ b/rpc/TSFetchMetadataResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSFetchMetadataResp : TBase { private string _metadataInJson; @@ -68,87 +78,130 @@ public string DataType public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool metadataInJson; public bool columnsList; public bool dataType; } - public TSFetchMetadataResp() { + public TSFetchMetadataResp() + { } - public TSFetchMetadataResp(TSStatus status) : this() { + public TSFetchMetadataResp(TSStatus status) : this() + { this.Status = status; } - public void Read (TProtocol iprot) + public TSFetchMetadataResp DeepCopy() + { + var tmp77 = new TSFetchMetadataResp(); + if((Status != null)) + { + tmp77.Status = (TSStatus)this.Status.DeepCopy(); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { + tmp77.MetadataInJson = this.MetadataInJson; + } + tmp77.__isset.metadataInJson = this.__isset.metadataInJson; + if((ColumnsList != null) && __isset.columnsList) + { + tmp77.ColumnsList = this.ColumnsList.DeepCopy(); + } + tmp77.__isset.columnsList = this.__isset.columnsList; + if((DataType != null) && __isset.dataType) + { + tmp77.DataType = this.DataType; + } + tmp77.__isset.dataType = this.__isset.dataType; + return tmp77; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { bool isset_status = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { Status = new TSStatus(); - Status.Read(iprot); + await Status.ReadAsync(iprot, cancellationToken); isset_status = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - MetadataInJson = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + MetadataInJson = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ColumnsList = new List(); - TList _list47 = iprot.ReadListBegin(); - for( int _i48 = 0; _i48 < _list47.Count; ++_i48) + TList _list78 = await iprot.ReadListBeginAsync(cancellationToken); + ColumnsList = new List(_list78.Count); + for(int _i79 = 0; _i79 < _list78.Count; ++_i79) { - string _elem49; - _elem49 = iprot.ReadString(); - ColumnsList.Add(_elem49); + string _elem80; + _elem80 = await iprot.ReadStringAsync(cancellationToken); + ColumnsList.Add(_elem80); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.String) { - DataType = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + DataType = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_status) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -156,54 +209,59 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSFetchMetadataResp"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Status == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Status.Write(oprot); - oprot.WriteFieldEnd(); - if (MetadataInJson != null && __isset.metadataInJson) { + var struc = new TStruct("TSFetchMetadataResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { field.Name = "metadataInJson"; field.Type = TType.String; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(MetadataInJson); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(MetadataInJson, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (ColumnsList != null && __isset.columnsList) { + if((ColumnsList != null) && __isset.columnsList) + { field.Name = "columnsList"; field.Type = TType.List; field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.String, ColumnsList.Count)); - foreach (string _iter50 in ColumnsList) + await oprot.WriteListBeginAsync(new TList(TType.String, ColumnsList.Count), cancellationToken); + foreach (string _iter81 in ColumnsList) { - oprot.WriteString(_iter50); + await oprot.WriteStringAsync(_iter81, cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (DataType != null && __isset.dataType) { + if((DataType != null) && __isset.dataType) + { field.Name = "dataType"; field.Type = TType.String; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteString(DataType); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(DataType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -211,25 +269,64 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSFetchMetadataResp("); - __sb.Append(", Status: "); - __sb.Append(Status== null ? "" : Status.ToString()); - if (MetadataInJson != null && __isset.metadataInJson) { - __sb.Append(", MetadataInJson: "); - __sb.Append(MetadataInJson); + public override bool Equals(object that) + { + if (!(that is TSFetchMetadataResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && ((__isset.metadataInJson == other.__isset.metadataInJson) && ((!__isset.metadataInJson) || (System.Object.Equals(MetadataInJson, other.MetadataInJson)))) + && ((__isset.columnsList == other.__isset.columnsList) && ((!__isset.columnsList) || (TCollections.Equals(ColumnsList, other.ColumnsList)))) + && ((__isset.dataType == other.__isset.dataType) && ((!__isset.dataType) || (System.Object.Equals(DataType, other.DataType)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { + hashcode = (hashcode * 397) + MetadataInJson.GetHashCode(); + } + if((ColumnsList != null) && __isset.columnsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnsList); + } + if((DataType != null) && __isset.dataType) + { + hashcode = (hashcode * 397) + DataType.GetHashCode(); + } } - if (ColumnsList != null && __isset.columnsList) { - __sb.Append(", ColumnsList: "); - __sb.Append(ColumnsList); + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSFetchMetadataResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); } - if (DataType != null && __isset.dataType) { - __sb.Append(", DataType: "); - __sb.Append(DataType); + if((MetadataInJson != null) && __isset.metadataInJson) + { + sb.Append(", MetadataInJson: "); + MetadataInJson.ToString(sb); + } + if((ColumnsList != null) && __isset.columnsList) + { + sb.Append(", ColumnsList: "); + ColumnsList.ToString(sb); } - __sb.Append(")"); - return __sb.ToString(); + if((DataType != null) && __isset.dataType) + { + sb.Append(", DataType: "); + DataType.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - } diff --git a/rpc/TSFetchResultsReq.cs b/rpc/TSFetchResultsReq.cs index 3161eaa..e180731 100644 --- a/rpc/TSFetchResultsReq.cs +++ b/rpc/TSFetchResultsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSFetchResultsReq : TBase { private long _timeout; @@ -48,17 +58,17 @@ public long Timeout public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool timeout; } - public TSFetchResultsReq() { + public TSFetchResultsReq() + { } - public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long queryId, bool isAlign) : this() { + public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long queryId, bool isAlign) : this() + { this.SessionId = sessionId; this.Statement = statement; this.FetchSize = fetchSize; @@ -66,7 +76,26 @@ public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long q this.IsAlign = isAlign; } - public void Read (TProtocol iprot) + public TSFetchResultsReq DeepCopy() + { + var tmp73 = new TSFetchResultsReq(); + tmp73.SessionId = this.SessionId; + if((Statement != null)) + { + tmp73.Statement = this.Statement; + } + tmp73.FetchSize = this.FetchSize; + tmp73.QueryId = this.QueryId; + tmp73.IsAlign = this.IsAlign; + if(__isset.timeout) + { + tmp73.Timeout = this.Timeout; + } + tmp73.__isset.timeout = this.__isset.timeout; + return tmp73; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -77,79 +106,111 @@ public void Read (TProtocol iprot) bool isset_queryId = false; bool isset_isAlign = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - Statement = iprot.ReadString(); + if (field.Type == TType.String) + { + Statement = await iprot.ReadStringAsync(cancellationToken); isset_statement = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I32) { - FetchSize = iprot.ReadI32(); + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); isset_fetchSize = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.I64) { - QueryId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); isset_queryId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.Bool) { - IsAlign = iprot.ReadBool(); + if (field.Type == TType.Bool) + { + IsAlign = await iprot.ReadBoolAsync(cancellationToken); isset_isAlign = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.I64) { - Timeout = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_statement) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_fetchSize) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field FetchSize not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_queryId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field QueryId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_isAlign) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field IsAlign not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -157,55 +218,58 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSFetchResultsReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSFetchResultsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Statement == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Statement not set"); - field.Name = "statement"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(Statement); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Statement != null)) + { + field.Name = "statement"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Statement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } field.Name = "fetchSize"; field.Type = TType.I32; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI32(FetchSize); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "queryId"; field.Type = TType.I64; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteI64(QueryId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "isAlign"; field.Type = TType.Bool; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteBool(IsAlign); - oprot.WriteFieldEnd(); - if (__isset.timeout) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAlign, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.timeout) + { field.Name = "timeout"; field.Type = TType.I64; field.ID = 6; - oprot.WriteFieldBegin(field); - oprot.WriteI64(Timeout); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -213,25 +277,60 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSFetchResultsReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Statement: "); - __sb.Append(Statement); - __sb.Append(", FetchSize: "); - __sb.Append(FetchSize); - __sb.Append(", QueryId: "); - __sb.Append(QueryId); - __sb.Append(", IsAlign: "); - __sb.Append(IsAlign); - if (__isset.timeout) { - __sb.Append(", Timeout: "); - __sb.Append(Timeout); + public override bool Equals(object that) + { + if (!(that is TSFetchResultsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Statement, other.Statement) + && System.Object.Equals(FetchSize, other.FetchSize) + && System.Object.Equals(QueryId, other.QueryId) + && System.Object.Equals(IsAlign, other.IsAlign) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Statement != null)) + { + hashcode = (hashcode * 397) + Statement.GetHashCode(); + } + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + hashcode = (hashcode * 397) + IsAlign.GetHashCode(); + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } } - __sb.Append(")"); - return __sb.ToString(); + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSFetchResultsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Statement != null)) + { + sb.Append(", Statement: "); + Statement.ToString(sb); + } + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + sb.Append(", QueryId: "); + QueryId.ToString(sb); + sb.Append(", IsAlign: "); + IsAlign.ToString(sb); + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSFetchResultsResp.cs b/rpc/TSFetchResultsResp.cs index 037b315..93584f7 100644 --- a/rpc/TSFetchResultsResp.cs +++ b/rpc/TSFetchResultsResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSFetchResultsResp : TBase { private TSQueryDataSet _queryDataSet; @@ -58,24 +68,46 @@ public TSQueryNonAlignDataSet NonAlignQueryDataSet public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool queryDataSet; public bool nonAlignQueryDataSet; } - public TSFetchResultsResp() { + public TSFetchResultsResp() + { } - public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : this() { + public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : this() + { this.Status = status; this.HasResultSet = hasResultSet; this.IsAlign = isAlign; } - public void Read (TProtocol iprot) + public TSFetchResultsResp DeepCopy() + { + var tmp75 = new TSFetchResultsResp(); + if((Status != null)) + { + tmp75.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp75.HasResultSet = this.HasResultSet; + tmp75.IsAlign = this.IsAlign; + if((QueryDataSet != null) && __isset.queryDataSet) + { + tmp75.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + } + tmp75.__isset.queryDataSet = this.__isset.queryDataSet; + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + tmp75.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + } + tmp75.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + return tmp75; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -84,69 +116,94 @@ public void Read (TProtocol iprot) bool isset_hasResultSet = false; bool isset_isAlign = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { Status = new TSStatus(); - Status.Read(iprot); + await Status.ReadAsync(iprot, cancellationToken); isset_status = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.Bool) { - HasResultSet = iprot.ReadBool(); + if (field.Type == TType.Bool) + { + HasResultSet = await iprot.ReadBoolAsync(cancellationToken); isset_hasResultSet = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.Bool) { - IsAlign = iprot.ReadBool(); + if (field.Type == TType.Bool) + { + IsAlign = await iprot.ReadBoolAsync(cancellationToken); isset_isAlign = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { QueryDataSet = new TSQueryDataSet(); - QueryDataSet.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + await QueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); - NonAlignQueryDataSet.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + await NonAlignQueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_status) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_hasResultSet) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field HasResultSet not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_isAlign) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field IsAlign not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -154,51 +211,55 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSFetchResultsResp"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Status == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Status.Write(oprot); - oprot.WriteFieldEnd(); + var struc = new TStruct("TSFetchResultsResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } field.Name = "hasResultSet"; field.Type = TType.Bool; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteBool(HasResultSet); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(HasResultSet, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "isAlign"; field.Type = TType.Bool; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteBool(IsAlign); - oprot.WriteFieldEnd(); - if (QueryDataSet != null && __isset.queryDataSet) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAlign, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((QueryDataSet != null) && __isset.queryDataSet) + { field.Name = "queryDataSet"; field.Type = TType.Struct; field.ID = 4; - oprot.WriteFieldBegin(field); - QueryDataSet.Write(oprot); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await QueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { field.Name = "nonAlignQueryDataSet"; field.Type = TType.Struct; field.ID = 5; - oprot.WriteFieldBegin(field); - NonAlignQueryDataSet.Write(oprot); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -206,25 +267,62 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSFetchResultsResp("); - __sb.Append(", Status: "); - __sb.Append(Status== null ? "" : Status.ToString()); - __sb.Append(", HasResultSet: "); - __sb.Append(HasResultSet); - __sb.Append(", IsAlign: "); - __sb.Append(IsAlign); - if (QueryDataSet != null && __isset.queryDataSet) { - __sb.Append(", QueryDataSet: "); - __sb.Append(QueryDataSet== null ? "" : QueryDataSet.ToString()); - } - if (NonAlignQueryDataSet != null && __isset.nonAlignQueryDataSet) { - __sb.Append(", NonAlignQueryDataSet: "); - __sb.Append(NonAlignQueryDataSet== null ? "" : NonAlignQueryDataSet.ToString()); + public override bool Equals(object that) + { + if (!(that is TSFetchResultsResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(HasResultSet, other.HasResultSet) + && System.Object.Equals(IsAlign, other.IsAlign) + && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) + && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + HasResultSet.GetHashCode(); + hashcode = (hashcode * 397) + IsAlign.GetHashCode(); + if((QueryDataSet != null) && __isset.queryDataSet) + { + hashcode = (hashcode * 397) + QueryDataSet.GetHashCode(); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); + } } - __sb.Append(")"); - return __sb.ToString(); + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSFetchResultsResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", HasResultSet: "); + HasResultSet.ToString(sb); + sb.Append(", IsAlign: "); + IsAlign.ToString(sb); + if((QueryDataSet != null) && __isset.queryDataSet) + { + sb.Append(", QueryDataSet: "); + QueryDataSet.ToString(sb); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + sb.Append(", NonAlignQueryDataSet: "); + NonAlignQueryDataSet.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSGetOperationStatusReq.cs b/rpc/TSGetOperationStatusReq.cs index 7739a2f..e32437d 100644 --- a/rpc/TSGetOperationStatusReq.cs +++ b/rpc/TSGetOperationStatusReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSGetOperationStatusReq : TBase { @@ -26,15 +36,25 @@ public partial class TSGetOperationStatusReq : TBase public long QueryId { get; set; } - public TSGetOperationStatusReq() { + public TSGetOperationStatusReq() + { } - public TSGetOperationStatusReq(long sessionId, long queryId) : this() { + public TSGetOperationStatusReq(long sessionId, long queryId) : this() + { this.SessionId = sessionId; this.QueryId = queryId; } - public void Read (TProtocol iprot) + public TSGetOperationStatusReq DeepCopy() + { + var tmp67 = new TSGetOperationStatusReq(); + tmp67.SessionId = this.SessionId; + tmp67.QueryId = this.QueryId; + return tmp67; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,42 +62,56 @@ public void Read (TProtocol iprot) bool isset_sessionId = false; bool isset_queryId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.I64) { - QueryId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); isset_queryId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_queryId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field QueryId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -85,27 +119,28 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSGetOperationStatusReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSGetOperationStatusReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "queryId"; field.Type = TType.I64; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteI64(QueryId); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -113,15 +148,32 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSGetOperationStatusReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", QueryId: "); - __sb.Append(QueryId); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSGetOperationStatusReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(QueryId, other.QueryId); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSGetOperationStatusReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + sb.Append(", QueryId: "); + QueryId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSGetTimeZoneResp.cs b/rpc/TSGetTimeZoneResp.cs index ba0477d..d22b52f 100644 --- a/rpc/TSGetTimeZoneResp.cs +++ b/rpc/TSGetTimeZoneResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSGetTimeZoneResp : TBase { @@ -26,15 +36,31 @@ public partial class TSGetTimeZoneResp : TBase public string TimeZone { get; set; } - public TSGetTimeZoneResp() { + public TSGetTimeZoneResp() + { } - public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() { + public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() + { this.Status = status; this.TimeZone = timeZone; } - public void Read (TProtocol iprot) + public TSGetTimeZoneResp DeepCopy() + { + var tmp85 = new TSGetTimeZoneResp(); + if((Status != null)) + { + tmp85.Status = (TSStatus)this.Status.DeepCopy(); + } + if((TimeZone != null)) + { + tmp85.TimeZone = this.TimeZone; + } + return tmp85; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,43 +68,57 @@ public void Read (TProtocol iprot) bool isset_status = false; bool isset_timeZone = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { Status = new TSStatus(); - Status.Read(iprot); + await Status.ReadAsync(iprot, cancellationToken); isset_status = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - TimeZone = iprot.ReadString(); + if (field.Type == TType.String) + { + TimeZone = await iprot.ReadStringAsync(cancellationToken); isset_timeZone = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_status) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timeZone) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -86,31 +126,34 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSGetTimeZoneResp"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Status == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Status.Write(oprot); - oprot.WriteFieldEnd(); - if (TimeZone == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); - field.Name = "timeZone"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(TimeZone); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + var struc = new TStruct("TSGetTimeZoneResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TimeZone != null)) + { + field.Name = "timeZone"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TimeZone, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -118,15 +161,44 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSGetTimeZoneResp("); - __sb.Append(", Status: "); - __sb.Append(Status== null ? "" : Status.ToString()); - __sb.Append(", TimeZone: "); - __sb.Append(TimeZone); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSGetTimeZoneResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(TimeZone, other.TimeZone); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if((TimeZone != null)) + { + hashcode = (hashcode * 397) + TimeZone.GetHashCode(); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSGetTimeZoneResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if((TimeZone != null)) + { + sb.Append(", TimeZone: "); + TimeZone.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSIService.cs b/rpc/TSIService.cs index f64e0be..a158811 100644 --- a/rpc/TSIService.cs +++ b/rpc/TSIService.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,2752 +9,1539 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; -public partial class TSIService { - public interface ISync { - TSOpenSessionResp openSession(TSOpenSessionReq req); - TSStatus closeSession(TSCloseSessionReq req); - TSExecuteStatementResp executeStatement(TSExecuteStatementReq req); - TSStatus executeBatchStatement(TSExecuteBatchStatementReq req); - TSExecuteStatementResp executeQueryStatement(TSExecuteStatementReq req); - TSExecuteStatementResp executeUpdateStatement(TSExecuteStatementReq req); - TSFetchResultsResp fetchResults(TSFetchResultsReq req); - TSFetchMetadataResp fetchMetadata(TSFetchMetadataReq req); - TSStatus cancelOperation(TSCancelOperationReq req); - TSStatus closeOperation(TSCloseOperationReq req); - TSGetTimeZoneResp getTimeZone(long sessionId); - TSStatus setTimeZone(TSSetTimeZoneReq req); - ServerProperties getProperties(); - TSStatus setStorageGroup(long sessionId, string storageGroup); - TSStatus createTimeseries(TSCreateTimeseriesReq req); - TSStatus createMultiTimeseries(TSCreateMultiTimeseriesReq req); - TSStatus deleteTimeseries(long sessionId, List path); - TSStatus deleteStorageGroups(long sessionId, List storageGroup); - TSStatus insertRecord(TSInsertRecordReq req); - TSStatus insertStringRecord(TSInsertStringRecordReq req); - TSStatus insertTablet(TSInsertTabletReq req); - TSStatus insertTablets(TSInsertTabletsReq req); - TSStatus insertRecords(TSInsertRecordsReq req); - TSStatus insertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req); - TSStatus insertStringRecords(TSInsertStringRecordsReq req); - TSStatus testInsertTablet(TSInsertTabletReq req); - TSStatus testInsertTablets(TSInsertTabletsReq req); - TSStatus testInsertRecord(TSInsertRecordReq req); - TSStatus testInsertStringRecord(TSInsertStringRecordReq req); - TSStatus testInsertRecords(TSInsertRecordsReq req); - TSStatus testInsertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req); - TSStatus testInsertStringRecords(TSInsertStringRecordsReq req); - TSStatus deleteData(TSDeleteDataReq req); - TSExecuteStatementResp executeRawDataQuery(TSRawDataQueryReq req); - long requestStatementId(long sessionId); - } - public interface Iface : ISync { - #if SILVERLIGHT - IAsyncResult Begin_openSession(AsyncCallback callback, object state, TSOpenSessionReq req); - TSOpenSessionResp End_openSession(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_closeSession(AsyncCallback callback, object state, TSCloseSessionReq req); - TSStatus End_closeSession(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_executeStatement(AsyncCallback callback, object state, TSExecuteStatementReq req); - TSExecuteStatementResp End_executeStatement(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_executeBatchStatement(AsyncCallback callback, object state, TSExecuteBatchStatementReq req); - TSStatus End_executeBatchStatement(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_executeQueryStatement(AsyncCallback callback, object state, TSExecuteStatementReq req); - TSExecuteStatementResp End_executeQueryStatement(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_executeUpdateStatement(AsyncCallback callback, object state, TSExecuteStatementReq req); - TSExecuteStatementResp End_executeUpdateStatement(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_fetchResults(AsyncCallback callback, object state, TSFetchResultsReq req); - TSFetchResultsResp End_fetchResults(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_fetchMetadata(AsyncCallback callback, object state, TSFetchMetadataReq req); - TSFetchMetadataResp End_fetchMetadata(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_cancelOperation(AsyncCallback callback, object state, TSCancelOperationReq req); - TSStatus End_cancelOperation(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_closeOperation(AsyncCallback callback, object state, TSCloseOperationReq req); - TSStatus End_closeOperation(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_getTimeZone(AsyncCallback callback, object state, long sessionId); - TSGetTimeZoneResp End_getTimeZone(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_setTimeZone(AsyncCallback callback, object state, TSSetTimeZoneReq req); - TSStatus End_setTimeZone(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_getProperties(AsyncCallback callback, object state); - ServerProperties End_getProperties(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_setStorageGroup(AsyncCallback callback, object state, long sessionId, string storageGroup); - TSStatus End_setStorageGroup(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_createTimeseries(AsyncCallback callback, object state, TSCreateTimeseriesReq req); - TSStatus End_createTimeseries(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_createMultiTimeseries(AsyncCallback callback, object state, TSCreateMultiTimeseriesReq req); - TSStatus End_createMultiTimeseries(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_deleteTimeseries(AsyncCallback callback, object state, long sessionId, List path); - TSStatus End_deleteTimeseries(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_deleteStorageGroups(AsyncCallback callback, object state, long sessionId, List storageGroup); - TSStatus End_deleteStorageGroups(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertRecord(AsyncCallback callback, object state, TSInsertRecordReq req); - TSStatus End_insertRecord(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req); - TSStatus End_insertStringRecord(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertTablet(AsyncCallback callback, object state, TSInsertTabletReq req); - TSStatus End_insertTablet(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req); - TSStatus End_insertTablets(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req); - TSStatus End_insertRecords(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req); - TSStatus End_insertRecordsOfOneDevice(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_insertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req); - TSStatus End_insertStringRecords(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertTablet(AsyncCallback callback, object state, TSInsertTabletReq req); - TSStatus End_testInsertTablet(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req); - TSStatus End_testInsertTablets(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertRecord(AsyncCallback callback, object state, TSInsertRecordReq req); - TSStatus End_testInsertRecord(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req); - TSStatus End_testInsertStringRecord(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req); - TSStatus End_testInsertRecords(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req); - TSStatus End_testInsertRecordsOfOneDevice(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_testInsertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req); - TSStatus End_testInsertStringRecords(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_deleteData(AsyncCallback callback, object state, TSDeleteDataReq req); - TSStatus End_deleteData(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_executeRawDataQuery(AsyncCallback callback, object state, TSRawDataQueryReq req); - TSExecuteStatementResp End_executeRawDataQuery(IAsyncResult asyncResult); - #endif - #if SILVERLIGHT - IAsyncResult Begin_requestStatementId(AsyncCallback callback, object state, long sessionId); - long End_requestStatementId(IAsyncResult asyncResult); - #endif - } +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling - public class Client : IDisposable, Iface { - public Client(TProtocol prot) : this(prot, prot) - { - } +public partial class TSIService +{ + public interface IAsync + { + global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default); - public Client(TProtocol iprot, TProtocol oprot) - { - iprot_ = iprot; - oprot_ = oprot; - } + global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default); - protected TProtocol iprot_; - protected TProtocol oprot_; - protected int seqid_; + global::System.Threading.Tasks.Task executeStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); - public TProtocol InputProtocol - { - get { return iprot_; } - } - public TProtocol OutputProtocol - { - get { return oprot_; } - } + global::System.Threading.Tasks.Task executeBatchStatementAsync(TSExecuteBatchStatementReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task executeQueryStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); - #region " IDisposable Support " - private bool _IsDisposed; + global::System.Threading.Tasks.Task executeUpdateStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); - // IDisposable - public void Dispose() - { - Dispose(true); - } - + global::System.Threading.Tasks.Task fetchResultsAsync(TSFetchResultsReq req, CancellationToken cancellationToken = default); - protected virtual void Dispose(bool disposing) - { - if (!_IsDisposed) - { - if (disposing) - { - if (iprot_ != null) - { - ((IDisposable)iprot_).Dispose(); - } - if (oprot_ != null) - { - ((IDisposable)oprot_).Dispose(); - } - } - } - _IsDisposed = true; - } - #endregion + global::System.Threading.Tasks.Task fetchMetadataAsync(TSFetchMetadataReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task cancelOperationAsync(TSCancelOperationReq req, CancellationToken cancellationToken = default); - - #if SILVERLIGHT - - public IAsyncResult Begin_openSession(AsyncCallback callback, object state, TSOpenSessionReq req) - { - return send_openSession(callback, state, req); - } + global::System.Threading.Tasks.Task closeOperationAsync(TSCloseOperationReq req, CancellationToken cancellationToken = default); - public TSOpenSessionResp End_openSession(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_openSession(); - } + global::System.Threading.Tasks.Task getTimeZoneAsync(long sessionId, CancellationToken cancellationToken = default); - #endif + global::System.Threading.Tasks.Task setTimeZoneAsync(TSSetTimeZoneReq req, CancellationToken cancellationToken = default); - public TSOpenSessionResp openSession(TSOpenSessionReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_openSession(null, null, req); - return End_openSession(asyncResult); + global::System.Threading.Tasks.Task getPropertiesAsync(CancellationToken cancellationToken = default); - #else - send_openSession(req); - return recv_openSession(); + global::System.Threading.Tasks.Task setStorageGroupAsync(long sessionId, string storageGroup, CancellationToken cancellationToken = default); - #endif - } - #if SILVERLIGHT - public IAsyncResult send_openSession(AsyncCallback callback, object state, TSOpenSessionReq req) - { - oprot_.WriteMessageBegin(new TMessage("openSession", TMessageType.Call, seqid_)); - openSession_args args = new openSession_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } + global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default); - #else + global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default); - public void send_openSession(TSOpenSessionReq req) - { - oprot_.WriteMessageBegin(new TMessage("openSession", TMessageType.Call, seqid_)); - openSession_args args = new openSession_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif + global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default); - public TSOpenSessionResp recv_openSession() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - openSession_result result = new openSession_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "openSession failed: unknown result"); - } + global::System.Threading.Tasks.Task deleteStorageGroupsAsync(long sessionId, List storageGroup, CancellationToken cancellationToken = default); - - #if SILVERLIGHT - - public IAsyncResult Begin_closeSession(AsyncCallback callback, object state, TSCloseSessionReq req) - { - return send_closeSession(callback, state, req); - } + global::System.Threading.Tasks.Task insertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default); - public TSStatus End_closeSession(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_closeSession(); - } + global::System.Threading.Tasks.Task insertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default); - #endif + global::System.Threading.Tasks.Task insertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); - public TSStatus closeSession(TSCloseSessionReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_closeSession(null, null, req); - return End_closeSession(asyncResult); + global::System.Threading.Tasks.Task insertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default); - #else - send_closeSession(req); - return recv_closeSession(); + global::System.Threading.Tasks.Task insertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default); - #endif - } - #if SILVERLIGHT - public IAsyncResult send_closeSession(AsyncCallback callback, object state, TSCloseSessionReq req) - { - oprot_.WriteMessageBegin(new TMessage("closeSession", TMessageType.Call, seqid_)); - closeSession_args args = new closeSession_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } + global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); - #else + global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); - public void send_closeSession(TSCloseSessionReq req) - { - oprot_.WriteMessageBegin(new TMessage("closeSession", TMessageType.Call, seqid_)); - closeSession_args args = new closeSession_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif + global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); - public TSStatus recv_closeSession() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - closeSession_result result = new closeSession_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeSession failed: unknown result"); - } + global::System.Threading.Tasks.Task testInsertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default); - - #if SILVERLIGHT - - public IAsyncResult Begin_executeStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) - { - return send_executeStatement(callback, state, req); - } + global::System.Threading.Tasks.Task testInsertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default); - public TSExecuteStatementResp End_executeStatement(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_executeStatement(); - } + global::System.Threading.Tasks.Task testInsertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default); - #endif + global::System.Threading.Tasks.Task testInsertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default); - public TSExecuteStatementResp executeStatement(TSExecuteStatementReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_executeStatement(null, null, req); - return End_executeStatement(asyncResult); + global::System.Threading.Tasks.Task testInsertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); - #else - send_executeStatement(req); - return recv_executeStatement(); + global::System.Threading.Tasks.Task testInsertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); - #endif - } - #if SILVERLIGHT - public IAsyncResult send_executeStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) - { - oprot_.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Call, seqid_)); - executeStatement_args args = new executeStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } + global::System.Threading.Tasks.Task deleteDataAsync(TSDeleteDataReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default); + + } - #else - public void send_executeStatement(TSExecuteStatementReq req) + public class Client : TBaseClient, IDisposable, IAsync + { + public Client(TProtocol protocol) : this(protocol, protocol) { - oprot_.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Call, seqid_)); - executeStatement_args args = new executeStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); } - #endif - public TSExecuteStatementResp recv_executeStatement() + public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputProtocol, outputProtocol) { + } + public async global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.openSessionArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - executeStatement_result result = new executeStatement_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.openSessionResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeStatement failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "openSession failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_executeBatchStatement(AsyncCallback callback, object state, TSExecuteBatchStatementReq req) + public async global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default) { - return send_executeBatchStatement(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.closeSessionArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSStatus End_executeBatchStatement(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_executeBatchStatement(); + var result = new InternalStructs.closeSessionResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeSession failed: unknown result"); } - #endif - - public TSStatus executeBatchStatement(TSExecuteBatchStatementReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_executeBatchStatement(null, null, req); - return End_executeBatchStatement(asyncResult); - - #else - send_executeBatchStatement(req); - return recv_executeBatchStatement(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_executeBatchStatement(AsyncCallback callback, object state, TSExecuteBatchStatementReq req) + public async global::System.Threading.Tasks.Task executeStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Call, seqid_)); - executeBatchStatement_args args = new executeBatchStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_executeBatchStatement(TSExecuteBatchStatementReq req) - { - oprot_.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Call, seqid_)); - executeBatchStatement_args args = new executeBatchStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.executeStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeStatement failed: unknown result"); } - #endif - public TSStatus recv_executeBatchStatement() + public async global::System.Threading.Tasks.Task executeBatchStatementAsync(TSExecuteBatchStatementReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeBatchStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - executeBatchStatement_result result = new executeBatchStatement_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.executeBatchStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeBatchStatement failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_executeQueryStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + public async global::System.Threading.Tasks.Task executeQueryStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) { - return send_executeQueryStatement(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeQueryStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSExecuteStatementResp End_executeQueryStatement(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_executeQueryStatement(); + var result = new InternalStructs.executeQueryStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeQueryStatement failed: unknown result"); } - #endif - - public TSExecuteStatementResp executeQueryStatement(TSExecuteStatementReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_executeQueryStatement(null, null, req); - return End_executeQueryStatement(asyncResult); - - #else - send_executeQueryStatement(req); - return recv_executeQueryStatement(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_executeQueryStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + public async global::System.Threading.Tasks.Task executeUpdateStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Call, seqid_)); - executeQueryStatement_args args = new executeQueryStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeUpdateStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_executeQueryStatement(TSExecuteStatementReq req) - { - oprot_.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Call, seqid_)); - executeQueryStatement_args args = new executeQueryStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.executeUpdateStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeUpdateStatement failed: unknown result"); } - #endif - public TSExecuteStatementResp recv_executeQueryStatement() + public async global::System.Threading.Tasks.Task fetchResultsAsync(TSFetchResultsReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.fetchResultsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - executeQueryStatement_result result = new executeQueryStatement_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.fetchResultsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeQueryStatement failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchResults failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_executeUpdateStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) + public async global::System.Threading.Tasks.Task fetchMetadataAsync(TSFetchMetadataReq req, CancellationToken cancellationToken = default) { - return send_executeUpdateStatement(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.fetchMetadataArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSExecuteStatementResp End_executeUpdateStatement(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_executeUpdateStatement(); + var result = new InternalStructs.fetchMetadataResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchMetadata failed: unknown result"); } - #endif - - public TSExecuteStatementResp executeUpdateStatement(TSExecuteStatementReq req) + public async global::System.Threading.Tasks.Task cancelOperationAsync(TSCancelOperationReq req, CancellationToken cancellationToken = default) { - #if SILVERLIGHT - var asyncResult = Begin_executeUpdateStatement(null, null, req); - return End_executeUpdateStatement(asyncResult); - - #else - send_executeUpdateStatement(req); - return recv_executeUpdateStatement(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.cancelOperationArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - #endif - } - #if SILVERLIGHT - public IAsyncResult send_executeUpdateStatement(AsyncCallback callback, object state, TSExecuteStatementReq req) - { - oprot_.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Call, seqid_)); - executeUpdateStatement_args args = new executeUpdateStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); + var result = new InternalStructs.cancelOperationResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "cancelOperation failed: unknown result"); } - #else - - public void send_executeUpdateStatement(TSExecuteStatementReq req) + public async global::System.Threading.Tasks.Task closeOperationAsync(TSCloseOperationReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Call, seqid_)); - executeUpdateStatement_args args = new executeUpdateStatement_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.closeOperationArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.closeOperationResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeOperation failed: unknown result"); } - #endif - public TSExecuteStatementResp recv_executeUpdateStatement() + public async global::System.Threading.Tasks.Task getTimeZoneAsync(long sessionId, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.getTimeZoneArgs() { + SessionId = sessionId, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - executeUpdateStatement_result result = new executeUpdateStatement_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.getTimeZoneResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeUpdateStatement failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getTimeZone failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_fetchResults(AsyncCallback callback, object state, TSFetchResultsReq req) + public async global::System.Threading.Tasks.Task setTimeZoneAsync(TSSetTimeZoneReq req, CancellationToken cancellationToken = default) { - return send_fetchResults(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setTimeZoneArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSFetchResultsResp End_fetchResults(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_fetchResults(); + var result = new InternalStructs.setTimeZoneResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setTimeZone failed: unknown result"); } - #endif - - public TSFetchResultsResp fetchResults(TSFetchResultsReq req) + public async global::System.Threading.Tasks.Task getPropertiesAsync(CancellationToken cancellationToken = default) { - #if SILVERLIGHT - var asyncResult = Begin_fetchResults(null, null, req); - return End_fetchResults(asyncResult); - - #else - send_fetchResults(req); - return recv_fetchResults(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.getPropertiesArgs() { + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - #endif - } - #if SILVERLIGHT - public IAsyncResult send_fetchResults(AsyncCallback callback, object state, TSFetchResultsReq req) - { - oprot_.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Call, seqid_)); - fetchResults_args args = new fetchResults_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); + var result = new InternalStructs.getPropertiesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getProperties failed: unknown result"); } - #else + public async global::System.Threading.Tasks.Task setStorageGroupAsync(long sessionId, string storageGroup, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setStorageGroupArgs() { + SessionId = sessionId, + StorageGroup = storageGroup, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_fetchResults(TSFetchResultsReq req) - { - oprot_.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Call, seqid_)); - fetchResults_args args = new fetchResults_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.setStorageGroupResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setStorageGroup failed: unknown result"); } - #endif - public TSFetchResultsResp recv_fetchResults() + public async global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - fetchResults_result result = new fetchResults_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.createTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchResults failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_fetchMetadata(AsyncCallback callback, object state, TSFetchMetadataReq req) + public async global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default) { - return send_fetchMetadata(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createMultiTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSFetchMetadataResp End_fetchMetadata(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_fetchMetadata(); + var result = new InternalStructs.createMultiTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createMultiTimeseries failed: unknown result"); } - #endif - - public TSFetchMetadataResp fetchMetadata(TSFetchMetadataReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_fetchMetadata(null, null, req); - return End_fetchMetadata(asyncResult); - - #else - send_fetchMetadata(req); - return recv_fetchMetadata(); + public async global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.deleteTimeseriesArgs() { + SessionId = sessionId, + Path = path, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - #endif - } - #if SILVERLIGHT - public IAsyncResult send_fetchMetadata(AsyncCallback callback, object state, TSFetchMetadataReq req) - { - oprot_.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Call, seqid_)); - fetchMetadata_args args = new fetchMetadata_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); + var result = new InternalStructs.deleteTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteTimeseries failed: unknown result"); } - #else + public async global::System.Threading.Tasks.Task deleteStorageGroupsAsync(long sessionId, List storageGroup, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.deleteStorageGroupsArgs() { + SessionId = sessionId, + StorageGroup = storageGroup, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_fetchMetadata(TSFetchMetadataReq req) - { - oprot_.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Call, seqid_)); - fetchMetadata_args args = new fetchMetadata_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.deleteStorageGroupsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteStorageGroups failed: unknown result"); } - #endif - public TSFetchMetadataResp recv_fetchMetadata() + public async global::System.Threading.Tasks.Task insertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - fetchMetadata_result result = new fetchMetadata_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.insertRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchMetadata failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecord failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_cancelOperation(AsyncCallback callback, object state, TSCancelOperationReq req) + public async global::System.Threading.Tasks.Task insertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default) { - return send_cancelOperation(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSStatus End_cancelOperation(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_cancelOperation(); + var result = new InternalStructs.insertStringRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecord failed: unknown result"); } - #endif - - public TSStatus cancelOperation(TSCancelOperationReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_cancelOperation(null, null, req); - return End_cancelOperation(asyncResult); - - #else - send_cancelOperation(req); - return recv_cancelOperation(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_cancelOperation(AsyncCallback callback, object state, TSCancelOperationReq req) + public async global::System.Threading.Tasks.Task insertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Call, seqid_)); - cancelOperation_args args = new cancelOperation_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertTabletArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_cancelOperation(TSCancelOperationReq req) - { - oprot_.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Call, seqid_)); - cancelOperation_args args = new cancelOperation_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.insertTabletResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablet failed: unknown result"); } - #endif - public TSStatus recv_cancelOperation() + public async global::System.Threading.Tasks.Task insertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertTabletsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - cancelOperation_result result = new cancelOperation_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.insertTabletsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "cancelOperation failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_closeOperation(AsyncCallback callback, object state, TSCloseOperationReq req) - { - return send_closeOperation(callback, state, req); - } - - public TSStatus End_closeOperation(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_closeOperation(); - } - - #endif - - public TSStatus closeOperation(TSCloseOperationReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_closeOperation(null, null, req); - return End_closeOperation(asyncResult); - - #else - send_closeOperation(req); - return recv_closeOperation(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_closeOperation(AsyncCallback callback, object state, TSCloseOperationReq req) - { - oprot_.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Call, seqid_)); - closeOperation_args args = new closeOperation_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_closeOperation(TSCloseOperationReq req) - { - oprot_.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Call, seqid_)); - closeOperation_args args = new closeOperation_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablets failed: unknown result"); } - #endif - public TSStatus recv_closeOperation() + public async global::System.Threading.Tasks.Task insertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - closeOperation_result result = new closeOperation_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.insertRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeOperation failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecords failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_getTimeZone(AsyncCallback callback, object state, long sessionId) + public async global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) { - return send_getTimeZone(callback, state, sessionId); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSGetTimeZoneResp End_getTimeZone(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_getTimeZone(); + var result = new InternalStructs.insertRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); } - #endif - - public TSGetTimeZoneResp getTimeZone(long sessionId) - { - #if SILVERLIGHT - var asyncResult = Begin_getTimeZone(null, null, sessionId); - return End_getTimeZone(asyncResult); - - #else - send_getTimeZone(sessionId); - return recv_getTimeZone(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_getTimeZone(AsyncCallback callback, object state, long sessionId) + public async global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Call, seqid_)); - getTimeZone_args args = new getTimeZone_args(); - args.SessionId = sessionId; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_getTimeZone(long sessionId) - { - oprot_.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Call, seqid_)); - getTimeZone_args args = new getTimeZone_args(); - args.SessionId = sessionId; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.insertStringRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecords failed: unknown result"); } - #endif - public TSGetTimeZoneResp recv_getTimeZone() + public async global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertTabletArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - getTimeZone_result result = new getTimeZone_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.testInsertTabletResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getTimeZone failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablet failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_setTimeZone(AsyncCallback callback, object state, TSSetTimeZoneReq req) + public async global::System.Threading.Tasks.Task testInsertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default) { - return send_setTimeZone(callback, state, req); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertTabletsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSStatus End_setTimeZone(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_setTimeZone(); + var result = new InternalStructs.testInsertTabletsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablets failed: unknown result"); } - #endif - - public TSStatus setTimeZone(TSSetTimeZoneReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_setTimeZone(null, null, req); - return End_setTimeZone(asyncResult); - - #else - send_setTimeZone(req); - return recv_setTimeZone(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_setTimeZone(AsyncCallback callback, object state, TSSetTimeZoneReq req) + public async global::System.Threading.Tasks.Task testInsertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Call, seqid_)); - setTimeZone_args args = new setTimeZone_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_setTimeZone(TSSetTimeZoneReq req) - { - oprot_.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Call, seqid_)); - setTimeZone_args args = new setTimeZone_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.testInsertRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecord failed: unknown result"); } - #endif - public TSStatus recv_setTimeZone() + public async global::System.Threading.Tasks.Task testInsertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertStringRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - setTimeZone_result result = new setTimeZone_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.testInsertStringRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setTimeZone failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecord failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_getProperties(AsyncCallback callback, object state) + public async global::System.Threading.Tasks.Task testInsertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default) { - return send_getProperties(callback, state); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public ServerProperties End_getProperties(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_getProperties(); + var result = new InternalStructs.testInsertRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecords failed: unknown result"); } - #endif - - public ServerProperties getProperties() - { - #if SILVERLIGHT - var asyncResult = Begin_getProperties(null, null); - return End_getProperties(asyncResult); - - #else - send_getProperties(); - return recv_getProperties(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_getProperties(AsyncCallback callback, object state) + public async global::System.Threading.Tasks.Task testInsertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("getProperties", TMessageType.Call, seqid_)); - getProperties_args args = new getProperties_args(); - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_getProperties() - { - oprot_.WriteMessageBegin(new TMessage("getProperties", TMessageType.Call, seqid_)); - getProperties_args args = new getProperties_args(); - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.testInsertRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecordsOfOneDevice failed: unknown result"); } - #endif - public ServerProperties recv_getProperties() + public async global::System.Threading.Tasks.Task testInsertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertStringRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - getProperties_result result = new getProperties_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.testInsertStringRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getProperties failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecords failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_setStorageGroup(AsyncCallback callback, object state, long sessionId, string storageGroup) + public async global::System.Threading.Tasks.Task deleteDataAsync(TSDeleteDataReq req, CancellationToken cancellationToken = default) { - return send_setStorageGroup(callback, state, sessionId, storageGroup); - } + await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.deleteDataArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public TSStatus End_setStorageGroup(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_setStorageGroup(); + var result = new InternalStructs.deleteDataResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteData failed: unknown result"); } - #endif - - public TSStatus setStorageGroup(long sessionId, string storageGroup) - { - #if SILVERLIGHT - var asyncResult = Begin_setStorageGroup(null, null, sessionId, storageGroup); - return End_setStorageGroup(asyncResult); - - #else - send_setStorageGroup(sessionId, storageGroup); - return recv_setStorageGroup(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_setStorageGroup(AsyncCallback callback, object state, long sessionId, string storageGroup) + public async global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default) { - oprot_.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Call, seqid_)); - setStorageGroup_args args = new setStorageGroup_args(); - args.SessionId = sessionId; - args.StorageGroup = storageGroup; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeRawDataQueryArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public void send_setStorageGroup(long sessionId, string storageGroup) - { - oprot_.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Call, seqid_)); - setStorageGroup_args args = new setStorageGroup_args(); - args.SessionId = sessionId; - args.StorageGroup = storageGroup; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var result = new InternalStructs.executeRawDataQueryResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); } - #endif - public TSStatus recv_setStorageGroup() + public async global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.requestStatementIdArgs() { + SessionId = sessionId, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); throw x; } - setStorageGroup_result result = new setStorageGroup_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { + + var result = new InternalStructs.requestStatementIdResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { return result.Success; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setStorageGroup failed: unknown result"); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); } - - #if SILVERLIGHT - - public IAsyncResult Begin_createTimeseries(AsyncCallback callback, object state, TSCreateTimeseriesReq req) - { - return send_createTimeseries(callback, state, req); - } + } + + public class AsyncProcessor : ITAsyncProcessor + { + private readonly IAsync _iAsync; + private readonly ILogger _logger; + + public AsyncProcessor(IAsync iAsync, ILogger logger = default) + { + _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); + _logger = logger; + processMap_["openSession"] = openSession_ProcessAsync; + processMap_["closeSession"] = closeSession_ProcessAsync; + processMap_["executeStatement"] = executeStatement_ProcessAsync; + processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; + processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; + processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; + processMap_["fetchResults"] = fetchResults_ProcessAsync; + processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; + processMap_["cancelOperation"] = cancelOperation_ProcessAsync; + processMap_["closeOperation"] = closeOperation_ProcessAsync; + processMap_["getTimeZone"] = getTimeZone_ProcessAsync; + processMap_["setTimeZone"] = setTimeZone_ProcessAsync; + processMap_["getProperties"] = getProperties_ProcessAsync; + processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; + processMap_["createTimeseries"] = createTimeseries_ProcessAsync; + processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; + processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; + processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; + processMap_["insertRecord"] = insertRecord_ProcessAsync; + processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; + processMap_["insertTablet"] = insertTablet_ProcessAsync; + processMap_["insertTablets"] = insertTablets_ProcessAsync; + processMap_["insertRecords"] = insertRecords_ProcessAsync; + processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; + processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; + processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; + processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; + processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; + processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; + processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; + processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; + processMap_["deleteData"] = deleteData_ProcessAsync; + processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; + processMap_["requestStatementId"] = requestStatementId_ProcessAsync; + } + + protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); + protected Dictionary processMap_ = new Dictionary(); - public TSStatus End_createTimeseries(IAsyncResult asyncResult) + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) { - oprot_.Transport.EndFlush(asyncResult); - return recv_createTimeseries(); + return await ProcessAsync(iprot, oprot, CancellationToken.None); } - #endif - - public TSStatus createTimeseries(TSCreateTimeseriesReq req) + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - #if SILVERLIGHT - var asyncResult = Begin_createTimeseries(null, null, req); - return End_createTimeseries(asyncResult); + try + { + var msg = await iprot.ReadMessageBeginAsync(cancellationToken); - #else - send_createTimeseries(req); - return recv_createTimeseries(); + processMap_.TryGetValue(msg.Name, out ProcessFunction fn); - #endif - } - #if SILVERLIGHT - public IAsyncResult send_createTimeseries(AsyncCallback callback, object state, TSCreateTimeseriesReq req) - { - oprot_.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Call, seqid_)); - createTimeseries_args args = new createTimeseries_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } + if (fn == null) + { + await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); + await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + return true; + } - #else + await fn(msg.SeqID, iprot, oprot, cancellationToken); - public void send_createTimeseries(TSCreateTimeseriesReq req) - { - oprot_.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Call, seqid_)); - createTimeseries_args args = new createTimeseries_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + } + catch (IOException) + { + return false; + } + + return true; } - #endif - public TSStatus recv_createTimeseries() + public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; + var args = new InternalStructs.openSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.openSessionResult(); + try + { + result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - createTimeseries_result result = new createTimeseries_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; + catch (TTransportException) + { + throw; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - - #if SILVERLIGHT - - public IAsyncResult Begin_createMultiTimeseries(AsyncCallback callback, object state, TSCreateMultiTimeseriesReq req) + public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - return send_createMultiTimeseries(callback, state, req); + var args = new InternalStructs.closeSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeSessionResult(); + try + { + result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public TSStatus End_createMultiTimeseries(IAsyncResult asyncResult) + public async global::System.Threading.Tasks.Task executeStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - oprot_.Transport.EndFlush(asyncResult); - return recv_createMultiTimeseries(); + var args = new InternalStructs.executeStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeStatementResult(); + try + { + result.Success = await _iAsync.executeStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - #endif - - public TSStatus createMultiTimeseries(TSCreateMultiTimeseriesReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_createMultiTimeseries(null, null, req); - return End_createMultiTimeseries(asyncResult); - - #else - send_createMultiTimeseries(req); - return recv_createMultiTimeseries(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_createMultiTimeseries(AsyncCallback callback, object state, TSCreateMultiTimeseriesReq req) + public async global::System.Threading.Tasks.Task executeBatchStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - oprot_.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Call, seqid_)); - createMultiTimeseries_args args = new createMultiTimeseries_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); + var args = new InternalStructs.executeBatchStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeBatchStatementResult(); + try + { + result.Success = await _iAsync.executeBatchStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - #else - - public void send_createMultiTimeseries(TSCreateMultiTimeseriesReq req) + public async global::System.Threading.Tasks.Task executeQueryStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - oprot_.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Call, seqid_)); - createMultiTimeseries_args args = new createMultiTimeseries_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); + var args = new InternalStructs.executeQueryStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeQueryStatementResult(); + try + { + result.Success = await _iAsync.executeQueryStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - #endif - public TSStatus recv_createMultiTimeseries() + public async global::System.Threading.Tasks.Task executeUpdateStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; + var args = new InternalStructs.executeUpdateStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeUpdateStatementResult(); + try + { + result.Success = await _iAsync.executeUpdateStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - createMultiTimeseries_result result = new createMultiTimeseries_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; + catch (TTransportException) + { + throw; } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createMultiTimeseries failed: unknown result"); + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - - #if SILVERLIGHT - - public IAsyncResult Begin_deleteTimeseries(AsyncCallback callback, object state, long sessionId, List path) + public async global::System.Threading.Tasks.Task fetchResults_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - return send_deleteTimeseries(callback, state, sessionId, path); + var args = new InternalStructs.fetchResultsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchResultsResult(); + try + { + result.Success = await _iAsync.fetchResultsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public TSStatus End_deleteTimeseries(IAsyncResult asyncResult) + public async global::System.Threading.Tasks.Task fetchMetadata_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - oprot_.Transport.EndFlush(asyncResult); - return recv_deleteTimeseries(); + var args = new InternalStructs.fetchMetadataArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchMetadataResult(); + try + { + result.Success = await _iAsync.fetchMetadataAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - #endif - - public TSStatus deleteTimeseries(long sessionId, List path) - { - #if SILVERLIGHT - var asyncResult = Begin_deleteTimeseries(null, null, sessionId, path); - return End_deleteTimeseries(asyncResult); - - #else - send_deleteTimeseries(sessionId, path); - return recv_deleteTimeseries(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_deleteTimeseries(AsyncCallback callback, object state, long sessionId, List path) - { - oprot_.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Call, seqid_)); - deleteTimeseries_args args = new deleteTimeseries_args(); - args.SessionId = sessionId; - args.Path = path; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_deleteTimeseries(long sessionId, List path) - { - oprot_.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Call, seqid_)); - deleteTimeseries_args args = new deleteTimeseries_args(); - args.SessionId = sessionId; - args.Path = path; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_deleteTimeseries() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - deleteTimeseries_result result = new deleteTimeseries_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteTimeseries failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_deleteStorageGroups(AsyncCallback callback, object state, long sessionId, List storageGroup) - { - return send_deleteStorageGroups(callback, state, sessionId, storageGroup); - } - - public TSStatus End_deleteStorageGroups(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_deleteStorageGroups(); - } - - #endif - - public TSStatus deleteStorageGroups(long sessionId, List storageGroup) - { - #if SILVERLIGHT - var asyncResult = Begin_deleteStorageGroups(null, null, sessionId, storageGroup); - return End_deleteStorageGroups(asyncResult); - - #else - send_deleteStorageGroups(sessionId, storageGroup); - return recv_deleteStorageGroups(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_deleteStorageGroups(AsyncCallback callback, object state, long sessionId, List storageGroup) - { - oprot_.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Call, seqid_)); - deleteStorageGroups_args args = new deleteStorageGroups_args(); - args.SessionId = sessionId; - args.StorageGroup = storageGroup; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_deleteStorageGroups(long sessionId, List storageGroup) - { - oprot_.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Call, seqid_)); - deleteStorageGroups_args args = new deleteStorageGroups_args(); - args.SessionId = sessionId; - args.StorageGroup = storageGroup; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_deleteStorageGroups() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - deleteStorageGroups_result result = new deleteStorageGroups_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteStorageGroups failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) - { - return send_insertRecord(callback, state, req); - } - - public TSStatus End_insertRecord(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertRecord(); - } - - #endif - - public TSStatus insertRecord(TSInsertRecordReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertRecord(null, null, req); - return End_insertRecord(asyncResult); - - #else - send_insertRecord(req); - return recv_insertRecord(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Call, seqid_)); - insertRecord_args args = new insertRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertRecord(TSInsertRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Call, seqid_)); - insertRecord_args args = new insertRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertRecord() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertRecord_result result = new insertRecord_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecord failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) - { - return send_insertStringRecord(callback, state, req); - } - - public TSStatus End_insertStringRecord(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertStringRecord(); - } - - #endif - - public TSStatus insertStringRecord(TSInsertStringRecordReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertStringRecord(null, null, req); - return End_insertStringRecord(asyncResult); - - #else - send_insertStringRecord(req); - return recv_insertStringRecord(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Call, seqid_)); - insertStringRecord_args args = new insertStringRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertStringRecord(TSInsertStringRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Call, seqid_)); - insertStringRecord_args args = new insertStringRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertStringRecord() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertStringRecord_result result = new insertStringRecord_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecord failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) - { - return send_insertTablet(callback, state, req); - } - - public TSStatus End_insertTablet(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertTablet(); - } - - #endif - - public TSStatus insertTablet(TSInsertTabletReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertTablet(null, null, req); - return End_insertTablet(asyncResult); - - #else - send_insertTablet(req); - return recv_insertTablet(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Call, seqid_)); - insertTablet_args args = new insertTablet_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertTablet(TSInsertTabletReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Call, seqid_)); - insertTablet_args args = new insertTablet_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertTablet() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertTablet_result result = new insertTablet_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablet failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) - { - return send_insertTablets(callback, state, req); - } - - public TSStatus End_insertTablets(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertTablets(); - } - - #endif - - public TSStatus insertTablets(TSInsertTabletsReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertTablets(null, null, req); - return End_insertTablets(asyncResult); - - #else - send_insertTablets(req); - return recv_insertTablets(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Call, seqid_)); - insertTablets_args args = new insertTablets_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertTablets(TSInsertTabletsReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Call, seqid_)); - insertTablets_args args = new insertTablets_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertTablets() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertTablets_result result = new insertTablets_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablets failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) - { - return send_insertRecords(callback, state, req); - } - - public TSStatus End_insertRecords(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertRecords(); - } - - #endif - - public TSStatus insertRecords(TSInsertRecordsReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertRecords(null, null, req); - return End_insertRecords(asyncResult); - - #else - send_insertRecords(req); - return recv_insertRecords(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Call, seqid_)); - insertRecords_args args = new insertRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertRecords(TSInsertRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Call, seqid_)); - insertRecords_args args = new insertRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertRecords() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertRecords_result result = new insertRecords_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecords failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) - { - return send_insertRecordsOfOneDevice(callback, state, req); - } - - public TSStatus End_insertRecordsOfOneDevice(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertRecordsOfOneDevice(); - } - - #endif - - public TSStatus insertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertRecordsOfOneDevice(null, null, req); - return End_insertRecordsOfOneDevice(asyncResult); - - #else - send_insertRecordsOfOneDevice(req); - return recv_insertRecordsOfOneDevice(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, seqid_)); - insertRecordsOfOneDevice_args args = new insertRecordsOfOneDevice_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, seqid_)); - insertRecordsOfOneDevice_args args = new insertRecordsOfOneDevice_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertRecordsOfOneDevice() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertRecordsOfOneDevice_result result = new insertRecordsOfOneDevice_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_insertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) - { - return send_insertStringRecords(callback, state, req); - } - - public TSStatus End_insertStringRecords(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_insertStringRecords(); - } - - #endif - - public TSStatus insertStringRecords(TSInsertStringRecordsReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_insertStringRecords(null, null, req); - return End_insertStringRecords(asyncResult); - - #else - send_insertStringRecords(req); - return recv_insertStringRecords(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_insertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Call, seqid_)); - insertStringRecords_args args = new insertStringRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_insertStringRecords(TSInsertStringRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Call, seqid_)); - insertStringRecords_args args = new insertStringRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_insertStringRecords() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - insertStringRecords_result result = new insertStringRecords_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecords failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) - { - return send_testInsertTablet(callback, state, req); - } - - public TSStatus End_testInsertTablet(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertTablet(); - } - - #endif - - public TSStatus testInsertTablet(TSInsertTabletReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertTablet(null, null, req); - return End_testInsertTablet(asyncResult); - - #else - send_testInsertTablet(req); - return recv_testInsertTablet(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertTablet(AsyncCallback callback, object state, TSInsertTabletReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Call, seqid_)); - testInsertTablet_args args = new testInsertTablet_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertTablet(TSInsertTabletReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Call, seqid_)); - testInsertTablet_args args = new testInsertTablet_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertTablet() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertTablet_result result = new testInsertTablet_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablet failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) - { - return send_testInsertTablets(callback, state, req); - } - - public TSStatus End_testInsertTablets(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertTablets(); - } - - #endif - - public TSStatus testInsertTablets(TSInsertTabletsReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertTablets(null, null, req); - return End_testInsertTablets(asyncResult); - - #else - send_testInsertTablets(req); - return recv_testInsertTablets(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertTablets(AsyncCallback callback, object state, TSInsertTabletsReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Call, seqid_)); - testInsertTablets_args args = new testInsertTablets_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertTablets(TSInsertTabletsReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Call, seqid_)); - testInsertTablets_args args = new testInsertTablets_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertTablets() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertTablets_result result = new testInsertTablets_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablets failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) - { - return send_testInsertRecord(callback, state, req); - } - - public TSStatus End_testInsertRecord(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertRecord(); - } - - #endif - - public TSStatus testInsertRecord(TSInsertRecordReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertRecord(null, null, req); - return End_testInsertRecord(asyncResult); - - #else - send_testInsertRecord(req); - return recv_testInsertRecord(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertRecord(AsyncCallback callback, object state, TSInsertRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Call, seqid_)); - testInsertRecord_args args = new testInsertRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertRecord(TSInsertRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Call, seqid_)); - testInsertRecord_args args = new testInsertRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertRecord() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertRecord_result result = new testInsertRecord_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecord failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) - { - return send_testInsertStringRecord(callback, state, req); - } - - public TSStatus End_testInsertStringRecord(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertStringRecord(); - } - - #endif - - public TSStatus testInsertStringRecord(TSInsertStringRecordReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertStringRecord(null, null, req); - return End_testInsertStringRecord(asyncResult); - - #else - send_testInsertStringRecord(req); - return recv_testInsertStringRecord(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertStringRecord(AsyncCallback callback, object state, TSInsertStringRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Call, seqid_)); - testInsertStringRecord_args args = new testInsertStringRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertStringRecord(TSInsertStringRecordReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Call, seqid_)); - testInsertStringRecord_args args = new testInsertStringRecord_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertStringRecord() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertStringRecord_result result = new testInsertStringRecord_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecord failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) - { - return send_testInsertRecords(callback, state, req); - } - - public TSStatus End_testInsertRecords(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertRecords(); - } - - #endif - - public TSStatus testInsertRecords(TSInsertRecordsReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertRecords(null, null, req); - return End_testInsertRecords(asyncResult); - - #else - send_testInsertRecords(req); - return recv_testInsertRecords(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertRecords(AsyncCallback callback, object state, TSInsertRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Call, seqid_)); - testInsertRecords_args args = new testInsertRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertRecords(TSInsertRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Call, seqid_)); - testInsertRecords_args args = new testInsertRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertRecords() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertRecords_result result = new testInsertRecords_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecords failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) - { - return send_testInsertRecordsOfOneDevice(callback, state, req); - } - - public TSStatus End_testInsertRecordsOfOneDevice(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertRecordsOfOneDevice(); - } - - #endif - - public TSStatus testInsertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertRecordsOfOneDevice(null, null, req); - return End_testInsertRecordsOfOneDevice(asyncResult); - - #else - send_testInsertRecordsOfOneDevice(req); - return recv_testInsertRecordsOfOneDevice(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertRecordsOfOneDevice(AsyncCallback callback, object state, TSInsertRecordsOfOneDeviceReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, seqid_)); - testInsertRecordsOfOneDevice_args args = new testInsertRecordsOfOneDevice_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertRecordsOfOneDevice(TSInsertRecordsOfOneDeviceReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, seqid_)); - testInsertRecordsOfOneDevice_args args = new testInsertRecordsOfOneDevice_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertRecordsOfOneDevice() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertRecordsOfOneDevice_result result = new testInsertRecordsOfOneDevice_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecordsOfOneDevice failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_testInsertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) - { - return send_testInsertStringRecords(callback, state, req); - } - - public TSStatus End_testInsertStringRecords(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_testInsertStringRecords(); - } - - #endif - - public TSStatus testInsertStringRecords(TSInsertStringRecordsReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_testInsertStringRecords(null, null, req); - return End_testInsertStringRecords(asyncResult); - - #else - send_testInsertStringRecords(req); - return recv_testInsertStringRecords(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_testInsertStringRecords(AsyncCallback callback, object state, TSInsertStringRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Call, seqid_)); - testInsertStringRecords_args args = new testInsertStringRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_testInsertStringRecords(TSInsertStringRecordsReq req) - { - oprot_.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Call, seqid_)); - testInsertStringRecords_args args = new testInsertStringRecords_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_testInsertStringRecords() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - testInsertStringRecords_result result = new testInsertStringRecords_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecords failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_deleteData(AsyncCallback callback, object state, TSDeleteDataReq req) - { - return send_deleteData(callback, state, req); - } - - public TSStatus End_deleteData(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_deleteData(); - } - - #endif - - public TSStatus deleteData(TSDeleteDataReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_deleteData(null, null, req); - return End_deleteData(asyncResult); - - #else - send_deleteData(req); - return recv_deleteData(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_deleteData(AsyncCallback callback, object state, TSDeleteDataReq req) - { - oprot_.WriteMessageBegin(new TMessage("deleteData", TMessageType.Call, seqid_)); - deleteData_args args = new deleteData_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_deleteData(TSDeleteDataReq req) - { - oprot_.WriteMessageBegin(new TMessage("deleteData", TMessageType.Call, seqid_)); - deleteData_args args = new deleteData_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSStatus recv_deleteData() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - deleteData_result result = new deleteData_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteData failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_executeRawDataQuery(AsyncCallback callback, object state, TSRawDataQueryReq req) - { - return send_executeRawDataQuery(callback, state, req); - } - - public TSExecuteStatementResp End_executeRawDataQuery(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_executeRawDataQuery(); - } - - #endif - - public TSExecuteStatementResp executeRawDataQuery(TSRawDataQueryReq req) - { - #if SILVERLIGHT - var asyncResult = Begin_executeRawDataQuery(null, null, req); - return End_executeRawDataQuery(asyncResult); - - #else - send_executeRawDataQuery(req); - return recv_executeRawDataQuery(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_executeRawDataQuery(AsyncCallback callback, object state, TSRawDataQueryReq req) - { - oprot_.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Call, seqid_)); - executeRawDataQuery_args args = new executeRawDataQuery_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_executeRawDataQuery(TSRawDataQueryReq req) - { - oprot_.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Call, seqid_)); - executeRawDataQuery_args args = new executeRawDataQuery_args(); - args.Req = req; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public TSExecuteStatementResp recv_executeRawDataQuery() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - executeRawDataQuery_result result = new executeRawDataQuery_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); - } - - - #if SILVERLIGHT - - public IAsyncResult Begin_requestStatementId(AsyncCallback callback, object state, long sessionId) - { - return send_requestStatementId(callback, state, sessionId); - } - - public long End_requestStatementId(IAsyncResult asyncResult) - { - oprot_.Transport.EndFlush(asyncResult); - return recv_requestStatementId(); - } - - #endif - - public long requestStatementId(long sessionId) - { - #if SILVERLIGHT - var asyncResult = Begin_requestStatementId(null, null, sessionId); - return End_requestStatementId(asyncResult); - - #else - send_requestStatementId(sessionId); - return recv_requestStatementId(); - - #endif - } - #if SILVERLIGHT - public IAsyncResult send_requestStatementId(AsyncCallback callback, object state, long sessionId) - { - oprot_.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Call, seqid_)); - requestStatementId_args args = new requestStatementId_args(); - args.SessionId = sessionId; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - return oprot_.Transport.BeginFlush(callback, state); - } - - #else - - public void send_requestStatementId(long sessionId) - { - oprot_.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Call, seqid_)); - requestStatementId_args args = new requestStatementId_args(); - args.SessionId = sessionId; - args.Write(oprot_); - oprot_.WriteMessageEnd(); - oprot_.Transport.Flush(); - } - #endif - - public long recv_requestStatementId() - { - TMessage msg = iprot_.ReadMessageBegin(); - if (msg.Type == TMessageType.Exception) { - TApplicationException x = TApplicationException.Read(iprot_); - iprot_.ReadMessageEnd(); - throw x; - } - requestStatementId_result result = new requestStatementId_result(); - result.Read(iprot_); - iprot_.ReadMessageEnd(); - if (result.__isset.success) { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); - } - - } - public class Processor : TProcessor { - public Processor(ISync iface) - { - iface_ = iface; - processMap_["openSession"] = openSession_Process; - processMap_["closeSession"] = closeSession_Process; - processMap_["executeStatement"] = executeStatement_Process; - processMap_["executeBatchStatement"] = executeBatchStatement_Process; - processMap_["executeQueryStatement"] = executeQueryStatement_Process; - processMap_["executeUpdateStatement"] = executeUpdateStatement_Process; - processMap_["fetchResults"] = fetchResults_Process; - processMap_["fetchMetadata"] = fetchMetadata_Process; - processMap_["cancelOperation"] = cancelOperation_Process; - processMap_["closeOperation"] = closeOperation_Process; - processMap_["getTimeZone"] = getTimeZone_Process; - processMap_["setTimeZone"] = setTimeZone_Process; - processMap_["getProperties"] = getProperties_Process; - processMap_["setStorageGroup"] = setStorageGroup_Process; - processMap_["createTimeseries"] = createTimeseries_Process; - processMap_["createMultiTimeseries"] = createMultiTimeseries_Process; - processMap_["deleteTimeseries"] = deleteTimeseries_Process; - processMap_["deleteStorageGroups"] = deleteStorageGroups_Process; - processMap_["insertRecord"] = insertRecord_Process; - processMap_["insertStringRecord"] = insertStringRecord_Process; - processMap_["insertTablet"] = insertTablet_Process; - processMap_["insertTablets"] = insertTablets_Process; - processMap_["insertRecords"] = insertRecords_Process; - processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_Process; - processMap_["insertStringRecords"] = insertStringRecords_Process; - processMap_["testInsertTablet"] = testInsertTablet_Process; - processMap_["testInsertTablets"] = testInsertTablets_Process; - processMap_["testInsertRecord"] = testInsertRecord_Process; - processMap_["testInsertStringRecord"] = testInsertStringRecord_Process; - processMap_["testInsertRecords"] = testInsertRecords_Process; - processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_Process; - processMap_["testInsertStringRecords"] = testInsertStringRecords_Process; - processMap_["deleteData"] = deleteData_Process; - processMap_["executeRawDataQuery"] = executeRawDataQuery_Process; - processMap_["requestStatementId"] = requestStatementId_Process; - } - - protected delegate void ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot); - private ISync iface_; - protected Dictionary processMap_ = new Dictionary(); - - public bool Process(TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task cancelOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { + var args = new InternalStructs.cancelOperationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.cancelOperationResult(); try { - TMessage msg = iprot.ReadMessageBegin(); - ProcessFunction fn; - processMap_.TryGetValue(msg.Name, out fn); - if (fn == null) { - TProtocolUtil.Skip(iprot, TType.Struct); - iprot.ReadMessageEnd(); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); - oprot.WriteMessageBegin(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID)); - x.Write(oprot); - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); - return true; - } - fn(msg.SeqID, iprot, oprot); + result.Success = await _iAsync.cancelOperationAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - catch (IOException) + catch (TTransportException) { - return false; + throw; } - return true; + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void openSession_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task closeOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - openSession_args args = new openSession_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - openSession_result result = new openSession_result(); + var args = new InternalStructs.closeOperationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeOperationResult(); try { - result.Success = iface_.openSession(args.Req); - oprot.WriteMessageBegin(new TMessage("openSession", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.closeOperationAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2762,27 +1549,30 @@ public void openSession_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("openSession", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void closeSession_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task getTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - closeSession_args args = new closeSession_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - closeSession_result result = new closeSession_result(); + var args = new InternalStructs.getTimeZoneArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.getTimeZoneResult(); try { - result.Success = iface_.closeSession(args.Req); - oprot.WriteMessageBegin(new TMessage("closeSession", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.getTimeZoneAsync(args.SessionId, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2790,27 +1580,30 @@ public void closeSession_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("closeSession", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void executeStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task setTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - executeStatement_args args = new executeStatement_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - executeStatement_result result = new executeStatement_result(); + var args = new InternalStructs.setTimeZoneArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setTimeZoneResult(); try { - result.Success = iface_.executeStatement(args.Req); - oprot.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.setTimeZoneAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2818,27 +1611,30 @@ public void executeStatement_Process(int seqid, TProtocol iprot, TProtocol oprot } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("executeStatement", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void executeBatchStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task getProperties_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - executeBatchStatement_args args = new executeBatchStatement_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - executeBatchStatement_result result = new executeBatchStatement_result(); + var args = new InternalStructs.getPropertiesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.getPropertiesResult(); try { - result.Success = iface_.executeBatchStatement(args.Req); - oprot.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.getPropertiesAsync(cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2846,27 +1642,30 @@ public void executeBatchStatement_Process(int seqid, TProtocol iprot, TProtocol } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("executeBatchStatement", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void executeQueryStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task setStorageGroup_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - executeQueryStatement_args args = new executeQueryStatement_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - executeQueryStatement_result result = new executeQueryStatement_result(); + var args = new InternalStructs.setStorageGroupArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setStorageGroupResult(); try { - result.Success = iface_.executeQueryStatement(args.Req); - oprot.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.setStorageGroupAsync(args.SessionId, args.StorageGroup, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2874,27 +1673,30 @@ public void executeQueryStatement_Process(int seqid, TProtocol iprot, TProtocol } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("executeQueryStatement", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void executeUpdateStatement_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task createTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - executeUpdateStatement_args args = new executeUpdateStatement_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - executeUpdateStatement_result result = new executeUpdateStatement_result(); + var args = new InternalStructs.createTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createTimeseriesResult(); try { - result.Success = iface_.executeUpdateStatement(args.Req); - oprot.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.createTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2902,27 +1704,30 @@ public void executeUpdateStatement_Process(int seqid, TProtocol iprot, TProtocol } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void fetchResults_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - fetchResults_args args = new fetchResults_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - fetchResults_result result = new fetchResults_result(); + var args = new InternalStructs.createMultiTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createMultiTimeseriesResult(); try { - result.Success = iface_.fetchResults(args.Req); - oprot.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2930,27 +1735,30 @@ public void fetchResults_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("fetchResults", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void fetchMetadata_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - fetchMetadata_args args = new fetchMetadata_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - fetchMetadata_result result = new fetchMetadata_result(); + var args = new InternalStructs.deleteTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteTimeseriesResult(); try { - result.Success = iface_.fetchMetadata(args.Req); - oprot.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2958,27 +1766,30 @@ public void fetchMetadata_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("fetchMetadata", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void cancelOperation_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - cancelOperation_args args = new cancelOperation_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - cancelOperation_result result = new cancelOperation_result(); + var args = new InternalStructs.deleteStorageGroupsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteStorageGroupsResult(); try { - result.Success = iface_.cancelOperation(args.Req); - oprot.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.deleteStorageGroupsAsync(args.SessionId, args.StorageGroup, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -2986,27 +1797,30 @@ public void cancelOperation_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("cancelOperation", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void closeOperation_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - closeOperation_args args = new closeOperation_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - closeOperation_result result = new closeOperation_result(); + var args = new InternalStructs.insertRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertRecordResult(); try { - result.Success = iface_.closeOperation(args.Req); - oprot.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3014,27 +1828,30 @@ public void closeOperation_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("closeOperation", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void getTimeZone_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertStringRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - getTimeZone_args args = new getTimeZone_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - getTimeZone_result result = new getTimeZone_result(); + var args = new InternalStructs.insertStringRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordResult(); try { - result.Success = iface_.getTimeZone(args.SessionId); - oprot.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertStringRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3042,27 +1859,30 @@ public void getTimeZone_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("getTimeZone", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void setTimeZone_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertTablet_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - setTimeZone_args args = new setTimeZone_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - setTimeZone_result result = new setTimeZone_result(); + var args = new InternalStructs.insertTabletArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertTabletResult(); try { - result.Success = iface_.setTimeZone(args.Req); - oprot.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertTabletAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3070,27 +1890,30 @@ public void setTimeZone_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("setTimeZone", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void getProperties_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertTablets_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - getProperties_args args = new getProperties_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - getProperties_result result = new getProperties_result(); + var args = new InternalStructs.insertTabletsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertTabletsResult(); try { - result.Success = iface_.getProperties(); - oprot.WriteMessageBegin(new TMessage("getProperties", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertTabletsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3098,27 +1921,30 @@ public void getProperties_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("getProperties", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void setStorageGroup_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - setStorageGroup_args args = new setStorageGroup_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - setStorageGroup_result result = new setStorageGroup_result(); + var args = new InternalStructs.insertRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertRecordsResult(); try { - result.Success = iface_.setStorageGroup(args.SessionId, args.StorageGroup); - oprot.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3126,27 +1952,30 @@ public void setStorageGroup_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("setStorageGroup", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void createTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - createTimeseries_args args = new createTimeseries_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - createTimeseries_result result = new createTimeseries_result(); + var args = new InternalStructs.insertRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertRecordsOfOneDeviceResult(); try { - result.Success = iface_.createTimeseries(args.Req); - oprot.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3154,27 +1983,30 @@ public void createTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("createTimeseries", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void createMultiTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task insertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - createMultiTimeseries_args args = new createMultiTimeseries_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - createMultiTimeseries_result result = new createMultiTimeseries_result(); + var args = new InternalStructs.insertStringRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordsResult(); try { - result.Success = iface_.createMultiTimeseries(args.Req); - oprot.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.insertStringRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3182,27 +2014,30 @@ public void createMultiTimeseries_Process(int seqid, TProtocol iprot, TProtocol } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void deleteTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertTablet_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - deleteTimeseries_args args = new deleteTimeseries_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - deleteTimeseries_result result = new deleteTimeseries_result(); + var args = new InternalStructs.testInsertTabletArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertTabletResult(); try { - result.Success = iface_.deleteTimeseries(args.SessionId, args.Path); - oprot.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertTabletAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3210,27 +2045,30 @@ public void deleteTimeseries_Process(int seqid, TProtocol iprot, TProtocol oprot } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("deleteTimeseries", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void deleteStorageGroups_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertTablets_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - deleteStorageGroups_args args = new deleteStorageGroups_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - deleteStorageGroups_result result = new deleteStorageGroups_result(); + var args = new InternalStructs.testInsertTabletsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertTabletsResult(); try { - result.Success = iface_.deleteStorageGroups(args.SessionId, args.StorageGroup); - oprot.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertTabletsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3238,27 +2076,30 @@ public void deleteStorageGroups_Process(int seqid, TProtocol iprot, TProtocol op } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("deleteStorageGroups", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertRecord_args args = new insertRecord_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertRecord_result result = new insertRecord_result(); + var args = new InternalStructs.testInsertRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertRecordResult(); try { - result.Success = iface_.insertRecord(args.Req); - oprot.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3266,27 +2107,30 @@ public void insertRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertRecord", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertStringRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertStringRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertStringRecord_args args = new insertStringRecord_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertStringRecord_result result = new insertStringRecord_result(); + var args = new InternalStructs.testInsertStringRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertStringRecordResult(); try { - result.Success = iface_.insertStringRecord(args.Req); - oprot.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertStringRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3294,27 +2138,30 @@ public void insertStringRecord_Process(int seqid, TProtocol iprot, TProtocol opr } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertStringRecord", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertTablet_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertTablet_args args = new insertTablet_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertTablet_result result = new insertTablet_result(); + var args = new InternalStructs.testInsertRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertRecordsResult(); try { - result.Success = iface_.insertTablet(args.Req); - oprot.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3322,27 +2169,30 @@ public void insertTablet_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertTablet", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertTablets_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertTablets_args args = new insertTablets_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertTablets_result result = new insertTablets_result(); + var args = new InternalStructs.testInsertRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertRecordsOfOneDeviceResult(); try { - result.Success = iface_.insertTablets(args.Req); - oprot.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3350,27 +2200,30 @@ public void insertTablets_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertTablets", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task testInsertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertRecords_args args = new insertRecords_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertRecords_result result = new insertRecords_result(); + var args = new InternalStructs.testInsertStringRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertStringRecordsResult(); try { - result.Success = iface_.insertRecords(args.Req); - oprot.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.testInsertStringRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3378,27 +2231,30 @@ public void insertRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertRecords", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertRecordsOfOneDevice_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task deleteData_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertRecordsOfOneDevice_args args = new insertRecordsOfOneDevice_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertRecordsOfOneDevice_result result = new insertRecordsOfOneDevice_result(); + var args = new InternalStructs.deleteDataArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteDataResult(); try { - result.Success = iface_.insertRecordsOfOneDevice(args.Req); - oprot.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.deleteDataAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3406,27 +2262,30 @@ public void insertRecordsOfOneDevice_Process(int seqid, TProtocol iprot, TProtoc } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertRecordsOfOneDevice", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void insertStringRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task executeRawDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - insertStringRecords_args args = new insertStringRecords_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - insertStringRecords_result result = new insertStringRecords_result(); + var args = new InternalStructs.executeRawDataQueryArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeRawDataQueryResult(); try { - result.Success = iface_.insertStringRecords(args.Req); - oprot.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.executeRawDataQueryAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3434,27 +2293,30 @@ public void insertStringRecords_Process(int seqid, TProtocol iprot, TProtocol op } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("insertStringRecords", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void testInsertTablet_Process(int seqid, TProtocol iprot, TProtocol oprot) + public async global::System.Threading.Tasks.Task requestStatementId_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - testInsertTablet_args args = new testInsertTablet_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertTablet_result result = new testInsertTablet_result(); + var args = new InternalStructs.requestStatementIdArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.requestStatementIdResult(); try { - result.Success = iface_.testInsertTablet(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Reply, seqid)); - result.Write(oprot); + result.Success = await _iAsync.requestStatementIdAsync(args.SessionId, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) { @@ -3462,8088 +2324,10288 @@ public void testInsertTablet_Process(int seqid, TProtocol iprot, TProtocol oprot } catch (Exception ex) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertTablet", TMessageType.Exception, seqid)); - x.Write(oprot); + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); } - public void testInsertTablets_Process(int seqid, TProtocol iprot, TProtocol oprot) + } + + public class InternalStructs + { + + public partial class openSessionArgs : TBase { - testInsertTablets_args args = new testInsertTablets_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertTablets_result result = new testInsertTablets_result(); - try + private TSOpenSessionReq _req; + + public TSOpenSessionReq Req { - result.Success = iface_.testInsertTablets(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Reply, seqid)); - result.Write(oprot); + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } } - catch (TTransportException) + + + public Isset __isset; + public struct Isset { - throw; + public bool req; } - catch (Exception ex) + + public openSessionArgs() + { + } + + public openSessionArgs DeepCopy() + { + var tmp299 = new openSessionArgs(); + if((Req != null) && __isset.req) + { + tmp299.Req = (TSOpenSessionReq)this.Req.DeepCopy(); + } + tmp299.__isset.req = this.__isset.req; + return tmp299; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSOpenSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertTablets", TMessageType.Exception, seqid)); - x.Write(oprot); + var sb = new StringBuilder("openSession_args("); + int tmp300 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp300++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); } - public void testInsertRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + + public partial class openSessionResult : TBase { - testInsertRecord_args args = new testInsertRecord_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertRecord_result result = new testInsertRecord_result(); - try + private TSOpenSessionResp _success; + + public TSOpenSessionResp Success { - result.Success = iface_.testInsertRecord(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Reply, seqid)); - result.Write(oprot); + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } } - catch (TTransportException) + + + public Isset __isset; + public struct Isset { - throw; + public bool success; } - catch (Exception ex) + + public openSessionResult() + { + } + + public openSessionResult DeepCopy() + { + var tmp301 = new openSessionResult(); + if((Success != null) && __isset.success) + { + tmp301.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + } + tmp301.__isset.success = this.__isset.success; + return tmp301; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSOpenSessionResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertRecord", TMessageType.Exception, seqid)); - x.Write(oprot); + var sb = new StringBuilder("openSession_result("); + int tmp302 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp302++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); } - public void testInsertStringRecord_Process(int seqid, TProtocol iprot, TProtocol oprot) + + public partial class closeSessionArgs : TBase { - testInsertStringRecord_args args = new testInsertStringRecord_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertStringRecord_result result = new testInsertStringRecord_result(); - try + private TSCloseSessionReq _req; + + public TSCloseSessionReq Req { - result.Success = iface_.testInsertStringRecord(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Reply, seqid)); - result.Write(oprot); + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } } - catch (TTransportException) + + + public Isset __isset; + public struct Isset { - throw; + public bool req; } - catch (Exception ex) + + public closeSessionArgs() + { + } + + public closeSessionArgs DeepCopy() + { + var tmp303 = new closeSessionArgs(); + if((Req != null) && __isset.req) + { + tmp303.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + } + tmp303.__isset.req = this.__isset.req; + return tmp303; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertStringRecord", TMessageType.Exception, seqid)); - x.Write(oprot); + var sb = new StringBuilder("closeSession_args("); + int tmp304 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp304++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); } - public void testInsertRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) - { - testInsertRecords_args args = new testInsertRecords_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertRecords_result result = new testInsertRecords_result(); - try - { - result.Success = iface_.testInsertRecords(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Reply, seqid)); - result.Write(oprot); - } - catch (TTransportException) - { - throw; + + public partial class closeSessionResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeSessionResult() + { + } + + public closeSessionResult DeepCopy() + { + var tmp305 = new closeSessionResult(); + if((Success != null) && __isset.success) + { + tmp305.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp305.__isset.success = this.__isset.success; + return tmp305; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } } - catch (Exception ex) + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertRecords", TMessageType.Exception, seqid)); - x.Write(oprot); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); - } - public void testInsertRecordsOfOneDevice_Process(int seqid, TProtocol iprot, TProtocol oprot) - { - testInsertRecordsOfOneDevice_args args = new testInsertRecordsOfOneDevice_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertRecordsOfOneDevice_result result = new testInsertRecordsOfOneDevice_result(); - try + public override bool Equals(object that) { - result.Success = iface_.testInsertRecordsOfOneDevice(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Reply, seqid)); - result.Write(oprot); + if (!(that is closeSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - catch (TTransportException) - { - throw; + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - catch (Exception ex) + + public override string ToString() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Exception, seqid)); - x.Write(oprot); + var sb = new StringBuilder("closeSession_result("); + int tmp306 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp306++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); } - public void testInsertStringRecords_Process(int seqid, TProtocol iprot, TProtocol oprot) + + public partial class executeStatementArgs : TBase { - testInsertStringRecords_args args = new testInsertStringRecords_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - testInsertStringRecords_result result = new testInsertStringRecords_result(); - try + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req { - result.Success = iface_.testInsertStringRecords(args.Req); - oprot.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Reply, seqid)); - result.Write(oprot); + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } } - catch (TTransportException) + + + public Isset __isset; + public struct Isset { - throw; + public bool req; } - catch (Exception ex) + + public executeStatementArgs() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("testInsertStringRecords", TMessageType.Exception, seqid)); - x.Write(oprot); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); - } - public void deleteData_Process(int seqid, TProtocol iprot, TProtocol oprot) - { - deleteData_args args = new deleteData_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - deleteData_result result = new deleteData_result(); - try + public executeStatementArgs DeepCopy() { - result.Success = iface_.deleteData(args.Req); - oprot.WriteMessageBegin(new TMessage("deleteData", TMessageType.Reply, seqid)); - result.Write(oprot); + var tmp307 = new executeStatementArgs(); + if((Req != null) && __isset.req) + { + tmp307.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp307.__isset.req = this.__isset.req; + return tmp307; } - catch (TTransportException) + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - throw; + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } } - catch (Exception ex) + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("deleteData", TMessageType.Exception, seqid)); - x.Write(oprot); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); - } - public void executeRawDataQuery_Process(int seqid, TProtocol iprot, TProtocol oprot) - { - executeRawDataQuery_args args = new executeRawDataQuery_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - executeRawDataQuery_result result = new executeRawDataQuery_result(); - try + public override bool Equals(object that) { - result.Success = iface_.executeRawDataQuery(args.Req); - oprot.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Reply, seqid)); - result.Write(oprot); + if (!(that is executeStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - catch (TTransportException) - { - throw; + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; } - catch (Exception ex) + + public override string ToString() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("executeRawDataQuery", TMessageType.Exception, seqid)); - x.Write(oprot); + var sb = new StringBuilder("executeStatement_args("); + int tmp308 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp308++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); } - public void requestStatementId_Process(int seqid, TProtocol iprot, TProtocol oprot) + + public partial class executeStatementResult : TBase { - requestStatementId_args args = new requestStatementId_args(); - args.Read(iprot); - iprot.ReadMessageEnd(); - requestStatementId_result result = new requestStatementId_result(); - try + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success { - result.Success = iface_.requestStatementId(args.SessionId); - oprot.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Reply, seqid)); - result.Write(oprot); + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } } - catch (TTransportException) + + + public Isset __isset; + public struct Isset { - throw; + public bool success; } - catch (Exception ex) + + public executeStatementResult() { - Console.Error.WriteLine("Error occurred in processor:"); - Console.Error.WriteLine(ex.ToString()); - TApplicationException x = new TApplicationException (TApplicationException.ExceptionType.InternalError," Internal error."); - oprot.WriteMessageBegin(new TMessage("requestStatementId", TMessageType.Exception, seqid)); - x.Write(oprot); } - oprot.WriteMessageEnd(); - oprot.Transport.Flush(); - } - - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class openSession_args : TBase - { - private TSOpenSessionReq _req; - public TSOpenSessionReq Req - { - get + public executeStatementResult DeepCopy() { - return _req; + var tmp309 = new executeStatementResult(); + if((Success != null) && __isset.success) + { + tmp309.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp309.__isset.success = this.__isset.success; + return tmp309; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.req = true; - this._req = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public openSession_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("executeStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSOpenSessionReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is executeStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("openSession_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeStatement_result("); + int tmp310 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp310++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("openSession_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeBatchStatementArgs : TBase + { + private TSExecuteBatchStatementReq _req; + public TSExecuteBatchStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class openSession_result : TBase - { - private TSOpenSessionResp _success; - public TSOpenSessionResp Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public executeBatchStatementArgs() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public openSession_result() { - } + public executeBatchStatementArgs DeepCopy() + { + var tmp311 = new executeBatchStatementArgs(); + if((Req != null) && __isset.req) + { + tmp311.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + } + tmp311.__isset.req = this.__isset.req; + return tmp311; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSOpenSessionResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteBatchStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("openSession_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is executeBatchStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeBatchStatement_args("); + int tmp312 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp312++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("openSession_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeBatchStatementResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class closeSession_args : TBase - { - private TSCloseSessionReq _req; - public TSCloseSessionReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public executeBatchStatementResult() { - __isset.req = true; - this._req = value; } - } + public executeBatchStatementResult DeepCopy() + { + var tmp313 = new executeBatchStatementResult(); + if((Success != null) && __isset.success) + { + tmp313.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp313.__isset.success = this.__isset.success; + return tmp313; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } - public closeSession_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("executeBatchStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSCloseSessionReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is executeBatchStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("closeSession_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeBatchStatement_result("); + int tmp314 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp314++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("closeSession_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeQueryStatementArgs : TBase + { + private TSExecuteStatementReq _req; + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class closeSession_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public executeQueryStatementArgs() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public closeSession_result() { - } + public executeQueryStatementArgs DeepCopy() + { + var tmp315 = new executeQueryStatementArgs(); + if((Req != null) && __isset.req) + { + tmp315.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp315.__isset.req = this.__isset.req; + return tmp315; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("closeSession_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is executeQueryStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeQueryStatement_args("); + int tmp316 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp316++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("closeSession_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeQueryStatementResult : TBase + { + private TSExecuteStatementResp _success; + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeStatement_args : TBase - { - private TSExecuteStatementReq _req; - public TSExecuteStatementReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public executeQueryStatementResult() { - __isset.req = true; - this._req = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - public executeStatement_args() { - } + public executeQueryStatementResult DeepCopy() + { + var tmp317 = new executeQueryStatementResult(); + if((Success != null) && __isset.success) + { + tmp317.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp317.__isset.success = this.__isset.success; + return tmp317; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeStatement_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is executeQueryStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeQueryStatement_result("); + int tmp318 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp318++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeStatement_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeUpdateStatementArgs : TBase + { + private TSExecuteStatementReq _req; + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeStatement_result : TBase - { - private TSExecuteStatementResp _success; - public TSExecuteStatementResp Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public executeUpdateStatementArgs() { - __isset.success = true; - this._success = value; } - } + public executeUpdateStatementArgs DeepCopy() + { + var tmp319 = new executeUpdateStatementArgs(); + if((Req != null) && __isset.req) + { + tmp319.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp319.__isset.req = this.__isset.req; + return tmp319; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public executeStatement_result() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeStatement_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is executeUpdateStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeUpdateStatement_args("); + int tmp320 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp320++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeStatement_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeUpdateStatementResult : TBase + { + private TSExecuteStatementResp _success; + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeBatchStatement_args : TBase - { - private TSExecuteBatchStatementReq _req; - public TSExecuteBatchStatementReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public executeUpdateStatementResult() { - __isset.req = true; - this._req = value; } - } + public executeUpdateStatementResult DeepCopy() + { + var tmp321 = new executeUpdateStatementResult(); + if((Success != null) && __isset.success) + { + tmp321.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp321.__isset.success = this.__isset.success; + return tmp321; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public executeBatchStatement_args() { - } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; + var struc = new TStruct("executeUpdateStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - switch (field.ID) + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSExecuteBatchStatementReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + hashcode = (hashcode * 397) + Success.GetHashCode(); } - iprot.ReadFieldEnd(); } - iprot.ReadStructEnd(); + return hashcode; } - finally - { - iprot.DecrementRecursionDepth(); - } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override string ToString() { - TStruct struc = new TStruct("executeBatchStatement_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + var sb = new StringBuilder("executeUpdateStatement_result("); + int tmp322 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp322++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); - } - finally - { - oprot.DecrementRecursionDepth(); + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeBatchStatement_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class fetchResultsArgs : TBase + { + private TSFetchResultsReq _req; + public TSFetchResultsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeBatchStatement_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public fetchResultsArgs() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public executeBatchStatement_result() { - } + public fetchResultsArgs DeepCopy() + { + var tmp323 = new fetchResultsArgs(); + if((Req != null) && __isset.req) + { + tmp323.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + } + tmp323.__isset.req = this.__isset.req; + return tmp323; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchResultsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeBatchStatement_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is fetchResultsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("fetchResults_args("); + int tmp324 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp324++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeBatchStatement_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class fetchResultsResult : TBase + { + private TSFetchResultsResp _success; + public TSFetchResultsResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeQueryStatement_args : TBase - { - private TSExecuteStatementReq _req; - public TSExecuteStatementReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public fetchResultsResult() { - __isset.req = true; - this._req = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public executeQueryStatement_args() { - } + public fetchResultsResult DeepCopy() + { + var tmp325 = new fetchResultsResult(); + if((Success != null) && __isset.success) + { + tmp325.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + } + tmp325.__isset.success = this.__isset.success; + return tmp325; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchResultsResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeQueryStatement_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is fetchResultsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("fetchResults_result("); + int tmp326 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp326++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeQueryStatement_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class fetchMetadataArgs : TBase + { + private TSFetchMetadataReq _req; + public TSFetchMetadataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeQueryStatement_result : TBase - { - private TSExecuteStatementResp _success; - public TSExecuteStatementResp Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public fetchMetadataArgs() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public executeQueryStatement_result() { - } + public fetchMetadataArgs DeepCopy() + { + var tmp327 = new fetchMetadataArgs(); + if((Req != null) && __isset.req) + { + tmp327.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); + } + tmp327.__isset.req = this.__isset.req; + return tmp327; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchMetadataReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("executeQueryStatement_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is fetchMetadataArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeQueryStatement_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeUpdateStatement_args : TBase - { - private TSExecuteStatementReq _req; - - public TSExecuteStatementReq Req - { - get - { - return _req; - } - set + public override string ToString() { - __isset.req = true; - this._req = value; + var sb = new StringBuilder("fetchMetadata_args("); + int tmp328 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp328++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public executeUpdateStatement_args() { - } - - public void Read (TProtocol iprot) + public partial class fetchMetadataResult : TBase { - iprot.IncrementRecursionDepth(); - try + private TSFetchMetadataResp _success; + + public TSFetchMetadataResp Success { - TField field; - iprot.ReadStructBegin(); - while (true) + get { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; - } - iprot.ReadFieldEnd(); + return _success; } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("executeUpdateStatement_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + set + { + __isset.success = true; + this._success = value; } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool success; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeUpdateStatement_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); + public fetchMetadataResult() + { } - __sb.Append(")"); - return __sb.ToString(); - } - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeUpdateStatement_result : TBase - { - private TSExecuteStatementResp _success; - - public TSExecuteStatementResp Success - { - get + public fetchMetadataResult DeepCopy() { - return _success; + var tmp329 = new fetchMetadataResult(); + if((Success != null) && __isset.success) + { + tmp329.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + } + tmp329.__isset.success = this.__isset.success; + return tmp329; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.success = true; - this._success = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchMetadataResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public executeUpdateStatement_result() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("fetchMetadata_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally - { - iprot.DecrementRecursionDepth(); - } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeUpdateStatement_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is fetchMetadataResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("fetchMetadata_result("); + int tmp330 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp330++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeUpdateStatement_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class cancelOperationArgs : TBase + { + private TSCancelOperationReq _req; + public TSCancelOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class fetchResults_args : TBase - { - private TSFetchResultsReq _req; - public TSFetchResultsReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public cancelOperationArgs() { - __isset.req = true; - this._req = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - public fetchResults_args() { - } + public cancelOperationArgs DeepCopy() + { + var tmp331 = new cancelOperationArgs(); + if((Req != null) && __isset.req) + { + tmp331.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + } + tmp331.__isset.req = this.__isset.req; + return tmp331; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSFetchResultsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCancelOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("fetchResults_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is cancelOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("cancelOperation_args("); + int tmp332 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp332++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("fetchResults_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class cancelOperationResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class fetchResults_result : TBase - { - private TSFetchResultsResp _success; - public TSFetchResultsResp Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public cancelOperationResult() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public fetchResults_result() { - } + public cancelOperationResult DeepCopy() + { + var tmp333 = new cancelOperationResult(); + if((Success != null) && __isset.success) + { + tmp333.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp333.__isset.success = this.__isset.success; + return tmp333; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSFetchResultsResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("fetchResults_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is cancelOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("cancelOperation_result("); + int tmp334 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp334++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("fetchResults_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class closeOperationArgs : TBase + { + private TSCloseOperationReq _req; + public TSCloseOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class fetchMetadata_args : TBase - { - private TSFetchMetadataReq _req; - public TSFetchMetadataReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public closeOperationArgs() { - __isset.req = true; - this._req = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public fetchMetadata_args() { - } + public closeOperationArgs DeepCopy() + { + var tmp335 = new closeOperationArgs(); + if((Req != null) && __isset.req) + { + tmp335.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + } + tmp335.__isset.req = this.__isset.req; + return tmp335; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSFetchMetadataReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("fetchMetadata_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is closeOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("closeOperation_args("); + int tmp336 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp336++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("fetchMetadata_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class closeOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class fetchMetadata_result : TBase - { - private TSFetchMetadataResp _success; + public Isset __isset; + public struct Isset + { + public bool success; + } - public TSFetchMetadataResp Success - { - get + public closeOperationResult() { - return _success; } - set + + public closeOperationResult DeepCopy() { - __isset.success = true; - this._success = value; + var tmp337 = new closeOperationResult(); + if((Success != null) && __isset.success) + { + tmp337.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp337.__isset.success = this.__isset.success; + return tmp337; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public fetchMetadata_result() { - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; + var struc = new TStruct("closeOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - switch (field.ID) + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSFetchMetadataResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + hashcode = (hashcode * 397) + Success.GetHashCode(); } - iprot.ReadFieldEnd(); } - iprot.ReadStructEnd(); + return hashcode; } - finally + + public override string ToString() { - iprot.DecrementRecursionDepth(); + var sb = new StringBuilder("closeOperation_result("); + int tmp338 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp338++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("fetchMetadata_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); - } + public partial class getTimeZoneArgs : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool sessionId; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("fetchMetadata_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public getTimeZoneArgs() + { } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class cancelOperation_args : TBase - { - private TSCancelOperationReq _req; - - public TSCancelOperationReq Req - { - get + public getTimeZoneArgs DeepCopy() { - return _req; + var tmp339 = new getTimeZoneArgs(); + if(__isset.sessionId) + { + tmp339.SessionId = this.SessionId; + } + tmp339.__isset.sessionId = this.__isset.sessionId; + return tmp339; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.req = true; - this._req = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public cancelOperation_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("getTimeZone_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSCancelOperationReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is getTimeZoneArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("cancelOperation_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("getTimeZone_args("); + int tmp340 = 0; + if(__isset.sessionId) + { + if(0 < tmp340++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("cancelOperation_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class getTimeZoneResult : TBase + { + private TSGetTimeZoneResp _success; + public TSGetTimeZoneResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class cancelOperation_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public getTimeZoneResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public cancelOperation_result() { - } + public getTimeZoneResult DeepCopy() + { + var tmp341 = new getTimeZoneResult(); + if((Success != null) && __isset.success) + { + tmp341.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); + } + tmp341.__isset.success = this.__isset.success; + return tmp341; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSGetTimeZoneResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getTimeZone_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("cancelOperation_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is getTimeZoneResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("getTimeZone_result("); + int tmp342 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp342++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("cancelOperation_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class setTimeZoneArgs : TBase + { + private TSSetTimeZoneReq _req; + public TSSetTimeZoneReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class closeOperation_args : TBase - { - private TSCloseOperationReq _req; - public TSCloseOperationReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public setTimeZoneArgs() { - __isset.req = true; - this._req = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - public closeOperation_args() { - } + public setTimeZoneArgs DeepCopy() + { + var tmp343 = new setTimeZoneArgs(); + if((Req != null) && __isset.req) + { + tmp343.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); + } + tmp343.__isset.req = this.__isset.req; + return tmp343; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSCloseOperationReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSSetTimeZoneReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setTimeZone_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("closeOperation_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is setTimeZoneArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("setTimeZone_args("); + int tmp344 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp344++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("closeOperation_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class setTimeZoneResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class closeOperation_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public setTimeZoneResult() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public closeOperation_result() { - } + public setTimeZoneResult DeepCopy() + { + var tmp345 = new setTimeZoneResult(); + if((Success != null) && __isset.success) + { + tmp345.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp345.__isset.success = this.__isset.success; + return tmp345; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("closeOperation_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setTimeZone_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is setTimeZoneResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("closeOperation_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - __sb.Append(")"); - return __sb.ToString(); - } - - } + public override string ToString() + { + var sb = new StringBuilder("setTimeZone_result("); + int tmp346 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp346++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class getTimeZone_args : TBase - { - private long _sessionId; - public long SessionId + public partial class getPropertiesArgs : TBase { - get + + public getPropertiesArgs() { - return _sessionId; } - set + + public getPropertiesArgs DeepCopy() { - __isset.sessionId = true; - this._sessionId = value; + var tmp347 = new getPropertiesArgs(); + return tmp347; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool sessionId; - } - - public getTimeZone_args() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getProperties_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("getTimeZone_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (__isset.sessionId) { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); + if (!(that is getPropertiesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return true; + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("getProperties_args("); + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("getTimeZone_args("); - bool __first = true; - if (__isset.sessionId) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("SessionId: "); - __sb.Append(SessionId); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class getPropertiesResult : TBase + { + private ServerProperties _success; + public ServerProperties Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class getTimeZone_result : TBase - { - private TSGetTimeZoneResp _success; - public TSGetTimeZoneResp Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public getPropertiesResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public getTimeZone_result() { - } + public getPropertiesResult DeepCopy() + { + var tmp349 = new getPropertiesResult(); + if((Success != null) && __isset.success) + { + tmp349.Success = (ServerProperties)this.Success.DeepCopy(); + } + tmp349.__isset.success = this.__isset.success; + return tmp349; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSGetTimeZoneResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new ServerProperties(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getProperties_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("getTimeZone_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is getPropertiesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("getProperties_result("); + int tmp350 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp350++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("getTimeZone_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + + public partial class setStorageGroupArgs : TBase + { + private long _sessionId; + private string _storageGroup; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } } - __sb.Append(")"); - return __sb.ToString(); - } - } + public string StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class setTimeZone_args : TBase - { - private TSSetTimeZoneReq _req; + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool storageGroup; + } - public TSSetTimeZoneReq Req - { - get + public setStorageGroupArgs() { - return _req; } - set + + public setStorageGroupArgs DeepCopy() { - __isset.req = true; - this._req = value; + var tmp351 = new setStorageGroupArgs(); + if(__isset.sessionId) + { + tmp351.SessionId = this.SessionId; + } + tmp351.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) + { + tmp351.StorageGroup = this.StorageGroup; + } + tmp351.__isset.storageGroup = this.__isset.storageGroup; + return tmp351; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + StorageGroup = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public setTimeZone_args() { - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("setStorageGroup_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSSetTimeZoneReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(StorageGroup, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is setStorageGroupArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("setTimeZone_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("setStorageGroup_args("); + int tmp352 = 0; + if(__isset.sessionId) + { + if(0 < tmp352++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp352++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("setTimeZone_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class setStorageGroupResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class setTimeZone_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public setStorageGroupResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public setTimeZone_result() { - } + public setStorageGroupResult DeepCopy() + { + var tmp353 = new setStorageGroupResult(); + if((Success != null) && __isset.success) + { + tmp353.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp353.__isset.success = this.__isset.success; + return tmp353; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setStorageGroup_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("setTimeZone_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is setStorageGroupResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("setStorageGroup_result("); + int tmp354 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp354++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("setTimeZone_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + + public partial class createTimeseriesArgs : TBase + { + private TSCreateTimeseriesReq _req; + + public TSCreateTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } } - __sb.Append(")"); - return __sb.ToString(); - } - } + public Isset __isset; + public struct Isset + { + public bool req; + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class getProperties_args : TBase - { + public createTimeseriesArgs() + { + } - public getProperties_args() { - } + public createTimeseriesArgs DeepCopy() + { + var tmp355 = new createTimeseriesArgs(); + if((Req != null) && __isset.req) + { + tmp355.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); + } + tmp355.__isset.req = this.__isset.req; + return tmp355; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCreateTimeseriesReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("getProperties_args"); - oprot.WriteStructBegin(struc); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + if (!(that is createTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("createTimeseries_args("); + int tmp356 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp356++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("getProperties_args("); - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class createTimeseriesResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class getProperties_result : TBase - { - private ServerProperties _success; - public ServerProperties Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public createTimeseriesResult() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public getProperties_result() { - } + public createTimeseriesResult DeepCopy() + { + var tmp357 = new createTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp357.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp357.__isset.success = this.__isset.success; + return tmp357; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new ServerProperties(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("getProperties_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is createTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("createTimeseries_result("); + int tmp358 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp358++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("getProperties_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class createMultiTimeseriesArgs : TBase + { + private TSCreateMultiTimeseriesReq _req; + public TSCreateMultiTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class setStorageGroup_args : TBase - { - private long _sessionId; - private string _storageGroup; - public long SessionId - { - get + public Isset __isset; + public struct Isset { - return _sessionId; + public bool req; } - set + + public createMultiTimeseriesArgs() { - __isset.sessionId = true; - this._sessionId = value; } - } - public string StorageGroup - { - get + public createMultiTimeseriesArgs DeepCopy() { - return _storageGroup; + var tmp359 = new createMultiTimeseriesArgs(); + if((Req != null) && __isset.req) + { + tmp359.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); + } + tmp359.__isset.req = this.__isset.req; + return tmp359; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.storageGroup = true; - this._storageGroup = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCreateMultiTimeseriesReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool sessionId; - public bool storageGroup; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public setStorageGroup_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("createMultiTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) { - case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - case 2: - if (field.Type == TType.String) { - StorageGroup = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is createMultiTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("setStorageGroup_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (__isset.sessionId) { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - } - if (StorageGroup != null && __isset.storageGroup) { - field.Name = "storageGroup"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(StorageGroup); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("createMultiTimeseries_args("); + int tmp360 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp360++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("setStorageGroup_args("); - bool __first = true; - if (__isset.sessionId) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("SessionId: "); - __sb.Append(SessionId); - } - if (StorageGroup != null && __isset.storageGroup) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("StorageGroup: "); - __sb.Append(StorageGroup); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class createMultiTimeseriesResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class setStorageGroup_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public createMultiTimeseriesResult() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public setStorageGroup_result() { - } + public createMultiTimeseriesResult DeepCopy() + { + var tmp361 = new createMultiTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp361.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp361.__isset.success = this.__isset.success; + return tmp361; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createMultiTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("setStorageGroup_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is createMultiTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("createMultiTimeseries_result("); + int tmp362 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp362++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("setStorageGroup_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + + public partial class deleteTimeseriesArgs : TBase + { + private long _sessionId; + private List _path; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } } - __sb.Append(")"); - return __sb.ToString(); - } - } + public List Path + { + get + { + return _path; + } + set + { + __isset.path = true; + this._path = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class createTimeseries_args : TBase - { - private TSCreateTimeseriesReq _req; + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool path; + } - public TSCreateTimeseriesReq Req - { - get + public deleteTimeseriesArgs() { - return _req; } - set + + public deleteTimeseriesArgs DeepCopy() { - __isset.req = true; - this._req = value; + var tmp363 = new deleteTimeseriesArgs(); + if(__isset.sessionId) + { + tmp363.SessionId = this.SessionId; + } + tmp363.__isset.sessionId = this.__isset.sessionId; + if((Path != null) && __isset.path) + { + tmp363.Path = this.Path.DeepCopy(); + } + tmp363.__isset.path = this.__isset.path; + return tmp363; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); + Path = new List(_list364.Count); + for(int _i365 = 0; _i365 < _list364.Count; ++_i365) + { + string _elem366; + _elem366 = await iprot.ReadStringAsync(cancellationToken); + Path.Add(_elem366); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public createTimeseries_args() { - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("deleteTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSCreateTimeseriesReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null) && __isset.path) + { + field.Name = "path"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); + foreach (string _iter367 in Path) + { + await oprot.WriteStringAsync(_iter367, cancellationToken); } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is deleteTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("createTimeseries_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Path != null) && __isset.path) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("deleteTimeseries_args("); + int tmp368 = 0; + if(__isset.sessionId) + { + if(0 < tmp368++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((Path != null) && __isset.path) + { + if(0 < tmp368++) { sb.Append(", "); } + sb.Append("Path: "); + Path.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("createTimeseries_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class deleteTimeseriesResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class createTimeseries_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public deleteTimeseriesResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public createTimeseries_result() { - } + public deleteTimeseriesResult DeepCopy() + { + var tmp369 = new deleteTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp369.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp369.__isset.success = this.__isset.success; + return tmp369; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("createTimeseries_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is deleteTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("createTimeseries_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class createMultiTimeseries_args : TBase - { - private TSCreateMultiTimeseriesReq _req; - public TSCreateMultiTimeseriesReq Req - { - get - { - return _req; - } - set + public override string ToString() { - __isset.req = true; - this._req = value; + var sb = new StringBuilder("deleteTimeseries_result("); + int tmp370 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp370++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public createMultiTimeseries_args() { - } - - public void Read (TProtocol iprot) + public partial class deleteStorageGroupsArgs : TBase { - iprot.IncrementRecursionDepth(); - try + private long _sessionId; + private List _storageGroup; + + public long SessionId { - TField field; - iprot.ReadStructBegin(); - while (true) + get { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) { - Req = new TSCreateMultiTimeseriesReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; - } - iprot.ReadFieldEnd(); + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public List StorageGroup { - TStruct struc = new TStruct("createMultiTimeseries_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool sessionId; + public bool storageGroup; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("createMultiTimeseries_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); + public deleteStorageGroupsArgs() + { } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class createMultiTimeseries_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public deleteStorageGroupsArgs DeepCopy() { - return _success; + var tmp371 = new deleteStorageGroupsArgs(); + if(__isset.sessionId) + { + tmp371.SessionId = this.SessionId; + } + tmp371.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) + { + tmp371.StorageGroup = this.StorageGroup.DeepCopy(); + } + tmp371.__isset.storageGroup = this.__isset.storageGroup; + return tmp371; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.success = true; - this._success = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list372 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroup = new List(_list372.Count); + for(int _i373 = 0; _i373 < _list372.Count; ++_i373) + { + string _elem374; + _elem374 = await iprot.ReadStringAsync(cancellationToken); + StorageGroup.Add(_elem374); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public createMultiTimeseries_result() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("deleteStorageGroups_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + field.Name = "storageGroup"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); + foreach (string _iter375 in StorageGroup) + { + await oprot.WriteStringAsync(_iter375, cancellationToken); } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("createMultiTimeseries_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is deleteStorageGroupsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); - } - finally - { - oprot.DecrementRecursionDepth(); + return hashcode; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("createMultiTimeseries_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override string ToString() + { + var sb = new StringBuilder("deleteStorageGroups_args("); + int tmp376 = 0; + if(__isset.sessionId) + { + if(0 < tmp376++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp376++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - __sb.Append(")"); - return __sb.ToString(); } - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class deleteTimeseries_args : TBase - { - private long _sessionId; - private List _path; - public long SessionId + public partial class deleteStorageGroupsResult : TBase { - get + private TSStatus _success; + + public TSStatus Success { - return _sessionId; + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } } - set + + + public Isset __isset; + public struct Isset { - __isset.sessionId = true; - this._sessionId = value; + public bool success; } - } - public List Path - { - get + public deleteStorageGroupsResult() { - return _path; } - set + + public deleteStorageGroupsResult DeepCopy() { - __isset.path = true; - this._path = value; + var tmp377 = new deleteStorageGroupsResult(); + if((Success != null) && __isset.success) + { + tmp377.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp377.__isset.success = this.__isset.success; + return tmp377; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool sessionId; - public bool path; - } - - public deleteTimeseries_args() { - } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; - case 2: - if (field.Type == TType.List) { + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { - Path = new List(); - TList _list237 = iprot.ReadListBegin(); - for( int _i238 = 0; _i238 < _list237.Count; ++_i238) - { - string _elem239; - _elem239 = iprot.ReadString(); - Path.Add(_elem239); - } - iprot.ReadListEnd(); + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("deleteTimeseries_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (__isset.sessionId) { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - } - if (Path != null && __isset.path) { - field.Name = "path"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteStorageGroups_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - oprot.WriteListBegin(new TList(TType.String, Path.Count)); - foreach (string _iter240 in Path) + if (Success != null) { - oprot.WriteString(_iter240); + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteListEnd(); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is deleteStorageGroupsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("deleteTimeseries_args("); - bool __first = true; - if (__isset.sessionId) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("SessionId: "); - __sb.Append(SessionId); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - if (Path != null && __isset.path) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Path: "); - __sb.Append(Path); + + public override string ToString() + { + var sb = new StringBuilder("deleteStorageGroups_result("); + int tmp378 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp378++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - __sb.Append(")"); - return __sb.ToString(); } - } + public partial class insertRecordArgs : TBase + { + private TSInsertRecordReq _req; - #if !SILVERLIGHT - [Serializable] - #endif - public partial class deleteTimeseries_result : TBase - { - private TSStatus _success; + public TSInsertRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - public TSStatus Success - { - get + + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public insertRecordArgs() { - __isset.success = true; - this._success = value; } - } + public insertRecordArgs DeepCopy() + { + var tmp379 = new insertRecordArgs(); + if((Req != null) && __isset.req) + { + tmp379.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + } + tmp379.__isset.req = this.__isset.req; + return tmp379; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public deleteTimeseries_result() { - } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("insertRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("deleteTimeseries_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is insertRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); - } - finally - { - oprot.DecrementRecursionDepth(); + return hashcode; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("deleteTimeseries_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override string ToString() + { + var sb = new StringBuilder("insertRecord_args("); + int tmp380 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp380++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - __sb.Append(")"); - return __sb.ToString(); } - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class deleteStorageGroups_args : TBase - { - private long _sessionId; - private List _storageGroup; - public long SessionId + public partial class insertRecordResult : TBase { - get + private TSStatus _success; + + public TSStatus Success { - return _sessionId; + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } } - set + + + public Isset __isset; + public struct Isset { - __isset.sessionId = true; - this._sessionId = value; + public bool success; } - } - public List StorageGroup - { - get + public insertRecordResult() { - return _storageGroup; } - set + + public insertRecordResult DeepCopy() { - __isset.storageGroup = true; - this._storageGroup = value; + var tmp381 = new insertRecordResult(); + if((Success != null) && __isset.success) + { + tmp381.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp381.__isset.success = this.__isset.success; + return tmp381; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool sessionId; - public bool storageGroup; - } - - public deleteStorageGroups_args() { - } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; - case 2: - if (field.Type == TType.List) { + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) { - StorageGroup = new List(); - TList _list241 = iprot.ReadListBegin(); - for( int _i242 = 0; _i242 < _list241.Count; ++_i242) - { - string _elem243; - _elem243 = iprot.ReadString(); - StorageGroup.Add(_elem243); - } - iprot.ReadListEnd(); + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("deleteStorageGroups_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (__isset.sessionId) { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - } - if (StorageGroup != null && __isset.storageGroup) { - field.Name = "storageGroup"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - oprot.WriteListBegin(new TList(TType.String, StorageGroup.Count)); - foreach (string _iter244 in StorageGroup) + if (Success != null) { - oprot.WriteString(_iter244); + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteListEnd(); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is insertRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("deleteStorageGroups_args("); - bool __first = true; - if (__isset.sessionId) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("SessionId: "); - __sb.Append(SessionId); - } - if (StorageGroup != null && __isset.storageGroup) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("StorageGroup: "); - __sb.Append(StorageGroup); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class deleteStorageGroups_result : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set + public override string ToString() { - __isset.success = true; - this._success = value; + var sb = new StringBuilder("insertRecord_result("); + int tmp382 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp382++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public deleteStorageGroups_result() { - } - - public void Read (TProtocol iprot) + public partial class insertStringRecordArgs : TBase { - iprot.IncrementRecursionDepth(); - try + private TSInsertStringRecordReq _req; + + public TSInsertStringRecordReq Req { - TField field; - iprot.ReadStructBegin(); - while (true) + get { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; - } - iprot.ReadFieldEnd(); + return _req; + } + set + { + __isset.req = true; + this._req = value; } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("deleteStorageGroups_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); - } - } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); - } - finally + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool req; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("deleteStorageGroups_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public insertStringRecordArgs() + { } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertRecord_args : TBase - { - private TSInsertRecordReq _req; - public TSInsertRecordReq Req - { - get + public insertStringRecordArgs DeepCopy() { - return _req; + var tmp383 = new insertStringRecordArgs(); + if((Req != null) && __isset.req) + { + tmp383.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + } + tmp383.__isset.req = this.__isset.req; + return tmp383; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.req = true; - this._req = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public insertRecord_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("insertStringRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertRecordReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is insertStringRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("insertRecord_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertStringRecord_args("); + int tmp384 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp384++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertRecord_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertStringRecordResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertRecord_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public insertStringRecordResult() { - __isset.success = true; - this._success = value; } - } + public insertStringRecordResult DeepCopy() + { + var tmp385 = new insertStringRecordResult(); + if((Success != null) && __isset.success) + { + tmp385.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp385.__isset.success = this.__isset.success; + return tmp385; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public insertRecord_result() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertRecord_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is insertStringRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertStringRecord_result("); + int tmp386 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp386++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertRecord_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertTabletArgs : TBase + { + private TSInsertTabletReq _req; + + public TSInsertTabletReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertStringRecord_args : TBase - { - private TSInsertStringRecordReq _req; + public Isset __isset; + public struct Isset + { + public bool req; + } - public TSInsertStringRecordReq Req - { - get + public insertTabletArgs() { - return _req; } - set + + public insertTabletArgs DeepCopy() { - __isset.req = true; - this._req = value; + var tmp387 = new insertTabletArgs(); + if((Req != null) && __isset.req) + { + tmp387.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + } + tmp387.__isset.req = this.__isset.req; + return tmp387; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public insertStringRecord_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("insertTablet_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is insertTabletArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("insertStringRecord_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertTablet_args("); + int tmp388 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp388++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertStringRecord_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertTabletResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertStringRecord_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public insertTabletResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public insertStringRecord_result() { - } + public insertTabletResult DeepCopy() + { + var tmp389 = new insertTabletResult(); + if((Success != null) && __isset.success) + { + tmp389.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp389.__isset.success = this.__isset.success; + return tmp389; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablet_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertStringRecord_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is insertTabletResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertTablet_result("); + int tmp390 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp390++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertStringRecord_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertTabletsArgs : TBase + { + private TSInsertTabletsReq _req; + public TSInsertTabletsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertTablet_args : TBase - { - private TSInsertTabletReq _req; - public TSInsertTabletReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public insertTabletsArgs() { - __isset.req = true; - this._req = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - public insertTablet_args() { - } + public insertTabletsArgs DeepCopy() + { + var tmp391 = new insertTabletsArgs(); + if((Req != null) && __isset.req) + { + tmp391.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + } + tmp391.__isset.req = this.__isset.req; + return tmp391; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablets_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertTablet_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is insertTabletsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertTablets_args("); + int tmp392 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp392++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertTablet_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertTabletsResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertTablet_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public insertTabletsResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public insertTablet_result() { - } + public insertTabletsResult DeepCopy() + { + var tmp393 = new insertTabletsResult(); + if((Success != null) && __isset.success) + { + tmp393.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp393.__isset.success = this.__isset.success; + return tmp393; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablets_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertTablet_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is insertTabletsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertTablets_result("); + int tmp394 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp394++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertTablet_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertRecordsArgs : TBase + { + private TSInsertRecordsReq _req; + public TSInsertRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertTablets_args : TBase - { - private TSInsertTabletsReq _req; - public TSInsertTabletsReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public insertRecordsArgs() { - __isset.req = true; - this._req = value; } - } + public insertRecordsArgs DeepCopy() + { + var tmp395 = new insertRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp395.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + } + tmp395.__isset.req = this.__isset.req; + return tmp395; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public insertTablets_args() { - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("insertRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is insertRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("insertTablets_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertRecords_args("); + int tmp396 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp396++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertTablets_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertRecordsResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertTablets_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public insertRecordsResult() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public insertTablets_result() { - } + public insertRecordsResult DeepCopy() + { + var tmp397 = new insertRecordsResult(); + if((Success != null) && __isset.success) + { + tmp397.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp397.__isset.success = this.__isset.success; + return tmp397; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertTablets_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is insertRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertRecords_result("); + int tmp398 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp398++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertTablets_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertRecordsOfOneDeviceArgs : TBase + { + private TSInsertRecordsOfOneDeviceReq _req; + public TSInsertRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertRecords_args : TBase - { - private TSInsertRecordsReq _req; - public TSInsertRecordsReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public insertRecordsOfOneDeviceArgs() { - __isset.req = true; - this._req = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public insertRecords_args() { - } + public insertRecordsOfOneDeviceArgs DeepCopy() + { + var tmp399 = new insertRecordsOfOneDeviceArgs(); + if((Req != null) && __isset.req) + { + tmp399.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + } + tmp399.__isset.req = this.__isset.req; + return tmp399; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsOfOneDeviceReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecordsOfOneDevice_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertRecords_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is insertRecordsOfOneDeviceArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertRecordsOfOneDevice_args("); + int tmp400 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp400++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertRecords_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertRecordsOfOneDeviceResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertRecords_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public insertRecordsOfOneDeviceResult() { - __isset.success = true; - this._success = value; } - } + public insertRecordsOfOneDeviceResult DeepCopy() + { + var tmp401 = new insertRecordsOfOneDeviceResult(); + if((Success != null) && __isset.success) + { + tmp401.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp401.__isset.success = this.__isset.success; + return tmp401; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public insertRecords_result() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("insertRecords_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecordsOfOneDevice_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is insertRecordsOfOneDeviceResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertRecords_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertRecordsOfOneDevice_args : TBase - { - private TSInsertRecordsOfOneDeviceReq _req; - - public TSInsertRecordsOfOneDeviceReq Req - { - get - { - return _req; - } - set + public override string ToString() { - __isset.req = true; - this._req = value; + var sb = new StringBuilder("insertRecordsOfOneDevice_result("); + int tmp402 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp402++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public insertRecordsOfOneDevice_args() { - } - - public void Read (TProtocol iprot) + public partial class insertStringRecordsArgs : TBase { - iprot.IncrementRecursionDepth(); - try + private TSInsertStringRecordsReq _req; + + public TSInsertStringRecordsReq Req { - TField field; - iprot.ReadStructBegin(); - while (true) + get { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; - } - iprot.ReadFieldEnd(); + return _req; } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("insertRecordsOfOneDevice_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + set + { + __isset.req = true; + this._req = value; } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool req; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertRecordsOfOneDevice_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); + public insertStringRecordsArgs() + { } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertRecordsOfOneDevice_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public insertStringRecordsArgs DeepCopy() { - return _success; + var tmp403 = new insertStringRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp403.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + } + tmp403.__isset.req = this.__isset.req; + return tmp403; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.success = true; - this._success = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public insertRecordsOfOneDevice_result() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("insertStringRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertRecordsOfOneDevice_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is insertStringRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertStringRecords_args("); + int tmp404 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp404++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertRecordsOfOneDevice_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class insertStringRecordsResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertStringRecords_args : TBase - { - private TSInsertStringRecordsReq _req; - public TSInsertStringRecordsReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public insertStringRecordsResult() { - __isset.req = true; - this._req = value; } - } + public insertStringRecordsResult DeepCopy() + { + var tmp405 = new insertStringRecordsResult(); + if((Success != null) && __isset.success) + { + tmp405.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp405.__isset.success = this.__isset.success; + return tmp405; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public insertStringRecords_args() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertStringRecords_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is insertStringRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("insertStringRecords_result("); + int tmp406 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp406++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertStringRecords_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertTabletArgs : TBase + { + private TSInsertTabletReq _req; + public TSInsertTabletReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class insertStringRecords_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertTabletArgs() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public insertStringRecords_result() { - } + public testInsertTabletArgs DeepCopy() + { + var tmp407 = new testInsertTabletArgs(); + if((Req != null) && __isset.req) + { + tmp407.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + } + tmp407.__isset.req = this.__isset.req; + return tmp407; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertTablet_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("insertStringRecords_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is testInsertTabletArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertTablet_args("); + int tmp408 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp408++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("insertStringRecords_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertTabletResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertTablet_args : TBase - { - private TSInsertTabletReq _req; - public TSInsertTabletReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public testInsertTabletResult() { - __isset.req = true; - this._req = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - public testInsertTablet_args() { - } + public testInsertTabletResult DeepCopy() + { + var tmp409 = new testInsertTabletResult(); + if((Success != null) && __isset.success) + { + tmp409.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp409.__isset.success = this.__isset.success; + return tmp409; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertTablet_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertTablet_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is testInsertTabletResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertTablet_result("); + int tmp410 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp410++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertTablet_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertTabletsArgs : TBase + { + private TSInsertTabletsReq _req; + public TSInsertTabletsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertTablet_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertTabletsArgs() { - __isset.success = true; - this._success = value; } - } + public testInsertTabletsArgs DeepCopy() + { + var tmp411 = new testInsertTabletsArgs(); + if((Req != null) && __isset.req) + { + tmp411.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + } + tmp411.__isset.req = this.__isset.req; + return tmp411; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public testInsertTablet_result() { - } + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; + var struc = new TStruct("testInsertTablets_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - switch (field.ID) + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertTabletsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + hashcode = (hashcode * 397) + Req.GetHashCode(); } - iprot.ReadFieldEnd(); } - iprot.ReadStructEnd(); + return hashcode; } - finally + + public override string ToString() { - iprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertTablets_args("); + int tmp412 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp412++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("testInsertTablet_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); - } + public partial class testInsertTabletsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool success; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertTablet_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public testInsertTabletsResult() + { } - __sb.Append(")"); - return __sb.ToString(); - } - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertTablets_args : TBase - { - private TSInsertTabletsReq _req; - - public TSInsertTabletsReq Req - { - get + public testInsertTabletsResult DeepCopy() { - return _req; + var tmp413 = new testInsertTabletsResult(); + if((Success != null) && __isset.success) + { + tmp413.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp413.__isset.success = this.__isset.success; + return tmp413; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.req = true; - this._req = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public testInsertTablets_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("testInsertTablets_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is testInsertTabletsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("testInsertTablets_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertTablets_result("); + int tmp414 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp414++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertTablets_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertRecordArgs : TBase + { + private TSInsertRecordReq _req; + public TSInsertRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertTablets_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertRecordArgs() { - __isset.success = true; - this._success = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public testInsertTablets_result() { - } + public testInsertRecordArgs DeepCopy() + { + var tmp415 = new testInsertRecordArgs(); + if((Req != null) && __isset.req) + { + tmp415.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + } + tmp415.__isset.req = this.__isset.req; + return tmp415; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertTablets_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is testInsertRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertRecord_args("); + int tmp416 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp416++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertTablets_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertRecordResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertRecord_args : TBase - { - private TSInsertRecordReq _req; - public TSInsertRecordReq Req - { - get + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertRecordResult() { - return _req; } - set + + public testInsertRecordResult DeepCopy() { - __isset.req = true; - this._req = value; + var tmp417 = new testInsertRecordResult(); + if((Success != null) && __isset.success) + { + tmp417.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp417.__isset.success = this.__isset.success; + return tmp417; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public testInsertRecord_args() { - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("testInsertRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertRecordReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is testInsertRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("testInsertRecord_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertRecord_result("); + int tmp418 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp418++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertRecord_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertStringRecordArgs : TBase + { + private TSInsertStringRecordReq _req; + public TSInsertStringRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertRecord_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertStringRecordArgs() { - __isset.success = true; - this._success = value; } - } + public testInsertStringRecordArgs DeepCopy() + { + var tmp419 = new testInsertStringRecordArgs(); + if((Req != null) && __isset.req) + { + tmp419.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + } + tmp419.__isset.req = this.__isset.req; + return tmp419; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - - public testInsertRecord_result() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertStringRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertRecord_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is testInsertStringRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertStringRecord_args("); + int tmp420 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp420++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertRecord_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertStringRecordResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertStringRecord_args : TBase - { - private TSInsertStringRecordReq _req; + public Isset __isset; + public struct Isset + { + public bool success; + } - public TSInsertStringRecordReq Req - { - get + public testInsertStringRecordResult() { - return _req; } - set + + public testInsertStringRecordResult DeepCopy() { - __isset.req = true; - this._req = value; + var tmp421 = new testInsertStringRecordResult(); + if((Success != null) && __isset.success) + { + tmp421.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp421.__isset.success = this.__isset.success; + return tmp421; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public testInsertStringRecord_args() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("testInsertStringRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is testInsertStringRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("testInsertStringRecord_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertStringRecord_result("); + int tmp422 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp422++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertStringRecord_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertRecordsArgs : TBase + { + private TSInsertRecordsReq _req; + public TSInsertRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertStringRecord_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertRecordsArgs() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public testInsertStringRecord_result() { - } + public testInsertRecordsArgs DeepCopy() + { + var tmp423 = new testInsertRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp423.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + } + tmp423.__isset.req = this.__isset.req; + return tmp423; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertStringRecord_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is testInsertRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertRecords_args("); + int tmp424 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp424++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertStringRecord_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertRecordsResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertRecords_args : TBase - { - private TSInsertRecordsReq _req; - public TSInsertRecordsReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public testInsertRecordsResult() { - __isset.req = true; - this._req = value; } - } - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public testInsertRecords_args() { - } + public testInsertRecordsResult DeepCopy() + { + var tmp425 = new testInsertRecordsResult(); + if((Success != null) && __isset.success) + { + tmp425.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp425.__isset.success = this.__isset.success; + return tmp425; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertRecords_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is testInsertRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertRecords_result("); + int tmp426 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp426++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertRecords_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertRecordsOfOneDeviceArgs : TBase + { + private TSInsertRecordsOfOneDeviceReq _req; + public TSInsertRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertRecords_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertRecordsOfOneDeviceArgs() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public testInsertRecords_result() { - } + public testInsertRecordsOfOneDeviceArgs DeepCopy() + { + var tmp427 = new testInsertRecordsOfOneDeviceArgs(); + if((Req != null) && __isset.req) + { + tmp427.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + } + tmp427.__isset.req = this.__isset.req; + return tmp427; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsOfOneDeviceReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecordsOfOneDevice_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertRecords_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); + int tmp428 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp428++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertRecords_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertRecordsOfOneDeviceResult : TBase + { + private TSStatus _success; + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertRecordsOfOneDevice_args : TBase - { - private TSInsertRecordsOfOneDeviceReq _req; - public TSInsertRecordsOfOneDeviceReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool success; } - set + + public testInsertRecordsOfOneDeviceResult() { - __isset.req = true; - this._req = value; } - } + public testInsertRecordsOfOneDeviceResult DeepCopy() + { + var tmp429 = new testInsertRecordsOfOneDeviceResult(); + if((Success != null) && __isset.success) + { + tmp429.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp429.__isset.success = this.__isset.success; + return tmp429; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public testInsertRecordsOfOneDevice_args() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecordsOfOneDevice_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public override bool Equals(object that) { - iprot.DecrementRecursionDepth(); + if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("testInsertRecordsOfOneDevice_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); + int tmp430 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp430++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class testInsertStringRecordsArgs : TBase + { + private TSInsertStringRecordsReq _req; + public TSInsertStringRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertRecordsOfOneDevice_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool req; } - set + + public testInsertStringRecordsArgs() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public testInsertRecordsOfOneDevice_result() { - } + public testInsertStringRecordsArgs DeepCopy() + { + var tmp431 = new testInsertStringRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp431.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + } + tmp431.__isset.req = this.__isset.req; + return tmp431; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("testInsertRecordsOfOneDevice_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertStringRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is testInsertStringRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; } - __sb.Append(")"); - return __sb.ToString(); - } - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertStringRecords_args : TBase - { - private TSInsertStringRecordsReq _req; - - public TSInsertStringRecordsReq Req - { - get - { - return _req; - } - set + public override string ToString() { - __isset.req = true; - this._req = value; + var sb = new StringBuilder("testInsertStringRecords_args("); + int tmp432 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp432++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public testInsertStringRecords_args() { - } - - public void Read (TProtocol iprot) + public partial class testInsertStringRecordsResult : TBase { - iprot.IncrementRecursionDepth(); - try + private TSStatus _success; + + public TSStatus Success { - TField field; - iprot.ReadStructBegin(); - while (true) + get { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; - } - iprot.ReadFieldEnd(); + return _success; } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try - { - TStruct struc = new TStruct("testInsertStringRecords_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + set + { + __isset.success = true; + this._success = value; } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + + public Isset __isset; + public struct Isset { - oprot.DecrementRecursionDepth(); + public bool success; } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertStringRecords_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); + public testInsertStringRecordsResult() + { } - __sb.Append(")"); - return __sb.ToString(); - } - - } - - - #if !SILVERLIGHT - [Serializable] - #endif - public partial class testInsertStringRecords_result : TBase - { - private TSStatus _success; - public TSStatus Success - { - get + public testInsertStringRecordsResult DeepCopy() { - return _success; + var tmp433 = new testInsertStringRecordsResult(); + if((Success != null) && __isset.success) + { + tmp433.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp433.__isset.success = this.__isset.success; + return tmp433; } - set + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - __isset.success = true; - this._success = value; - } - } + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public testInsertStringRecords_result() { - } + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("testInsertStringRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("testInsertStringRecords_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is testInsertStringRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("testInsertStringRecords_result("); + int tmp434 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp434++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("testInsertStringRecords_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class deleteDataArgs : TBase + { + private TSDeleteDataReq _req; + public TSDeleteDataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class deleteData_args : TBase - { - private TSDeleteDataReq _req; - public TSDeleteDataReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public deleteDataArgs() { - __isset.req = true; - this._req = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - public deleteData_args() { - } + public deleteDataArgs DeepCopy() + { + var tmp435 = new deleteDataArgs(); + if((Req != null) && __isset.req) + { + tmp435.Req = (TSDeleteDataReq)this.Req.DeepCopy(); + } + tmp435.__isset.req = this.__isset.req; + return tmp435; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSDeleteDataReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSDeleteDataReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteData_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("deleteData_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is deleteDataArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("deleteData_args("); + int tmp436 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp436++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("deleteData_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class deleteDataResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class deleteData_result : TBase - { - private TSStatus _success; + public Isset __isset; + public struct Isset + { + public bool success; + } - public TSStatus Success - { - get + public deleteDataResult() { - return _success; } - set + + public deleteDataResult DeepCopy() { - __isset.success = true; - this._success = value; + var tmp437 = new deleteDataResult(); + if((Success != null) && __isset.success) + { + tmp437.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp437.__isset.success = this.__isset.success; + return tmp437; } - } + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } - public deleteData_result() { - } + await iprot.ReadFieldEndAsync(cancellationToken); + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + oprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + var struc = new TStruct("deleteData_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSStatus(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); - break; + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } - iprot.ReadFieldEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("deleteData_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is deleteDataResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("deleteData_result("); + int tmp438 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp438++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("deleteData_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeRawDataQueryArgs : TBase + { + private TSRawDataQueryReq _req; + public TSRawDataQueryReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeRawDataQuery_args : TBase - { - private TSRawDataQueryReq _req; - public TSRawDataQueryReq Req - { - get + public Isset __isset; + public struct Isset { - return _req; + public bool req; } - set + + public executeRawDataQueryArgs() { - __isset.req = true; - this._req = value; } - } + public executeRawDataQueryArgs DeepCopy() + { + var tmp439 = new executeRawDataQueryArgs(); + if((Req != null) && __isset.req) + { + tmp439.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); + } + tmp439.__isset.req = this.__isset.req; + return tmp439; + } - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool req; - } - - public executeRawDataQuery_args() { - } - - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.Struct) { - Req = new TSRawDataQueryReq(); - Req.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSRawDataQueryReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeRawDataQuery_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeRawDataQuery_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Req != null && __isset.req) { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Req.Write(oprot); - oprot.WriteFieldEnd(); + if (!(that is executeRawDataQueryArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeRawDataQuery_args("); + int tmp440 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp440++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeRawDataQuery_args("); - bool __first = true; - if (Req != null && __isset.req) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Req: "); - __sb.Append(Req== null ? "" : Req.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class executeRawDataQueryResult : TBase + { + private TSExecuteStatementResp _success; + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class executeRawDataQuery_result : TBase - { - private TSExecuteStatementResp _success; - public TSExecuteStatementResp Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public executeRawDataQueryResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public executeRawDataQuery_result() { - } + public executeRawDataQueryResult DeepCopy() + { + var tmp441 = new executeRawDataQueryResult(); + if((Success != null) && __isset.success) + { + tmp441.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp441.__isset.success = this.__isset.success; + return tmp441; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); - Success.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeRawDataQuery_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("executeRawDataQuery_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + if (!(that is executeRawDataQueryResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } - if (this.__isset.success) { - if (Success != null) { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - oprot.WriteFieldBegin(field); - Success.Write(oprot); - oprot.WriteFieldEnd(); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("executeRawDataQuery_result("); + int tmp442 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp442++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("executeRawDataQuery_result("); - bool __first = true; - if (Success != null && __isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success== null ? "" : Success.ToString()); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class requestStatementIdArgs : TBase + { + private long _sessionId; + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class requestStatementId_args : TBase - { - private long _sessionId; - public long SessionId - { - get + public Isset __isset; + public struct Isset { - return _sessionId; + public bool sessionId; } - set + + public requestStatementIdArgs() { - __isset.sessionId = true; - this._sessionId = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool sessionId; - } - public requestStatementId_args() { - } + public requestStatementIdArgs DeepCopy() + { + var tmp443 = new requestStatementIdArgs(); + if(__isset.sessionId) + { + tmp443.SessionId = this.SessionId; + } + tmp443.__isset.sessionId = this.__isset.sessionId; + return tmp443; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); } - finally + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - iprot.DecrementRecursionDepth(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("requestStatementId_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public override bool Equals(object that) { - TStruct struc = new TStruct("requestStatementId_args"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (__isset.sessionId) { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); + if (!(that is requestStatementIdArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + return hashcode; } - finally + + public override string ToString() { - oprot.DecrementRecursionDepth(); + var sb = new StringBuilder("requestStatementId_args("); + int tmp444 = 0; + if(__isset.sessionId) + { + if(0 < tmp444++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("requestStatementId_args("); - bool __first = true; - if (__isset.sessionId) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("SessionId: "); - __sb.Append(SessionId); - } - __sb.Append(")"); - return __sb.ToString(); - } - } + public partial class requestStatementIdResult : TBase + { + private long _success; + public long Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } - #if !SILVERLIGHT - [Serializable] - #endif - public partial class requestStatementId_result : TBase - { - private long _success; - public long Success - { - get + public Isset __isset; + public struct Isset { - return _success; + public bool success; } - set + + public requestStatementIdResult() { - __isset.success = true; - this._success = value; } - } - - - public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { - public bool success; - } - public requestStatementId_result() { - } + public requestStatementIdResult DeepCopy() + { + var tmp445 = new requestStatementIdResult(); + if(__isset.success) + { + tmp445.Success = this.Success; + } + tmp445.__isset.success = this.__isset.success; + return tmp445; + } - public void Read (TProtocol iprot) - { - iprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - TField field; - iprot.ReadStructBegin(); - while (true) + iprot.IncrementRecursionDepth(); + try { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { - break; - } - switch (field.ID) + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) { - case 0: - if (field.Type == TType.I64) { - Success = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); - } - break; - default: - TProtocolUtil.Skip(iprot, field.Type); + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.I64) + { + Success = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadFieldEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); } - iprot.ReadStructEnd(); - } - finally - { - iprot.DecrementRecursionDepth(); } - } - public void Write(TProtocol oprot) { - oprot.IncrementRecursionDepth(); - try + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - TStruct struc = new TStruct("requestStatementId_result"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("requestStatementId_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); - if (this.__isset.success) { - field.Name = "Success"; - field.Type = TType.I64; - field.ID = 0; - oprot.WriteFieldBegin(field); - oprot.WriteI64(Success); - oprot.WriteFieldEnd(); + if(this.__isset.success) + { + field.Name = "Success"; + field.Type = TType.I64; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Success, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); } - finally + + public override bool Equals(object that) { - oprot.DecrementRecursionDepth(); + if (!(that is requestStatementIdResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - } - public override string ToString() { - StringBuilder __sb = new StringBuilder("requestStatementId_result("); - bool __first = true; - if (__isset.success) { - if(!__first) { __sb.Append(", "); } - __first = false; - __sb.Append("Success: "); - __sb.Append(Success); + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("requestStatementId_result("); + int tmp446 = 0; + if(__isset.success) + { + if(0 < tmp446++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - __sb.Append(")"); - return __sb.ToString(); } } diff --git a/rpc/TSInsertRecordReq.cs b/rpc/TSInsertRecordReq.cs index 19e2f17..cb66120 100644 --- a/rpc/TSInsertRecordReq.cs +++ b/rpc/TSInsertRecordReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertRecordReq : TBase { @@ -32,10 +42,12 @@ public partial class TSInsertRecordReq : TBase public long Timestamp { get; set; } - public TSInsertRecordReq() { + public TSInsertRecordReq() + { } - public TSInsertRecordReq(long sessionId, string deviceId, List measurements, byte[] values, long timestamp) : this() { + public TSInsertRecordReq(long sessionId, string deviceId, List measurements, byte[] values, long timestamp) : this() + { this.SessionId = sessionId; this.DeviceId = deviceId; this.Measurements = measurements; @@ -43,7 +55,27 @@ public TSInsertRecordReq(long sessionId, string deviceId, List measureme this.Timestamp = timestamp; } - public void Read (TProtocol iprot) + public TSInsertRecordReq DeepCopy() + { + var tmp89 = new TSInsertRecordReq(); + tmp89.SessionId = this.SessionId; + if((DeviceId != null)) + { + tmp89.DeviceId = this.DeviceId; + } + if((Measurements != null)) + { + tmp89.Measurements = this.Measurements.DeepCopy(); + } + if((Values != null)) + { + tmp89.Values = this.Values.ToArray(); + } + tmp89.Timestamp = this.Timestamp; + return tmp89; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -54,82 +86,111 @@ public void Read (TProtocol iprot) bool isset_values = false; bool isset_timestamp = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - DeviceId = iprot.ReadString(); + if (field.Type == TType.String) + { + DeviceId = await iprot.ReadStringAsync(cancellationToken); isset_deviceId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Measurements = new List(); - TList _list51 = iprot.ReadListBegin(); - for( int _i52 = 0; _i52 < _list51.Count; ++_i52) + TList _list90 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list90.Count); + for(int _i91 = 0; _i91 < _list90.Count; ++_i91) { - string _elem53; - _elem53 = iprot.ReadString(); - Measurements.Add(_elem53); + string _elem92; + _elem92 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem92); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurements = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.String) { - Values = iprot.ReadBinary(); + if (field.Type == TType.String) + { + Values = await iprot.ReadBinaryAsync(cancellationToken); isset_values = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.I64) { - Timestamp = iprot.ReadI64(); + if (field.Type == TType.I64) + { + Timestamp = await iprot.ReadI64Async(cancellationToken); isset_timestamp = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurements) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_values) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestamp) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamp not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -137,58 +198,62 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertRecordReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertRecordReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceId == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); - field.Name = "deviceId"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(DeviceId); - oprot.WriteFieldEnd(); - if (Measurements == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceId != null)) + { + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) { - oprot.WriteListBegin(new TList(TType.String, Measurements.Count)); - foreach (string _iter54 in Measurements) + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter54); + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter93 in Measurements) + { + await oprot.WriteStringAsync(_iter93, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Values != null)) + { + field.Name = "values"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Values, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Values == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); - field.Name = "values"; - field.Type = TType.String; - field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteBinary(Values); - oprot.WriteFieldEnd(); field.Name = "timestamp"; field.Type = TType.I64; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteI64(Timestamp); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timestamp, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -196,21 +261,62 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertRecordReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceId: "); - __sb.Append(DeviceId); - __sb.Append(", Measurements: "); - __sb.Append(Measurements); - __sb.Append(", Values: "); - __sb.Append(Values); - __sb.Append(", Timestamp: "); - __sb.Append(Timestamp); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertRecordReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(DeviceId, other.DeviceId) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(Values, other.Values) + && System.Object.Equals(Timestamp, other.Timestamp); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceId != null)) + { + hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((Values != null)) + { + hashcode = (hashcode * 397) + Values.GetHashCode(); + } + hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSInsertRecordReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceId != null)) + { + sb.Append(", DeviceId: "); + DeviceId.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((Values != null)) + { + sb.Append(", Values: "); + Values.ToString(sb); + } + sb.Append(", Timestamp: "); + Timestamp.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSInsertRecordsOfOneDeviceReq.cs b/rpc/TSInsertRecordsOfOneDeviceReq.cs index fa20f2c..320ea78 100644 --- a/rpc/TSInsertRecordsOfOneDeviceReq.cs +++ b/rpc/TSInsertRecordsOfOneDeviceReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertRecordsOfOneDeviceReq : TBase { @@ -32,10 +42,12 @@ public partial class TSInsertRecordsOfOneDeviceReq : TBase public List Timestamps { get; set; } - public TSInsertRecordsOfOneDeviceReq() { + public TSInsertRecordsOfOneDeviceReq() + { } - public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List> measurementsList, List valuesList, List timestamps) : this() { + public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List> measurementsList, List valuesList, List timestamps) : this() + { this.SessionId = sessionId; this.DeviceId = deviceId; this.MeasurementsList = measurementsList; @@ -43,7 +55,30 @@ public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List>(); - TList _list123 = iprot.ReadListBegin(); - for( int _i124 = 0; _i124 < _list123.Count; ++_i124) + TList _list172 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list172.Count); + for(int _i173 = 0; _i173 < _list172.Count; ++_i173) { - List _elem125; + List _elem174; { - _elem125 = new List(); - TList _list126 = iprot.ReadListBegin(); - for( int _i127 = 0; _i127 < _list126.Count; ++_i127) + TList _list175 = await iprot.ReadListBeginAsync(cancellationToken); + _elem174 = new List(_list175.Count); + for(int _i176 = 0; _i176 < _list175.Count; ++_i176) { - string _elem128; - _elem128 = iprot.ReadString(); - _elem125.Add(_elem128); + string _elem177; + _elem177 = await iprot.ReadStringAsync(cancellationToken); + _elem174.Add(_elem177); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem125); + MeasurementsList.Add(_elem174); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurementsList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ValuesList = new List(); - TList _list129 = iprot.ReadListBegin(); - for( int _i130 = 0; _i130 < _list129.Count; ++_i130) + TList _list178 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list178.Count); + for(int _i179 = 0; _i179 < _list178.Count; ++_i179) { - byte[] _elem131; - _elem131 = iprot.ReadBinary(); - ValuesList.Add(_elem131); + byte[] _elem180; + _elem180 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem180); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_valuesList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Timestamps = new List(); - TList _list132 = iprot.ReadListBegin(); - for( int _i133 = 0; _i133 < _list132.Count; ++_i133) + TList _list181 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list181.Count); + for(int _i182 = 0; _i182 < _list181.Count; ++_i182) { - long _elem134; - _elem134 = iprot.ReadI64(); - Timestamps.Add(_elem134); + long _elem183; + _elem183 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem183); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_timestamps = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurementsList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_valuesList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestamps) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -167,81 +231,86 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertRecordsOfOneDeviceReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertRecordsOfOneDeviceReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceId == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); - field.Name = "deviceId"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(DeviceId); - oprot.WriteFieldEnd(); - if (MeasurementsList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceId != null)) + { + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) { - oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); - foreach (List _iter135 in MeasurementsList) + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter184 in MeasurementsList) { - oprot.WriteListBegin(new TList(TType.String, _iter135.Count)); - foreach (string _iter136 in _iter135) { - oprot.WriteString(_iter136); + await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); + foreach (string _iter185 in _iter184) + { + await oprot.WriteStringAsync(_iter185, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (ValuesList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - oprot.WriteFieldBegin(field); + if((ValuesList != null)) { - oprot.WriteListBegin(new TList(TType.String, ValuesList.Count)); - foreach (byte[] _iter137 in ValuesList) + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter137); + await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); + foreach (byte[] _iter186 in ValuesList) + { + await oprot.WriteBinaryAsync(_iter186, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Timestamps == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - oprot.WriteFieldBegin(field); + if((Timestamps != null)) { - oprot.WriteListBegin(new TList(TType.I64, Timestamps.Count)); - foreach (long _iter138 in Timestamps) + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI64(_iter138); + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter187 in Timestamps) + { + await oprot.WriteI64Async(_iter187, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -249,21 +318,68 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceId: "); - __sb.Append(DeviceId); - __sb.Append(", MeasurementsList: "); - __sb.Append(MeasurementsList); - __sb.Append(", ValuesList: "); - __sb.Append(ValuesList); - __sb.Append(", Timestamps: "); - __sb.Append(Timestamps); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertRecordsOfOneDeviceReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(DeviceId, other.DeviceId) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceId != null)) + { + hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceId != null)) + { + sb.Append(", DeviceId: "); + DeviceId.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSInsertRecordsReq.cs b/rpc/TSInsertRecordsReq.cs index dfb1e93..32beaec 100644 --- a/rpc/TSInsertRecordsReq.cs +++ b/rpc/TSInsertRecordsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertRecordsReq : TBase { @@ -32,10 +42,12 @@ public partial class TSInsertRecordsReq : TBase public List Timestamps { get; set; } - public TSInsertRecordsReq() { + public TSInsertRecordsReq() + { } - public TSInsertRecordsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestamps) : this() { + public TSInsertRecordsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestamps) : this() + { this.SessionId = sessionId; this.DeviceIds = deviceIds; this.MeasurementsList = measurementsList; @@ -43,7 +55,30 @@ public TSInsertRecordsReq(long sessionId, List deviceIds, List(); - TList _list103 = iprot.ReadListBegin(); - for( int _i104 = 0; _i104 < _list103.Count; ++_i104) + TList _list150 = await iprot.ReadListBeginAsync(cancellationToken); + DeviceIds = new List(_list150.Count); + for(int _i151 = 0; _i151 < _list150.Count; ++_i151) { - string _elem105; - _elem105 = iprot.ReadString(); - DeviceIds.Add(_elem105); + string _elem152; + _elem152 = await iprot.ReadStringAsync(cancellationToken); + DeviceIds.Add(_elem152); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_deviceIds = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - MeasurementsList = new List>(); - TList _list106 = iprot.ReadListBegin(); - for( int _i107 = 0; _i107 < _list106.Count; ++_i107) + TList _list153 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list153.Count); + for(int _i154 = 0; _i154 < _list153.Count; ++_i154) { - List _elem108; + List _elem155; { - _elem108 = new List(); - TList _list109 = iprot.ReadListBegin(); - for( int _i110 = 0; _i110 < _list109.Count; ++_i110) + TList _list156 = await iprot.ReadListBeginAsync(cancellationToken); + _elem155 = new List(_list156.Count); + for(int _i157 = 0; _i157 < _list156.Count; ++_i157) { - string _elem111; - _elem111 = iprot.ReadString(); - _elem108.Add(_elem111); + string _elem158; + _elem158 = await iprot.ReadStringAsync(cancellationToken); + _elem155.Add(_elem158); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem108); + MeasurementsList.Add(_elem155); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurementsList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ValuesList = new List(); - TList _list112 = iprot.ReadListBegin(); - for( int _i113 = 0; _i113 < _list112.Count; ++_i113) + TList _list159 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list159.Count); + for(int _i160 = 0; _i160 < _list159.Count; ++_i160) { - byte[] _elem114; - _elem114 = iprot.ReadBinary(); - ValuesList.Add(_elem114); + byte[] _elem161; + _elem161 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem161); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_valuesList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Timestamps = new List(); - TList _list115 = iprot.ReadListBegin(); - for( int _i116 = 0; _i116 < _list115.Count; ++_i116) + TList _list162 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list162.Count); + for(int _i163 = 0; _i163 < _list162.Count; ++_i163) { - long _elem117; - _elem117 = iprot.ReadI64(); - Timestamps.Add(_elem117); + long _elem164; + _elem164 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem164); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_timestamps = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceIds) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurementsList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_valuesList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestamps) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -177,88 +241,93 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertRecordsReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertRecordsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceIds == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); - field.Name = "deviceIds"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceIds != null)) { - oprot.WriteListBegin(new TList(TType.String, DeviceIds.Count)); - foreach (string _iter118 in DeviceIds) + field.Name = "deviceIds"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter118); + await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); + foreach (string _iter165 in DeviceIds) + { + await oprot.WriteStringAsync(_iter165, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (MeasurementsList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + if((MeasurementsList != null)) { - oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); - foreach (List _iter119 in MeasurementsList) + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter166 in MeasurementsList) { - oprot.WriteListBegin(new TList(TType.String, _iter119.Count)); - foreach (string _iter120 in _iter119) { - oprot.WriteString(_iter120); + await oprot.WriteListBeginAsync(new TList(TType.String, _iter166.Count), cancellationToken); + foreach (string _iter167 in _iter166) + { + await oprot.WriteStringAsync(_iter167, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (ValuesList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - oprot.WriteFieldBegin(field); + if((ValuesList != null)) { - oprot.WriteListBegin(new TList(TType.String, ValuesList.Count)); - foreach (byte[] _iter121 in ValuesList) + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter121); + await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); + foreach (byte[] _iter168 in ValuesList) + { + await oprot.WriteBinaryAsync(_iter168, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Timestamps == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - oprot.WriteFieldBegin(field); + if((Timestamps != null)) { - oprot.WriteListBegin(new TList(TType.I64, Timestamps.Count)); - foreach (long _iter122 in Timestamps) + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI64(_iter122); + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter169 in Timestamps) + { + await oprot.WriteI64Async(_iter169, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -266,21 +335,68 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertRecordsReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceIds: "); - __sb.Append(DeviceIds); - __sb.Append(", MeasurementsList: "); - __sb.Append(MeasurementsList); - __sb.Append(", ValuesList: "); - __sb.Append(ValuesList); - __sb.Append(", Timestamps: "); - __sb.Append(Timestamps); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertRecordsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceIds != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSInsertRecordsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceIds != null)) + { + sb.Append(", DeviceIds: "); + DeviceIds.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSInsertStringRecordReq.cs b/rpc/TSInsertStringRecordReq.cs index dcf935a..c1467b7 100644 --- a/rpc/TSInsertStringRecordReq.cs +++ b/rpc/TSInsertStringRecordReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertStringRecordReq : TBase { @@ -32,10 +42,12 @@ public partial class TSInsertStringRecordReq : TBase public long Timestamp { get; set; } - public TSInsertStringRecordReq() { + public TSInsertStringRecordReq() + { } - public TSInsertStringRecordReq(long sessionId, string deviceId, List measurements, List values, long timestamp) : this() { + public TSInsertStringRecordReq(long sessionId, string deviceId, List measurements, List values, long timestamp) : this() + { this.SessionId = sessionId; this.DeviceId = deviceId; this.Measurements = measurements; @@ -43,7 +55,27 @@ public TSInsertStringRecordReq(long sessionId, string deviceId, List mea this.Timestamp = timestamp; } - public void Read (TProtocol iprot) + public TSInsertStringRecordReq DeepCopy() + { + var tmp95 = new TSInsertStringRecordReq(); + tmp95.SessionId = this.SessionId; + if((DeviceId != null)) + { + tmp95.DeviceId = this.DeviceId; + } + if((Measurements != null)) + { + tmp95.Measurements = this.Measurements.DeepCopy(); + } + if((Values != null)) + { + tmp95.Values = this.Values.DeepCopy(); + } + tmp95.Timestamp = this.Timestamp; + return tmp95; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -54,92 +86,121 @@ public void Read (TProtocol iprot) bool isset_values = false; bool isset_timestamp = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - DeviceId = iprot.ReadString(); + if (field.Type == TType.String) + { + DeviceId = await iprot.ReadStringAsync(cancellationToken); isset_deviceId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Measurements = new List(); - TList _list55 = iprot.ReadListBegin(); - for( int _i56 = 0; _i56 < _list55.Count; ++_i56) + TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list96.Count); + for(int _i97 = 0; _i97 < _list96.Count; ++_i97) { - string _elem57; - _elem57 = iprot.ReadString(); - Measurements.Add(_elem57); + string _elem98; + _elem98 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem98); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurements = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Values = new List(); - TList _list58 = iprot.ReadListBegin(); - for( int _i59 = 0; _i59 < _list58.Count; ++_i59) + TList _list99 = await iprot.ReadListBeginAsync(cancellationToken); + Values = new List(_list99.Count); + for(int _i100 = 0; _i100 < _list99.Count; ++_i100) { - string _elem60; - _elem60 = iprot.ReadString(); - Values.Add(_elem60); + string _elem101; + _elem101 = await iprot.ReadStringAsync(cancellationToken); + Values.Add(_elem101); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_values = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.I64) { - Timestamp = iprot.ReadI64(); + if (field.Type == TType.I64) + { + Timestamp = await iprot.ReadI64Async(cancellationToken); isset_timestamp = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurements) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_values) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestamp) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamp not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -147,65 +208,69 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertStringRecordReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertStringRecordReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceId == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); - field.Name = "deviceId"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(DeviceId); - oprot.WriteFieldEnd(); - if (Measurements == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceId != null)) { - oprot.WriteListBegin(new TList(TType.String, Measurements.Count)); - foreach (string _iter61 in Measurements) + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter61); + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter102 in Measurements) + { + await oprot.WriteStringAsync(_iter102, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Values == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); - field.Name = "values"; - field.Type = TType.List; - field.ID = 4; - oprot.WriteFieldBegin(field); + if((Values != null)) { - oprot.WriteListBegin(new TList(TType.String, Values.Count)); - foreach (string _iter62 in Values) + field.Name = "values"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter62); + await oprot.WriteListBeginAsync(new TList(TType.String, Values.Count), cancellationToken); + foreach (string _iter103 in Values) + { + await oprot.WriteStringAsync(_iter103, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); field.Name = "timestamp"; field.Type = TType.I64; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteI64(Timestamp); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timestamp, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -213,21 +278,62 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertStringRecordReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceId: "); - __sb.Append(DeviceId); - __sb.Append(", Measurements: "); - __sb.Append(Measurements); - __sb.Append(", Values: "); - __sb.Append(Values); - __sb.Append(", Timestamp: "); - __sb.Append(Timestamp); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(DeviceId, other.DeviceId) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(Values, other.Values) + && System.Object.Equals(Timestamp, other.Timestamp); } + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceId != null)) + { + hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((Values != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Values); + } + hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceId != null)) + { + sb.Append(", DeviceId: "); + DeviceId.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((Values != null)) + { + sb.Append(", Values: "); + Values.ToString(sb); + } + sb.Append(", Timestamp: "); + Timestamp.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSInsertStringRecordsReq.cs b/rpc/TSInsertStringRecordsReq.cs index 93a7c55..14e80b2 100644 --- a/rpc/TSInsertStringRecordsReq.cs +++ b/rpc/TSInsertStringRecordsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertStringRecordsReq : TBase { @@ -32,10 +42,12 @@ public partial class TSInsertStringRecordsReq : TBase public List Timestamps { get; set; } - public TSInsertStringRecordsReq() { + public TSInsertStringRecordsReq() + { } - public TSInsertStringRecordsReq(long sessionId, List deviceIds, List> measurementsList, List> valuesList, List timestamps) : this() { + public TSInsertStringRecordsReq(long sessionId, List deviceIds, List> measurementsList, List> valuesList, List timestamps) : this() + { this.SessionId = sessionId; this.DeviceIds = deviceIds; this.MeasurementsList = measurementsList; @@ -43,7 +55,30 @@ public TSInsertStringRecordsReq(long sessionId, List deviceIds, List(); - TList _list139 = iprot.ReadListBegin(); - for( int _i140 = 0; _i140 < _list139.Count; ++_i140) + TList _list190 = await iprot.ReadListBeginAsync(cancellationToken); + DeviceIds = new List(_list190.Count); + for(int _i191 = 0; _i191 < _list190.Count; ++_i191) { - string _elem141; - _elem141 = iprot.ReadString(); - DeviceIds.Add(_elem141); + string _elem192; + _elem192 = await iprot.ReadStringAsync(cancellationToken); + DeviceIds.Add(_elem192); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_deviceIds = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - MeasurementsList = new List>(); - TList _list142 = iprot.ReadListBegin(); - for( int _i143 = 0; _i143 < _list142.Count; ++_i143) + TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list193.Count); + for(int _i194 = 0; _i194 < _list193.Count; ++_i194) { - List _elem144; + List _elem195; { - _elem144 = new List(); - TList _list145 = iprot.ReadListBegin(); - for( int _i146 = 0; _i146 < _list145.Count; ++_i146) + TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); + _elem195 = new List(_list196.Count); + for(int _i197 = 0; _i197 < _list196.Count; ++_i197) { - string _elem147; - _elem147 = iprot.ReadString(); - _elem144.Add(_elem147); + string _elem198; + _elem198 = await iprot.ReadStringAsync(cancellationToken); + _elem195.Add(_elem198); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem144); + MeasurementsList.Add(_elem195); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurementsList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ValuesList = new List>(); - TList _list148 = iprot.ReadListBegin(); - for( int _i149 = 0; _i149 < _list148.Count; ++_i149) + TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list199.Count); + for(int _i200 = 0; _i200 < _list199.Count; ++_i200) { - List _elem150; + List _elem201; { - _elem150 = new List(); - TList _list151 = iprot.ReadListBegin(); - for( int _i152 = 0; _i152 < _list151.Count; ++_i152) + TList _list202 = await iprot.ReadListBeginAsync(cancellationToken); + _elem201 = new List(_list202.Count); + for(int _i203 = 0; _i203 < _list202.Count; ++_i203) { - string _elem153; - _elem153 = iprot.ReadString(); - _elem150.Add(_elem153); + string _elem204; + _elem204 = await iprot.ReadStringAsync(cancellationToken); + _elem201.Add(_elem204); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - ValuesList.Add(_elem150); + ValuesList.Add(_elem201); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_valuesList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Timestamps = new List(); - TList _list154 = iprot.ReadListBegin(); - for( int _i155 = 0; _i155 < _list154.Count; ++_i155) + TList _list205 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list205.Count); + for(int _i206 = 0; _i206 < _list205.Count; ++_i206) { - long _elem156; - _elem156 = iprot.ReadI64(); - Timestamps.Add(_elem156); + long _elem207; + _elem207 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem207); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_timestamps = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceIds) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurementsList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_valuesList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestamps) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -187,95 +251,100 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertStringRecordsReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertStringRecordsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceIds == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); - field.Name = "deviceIds"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceIds != null)) { - oprot.WriteListBegin(new TList(TType.String, DeviceIds.Count)); - foreach (string _iter157 in DeviceIds) + field.Name = "deviceIds"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter157); + await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); + foreach (string _iter208 in DeviceIds) + { + await oprot.WriteStringAsync(_iter208, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (MeasurementsList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + if((MeasurementsList != null)) { - oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); - foreach (List _iter158 in MeasurementsList) + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter209 in MeasurementsList) { - oprot.WriteListBegin(new TList(TType.String, _iter158.Count)); - foreach (string _iter159 in _iter158) { - oprot.WriteString(_iter159); + await oprot.WriteListBeginAsync(new TList(TType.String, _iter209.Count), cancellationToken); + foreach (string _iter210 in _iter209) + { + await oprot.WriteStringAsync(_iter210, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (ValuesList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - oprot.WriteFieldBegin(field); + if((ValuesList != null)) { - oprot.WriteListBegin(new TList(TType.List, ValuesList.Count)); - foreach (List _iter160 in ValuesList) + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { + await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); + foreach (List _iter211 in ValuesList) { - oprot.WriteListBegin(new TList(TType.String, _iter160.Count)); - foreach (string _iter161 in _iter160) { - oprot.WriteString(_iter161); + await oprot.WriteListBeginAsync(new TList(TType.String, _iter211.Count), cancellationToken); + foreach (string _iter212 in _iter211) + { + await oprot.WriteStringAsync(_iter212, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Timestamps == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - oprot.WriteFieldBegin(field); + if((Timestamps != null)) { - oprot.WriteListBegin(new TList(TType.I64, Timestamps.Count)); - foreach (long _iter162 in Timestamps) + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI64(_iter162); + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter213 in Timestamps) + { + await oprot.WriteI64Async(_iter213, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -283,21 +352,68 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertStringRecordsReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceIds: "); - __sb.Append(DeviceIds); - __sb.Append(", MeasurementsList: "); - __sb.Append(MeasurementsList); - __sb.Append(", ValuesList: "); - __sb.Append(ValuesList); - __sb.Append(", Timestamps: "); - __sb.Append(Timestamps); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceIds != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceIds != null)) + { + sb.Append(", DeviceIds: "); + DeviceIds.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSInsertTabletReq.cs b/rpc/TSInsertTabletReq.cs index de8fab9..2782115 100644 --- a/rpc/TSInsertTabletReq.cs +++ b/rpc/TSInsertTabletReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertTabletReq : TBase { @@ -36,10 +46,12 @@ public partial class TSInsertTabletReq : TBase public int Size { get; set; } - public TSInsertTabletReq() { + public TSInsertTabletReq() + { } - public TSInsertTabletReq(long sessionId, string deviceId, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() { + public TSInsertTabletReq(long sessionId, string deviceId, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() + { this.SessionId = sessionId; this.DeviceId = deviceId; this.Measurements = measurements; @@ -49,7 +61,35 @@ public TSInsertTabletReq(long sessionId, string deviceId, List measureme this.Size = size; } - public void Read (TProtocol iprot) + public TSInsertTabletReq DeepCopy() + { + var tmp105 = new TSInsertTabletReq(); + tmp105.SessionId = this.SessionId; + if((DeviceId != null)) + { + tmp105.DeviceId = this.DeviceId; + } + if((Measurements != null)) + { + tmp105.Measurements = this.Measurements.DeepCopy(); + } + if((Values != null)) + { + tmp105.Values = this.Values.ToArray(); + } + if((Timestamps != null)) + { + tmp105.Timestamps = this.Timestamps.ToArray(); + } + if((Types != null)) + { + tmp105.Types = this.Types.DeepCopy(); + } + tmp105.Size = this.Size; + return tmp105; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -62,112 +102,151 @@ public void Read (TProtocol iprot) bool isset_types = false; bool isset_size = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - DeviceId = iprot.ReadString(); + if (field.Type == TType.String) + { + DeviceId = await iprot.ReadStringAsync(cancellationToken); isset_deviceId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Measurements = new List(); - TList _list63 = iprot.ReadListBegin(); - for( int _i64 = 0; _i64 < _list63.Count; ++_i64) + TList _list106 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list106.Count); + for(int _i107 = 0; _i107 < _list106.Count; ++_i107) { - string _elem65; - _elem65 = iprot.ReadString(); - Measurements.Add(_elem65); + string _elem108; + _elem108 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem108); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurements = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.String) { - Values = iprot.ReadBinary(); + if (field.Type == TType.String) + { + Values = await iprot.ReadBinaryAsync(cancellationToken); isset_values = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.String) { - Timestamps = iprot.ReadBinary(); + if (field.Type == TType.String) + { + Timestamps = await iprot.ReadBinaryAsync(cancellationToken); isset_timestamps = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Types = new List(); - TList _list66 = iprot.ReadListBegin(); - for( int _i67 = 0; _i67 < _list66.Count; ++_i67) + TList _list109 = await iprot.ReadListBeginAsync(cancellationToken); + Types = new List(_list109.Count); + for(int _i110 = 0; _i110 < _list109.Count; ++_i110) { - int _elem68; - _elem68 = iprot.ReadI32(); - Types.Add(_elem68); + int _elem111; + _elem111 = await iprot.ReadI32Async(cancellationToken); + Types.Add(_elem111); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_types = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 7: - if (field.Type == TType.I32) { - Size = iprot.ReadI32(); + if (field.Type == TType.I32) + { + Size = await iprot.ReadI32Async(cancellationToken); isset_size = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurements) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_values) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestamps) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_types) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Types not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_size) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Size not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -175,81 +254,87 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertTabletReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertTabletReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceId == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceId not set"); - field.Name = "deviceId"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(DeviceId); - oprot.WriteFieldEnd(); - if (Measurements == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Measurements not set"); - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceId != null)) + { + field.Name = "deviceId"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) { - oprot.WriteListBegin(new TList(TType.String, Measurements.Count)); - foreach (string _iter69 in Measurements) + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter69); + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter112 in Measurements) + { + await oprot.WriteStringAsync(_iter112, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Values != null)) + { + field.Name = "values"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Values, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (Values == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Values not set"); - field.Name = "values"; - field.Type = TType.String; - field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteBinary(Values); - oprot.WriteFieldEnd(); - if (Timestamps == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Timestamps not set"); - field.Name = "timestamps"; - field.Type = TType.String; - field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteBinary(Timestamps); - oprot.WriteFieldEnd(); - if (Types == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Types not set"); - field.Name = "types"; - field.Type = TType.List; - field.ID = 6; - oprot.WriteFieldBegin(field); + if((Timestamps != null)) { - oprot.WriteListBegin(new TList(TType.I32, Types.Count)); - foreach (int _iter70 in Types) + field.Name = "timestamps"; + field.Type = TType.String; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Timestamps, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Types != null)) + { + field.Name = "types"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI32(_iter70); + await oprot.WriteListBeginAsync(new TList(TType.I32, Types.Count), cancellationToken); + foreach (int _iter113 in Types) + { + await oprot.WriteI32Async(_iter113, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); field.Name = "size"; field.Type = TType.I32; field.ID = 7; - oprot.WriteFieldBegin(field); - oprot.WriteI32(Size); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Size, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -257,25 +342,82 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertTabletReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceId: "); - __sb.Append(DeviceId); - __sb.Append(", Measurements: "); - __sb.Append(Measurements); - __sb.Append(", Values: "); - __sb.Append(Values); - __sb.Append(", Timestamps: "); - __sb.Append(Timestamps); - __sb.Append(", Types: "); - __sb.Append(Types); - __sb.Append(", Size: "); - __sb.Append(Size); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertTabletReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(DeviceId, other.DeviceId) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(Values, other.Values) + && TCollections.Equals(Timestamps, other.Timestamps) + && TCollections.Equals(Types, other.Types) + && System.Object.Equals(Size, other.Size); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceId != null)) + { + hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((Values != null)) + { + hashcode = (hashcode * 397) + Values.GetHashCode(); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + Timestamps.GetHashCode(); + } + if((Types != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Types); + } + hashcode = (hashcode * 397) + Size.GetHashCode(); + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSInsertTabletReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceId != null)) + { + sb.Append(", DeviceId: "); + DeviceId.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((Values != null)) + { + sb.Append(", Values: "); + Values.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if((Types != null)) + { + sb.Append(", Types: "); + Types.ToString(sb); + } + sb.Append(", Size: "); + Size.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSInsertTabletsReq.cs b/rpc/TSInsertTabletsReq.cs index 90d5ef6..8ad788e 100644 --- a/rpc/TSInsertTabletsReq.cs +++ b/rpc/TSInsertTabletsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSInsertTabletsReq : TBase { @@ -36,10 +46,12 @@ public partial class TSInsertTabletsReq : TBase public List SizeList { get; set; } - public TSInsertTabletsReq() { + public TSInsertTabletsReq() + { } - public TSInsertTabletsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() { + public TSInsertTabletsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() + { this.SessionId = sessionId; this.DeviceIds = deviceIds; this.MeasurementsList = measurementsList; @@ -49,7 +61,38 @@ public TSInsertTabletsReq(long sessionId, List deviceIds, List(); - TList _list71 = iprot.ReadListBegin(); - for( int _i72 = 0; _i72 < _list71.Count; ++_i72) + TList _list116 = await iprot.ReadListBeginAsync(cancellationToken); + DeviceIds = new List(_list116.Count); + for(int _i117 = 0; _i117 < _list116.Count; ++_i117) { - string _elem73; - _elem73 = iprot.ReadString(); - DeviceIds.Add(_elem73); + string _elem118; + _elem118 = await iprot.ReadStringAsync(cancellationToken); + DeviceIds.Add(_elem118); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_deviceIds = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - MeasurementsList = new List>(); - TList _list74 = iprot.ReadListBegin(); - for( int _i75 = 0; _i75 < _list74.Count; ++_i75) + TList _list119 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list119.Count); + for(int _i120 = 0; _i120 < _list119.Count; ++_i120) { - List _elem76; + List _elem121; { - _elem76 = new List(); - TList _list77 = iprot.ReadListBegin(); - for( int _i78 = 0; _i78 < _list77.Count; ++_i78) + TList _list122 = await iprot.ReadListBeginAsync(cancellationToken); + _elem121 = new List(_list122.Count); + for(int _i123 = 0; _i123 < _list122.Count; ++_i123) { - string _elem79; - _elem79 = iprot.ReadString(); - _elem76.Add(_elem79); + string _elem124; + _elem124 = await iprot.ReadStringAsync(cancellationToken); + _elem121.Add(_elem124); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem76); + MeasurementsList.Add(_elem121); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_measurementsList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ValuesList = new List(); - TList _list80 = iprot.ReadListBegin(); - for( int _i81 = 0; _i81 < _list80.Count; ++_i81) + TList _list125 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list125.Count); + for(int _i126 = 0; _i126 < _list125.Count; ++_i126) { - byte[] _elem82; - _elem82 = iprot.ReadBinary(); - ValuesList.Add(_elem82); + byte[] _elem127; + _elem127 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem127); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_valuesList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - TimestampsList = new List(); - TList _list83 = iprot.ReadListBegin(); - for( int _i84 = 0; _i84 < _list83.Count; ++_i84) + TList _list128 = await iprot.ReadListBeginAsync(cancellationToken); + TimestampsList = new List(_list128.Count); + for(int _i129 = 0; _i129 < _list128.Count; ++_i129) { - byte[] _elem85; - _elem85 = iprot.ReadBinary(); - TimestampsList.Add(_elem85); + byte[] _elem130; + _elem130 = await iprot.ReadBinaryAsync(cancellationToken); + TimestampsList.Add(_elem130); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_timestampsList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - TypesList = new List>(); - TList _list86 = iprot.ReadListBegin(); - for( int _i87 = 0; _i87 < _list86.Count; ++_i87) + TList _list131 = await iprot.ReadListBeginAsync(cancellationToken); + TypesList = new List>(_list131.Count); + for(int _i132 = 0; _i132 < _list131.Count; ++_i132) { - List _elem88; + List _elem133; { - _elem88 = new List(); - TList _list89 = iprot.ReadListBegin(); - for( int _i90 = 0; _i90 < _list89.Count; ++_i90) + TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); + _elem133 = new List(_list134.Count); + for(int _i135 = 0; _i135 < _list134.Count; ++_i135) { - int _elem91; - _elem91 = iprot.ReadI32(); - _elem88.Add(_elem91); + int _elem136; + _elem136 = await iprot.ReadI32Async(cancellationToken); + _elem133.Add(_elem136); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - TypesList.Add(_elem88); + TypesList.Add(_elem133); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_typesList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 7: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - SizeList = new List(); - TList _list92 = iprot.ReadListBegin(); - for( int _i93 = 0; _i93 < _list92.Count; ++_i93) + TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); + SizeList = new List(_list137.Count); + for(int _i138 = 0; _i138 < _list137.Count; ++_i138) { - int _elem94; - _elem94 = iprot.ReadI32(); - SizeList.Add(_elem94); + int _elem139; + _elem139 = await iprot.ReadI32Async(cancellationToken); + SizeList.Add(_elem139); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_sizeList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_deviceIds) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_measurementsList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_valuesList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timestampsList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampsList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_typesList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TypesList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_sizeList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SizeList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -235,125 +317,132 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSInsertTabletsReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSInsertTabletsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (DeviceIds == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field DeviceIds not set"); - field.Name = "deviceIds"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((DeviceIds != null)) { - oprot.WriteListBegin(new TList(TType.String, DeviceIds.Count)); - foreach (string _iter95 in DeviceIds) + field.Name = "deviceIds"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter95); + await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); + foreach (string _iter140 in DeviceIds) + { + await oprot.WriteStringAsync(_iter140, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (MeasurementsList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field MeasurementsList not set"); - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + if((MeasurementsList != null)) { - oprot.WriteListBegin(new TList(TType.List, MeasurementsList.Count)); - foreach (List _iter96 in MeasurementsList) + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter141 in MeasurementsList) { - oprot.WriteListBegin(new TList(TType.String, _iter96.Count)); - foreach (string _iter97 in _iter96) { - oprot.WriteString(_iter97); + await oprot.WriteListBeginAsync(new TList(TType.String, _iter141.Count), cancellationToken); + foreach (string _iter142 in _iter141) + { + await oprot.WriteStringAsync(_iter142, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (ValuesList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValuesList not set"); - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - oprot.WriteFieldBegin(field); + if((ValuesList != null)) { - oprot.WriteListBegin(new TList(TType.String, ValuesList.Count)); - foreach (byte[] _iter98 in ValuesList) + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter98); + await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); + foreach (byte[] _iter143 in ValuesList) + { + await oprot.WriteBinaryAsync(_iter143, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (TimestampsList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimestampsList not set"); - field.Name = "timestampsList"; - field.Type = TType.List; - field.ID = 5; - oprot.WriteFieldBegin(field); + if((TimestampsList != null)) { - oprot.WriteListBegin(new TList(TType.String, TimestampsList.Count)); - foreach (byte[] _iter99 in TimestampsList) + field.Name = "timestampsList"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter99); + await oprot.WriteListBeginAsync(new TList(TType.String, TimestampsList.Count), cancellationToken); + foreach (byte[] _iter144 in TimestampsList) + { + await oprot.WriteBinaryAsync(_iter144, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (TypesList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TypesList not set"); - field.Name = "typesList"; - field.Type = TType.List; - field.ID = 6; - oprot.WriteFieldBegin(field); + if((TypesList != null)) { - oprot.WriteListBegin(new TList(TType.List, TypesList.Count)); - foreach (List _iter100 in TypesList) + field.Name = "typesList"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { + await oprot.WriteListBeginAsync(new TList(TType.List, TypesList.Count), cancellationToken); + foreach (List _iter145 in TypesList) { - oprot.WriteListBegin(new TList(TType.I32, _iter100.Count)); - foreach (int _iter101 in _iter100) { - oprot.WriteI32(_iter101); + await oprot.WriteListBeginAsync(new TList(TType.I32, _iter145.Count), cancellationToken); + foreach (int _iter146 in _iter145) + { + await oprot.WriteI32Async(_iter146, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (SizeList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SizeList not set"); - field.Name = "sizeList"; - field.Type = TType.List; - field.ID = 7; - oprot.WriteFieldBegin(field); + if((SizeList != null)) { - oprot.WriteListBegin(new TList(TType.I32, SizeList.Count)); - foreach (int _iter102 in SizeList) + field.Name = "sizeList"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteI32(_iter102); + await oprot.WriteListBeginAsync(new TList(TType.I32, SizeList.Count), cancellationToken); + foreach (int _iter147 in SizeList) + { + await oprot.WriteI32Async(_iter147, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -361,25 +450,88 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSInsertTabletsReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", DeviceIds: "); - __sb.Append(DeviceIds); - __sb.Append(", MeasurementsList: "); - __sb.Append(MeasurementsList); - __sb.Append(", ValuesList: "); - __sb.Append(ValuesList); - __sb.Append(", TimestampsList: "); - __sb.Append(TimestampsList); - __sb.Append(", TypesList: "); - __sb.Append(TypesList); - __sb.Append(", SizeList: "); - __sb.Append(SizeList); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSInsertTabletsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(TimestampsList, other.TimestampsList) + && TCollections.Equals(TypesList, other.TypesList) + && TCollections.Equals(SizeList, other.SizeList); } + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((DeviceIds != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((TimestampsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TimestampsList); + } + if((TypesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TypesList); + } + if((SizeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SizeList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertTabletsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((DeviceIds != null)) + { + sb.Append(", DeviceIds: "); + DeviceIds.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((TimestampsList != null)) + { + sb.Append(", TimestampsList: "); + TimestampsList.ToString(sb); + } + if((TypesList != null)) + { + sb.Append(", TypesList: "); + TypesList.ToString(sb); + } + if((SizeList != null)) + { + sb.Append(", SizeList: "); + SizeList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSOpenSessionReq.cs b/rpc/TSOpenSessionReq.cs index 81042f7..c1c6e3b 100644 --- a/rpc/TSOpenSessionReq.cs +++ b/rpc/TSOpenSessionReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSOpenSessionReq : TBase { private string _username; @@ -27,7 +37,7 @@ public partial class TSOpenSessionReq : TBase /// /// - /// + /// /// public TSProtocolVersion Client_protocol { get; set; } @@ -74,25 +84,51 @@ public Dictionary Configuration public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool username; public bool password; public bool configuration; } - public TSOpenSessionReq() { + public TSOpenSessionReq() + { this.Client_protocol = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; } - public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this() { + public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this() + { this.Client_protocol = client_protocol; this.ZoneId = zoneId; } - public void Read (TProtocol iprot) + public TSOpenSessionReq DeepCopy() + { + var tmp50 = new TSOpenSessionReq(); + tmp50.Client_protocol = this.Client_protocol; + if((ZoneId != null)) + { + tmp50.ZoneId = this.ZoneId; + } + if((Username != null) && __isset.username) + { + tmp50.Username = this.Username; + } + tmp50.__isset.username = this.__isset.username; + if((Password != null) && __isset.password) + { + tmp50.Password = this.Password; + } + tmp50.__isset.password = this.__isset.password; + if((Configuration != null) && __isset.configuration) + { + tmp50.Configuration = this.Configuration.DeepCopy(); + } + tmp50.__isset.configuration = this.__isset.configuration; + return tmp50; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -100,75 +136,98 @@ public void Read (TProtocol iprot) bool isset_client_protocol = false; bool isset_zoneId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I32) { - Client_protocol = (TSProtocolVersion)iprot.ReadI32(); + if (field.Type == TType.I32) + { + Client_protocol = (TSProtocolVersion)await iprot.ReadI32Async(cancellationToken); isset_client_protocol = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - ZoneId = iprot.ReadString(); + if (field.Type == TType.String) + { + ZoneId = await iprot.ReadStringAsync(cancellationToken); isset_zoneId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.String) { - Username = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + Username = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.String) { - Password = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + Password = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.Map) { + if (field.Type == TType.Map) + { { - Configuration = new Dictionary(); - TMap _map38 = iprot.ReadMapBegin(); - for( int _i39 = 0; _i39 < _map38.Count; ++_i39) + TMap _map51 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map51.Count); + for(int _i52 = 0; _i52 < _map51.Count; ++_i52) { - string _key40; - string _val41; - _key40 = iprot.ReadString(); - _val41 = iprot.ReadString(); - Configuration[_key40] = _val41; + string _key53; + string _val54; + _key53 = await iprot.ReadStringAsync(cancellationToken); + _val54 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key53] = _val54; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_client_protocol) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Client_protocol not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_zoneId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ZoneId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -176,61 +235,66 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSOpenSessionReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSOpenSessionReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "client_protocol"; field.Type = TType.I32; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI32((int)Client_protocol); - oprot.WriteFieldEnd(); - if (ZoneId == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ZoneId not set"); - field.Name = "zoneId"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(ZoneId); - oprot.WriteFieldEnd(); - if (Username != null && __isset.username) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async((int)Client_protocol, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((ZoneId != null)) + { + field.Name = "zoneId"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(ZoneId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Username != null) && __isset.username) + { field.Name = "username"; field.Type = TType.String; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteString(Username); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Username, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (Password != null && __isset.password) { + if((Password != null) && __isset.password) + { field.Name = "password"; field.Type = TType.String; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteString(Password); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Password, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (Configuration != null && __isset.configuration) { + if((Configuration != null) && __isset.configuration) + { field.Name = "configuration"; field.Type = TType.Map; field.ID = 5; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, Configuration.Count)); - foreach (string _iter42 in Configuration.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); + foreach (string _iter55 in Configuration.Keys) { - oprot.WriteString(_iter42); - oprot.WriteString(Configuration[_iter42]); + await oprot.WriteStringAsync(_iter55, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter55], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -238,27 +302,68 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSOpenSessionReq("); - __sb.Append(", Client_protocol: "); - __sb.Append(Client_protocol); - __sb.Append(", ZoneId: "); - __sb.Append(ZoneId); - if (Username != null && __isset.username) { - __sb.Append(", Username: "); - __sb.Append(Username); + public override bool Equals(object that) + { + if (!(that is TSOpenSessionReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Client_protocol, other.Client_protocol) + && System.Object.Equals(ZoneId, other.ZoneId) + && ((__isset.username == other.__isset.username) && ((!__isset.username) || (System.Object.Equals(Username, other.Username)))) + && ((__isset.password == other.__isset.password) && ((!__isset.password) || (System.Object.Equals(Password, other.Password)))) + && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + Client_protocol.GetHashCode(); + if((ZoneId != null)) + { + hashcode = (hashcode * 397) + ZoneId.GetHashCode(); + } + if((Username != null) && __isset.username) + { + hashcode = (hashcode * 397) + Username.GetHashCode(); + } + if((Password != null) && __isset.password) + { + hashcode = (hashcode * 397) + Password.GetHashCode(); + } + if((Configuration != null) && __isset.configuration) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Configuration); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSOpenSessionReq("); + sb.Append(", Client_protocol: "); + Client_protocol.ToString(sb); + if((ZoneId != null)) + { + sb.Append(", ZoneId: "); + ZoneId.ToString(sb); } - if (Password != null && __isset.password) { - __sb.Append(", Password: "); - __sb.Append(Password); + if((Username != null) && __isset.username) + { + sb.Append(", Username: "); + Username.ToString(sb); } - if (Configuration != null && __isset.configuration) { - __sb.Append(", Configuration: "); - __sb.Append(Configuration); + if((Password != null) && __isset.password) + { + sb.Append(", Password: "); + Password.ToString(sb); } - __sb.Append(")"); - return __sb.ToString(); + if((Configuration != null) && __isset.configuration) + { + sb.Append(", Configuration: "); + Configuration.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - } diff --git a/rpc/TSOpenSessionResp.cs b/rpc/TSOpenSessionResp.cs index 3b93a03..2d4b065 100644 --- a/rpc/TSOpenSessionResp.cs +++ b/rpc/TSOpenSessionResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSOpenSessionResp : TBase { private long _sessionId; @@ -28,7 +38,7 @@ public partial class TSOpenSessionResp : TBase /// /// - /// + /// /// public TSProtocolVersion ServerProtocolVersion { get; set; } @@ -60,24 +70,45 @@ public Dictionary Configuration public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool sessionId; public bool configuration; } - public TSOpenSessionResp() { + public TSOpenSessionResp() + { this.ServerProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V1; } - public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersion) : this() { + public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersion) : this() + { this.Status = status; this.ServerProtocolVersion = serverProtocolVersion; } - public void Read (TProtocol iprot) + public TSOpenSessionResp DeepCopy() + { + var tmp43 = new TSOpenSessionResp(); + if((Status != null)) + { + tmp43.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp43.ServerProtocolVersion = this.ServerProtocolVersion; + if(__isset.sessionId) + { + tmp43.SessionId = this.SessionId; + } + tmp43.__isset.sessionId = this.__isset.sessionId; + if((Configuration != null) && __isset.configuration) + { + tmp43.Configuration = this.Configuration.DeepCopy(); + } + tmp43.__isset.configuration = this.__isset.configuration; + return tmp43; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -85,69 +116,89 @@ public void Read (TProtocol iprot) bool isset_status = false; bool isset_serverProtocolVersion = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { Status = new TSStatus(); - Status.Read(iprot); + await Status.ReadAsync(iprot, cancellationToken); isset_status = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.I32) { - ServerProtocolVersion = (TSProtocolVersion)iprot.ReadI32(); + if (field.Type == TType.I32) + { + ServerProtocolVersion = (TSProtocolVersion)await iprot.ReadI32Async(cancellationToken); isset_serverProtocolVersion = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.Map) { + if (field.Type == TType.Map) + { { - Configuration = new Dictionary(); - TMap _map33 = iprot.ReadMapBegin(); - for( int _i34 = 0; _i34 < _map33.Count; ++_i34) + TMap _map44 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map44.Count); + for(int _i45 = 0; _i45 < _map44.Count; ++_i45) { - string _key35; - string _val36; - _key35 = iprot.ReadString(); - _val36 = iprot.ReadString(); - Configuration[_key35] = _val36; + string _key46; + string _val47; + _key46 = await iprot.ReadStringAsync(cancellationToken); + _val47 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key46] = _val47; } - iprot.ReadMapEnd(); + await iprot.ReadMapEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_status) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_serverProtocolVersion) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ServerProtocolVersion not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -155,53 +206,57 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSOpenSessionResp"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Status == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Status not set"); - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - oprot.WriteFieldBegin(field); - Status.Write(oprot); - oprot.WriteFieldEnd(); + var struc = new TStruct("TSOpenSessionResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } field.Name = "serverProtocolVersion"; field.Type = TType.I32; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteI32((int)ServerProtocolVersion); - oprot.WriteFieldEnd(); - if (__isset.sessionId) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async((int)ServerProtocolVersion, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.sessionId) + { field.Name = "sessionId"; field.Type = TType.I64; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (Configuration != null && __isset.configuration) { + if((Configuration != null) && __isset.configuration) + { field.Name = "configuration"; field.Type = TType.Map; field.ID = 4; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteMapBegin(new TMap(TType.String, TType.String, Configuration.Count)); - foreach (string _iter37 in Configuration.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); + foreach (string _iter48 in Configuration.Keys) { - oprot.WriteString(_iter37); - oprot.WriteString(Configuration[_iter37]); + await oprot.WriteStringAsync(_iter48, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter48], cancellationToken); } - oprot.WriteMapEnd(); + await oprot.WriteMapEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -209,23 +264,58 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSOpenSessionResp("); - __sb.Append(", Status: "); - __sb.Append(Status== null ? "" : Status.ToString()); - __sb.Append(", ServerProtocolVersion: "); - __sb.Append(ServerProtocolVersion); - if (__isset.sessionId) { - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - } - if (Configuration != null && __isset.configuration) { - __sb.Append(", Configuration: "); - __sb.Append(Configuration); + public override bool Equals(object that) + { + if (!(that is TSOpenSessionResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(ServerProtocolVersion, other.ServerProtocolVersion) + && ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + ServerProtocolVersion.GetHashCode(); + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Configuration != null) && __isset.configuration) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Configuration); + } } - __sb.Append(")"); - return __sb.ToString(); + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSOpenSessionResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", ServerProtocolVersion: "); + ServerProtocolVersion.ToString(sb); + if(__isset.sessionId) + { + sb.Append(", SessionId: "); + SessionId.ToString(sb); + } + if((Configuration != null) && __isset.configuration) + { + sb.Append(", Configuration: "); + Configuration.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSProtocolVersion.cs b/rpc/TSProtocolVersion.cs index 73480ea..c243719 100644 --- a/rpc/TSProtocolVersion.cs +++ b/rpc/TSProtocolVersion.cs @@ -1,10 +1,13 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated */ +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + public enum TSProtocolVersion { IOTDB_SERVICE_PROTOCOL_V1 = 0, diff --git a/rpc/TSQueryDataSet.cs b/rpc/TSQueryDataSet.cs index 1bc12bf..e50aac7 100644 --- a/rpc/TSQueryDataSet.cs +++ b/rpc/TSQueryDataSet.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSQueryDataSet : TBase { @@ -28,16 +38,36 @@ public partial class TSQueryDataSet : TBase public List BitmapList { get; set; } - public TSQueryDataSet() { + public TSQueryDataSet() + { } - public TSQueryDataSet(byte[] time, List valueList, List bitmapList) : this() { + public TSQueryDataSet(byte[] time, List valueList, List bitmapList) : this() + { this.Time = time; this.ValueList = valueList; this.BitmapList = bitmapList; } - public void Read (TProtocol iprot) + public TSQueryDataSet DeepCopy() + { + var tmp8 = new TSQueryDataSet(); + if((Time != null)) + { + tmp8.Time = this.Time.ToArray(); + } + if((ValueList != null)) + { + tmp8.ValueList = this.ValueList.DeepCopy(); + } + if((BitmapList != null)) + { + tmp8.BitmapList = this.BitmapList.DeepCopy(); + } + return tmp8; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -46,72 +76,91 @@ public void Read (TProtocol iprot) bool isset_valueList = false; bool isset_bitmapList = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.String) { - Time = iprot.ReadBinary(); + if (field.Type == TType.String) + { + Time = await iprot.ReadBinaryAsync(cancellationToken); isset_time = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ValueList = new List(); - TList _list4 = iprot.ReadListBegin(); - for( int _i5 = 0; _i5 < _list4.Count; ++_i5) + TList _list9 = await iprot.ReadListBeginAsync(cancellationToken); + ValueList = new List(_list9.Count); + for(int _i10 = 0; _i10 < _list9.Count; ++_i10) { - byte[] _elem6; - _elem6 = iprot.ReadBinary(); - ValueList.Add(_elem6); + byte[] _elem11; + _elem11 = await iprot.ReadBinaryAsync(cancellationToken); + ValueList.Add(_elem11); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_valueList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - BitmapList = new List(); - TList _list7 = iprot.ReadListBegin(); - for( int _i8 = 0; _i8 < _list7.Count; ++_i8) + TList _list12 = await iprot.ReadListBeginAsync(cancellationToken); + BitmapList = new List(_list12.Count); + for(int _i13 = 0; _i13 < _list12.Count; ++_i13) { - byte[] _elem9; - _elem9 = iprot.ReadBinary(); - BitmapList.Add(_elem9); + byte[] _elem14; + _elem14 = await iprot.ReadBinaryAsync(cancellationToken); + BitmapList.Add(_elem14); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_bitmapList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_time) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Time not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_valueList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_bitmapList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field BitmapList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -119,53 +168,57 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSQueryDataSet"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (Time == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Time not set"); - field.Name = "time"; - field.Type = TType.String; - field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteBinary(Time); - oprot.WriteFieldEnd(); - if (ValueList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); - field.Name = "valueList"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + var struc = new TStruct("TSQueryDataSet"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Time != null)) + { + field.Name = "time"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Time, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValueList != null)) { - oprot.WriteListBegin(new TList(TType.String, ValueList.Count)); - foreach (byte[] _iter10 in ValueList) + field.Name = "valueList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter10); + await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); + foreach (byte[] _iter15 in ValueList) + { + await oprot.WriteBinaryAsync(_iter15, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (BitmapList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field BitmapList not set"); - field.Name = "bitmapList"; - field.Type = TType.List; - field.ID = 3; - oprot.WriteFieldBegin(field); + if((BitmapList != null)) { - oprot.WriteListBegin(new TList(TType.String, BitmapList.Count)); - foreach (byte[] _iter11 in BitmapList) + field.Name = "bitmapList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter11); + await oprot.WriteListBeginAsync(new TList(TType.String, BitmapList.Count), cancellationToken); + foreach (byte[] _iter16 in BitmapList) + { + await oprot.WriteBinaryAsync(_iter16, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -173,17 +226,54 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSQueryDataSet("); - __sb.Append(", Time: "); - __sb.Append(Time); - __sb.Append(", ValueList: "); - __sb.Append(ValueList); - __sb.Append(", BitmapList: "); - __sb.Append(BitmapList); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSQueryDataSet other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(Time, other.Time) + && TCollections.Equals(ValueList, other.ValueList) + && TCollections.Equals(BitmapList, other.BitmapList); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Time != null)) + { + hashcode = (hashcode * 397) + Time.GetHashCode(); + } + if((ValueList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValueList); + } + if((BitmapList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(BitmapList); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSQueryDataSet("); + if((Time != null)) + { + sb.Append(", Time: "); + Time.ToString(sb); + } + if((ValueList != null)) + { + sb.Append(", ValueList: "); + ValueList.ToString(sb); + } + if((BitmapList != null)) + { + sb.Append(", BitmapList: "); + BitmapList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSQueryNonAlignDataSet.cs b/rpc/TSQueryNonAlignDataSet.cs index b40c7f7..9e1db3c 100644 --- a/rpc/TSQueryNonAlignDataSet.cs +++ b/rpc/TSQueryNonAlignDataSet.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSQueryNonAlignDataSet : TBase { @@ -26,15 +36,31 @@ public partial class TSQueryNonAlignDataSet : TBase public List ValueList { get; set; } - public TSQueryNonAlignDataSet() { + public TSQueryNonAlignDataSet() + { } - public TSQueryNonAlignDataSet(List timeList, List valueList) : this() { + public TSQueryNonAlignDataSet(List timeList, List valueList) : this() + { this.TimeList = timeList; this.ValueList = valueList; } - public void Read (TProtocol iprot) + public TSQueryNonAlignDataSet DeepCopy() + { + var tmp18 = new TSQueryNonAlignDataSet(); + if((TimeList != null)) + { + tmp18.TimeList = this.TimeList.DeepCopy(); + } + if((ValueList != null)) + { + tmp18.ValueList = this.ValueList.DeepCopy(); + } + return tmp18; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,62 +68,76 @@ public void Read (TProtocol iprot) bool isset_timeList = false; bool isset_valueList = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - TimeList = new List(); - TList _list12 = iprot.ReadListBegin(); - for( int _i13 = 0; _i13 < _list12.Count; ++_i13) + TList _list19 = await iprot.ReadListBeginAsync(cancellationToken); + TimeList = new List(_list19.Count); + for(int _i20 = 0; _i20 < _list19.Count; ++_i20) { - byte[] _elem14; - _elem14 = iprot.ReadBinary(); - TimeList.Add(_elem14); + byte[] _elem21; + _elem21 = await iprot.ReadBinaryAsync(cancellationToken); + TimeList.Add(_elem21); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_timeList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - ValueList = new List(); - TList _list15 = iprot.ReadListBegin(); - for( int _i16 = 0; _i16 < _list15.Count; ++_i16) + TList _list22 = await iprot.ReadListBeginAsync(cancellationToken); + ValueList = new List(_list22.Count); + for(int _i23 = 0; _i23 < _list22.Count; ++_i23) { - byte[] _elem17; - _elem17 = iprot.ReadBinary(); - ValueList.Add(_elem17); + byte[] _elem24; + _elem24 = await iprot.ReadBinaryAsync(cancellationToken); + ValueList.Add(_elem24); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_valueList = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_timeList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_valueList) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -105,45 +145,48 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSQueryNonAlignDataSet"); - oprot.WriteStructBegin(struc); - TField field = new TField(); - if (TimeList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeList not set"); - field.Name = "timeList"; - field.Type = TType.List; - field.ID = 1; - oprot.WriteFieldBegin(field); + var struc = new TStruct("TSQueryNonAlignDataSet"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((TimeList != null)) { - oprot.WriteListBegin(new TList(TType.String, TimeList.Count)); - foreach (byte[] _iter18 in TimeList) + field.Name = "timeList"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter18); + await oprot.WriteListBeginAsync(new TList(TType.String, TimeList.Count), cancellationToken); + foreach (byte[] _iter25 in TimeList) + { + await oprot.WriteBinaryAsync(_iter25, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (ValueList == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field ValueList not set"); - field.Name = "valueList"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + if((ValueList != null)) { - oprot.WriteListBegin(new TList(TType.String, ValueList.Count)); - foreach (byte[] _iter19 in ValueList) + field.Name = "valueList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteBinary(_iter19); + await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); + foreach (byte[] _iter26 in ValueList) + { + await oprot.WriteBinaryAsync(_iter26, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -151,15 +194,44 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSQueryNonAlignDataSet("); - __sb.Append(", TimeList: "); - __sb.Append(TimeList); - __sb.Append(", ValueList: "); - __sb.Append(ValueList); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSQueryNonAlignDataSet other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(TimeList, other.TimeList) + && TCollections.Equals(ValueList, other.ValueList); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((TimeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TimeList); + } + if((ValueList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValueList); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSQueryNonAlignDataSet("); + if((TimeList != null)) + { + sb.Append(", TimeList: "); + TimeList.ToString(sb); + } + if((ValueList != null)) + { + sb.Append(", ValueList: "); + ValueList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSRawDataQueryReq.cs b/rpc/TSRawDataQueryReq.cs index 70df250..534dba7 100644 --- a/rpc/TSRawDataQueryReq.cs +++ b/rpc/TSRawDataQueryReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSRawDataQueryReq : TBase { private int _fetchSize; @@ -62,18 +72,18 @@ public bool EnableRedirectQuery public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool fetchSize; public bool enableRedirectQuery; } - public TSRawDataQueryReq() { + public TSRawDataQueryReq() + { } - public TSRawDataQueryReq(long sessionId, List paths, long startTime, long endTime, long statementId) : this() { + public TSRawDataQueryReq(long sessionId, List paths, long startTime, long endTime, long statementId) : this() + { this.SessionId = sessionId; this.Paths = paths; this.StartTime = startTime; @@ -81,7 +91,31 @@ public TSRawDataQueryReq(long sessionId, List paths, long startTime, lon this.StatementId = statementId; } - public void Read (TProtocol iprot) + public TSRawDataQueryReq DeepCopy() + { + var tmp238 = new TSRawDataQueryReq(); + tmp238.SessionId = this.SessionId; + if((Paths != null)) + { + tmp238.Paths = this.Paths.DeepCopy(); + } + if(__isset.fetchSize) + { + tmp238.FetchSize = this.FetchSize; + } + tmp238.__isset.fetchSize = this.__isset.fetchSize; + tmp238.StartTime = this.StartTime; + tmp238.EndTime = this.EndTime; + tmp238.StatementId = this.StatementId; + if(__isset.enableRedirectQuery) + { + tmp238.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp238.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + return tmp238; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -92,96 +126,131 @@ public void Read (TProtocol iprot) bool isset_endTime = false; bool isset_statementId = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - Paths = new List(); - TList _list182 = iprot.ReadListBegin(); - for( int _i183 = 0; _i183 < _list182.Count; ++_i183) + TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list239.Count); + for(int _i240 = 0; _i240 < _list239.Count; ++_i240) { - string _elem184; - _elem184 = iprot.ReadString(); - Paths.Add(_elem184); + string _elem241; + _elem241 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem241); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } isset_paths = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.I32) { - FetchSize = iprot.ReadI32(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.I64) { - StartTime = iprot.ReadI64(); + if (field.Type == TType.I64) + { + StartTime = await iprot.ReadI64Async(cancellationToken); isset_startTime = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 5: - if (field.Type == TType.I64) { - EndTime = iprot.ReadI64(); + if (field.Type == TType.I64) + { + EndTime = await iprot.ReadI64Async(cancellationToken); isset_endTime = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 6: - if (field.Type == TType.I64) { - StatementId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); isset_statementId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 7: - if (field.Type == TType.Bool) { - EnableRedirectQuery = iprot.ReadBool(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_paths) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_startTime) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StartTime not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_endTime) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field EndTime not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_statementId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field StatementId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -189,70 +258,74 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSRawDataQueryReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSRawDataQueryReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (Paths == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Paths not set"); - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) { - oprot.WriteListBegin(new TList(TType.String, Paths.Count)); - foreach (string _iter185 in Paths) + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteString(_iter185); + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter242 in Paths) + { + await oprot.WriteStringAsync(_iter242, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); - if (__isset.fetchSize) { + if(__isset.fetchSize) + { field.Name = "fetchSize"; field.Type = TType.I32; field.ID = 3; - oprot.WriteFieldBegin(field); - oprot.WriteI32(FetchSize); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } field.Name = "startTime"; field.Type = TType.I64; field.ID = 4; - oprot.WriteFieldBegin(field); - oprot.WriteI64(StartTime); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StartTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "endTime"; field.Type = TType.I64; field.ID = 5; - oprot.WriteFieldBegin(field); - oprot.WriteI64(EndTime); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(EndTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); field.Name = "statementId"; field.Type = TType.I64; field.ID = 6; - oprot.WriteFieldBegin(field); - oprot.WriteI64(StatementId); - oprot.WriteFieldEnd(); - if (__isset.enableRedirectQuery) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.enableRedirectQuery) + { field.Name = "enableRedirectQuery"; field.Type = TType.Bool; field.ID = 7; - oprot.WriteFieldBegin(field); - oprot.WriteBool(EnableRedirectQuery); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -260,29 +333,70 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSRawDataQueryReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", Paths: "); - __sb.Append(Paths); - if (__isset.fetchSize) { - __sb.Append(", FetchSize: "); - __sb.Append(FetchSize); - } - __sb.Append(", StartTime: "); - __sb.Append(StartTime); - __sb.Append(", EndTime: "); - __sb.Append(EndTime); - __sb.Append(", StatementId: "); - __sb.Append(StatementId); - if (__isset.enableRedirectQuery) { - __sb.Append(", EnableRedirectQuery: "); - __sb.Append(EnableRedirectQuery); + public override bool Equals(object that) + { + if (!(that is TSRawDataQueryReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && System.Object.Equals(StartTime, other.StartTime) + && System.Object.Equals(EndTime, other.EndTime) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + hashcode = (hashcode * 397) + StartTime.GetHashCode(); + hashcode = (hashcode * 397) + EndTime.GetHashCode(); + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } } - __sb.Append(")"); - return __sb.ToString(); + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSRawDataQueryReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + } + sb.Append(", StartTime: "); + StartTime.ToString(sb); + sb.Append(", EndTime: "); + EndTime.ToString(sb); + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSSetTimeZoneReq.cs b/rpc/TSSetTimeZoneReq.cs index 32a7310..0853d11 100644 --- a/rpc/TSSetTimeZoneReq.cs +++ b/rpc/TSSetTimeZoneReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSSetTimeZoneReq : TBase { @@ -26,15 +36,28 @@ public partial class TSSetTimeZoneReq : TBase public string TimeZone { get; set; } - public TSSetTimeZoneReq() { + public TSSetTimeZoneReq() + { } - public TSSetTimeZoneReq(long sessionId, string timeZone) : this() { + public TSSetTimeZoneReq(long sessionId, string timeZone) : this() + { this.SessionId = sessionId; this.TimeZone = timeZone; } - public void Read (TProtocol iprot) + public TSSetTimeZoneReq DeepCopy() + { + var tmp87 = new TSSetTimeZoneReq(); + tmp87.SessionId = this.SessionId; + if((TimeZone != null)) + { + tmp87.TimeZone = this.TimeZone; + } + return tmp87; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try @@ -42,42 +65,56 @@ public void Read (TProtocol iprot) bool isset_sessionId = false; bool isset_timeZone = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I64) { - SessionId = iprot.ReadI64(); + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); isset_sessionId = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - TimeZone = iprot.ReadString(); + if (field.Type == TType.String) + { + TimeZone = await iprot.ReadStringAsync(cancellationToken); isset_timeZone = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_sessionId) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field SessionId not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } if (!isset_timeZone) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -85,29 +122,31 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSSetTimeZoneReq"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSSetTimeZoneReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "sessionId"; field.Type = TType.I64; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI64(SessionId); - oprot.WriteFieldEnd(); - if (TimeZone == null) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field TimeZone not set"); - field.Name = "timeZone"; - field.Type = TType.String; - field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(TimeZone); - oprot.WriteFieldEnd(); - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TimeZone != null)) + { + field.Name = "timeZone"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TimeZone, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -115,15 +154,38 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSSetTimeZoneReq("); - __sb.Append(", SessionId: "); - __sb.Append(SessionId); - __sb.Append(", TimeZone: "); - __sb.Append(TimeZone); - __sb.Append(")"); - return __sb.ToString(); + public override bool Equals(object that) + { + if (!(that is TSSetTimeZoneReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TimeZone, other.TimeZone); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TimeZone != null)) + { + hashcode = (hashcode * 397) + TimeZone.GetHashCode(); + } + } + return hashcode; } + public override string ToString() + { + var sb = new StringBuilder("TSSetTimeZoneReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TimeZone != null)) + { + sb.Append(", TimeZone: "); + TimeZone.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } } diff --git a/rpc/TSStatus.cs b/rpc/TSStatus.cs index 28bb4e8..80ccfbd 100644 --- a/rpc/TSStatus.cs +++ b/rpc/TSStatus.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.13.0) + * Autogenerated by Thrift Compiler (0.14.1) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -9,16 +9,26 @@ using System.Collections.Generic; using System.Text; using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Collections; -using System.Runtime.Serialization; + using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling -#if !SILVERLIGHT -[Serializable] -#endif public partial class TSStatus : TBase { private string _message; @@ -68,88 +78,128 @@ public EndPoint RedirectNode public Isset __isset; - #if !SILVERLIGHT - [Serializable] - #endif - public struct Isset { + public struct Isset + { public bool message; public bool subStatus; public bool redirectNode; } - public TSStatus() { + public TSStatus() + { } - public TSStatus(int code) : this() { + public TSStatus(int code) : this() + { this.Code = code; } - public void Read (TProtocol iprot) + public TSStatus DeepCopy() + { + var tmp2 = new TSStatus(); + tmp2.Code = this.Code; + if((Message != null) && __isset.message) + { + tmp2.Message = this.Message; + } + tmp2.__isset.message = this.__isset.message; + if((SubStatus != null) && __isset.subStatus) + { + tmp2.SubStatus = this.SubStatus.DeepCopy(); + } + tmp2.__isset.subStatus = this.__isset.subStatus; + if((RedirectNode != null) && __isset.redirectNode) + { + tmp2.RedirectNode = (EndPoint)this.RedirectNode.DeepCopy(); + } + tmp2.__isset.redirectNode = this.__isset.redirectNode; + return tmp2; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { bool isset_code = false; TField field; - iprot.ReadStructBegin(); + await iprot.ReadStructBeginAsync(cancellationToken); while (true) { - field = iprot.ReadFieldBegin(); - if (field.Type == TType.Stop) { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { break; } + switch (field.ID) { case 1: - if (field.Type == TType.I32) { - Code = iprot.ReadI32(); + if (field.Type == TType.I32) + { + Code = await iprot.ReadI32Async(cancellationToken); isset_code = true; - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: - if (field.Type == TType.String) { - Message = iprot.ReadString(); - } else { - TProtocolUtil.Skip(iprot, field.Type); + if (field.Type == TType.String) + { + Message = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: - if (field.Type == TType.List) { + if (field.Type == TType.List) + { { - SubStatus = new List(); - TList _list0 = iprot.ReadListBegin(); - for( int _i1 = 0; _i1 < _list0.Count; ++_i1) + TList _list3 = await iprot.ReadListBeginAsync(cancellationToken); + SubStatus = new List(_list3.Count); + for(int _i4 = 0; _i4 < _list3.Count; ++_i4) { - TSStatus _elem2; - _elem2 = new TSStatus(); - _elem2.Read(iprot); - SubStatus.Add(_elem2); + TSStatus _elem5; + _elem5 = new TSStatus(); + await _elem5.ReadAsync(iprot, cancellationToken); + SubStatus.Add(_elem5); } - iprot.ReadListEnd(); + await iprot.ReadListEndAsync(cancellationToken); } - } else { - TProtocolUtil.Skip(iprot, field.Type); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: - if (field.Type == TType.Struct) { + if (field.Type == TType.Struct) + { RedirectNode = new EndPoint(); - RedirectNode.Read(iprot); - } else { - TProtocolUtil.Skip(iprot, field.Type); + await RedirectNode.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: - TProtocolUtil.Skip(iprot, field.Type); + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - iprot.ReadFieldEnd(); + + await iprot.ReadFieldEndAsync(cancellationToken); } - iprot.ReadStructEnd(); + + await iprot.ReadStructEndAsync(cancellationToken); if (!isset_code) - throw new TProtocolException(TProtocolException.INVALID_DATA, "required field Code not set"); + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -157,52 +207,56 @@ public void Read (TProtocol iprot) } } - public void Write(TProtocol oprot) { + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { oprot.IncrementRecursionDepth(); try { - TStruct struc = new TStruct("TSStatus"); - oprot.WriteStructBegin(struc); - TField field = new TField(); + var struc = new TStruct("TSStatus"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); field.Name = "code"; field.Type = TType.I32; field.ID = 1; - oprot.WriteFieldBegin(field); - oprot.WriteI32(Code); - oprot.WriteFieldEnd(); - if (Message != null && __isset.message) { + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Code, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Message != null) && __isset.message) + { field.Name = "message"; field.Type = TType.String; field.ID = 2; - oprot.WriteFieldBegin(field); - oprot.WriteString(Message); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Message, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (SubStatus != null && __isset.subStatus) { + if((SubStatus != null) && __isset.subStatus) + { field.Name = "subStatus"; field.Type = TType.List; field.ID = 3; - oprot.WriteFieldBegin(field); + await oprot.WriteFieldBeginAsync(field, cancellationToken); { - oprot.WriteListBegin(new TList(TType.Struct, SubStatus.Count)); - foreach (TSStatus _iter3 in SubStatus) + await oprot.WriteListBeginAsync(new TList(TType.Struct, SubStatus.Count), cancellationToken); + foreach (TSStatus _iter6 in SubStatus) { - _iter3.Write(oprot); + await _iter6.WriteAsync(oprot, cancellationToken); } - oprot.WriteListEnd(); + await oprot.WriteListEndAsync(cancellationToken); } - oprot.WriteFieldEnd(); + await oprot.WriteFieldEndAsync(cancellationToken); } - if (RedirectNode != null && __isset.redirectNode) { + if((RedirectNode != null) && __isset.redirectNode) + { field.Name = "redirectNode"; field.Type = TType.Struct; field.ID = 4; - oprot.WriteFieldBegin(field); - RedirectNode.Write(oprot); - oprot.WriteFieldEnd(); + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await RedirectNode.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } - oprot.WriteFieldStop(); - oprot.WriteStructEnd(); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); } finally { @@ -210,25 +264,58 @@ public void Write(TProtocol oprot) { } } - public override string ToString() { - StringBuilder __sb = new StringBuilder("TSStatus("); - __sb.Append(", Code: "); - __sb.Append(Code); - if (Message != null && __isset.message) { - __sb.Append(", Message: "); - __sb.Append(Message); + public override bool Equals(object that) + { + if (!(that is TSStatus other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Code, other.Code) + && ((__isset.message == other.__isset.message) && ((!__isset.message) || (System.Object.Equals(Message, other.Message)))) + && ((__isset.subStatus == other.__isset.subStatus) && ((!__isset.subStatus) || (TCollections.Equals(SubStatus, other.SubStatus)))) + && ((__isset.redirectNode == other.__isset.redirectNode) && ((!__isset.redirectNode) || (System.Object.Equals(RedirectNode, other.RedirectNode)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + Code.GetHashCode(); + if((Message != null) && __isset.message) + { + hashcode = (hashcode * 397) + Message.GetHashCode(); + } + if((SubStatus != null) && __isset.subStatus) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SubStatus); + } + if((RedirectNode != null) && __isset.redirectNode) + { + hashcode = (hashcode * 397) + RedirectNode.GetHashCode(); + } } - if (SubStatus != null && __isset.subStatus) { - __sb.Append(", SubStatus: "); - __sb.Append(SubStatus); + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSStatus("); + sb.Append(", Code: "); + Code.ToString(sb); + if((Message != null) && __isset.message) + { + sb.Append(", Message: "); + Message.ToString(sb); } - if (RedirectNode != null && __isset.redirectNode) { - __sb.Append(", RedirectNode: "); - __sb.Append(RedirectNode== null ? "" : RedirectNode.ToString()); + if((SubStatus != null) && __isset.subStatus) + { + sb.Append(", SubStatus: "); + SubStatus.ToString(sb); } - __sb.Append(")"); - return __sb.ToString(); + if((RedirectNode != null) && __isset.redirectNode) + { + sb.Append(", RedirectNode: "); + RedirectNode.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - } diff --git a/rpc/rpc.Extensions.cs b/rpc/rpc.Extensions.cs new file mode 100644 index 0000000..26beb19 --- /dev/null +++ b/rpc/rpc.Extensions.cs @@ -0,0 +1,295 @@ +/** + * Autogenerated by Thrift Compiler (0.14.1) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public static class rpcExtensions +{ + public static bool Equals(this Dictionary instance, object that) + { + if (!(that is Dictionary other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this Dictionary instance) + { + return TCollections.GetHashCode(instance); + } + + + public static Dictionary DeepCopy(this Dictionary source) + { + if (source == null) + return null; + + var tmp447 = new Dictionary(source.Count); + foreach (var pair in source) + tmp447.Add((pair.Key != null) ? pair.Key : null, pair.Value); + return tmp447; + } + + + public static bool Equals(this Dictionary instance, object that) + { + if (!(that is Dictionary other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this Dictionary instance) + { + return TCollections.GetHashCode(instance); + } + + + public static Dictionary DeepCopy(this Dictionary source) + { + if (source == null) + return null; + + var tmp448 = new Dictionary(source.Count); + foreach (var pair in source) + tmp448.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); + return tmp448; + } + + + public static bool Equals(this List> instance, object that) + { + if (!(that is List> other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List> instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List> DeepCopy(this List> source) + { + if (source == null) + return null; + + var tmp449 = new List>(source.Count); + foreach (var elem in source) + tmp449.Add((elem != null) ? elem.DeepCopy() : null); + return tmp449; + } + + + public static bool Equals(this List> instance, object that) + { + if (!(that is List> other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List> instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List> DeepCopy(this List> source) + { + if (source == null) + return null; + + var tmp450 = new List>(source.Count); + foreach (var elem in source) + tmp450.Add((elem != null) ? elem.DeepCopy() : null); + return tmp450; + } + + + public static bool Equals(this List> instance, object that) + { + if (!(that is List> other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List> instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List> DeepCopy(this List> source) + { + if (source == null) + return null; + + var tmp451 = new List>(source.Count); + foreach (var elem in source) + tmp451.Add((elem != null) ? elem.DeepCopy() : null); + return tmp451; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp452 = new List(source.Count); + foreach (var elem in source) + tmp452.Add((elem != null) ? elem.DeepCopy() : null); + return tmp452; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp453 = new List(source.Count); + foreach (var elem in source) + tmp453.Add((elem != null) ? elem.ToArray() : null); + return tmp453; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp454 = new List(source.Count); + foreach (var elem in source) + tmp454.Add(elem); + return tmp454; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp455 = new List(source.Count); + foreach (var elem in source) + tmp455.Add(elem); + return tmp455; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp456 = new List(source.Count); + foreach (var elem in source) + tmp456.Add((elem != null) ? elem : null); + return tmp456; + } + + +} From b7bdd6f5d7f14e142c4ae4acd5de09e7bd60516d Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 11:12:01 +0800 Subject: [PATCH 005/214] add session --- .gitignore | 1 + client/Constants/TSDatatype.cs | 7 +++++++ client/Session.cs | 26 ++++++++++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 client/Constants/TSDatatype.cs create mode 100644 client/Session.cs diff --git a/.gitignore b/.gitignore index 08c2e49..71912f5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ #dotnet project files obj/ *.csproj +.vscode/ \ No newline at end of file diff --git a/client/Constants/TSDatatype.cs b/client/Constants/TSDatatype.cs new file mode 100644 index 0000000..ed04f19 --- /dev/null +++ b/client/Constants/TSDatatype.cs @@ -0,0 +1,7 @@ +namespace iotdb_client_csharp.client.Constants +{ + public class TSDatatype + { + + } +} \ No newline at end of file diff --git a/client/Session.cs b/client/Session.cs new file mode 100644 index 0000000..9e3f1a4 --- /dev/null +++ b/client/Session.cs @@ -0,0 +1,26 @@ +namespace iotdb_client_csharp.client +{ + public class Session + { + private string username="root", password="root", zoneId, host; + private int port, fetch_size=10000; + private long sessionId, statementId; + + public Session(string host, int port){ + // init success code + this.host = host; + this.port = port; + } + public Session(string host, int port, string username="root", string password="root", int fetch_size=10000, string zoneId = "UTC+08:00"){ + this.host = host; + this.port = port; + this.username = username; + this.password = password; + this.zoneId = zoneId; + this.fetch_size = fetch_size; + } + + + + } +} \ No newline at end of file From 6ac255ebbc7e58ecf07c187ff277f420f41c78e0 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 11:53:11 +0800 Subject: [PATCH 006/214] add session --- client/Session.cs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/client/Session.cs b/client/Session.cs index 9e3f1a4..87d175a 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -1,3 +1,9 @@ +using Thrift; +using Thrift.Transport; +using Thrift.Protocol; +using Thrift.Server; + + namespace iotdb_client_csharp.client { public class Session @@ -5,6 +11,7 @@ public class Session private string username="root", password="root", zoneId, host; private int port, fetch_size=10000; private long sessionId, statementId; + private bool is_close = true; public Session(string host, int port){ // init success code @@ -19,8 +26,18 @@ public Session(string host, int port, string username="root", string password="r this.zoneId = zoneId; this.fetch_size = fetch_size; } - + public void open(bool enableRPCCompression){ + if(!is_close){ + return ; + } + try{ + + } + catch{ + + } + } } } \ No newline at end of file From f52e3eae1a521db47807741d96bd3751a8959feb Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 11:58:22 +0800 Subject: [PATCH 007/214] rm vscode --- .vscode/launch.json | 27 --------------------------- .vscode/tasks.json | 42 ------------------------------------------ 2 files changed, 69 deletions(-) delete mode 100644 .vscode/launch.json delete mode 100644 .vscode/tasks.json diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index fa0a45b..0000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "version": "0.2.0", - "configurations": [ - { - // Use IntelliSense to find out which attributes exist for C# debugging - // Use hover for the description of the existing attributes - // For further information visit https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md - "name": ".NET Core Launch (console)", - "type": "coreclr", - "request": "launch", - "preLaunchTask": "build", - // If you have changed target frameworks, make sure to update the program path. - "program": "${workspaceFolder}/bin/Debug/net5.0/iotdb-client-csharp.dll", - "args": [], - "cwd": "${workspaceFolder}", - // For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console - "console": "internalConsole", - "stopAtEntry": false - }, - { - "name": ".NET Core Attach", - "type": "coreclr", - "request": "attach", - "processId": "${command:pickProcess}" - } - ] -} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json deleted file mode 100644 index 1305512..0000000 --- a/.vscode/tasks.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "version": "2.0.0", - "tasks": [ - { - "label": "build", - "command": "dotnet", - "type": "process", - "args": [ - "build", - "${workspaceFolder}/iotdb-client-csharp.csproj", - "/property:GenerateFullPaths=true", - "/consoleloggerparameters:NoSummary" - ], - "problemMatcher": "$msCompile" - }, - { - "label": "publish", - "command": "dotnet", - "type": "process", - "args": [ - "publish", - "${workspaceFolder}/iotdb-client-csharp.csproj", - "/property:GenerateFullPaths=true", - "/consoleloggerparameters:NoSummary" - ], - "problemMatcher": "$msCompile" - }, - { - "label": "watch", - "command": "dotnet", - "type": "process", - "args": [ - "watch", - "run", - "${workspaceFolder}/iotdb-client-csharp.csproj", - "/property:GenerateFullPaths=true", - "/consoleloggerparameters:NoSummary" - ], - "problemMatcher": "$msCompile" - } - ] -} \ No newline at end of file From 56a1dc32f5c4aac1c2d391c363db4528e7efc02f Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 14:34:26 +0800 Subject: [PATCH 008/214] add Some api --- client/Session.cs | 125 +++++++++++++++++++++++++++++++++++++++++++++- rpc/TSIService.cs | 2 +- 2 files changed, 124 insertions(+), 3 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 87d175a..2fb31f2 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -2,8 +2,25 @@ using Thrift.Transport; using Thrift.Protocol; using Thrift.Server; +using System; +using System.Linq; +using System.Net.Sockets; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift.Collections; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + namespace iotdb_client_csharp.client { public class Session @@ -13,6 +30,12 @@ public class Session private long sessionId, statementId; private bool is_close = true; + private TSIService.Client client; + private TSocketTransport transport; + private static readonly TConfiguration configuration = null; // new TConfiguration() if needed + private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; + + public Session(string host, int port){ // init success code this.host = host; @@ -30,13 +53,111 @@ public void open(bool enableRPCCompression){ if(!is_close){ return ; } + this.transport = new TSocketTransport(this.host, this.port, configuration); + if(!transport.IsOpen){ + try{ + var task = transport.OpenAsync(new CancellationToken()); + task.Wait(); + } + catch(TTransportException e){ + //TODO, should define our own Exception + // here we just print the exception + Console.Write(e.ToString()); + } + } + if(enableRPCCompression){ + client = new TSIService.Client(new TCompactProtocol(transport)); + }else{ + client = new TSIService.Client(new TBinaryProtocol(transport)); + } + // init open request + var open_req = new TSOpenSessionReq(protocol_version, zoneId); + open_req.Username = username; + open_req.Password = password; + try{ + var task = client.openSessionAsync(open_req); + task.Wait(); + var open_resp = task.Result; + if(open_resp.ServerProtocolVersion != protocol_version){ + var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); + Console.WriteLine(message); + } + if (open_resp.ServerProtocolVersion == 0){ + throw new TException("Protocol not supported", null); + } + sessionId = open_resp.SessionId; + var statement_task = client.requestStatementIdAsync(sessionId); + statement_task.Wait(); + statementId = statement_task.Result; + } + catch(Exception e){ + transport.Close(); + Console.WriteLine("session closed because ", e); + } + if(zoneId != ""){ + set_time_zone(zoneId); + }else{ + zoneId = get_time_zone(); + } + is_close = false; + } + public bool is_open(){ + return !is_close; + } + public void close(){ + if(is_close){ + return; + } + var req = new TSCloseSessionReq(sessionId); try{ + var task = client.closeSessionAsync(req); + task.Wait(); + } + catch(TException e){ + var message = String.Format("Error occurs when closing session at server. Maybe server is down. Error message:{0}", e); + Console.WriteLine(message); + } + finally{ + is_close = true; + if (transport != null){ + transport.Close(); + } + } + } + + public void set_time_zone(string zoneId){ + var req = new TSSetTimeZoneReq(sessionId, zoneId); + try{ + var task = client.setTimeZoneAsync(req); + task.Wait(); + var message = String.Format("setting time zone_id as {0}, message:{1}", zoneId, task.Result.Message); + Console.WriteLine(message); + } + catch(TException e ){ + var message = String.Format("could not set time zone because {0}", e); + Console.WriteLine(message); + throw e; + } + this.zoneId = zoneId; + } + public string get_time_zone(){ + TSGetTimeZoneResp resp; + if(zoneId != ""){ + return zoneId; + } + try{ + var task = client.getTimeZoneAsync(sessionId); + task.Wait(); + resp = task.Result; } - catch{ - + catch(TException e){ + var message = String.Format("counld not get time zone beacuse {0}", e); + Console.WriteLine(message); + throw e; } + return resp.TimeZone; } } diff --git a/rpc/TSIService.cs b/rpc/TSIService.cs index a158811..ca6bcbd 100644 --- a/rpc/TSIService.cs +++ b/rpc/TSIService.cs @@ -23,7 +23,7 @@ using Thrift.Transport.Client; using Thrift.Transport.Server; using Thrift.Processor; - + #pragma warning disable IDE0079 // remove unnecessary pragmas #pragma warning disable IDE1006 // parts of the code use IDL spelling From 65ab08ad9d85763ca47ef61f9b4f7b06a21a7ebe Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 15:33:43 +0800 Subject: [PATCH 009/214] add new api --- client/Constants/TSDatatype.cs | 7 ------- client/utils/IoTDBRpcDataSet.cs | 7 +++++++ 2 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 client/Constants/TSDatatype.cs create mode 100644 client/utils/IoTDBRpcDataSet.cs diff --git a/client/Constants/TSDatatype.cs b/client/Constants/TSDatatype.cs deleted file mode 100644 index ed04f19..0000000 --- a/client/Constants/TSDatatype.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace iotdb_client_csharp.client.Constants -{ - public class TSDatatype - { - - } -} \ No newline at end of file diff --git a/client/utils/IoTDBRpcDataSet.cs b/client/utils/IoTDBRpcDataSet.cs new file mode 100644 index 0000000..8a0e8bf --- /dev/null +++ b/client/utils/IoTDBRpcDataSet.cs @@ -0,0 +1,7 @@ +namespace iotdb_client_csharp.client.utils +{ + public class IoTDBRpcDataSet + { + + } +} \ No newline at end of file From 411f2d25ced11f6c599e67b241e3d699cf3d2653 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 15:35:59 +0800 Subject: [PATCH 010/214] add code --- client/Session.cs | 74 ++++++++++++++++++++++++++++++++- client/utils/IoTDBRpcDataSet.cs | 3 ++ 2 files changed, 75 insertions(+), 2 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 2fb31f2..edfe5f2 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -23,16 +23,22 @@ namespace iotdb_client_csharp.client { + public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT}; + public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA}; + public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; + public class Session { private string username="root", password="root", zoneId, host; + public int SUCCESS_CODE{ + get{return 200;} + } private int port, fetch_size=10000; private long sessionId, statementId; private bool is_close = true; private TSIService.Client client; private TSocketTransport transport; - private static readonly TConfiguration configuration = null; // new TConfiguration() if needed private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -53,7 +59,7 @@ public void open(bool enableRPCCompression){ if(!is_close){ return ; } - this.transport = new TSocketTransport(this.host, this.port, configuration); + this.transport = new TSocketTransport(this.host, this.port, null); if(!transport.IsOpen){ try{ var task = transport.OpenAsync(new CancellationToken()); @@ -126,6 +132,70 @@ public void close(){ } } + public int set_storage_group(string group_name){ + var task = client.setStorageGroupAsync(sessionId, group_name); + task.Wait(); + var status = task.Result; + return verify_success(status); + } + + public int delete_storage_group(string group_name){ + var task = client.deleteStorageGroupsAsync(sessionId, new List{group_name}); + task.Wait(); + var status = task.Result; + return verify_success(status); + } + public int delete_storage_groups(List group_names){ + var task = client.deleteStorageGroupsAsync(sessionId, group_names); + task.Wait(); + var status = task.Result; + var message = String.Format("delete storage group(s) {0} message: {1}", group_names, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + + public int create_time_series(string ts_path, TSDataType data_type, TSEncoding encoding, Compressor compressor){ + var req = new TSCreateTimeseriesReq(sessionId, ts_path, (int)data_type, (int)encoding, (int)compressor); + var task = client.createTimeseriesAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("creating time series {0} message: {1}", ts_path, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + + public int create_multi_time_series(List ts_path_lst, List data_type_lst, List encoding_lst, List compressor_lst){ + var data_types = data_type_lst.ConvertAll(x => (int)x); + var encodings = encoding_lst.ConvertAll(x => (int)x); + var compressors = compressor_lst.ConvertAll(x => (int)x); + var req = new TSCreateMultiTimeseriesReq(sessionId, ts_path_lst, data_types, encodings, compressors); + var task = client.createMultiTimeseriesAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("creating multiple time series {0} message: {1}", ts_path_lst, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + public int delete_time_series(List path_list){ + var task = client.deleteTimeseriesAsync(sessionId, path_list); + task.Wait(); + var status = task.Result; + var message = String.Format("deleting multiple time series {0} message: {1}", path_list, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + public bool check_time_series_exists(string ts_path){ + return false; + } + + private int verify_success(TSStatus status){ + if (status.Code == SUCCESS_CODE){ + return 0; + } + var message = String.Format("error status is {}", status); + Console.WriteLine(message); + return -1; + } public void set_time_zone(string zoneId){ var req = new TSSetTimeZoneReq(sessionId, zoneId); diff --git a/client/utils/IoTDBRpcDataSet.cs b/client/utils/IoTDBRpcDataSet.cs index 8a0e8bf..c40cfb9 100644 --- a/client/utils/IoTDBRpcDataSet.cs +++ b/client/utils/IoTDBRpcDataSet.cs @@ -1,3 +1,6 @@ +using iotdb_client_csharp.client; +using System; +using Thrift; namespace iotdb_client_csharp.client.utils { public class IoTDBRpcDataSet From c3bf63bcc215da3f16ad73306d9d16d51df888f5 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 16:19:38 +0800 Subject: [PATCH 011/214] add api tasks for luzhan --- client/Session.cs | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/client/Session.cs b/client/Session.cs index edfe5f2..df7c93e 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -69,6 +69,7 @@ public void open(bool enableRPCCompression){ //TODO, should define our own Exception // here we just print the exception Console.Write(e.ToString()); + throw e; } } if(enableRPCCompression){ @@ -99,6 +100,7 @@ public void open(bool enableRPCCompression){ catch(Exception e){ transport.Close(); Console.WriteLine("session closed because ", e); + throw e; } if(zoneId != ""){ set_time_zone(zoneId); @@ -123,6 +125,7 @@ public void close(){ catch(TException e){ var message = String.Format("Error occurs when closing session at server. Maybe server is down. Error message:{0}", e); Console.WriteLine(message); + throw e; } finally{ is_close = true; @@ -185,8 +188,46 @@ public int delete_time_series(List path_list){ return verify_success(status); } public bool check_time_series_exists(string ts_path){ + // TBD by dalong return false; } + public int delete_data(List ts_path_lst, long start_time, long end_time){ + var req = new TSDeleteDataReq(sessionId, ts_path_lst, start_time, end_time); + TSStatus status; + try{ + var task = client.deleteDataAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("data deletion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } + var message = String.Format("delete data from {0}, message: {1}", ts_path_lst, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + public int insert_str_record(string device_id, List measurements, List values, long timestamp){ + // TBD by Luzhan + return 0; + } + public int insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ + // TBD by Luzhan + return 0; + } + public int insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ + // TBD by Luzhan + return 0; + } + public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ + // TBD by Luzhan + return 0; + } + public int test_insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ + // TBD by Luzhan + return 0; + } private int verify_success(TSStatus status){ if (status.Code == SUCCESS_CODE){ From 951c7cfd42de645d683d4a61758aacd3535c5191 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 16:51:07 +0800 Subject: [PATCH 012/214] add 2 class --- client/utils/Field.cs | 36 ++++++++++++++++++++++++++++++++++++ client/utils/Tablet.cs | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 client/utils/Field.cs create mode 100644 client/utils/Tablet.cs diff --git a/client/utils/Field.cs b/client/utils/Field.cs new file mode 100644 index 0000000..f0e1a92 --- /dev/null +++ b/client/utils/Field.cs @@ -0,0 +1,36 @@ +namespace iotdb_client_csharp.client.utils +{ + public class Field + { + // TBD By Zengz + private bool bool_val; + private int int_val; + private long long_val; + private float float_val; + private double double_val; + private byte binary_val; + + private TSDataType data_type; + + public Field(TSDataType data_type){ + this.data_type = data_type; + } + public TSDataType get_data_type(){ + return this.data_type; + } + public void set_bool_value(bool value){ + bool_val = value; + } + public bool get_bool_value(){ + return bool_val; + + } + public void set_int_value(int value){ + int_val = value; + } + public int get_int_value(){ + return int_val; + } + + } +} \ No newline at end of file diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs new file mode 100644 index 0000000..292c69d --- /dev/null +++ b/client/utils/Tablet.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +namespace iotdb_client_csharp.client.utils +{ + public class Tablet + { + // TBD by Zengz + private string device_id; + private List measurements; + private List data_types; + private List timestamps; + private List> values; + + public Tablet(string device_id, List measurements, List data_types, List> values, List timestamps){ + if(timestamps.Count != values.Count){ + var err_msg = String.Format("Input error! len(timestamps) does not equal to len(values)!"); + Console.WriteLine(err_msg); + throw new Exception("input length not matched"); + } + + this.device_id = device_id; + this.measurements = measurements; + this.data_types = data_types; + this.values = values; + this.timestamps = timestamps; + } + + + + + } +} \ No newline at end of file From b4d391f97177ad9e6c9813867716900e2b22b7db Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Fri, 2 Apr 2021 17:22:05 +0800 Subject: [PATCH 013/214] add interface:insert_str_record --- client/Session.cs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/client/Session.cs b/client/Session.cs index df7c93e..649b787 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -208,9 +208,22 @@ public int delete_data(List ts_path_lst, long start_time, long end_time) Console.WriteLine(message); return verify_success(status); } + public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp){ + if(values.Count() != measurements.Count()){ + var err_msg = String.Format("length of data types does not equal to length of values!"); + Console.WriteLine(err_msg) + } + return TSInsertStringRecordReq(sessionId, device_id, measurements, values, timestamp); + } public int insert_str_record(string device_id, List measurements, List values, long timestamp){ // TBD by Luzhan - return 0; + var req = gen_insert_str_record_req(device_id, measurements, values, timestamp); + var task = client.insertStringRecordAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("insert one record to device {0} message: {1}", device_id, status.message); + Console.WriteLine(message); + return verify_success(status); } public int insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan From d9dea3cc393d0de9206a41f4537f56c2d8324e4b Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 21:05:43 +0800 Subject: [PATCH 014/214] finish IoTDBRpcDataSet class --- client/Session.cs | 13 +- client/utils/IoTDBRpcDataSet.cs | 249 ++++++++++++++++++++++++++++++++ client/utils/SessionDataSet.cs | 11 ++ 3 files changed, 271 insertions(+), 2 deletions(-) create mode 100644 client/utils/SessionDataSet.cs diff --git a/client/Session.cs b/client/Session.cs index df7c93e..dc17005 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -23,8 +23,8 @@ namespace iotdb_client_csharp.client { - public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT}; - public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA}; + public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; + public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA, NONE}; public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; public class Session @@ -270,6 +270,15 @@ public string get_time_zone(){ } return resp.TimeZone; } + public void execute_query_statement(string sql, long timeout){ + var req = new TSExecuteStatementReq(sessionId, sql, statementId); + req.FetchSize = fetch_size; + req.Timeout = timeout; + var task = client.executeQueryStatementAsync(req); + task.Wait(); + var resp = task.Result; + + } } } \ No newline at end of file diff --git a/client/utils/IoTDBRpcDataSet.cs b/client/utils/IoTDBRpcDataSet.cs index c40cfb9..62a0fa0 100644 --- a/client/utils/IoTDBRpcDataSet.cs +++ b/client/utils/IoTDBRpcDataSet.cs @@ -1,10 +1,259 @@ using iotdb_client_csharp.client; using System; +using System.Collections.Generic; using Thrift; namespace iotdb_client_csharp.client.utils { public class IoTDBRpcDataSet { + public string TIMESTAMP_STR{ + get{return "Time";} + } + public int START_INDEX{ + get{return 2;} + } + public int FLAG{ + get{return 0x80;} + } + private long session_id, query_id, default_timeout; + private TSIService.Client client; + private int fetch_size, column_size, rows_index; + private List column_name_lst; + private List column_type_lst, column_type_deduplicated_lst; + private Dictionary column_name_index, data_type_map; + private bool ignore_timestamp, is_closed, empty_resultset, has_cached_record; + + private TSQueryDataSet query_dataset; + private string sql; + private byte[] time_bytes; + private List value; + private List current_bitmap; + + + public IoTDBRpcDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, bool ignore_timestamp, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_dataset, int fetch_size){ + this.session_id = session_id; + this.sql = sql; + this.ignore_timestamp = ignore_timestamp; + this.client = client; + this.fetch_size = fetch_size; + this.column_size = column_name_lst.Count; + this.default_timeout = 1000; + this.column_name_lst = new List{}; + this.column_type_lst = new List{}; + this.column_name_index = new Dictionary{}; + this.column_type_deduplicated_lst = new List{}; + if(!ignore_timestamp){ + this.column_name_lst.Add(this.TIMESTAMP_STR); + this.column_type_lst.Add(TSDataType.INT64); + this.column_name_index.Add(this.TIMESTAMP_STR, 1); + } + if(column_name_index.Count > 0){ + // init + for(int i=0; i < column_name_index.Count; i++){ + column_type_deduplicated_lst.Add(TSDataType.NONE); + } + // init data type map + for(int i = 0; i < column_name_lst.Count; i++){ + var name = column_name_lst[i]; + this.column_name_lst.Add(name); + this.column_type_lst.Add((TSDataType)Enum.Parse(typeof(TSDataType), name)); + if(!this.column_name_index.ContainsKey(name)){ + var index = column_name_index[name]; + this.column_name_index[name] = index + START_INDEX; + this.column_type_deduplicated_lst[i] = (TSDataType)Enum.Parse(typeof(TSDataType), name); + } + } + }else{ + var index = START_INDEX; + for(int i=0; i < column_name_lst.Count; i++){ + var name = column_name_lst[i]; + this.column_name_lst.Add(name); + this.column_type_lst.Add((TSDataType)Enum.Parse(typeof(TSDataType), name)); + if(!this.column_name_index.ContainsKey(name)){ + this.column_name_index[name] = index; + index += 1; + this.column_type_deduplicated_lst[index] = (TSDataType)Enum.Parse(typeof(TSDataType), name); + + } + } + } + time_bytes = new byte[]{}; + for(int i=0; i< column_type_deduplicated_lst.Count; i++){ + current_bitmap.Add((byte)0); + value.Add(new byte[]{}); + } + this.query_dataset = query_dataset; + this.is_closed = false; + this.has_cached_record = false; + this.empty_resultset = false; + this.rows_index = 0; + } + public void close(){ + if(is_closed){ + return; + } + if(client != null){ + var req = new TSCloseOperationReq(session_id); + req.QueryId = query_id; + var task = client.closeOperationAsync(req); + task.Wait(); + var status = task.Result; + try{ + var message = string.Format("close session {0}, message: {1}", session_id, status.Message); + Console.WriteLine(message); + } + catch(TException e){ + var message = string.Format("close session {0} failed because:{1} ", session_id, e); + Console.WriteLine(message); + throw e; + } + is_closed = true; + client = null; + } + } + public bool next(){ + if(has_cached_result()){ + construct_one_row(); + return true; + }else if(this.empty_resultset){ + return false; + }else if(fetch_results()){ + construct_one_row(); + return true; + } + return false; + } + private bool has_cached_result(){ + return (query_dataset != null) && (query_dataset.Time.Length > 0); + } + private bool fetch_results(){ + rows_index = 0; + var req = new TSFetchResultsReq(session_id, sql, fetch_size, query_id, true); + req.Timeout = default_timeout; + try{ + var task = client.fetchResultsAsync(req); + task.Wait(); + var resp = task.Result; + if(!resp.HasResultSet){ + empty_resultset = true; + }else{ + this.query_dataset = resp.QueryDataSet; + } + return resp.HasResultSet; + } + catch(TException e){ + var message = string.Format("Cannot fetch result from server, because of network connection:{0}", e); + Console.WriteLine(message); + } + return false; + } + private void construct_one_row(){ + time_bytes = query_dataset.Time[0..8]; + query_dataset.Time = query_dataset.Time[8..]; + for(int index = 0; index < query_dataset.BitmapList.Count; index++){ + var bitmap_buffer = query_dataset.BitmapList[index]; + if(rows_index % 8 == 0){ + current_bitmap[index] = bitmap_buffer[0]; + query_dataset.BitmapList[index] = bitmap_buffer[1..]; + } + if(!is_null(index, rows_index)){ + var value_buffer = query_dataset.ValueList[index]; + var data_type = column_type_deduplicated_lst[index]; + switch(data_type){ + case TSDataType.BOOLEAN: + value[index] = value_buffer[..1]; + query_dataset.ValueList[index] = value_buffer[1..]; + break; + case TSDataType.INT32: + value[index] = value_buffer[..4]; + query_dataset.ValueList[index] = value_buffer[4..]; + break; + case TSDataType.INT64: + value[index] = value_buffer[..8]; + query_dataset.ValueList[index] = value_buffer[8..]; + break; + case TSDataType.TEXT: + var length = (Int32)BitConverter.ToUInt32(value_buffer[..4]); + value[index] = value_buffer[4..(4+length)]; + query_dataset.ValueList[index] = value_buffer[(4+length)..]; + break; + default: + Console.WriteLine(string.Format("unsupported data type {0}", data_type)); + break; + } + } + } + rows_index += 1; + has_cached_record = true; + + } + private bool is_null(int index, int row_num){ + var bitmap = current_bitmap[index]; + var shift = row_num % 8; + return ((FLAG >> shift & bitmap) & 0xff ) == 0; + } + private bool is_null_by_index(int column_index){ + var name = find_column_name_by_index(column_index); + var index = column_name_index[name] - START_INDEX; + if(index < 0){ + return true; + } + return is_null(index, rows_index-1); + } + private bool is_null_by_name(string column_name){ + var index = column_name_index[column_name] - START_INDEX; + if(index < 0){ + return true; + } + return is_null(index, rows_index-1); + } + + private string find_column_name_by_index(int column_index){ + if(column_index <= 0){ + throw new Exception("Column index should start from 1"); + } + if(column_index > column_name_lst.Count){ + throw new Exception(string.Format("column index {0} out of range {0}", column_index, column_name_lst.Count)); + } + return column_name_lst[column_index -1 ]; + } + + public int get_fetch_size(){ + return fetch_size; + } + public int set_fetch_size(int fetch_size){ + this.fetch_size = fetch_size; + return fetch_size; + } + public List get_column_names(){ + return column_name_lst; + } + public List get_column_types(){ + return column_type_lst; + } + public int get_column_size(){ + return column_size; + } + public bool get_ignore_timestamp(){ + return ignore_timestamp; + } + public Dictionary get_column_ordinal_dict(){ + return column_name_index; + } + public List get_column_type_deduplicated_list(){ + return column_type_deduplicated_lst; + } + public List get_values(){ + return value; + } + public byte[] get_time_bytes(){ + return time_bytes; + } + public bool get_has_cached_record(){ + return has_cached_record; + } + + } } \ No newline at end of file diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs new file mode 100644 index 0000000..5bfd5c3 --- /dev/null +++ b/client/utils/SessionDataSet.cs @@ -0,0 +1,11 @@ +using System; +using System.Collections.Generic; +namespace iotdb_client_csharp.client.utils +{ + public class SessionDataSet + { + public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set, bool ignore_time_stamp){ + + } + } +} \ No newline at end of file From 20337803622b0b5b26e8546ebc6bb38c70d7ac2d Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 2 Apr 2021 21:12:06 +0800 Subject: [PATCH 015/214] finish SessionDataset --- client/utils/SessionDataSet.cs | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 5bfd5c3..43fd447 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -4,8 +4,28 @@ namespace iotdb_client_csharp.client.utils { public class SessionDataSet { - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set, bool ignore_time_stamp){ - + private IoTDBRpcDataSet iotdb_rpc_data_set; + public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set, bool ignore_timestamp){ + iotdb_rpc_data_set = new IoTDBRpcDataSet(sql, column_name_lst, column_type_lst, column_name_index,ignore_timestamp, query_id, client, session_id, query_data_set, 1024); } + public int get_fetch_size(){ + return iotdb_rpc_data_set.get_fetch_size(); + } + public int set_fetch_size(int fetch_size){ + return iotdb_rpc_data_set.set_fetch_size(fetch_size); + } + public List get_column_names(){ + return iotdb_rpc_data_set.get_column_names(); + } + public List get_column_types(){ + return iotdb_rpc_data_set.get_column_types(); + } + public bool has_next(){ + return iotdb_rpc_data_set.next(); + } + public void close_operation_handle(){ + iotdb_rpc_data_set.close(); + } + } } \ No newline at end of file From 3e470f3f1b5bedf19a441f14f657dcc3c256ae2a Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 3 Apr 2021 09:58:53 +0800 Subject: [PATCH 016/214] add RowRecord --- client/utils/Field.cs | 69 +++++++++++++++++++++------- client/utils/IoTDBRpcDataSet.cs | 13 +++--- client/utils/RowRecord.cs | 40 +++++++++++++++++ client/utils/SessionDataSet.cs | 80 +++++++++++++++++++++++++++++++++ 4 files changed, 182 insertions(+), 20 deletions(-) create mode 100644 client/utils/RowRecord.cs diff --git a/client/utils/Field.cs b/client/utils/Field.cs index f0e1a92..70a82e2 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -1,35 +1,74 @@ +using System; namespace iotdb_client_csharp.client.utils { public class Field { // TBD By Zengz - private bool bool_val; + public bool bool_val{ + get{return bool_val;}; + set{ + valid_data_type(); + bool_val = value; + }} private int int_val; private long long_val; private float float_val; private double double_val; - private byte binary_val; + private byte[] binary_val; - private TSDataType data_type; + private TSDataType data_type{get;set;} public Field(TSDataType data_type){ this.data_type = data_type; } - public TSDataType get_data_type(){ - return this.data_type; + public void valid_data_type(){ + if(data_type == TSDataType.NONE){ + throw new Exception("CanNot Set A None Type"); + } } - public void set_bool_value(bool value){ - bool_val = value; - } - public bool get_bool_value(){ - return bool_val; + public void set_value(TSDataType data_type, T value){ + switch(data_type){ + case TSDataType.BOOLEAN: + bool_val = (bool)(object)value; + break; + case TSDataType.INT32: + int_val = (int)(object)value; + break; + case TSDataType.INT64: + long_val = (long)(object)value; + break; + case TSDataType.FLOAT: + float_val= (float)(object)value; + break; + case TSDataType.DOUBLE: + double_val = (double)(object)value; + break; + case TSDataType.TEXT: + binary_val = (byte[])(object)value; + break; + default: + var message = "unsupported data type"; + Console.WriteLine(message); + break; + } } - public void set_int_value(int value){ - int_val = value; - } - public int get_int_value(){ - return int_val; + public override string ToString() + { + switch(data_type){ + case TSDataType.TEXT: + return System.Text.Encoding.UTF8.GetString(binary_val); + case TSDataType.INT32: + return int_val.ToString(); + case TSDataType.INT64: + return long_val.ToString(); + case TSDataType.FLOAT: + return float_val.ToString(); + case TSDataType.DOUBLE: + return double_val.ToString(); + default: + return ""; + } } } diff --git a/client/utils/IoTDBRpcDataSet.cs b/client/utils/IoTDBRpcDataSet.cs index 62a0fa0..51f8878 100644 --- a/client/utils/IoTDBRpcDataSet.cs +++ b/client/utils/IoTDBRpcDataSet.cs @@ -187,12 +187,12 @@ private void construct_one_row(){ has_cached_record = true; } - private bool is_null(int index, int row_num){ + public bool is_null(int index, int row_num){ var bitmap = current_bitmap[index]; var shift = row_num % 8; return ((FLAG >> shift & bitmap) & 0xff ) == 0; } - private bool is_null_by_index(int column_index){ + public bool is_null_by_index(int column_index){ var name = find_column_name_by_index(column_index); var index = column_name_index[name] - START_INDEX; if(index < 0){ @@ -200,7 +200,7 @@ private bool is_null_by_index(int column_index){ } return is_null(index, rows_index-1); } - private bool is_null_by_name(string column_name){ + public bool is_null_by_name(string column_name){ var index = column_name_index[column_name] - START_INDEX; if(index < 0){ return true; @@ -208,14 +208,14 @@ private bool is_null_by_name(string column_name){ return is_null(index, rows_index-1); } - private string find_column_name_by_index(int column_index){ + public string find_column_name_by_index(int column_index){ if(column_index <= 0){ throw new Exception("Column index should start from 1"); } if(column_index > column_name_lst.Count){ throw new Exception(string.Format("column index {0} out of range {0}", column_index, column_name_lst.Count)); } - return column_name_lst[column_index -1 ]; + return column_name_lst[column_index -1]; } public int get_fetch_size(){ @@ -252,6 +252,9 @@ public byte[] get_time_bytes(){ public bool get_has_cached_record(){ return has_cached_record; } + public void set_has_cached_record(bool value){ + has_cached_record = value; + } diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs new file mode 100644 index 0000000..d757e32 --- /dev/null +++ b/client/utils/RowRecord.cs @@ -0,0 +1,40 @@ +using System.Collections.Generic; +using Thrift; +namespace iotdb_client_csharp.client.utils +{ + public class RowRecord + { + private long timestamp{get;set;} + private List field_lst{get;set;} + public RowRecord(long timestamp, List field_lst){ + this.timestamp = timestamp; + this.field_lst = field_lst; + } + public void add_filed(Field field){ + field_lst.Add(field); + } + + public void set_filed(int index, Field filed){ + field_lst[index] = filed; + } + + public void add_filed(TSDataType data_type, T value){ + var filed = new Field(data_type); + filed.set_value(data_type, value); + field_lst.Add(filed); + } + public override string ToString() + { + var str = timestamp.ToString(); + foreach(var field in field_lst){ + str += "\t\t"; + str += field.ToString(); + } + return str; + } + + + + + } +} \ No newline at end of file diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 43fd447..b29fb95 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -26,6 +26,86 @@ public bool has_next(){ public void close_operation_handle(){ iotdb_rpc_data_set.close(); } + private bool unpack_bool(byte[] value_byes){ + return false; + } + private int unpack_int(byte[] value_byes){ + return 0; + } + private long unpack_long(byte[] value_bytes){ + return 0; + } + private float unpack_float(byte[] value_bytes){ + return 0; + } + + private double unpack_double(byte[] value_bytes){ + return 0; + } + public RowRecord next(){ + if(!(iotdb_rpc_data_set.get_has_cached_record() || has_next())){ + return null; + } + iotdb_rpc_data_set.set_has_cached_record(false); + return construct_row_record_from_value_array(); + } + + public RowRecord construct_row_record_from_value_array(){ + var out_field_lst = new List{}; + for(int i = 0; i < iotdb_rpc_data_set.get_column_size(); i++){ + var index = i + 1; + var dataset_column_index = i + iotdb_rpc_data_set.START_INDEX; + if(iotdb_rpc_data_set.get_ignore_timestamp()){ + index -= 1; + dataset_column_index -= 1; + } + Field field; + var column_name = iotdb_rpc_data_set.get_column_names()[index]; + var location = iotdb_rpc_data_set.get_column_ordinal_dict()[column_name] - iotdb_rpc_data_set.START_INDEX; + if(!iotdb_rpc_data_set.is_null_by_index(dataset_column_index)){ + var value_bytes = iotdb_rpc_data_set.get_values()[location]; + var data_type = iotdb_rpc_data_set.get_column_type_deduplicated_list()[location]; + field = new Field(data_type); + + switch(data_type){ + case TSDataType.BOOLEAN: + var bool_value = unpack_bool(value_bytes); + field.set_value(data_type, bool_value); + break; + case TSDataType.INT32: + var int_value = unpack_int(value_bytes); + field.set_value(data_type, int_value); + break; + case TSDataType.INT64: + var long_value = unpack_long(value_bytes); + field.set_value(data_type, long_value); + break; + case TSDataType.TEXT: + var bytes_value = value_bytes; + field.set_value(data_type, bytes_value); + break; + case TSDataType.FLOAT: + float float_value = unpack_float(value_bytes); + field.set_value(data_type, float_value); + break; + case TSDataType.DOUBLE: + double double_value = unpack_double(value_bytes); + field.set_value(data_type, double_value); + break; + default: + var message = "unsupported data type"; + Console.WriteLine(message); + break; + } + + }else{ + field = new Field(TSDataType.NONE); + } + out_field_lst.Add(field); + } + long timestamp = unpack_long(iotdb_rpc_data_set.get_time_bytes()); + return new RowRecord(timestamp, out_field_lst); + } } } \ No newline at end of file From 5834189f39277f3ebe13d9c4445bcfc8d6d0e88f Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 3 Apr 2021 11:36:58 +0800 Subject: [PATCH 017/214] add some class --- client/utils/Tablet.cs | 106 ++++++++++++++++++++++++++++++++++------- 1 file changed, 90 insertions(+), 16 deletions(-) diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 292c69d..c02f802 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -1,28 +1,102 @@ using System; using System.Collections.Generic; +using System.Linq; namespace iotdb_client_csharp.client.utils { public class Tablet { // TBD by Zengz - private string device_id; - private List measurements; - private List data_types; - private List timestamps; - private List> values; - - public Tablet(string device_id, List measurements, List data_types, List> values, List timestamps){ - if(timestamps.Count != values.Count){ - var err_msg = String.Format("Input error! len(timestamps) does not equal to len(values)!"); - Console.WriteLine(err_msg); - throw new Exception("input length not matched"); - } + public string device_id{get;} + public List measurement_lst{get;} + public List data_type_lst{get;} + private List timestamp_lst; + private List> value_lst; + + public int row_number{get;} + private int col_number; + + public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ + if(timestamp_lst.Count != value_lst.Count){ + var err_msg = String.Format("Input error! len(timestamps) does not equal to len(values)!"); + Console.WriteLine(err_msg); + throw new Exception("input length not matched"); + } + if(!check_timestamp_lst_sorted()){ + var sorted = timestamp_lst.Select((x, i) => (value:x, original_idx:i)).OrderBy(x => x.value).ToList(); + this.timestamp_lst = sorted.Select(x => x.value).ToList(); + var idx_lst = sorted.Select(x => x.original_idx).ToList(); + foreach(var index in idx_lst){ + this.value_lst.Add(value_lst[index]); + } + }else{ + this.value_lst = value_lst; + this.timestamp_lst = timestamp_lst; + } this.device_id = device_id; - this.measurements = measurements; - this.data_types = data_types; - this.values = values; - this.timestamps = timestamps; + this.measurement_lst = measurement_lst; + this.data_type_lst = data_type_lst; + this.row_number = timestamp_lst.Count; + this.col_number = measurement_lst.Count; + } + + private bool check_timestamp_lst_sorted(){ + for(int index = 1; index < timestamp_lst.Count; index++){ + if(timestamp_lst[index] < timestamp_lst[index-1]){ + return false; + } + } + return true ; + } + public byte[] get_binary_timestamps(){ + List res = new List{}; + foreach(var timestamp in timestamp_lst){ + res.AddRange(BitConverter.GetBytes(timestamp)); + } + return res.ToArray(); + } + public byte[] get_binary_values(){ + List res = new List{}; + for(int i = 0; i < col_number; i++){ + switch(data_type_lst[i]){ + case TSDataType.BOOLEAN: + for(int j=0; j< row_number; j++){ + res.AddRange(BitConverter.GetBytes(value_lst[j][i] == "True")); + } + break; + case TSDataType.INT32: + for(int j=0; j Date: Sat, 3 Apr 2021 12:00:18 +0800 Subject: [PATCH 018/214] Add: some api about inserting --- client/Session.cs | 117 ++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 108 insertions(+), 9 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 649b787..f043272 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -1,3 +1,4 @@ +using System.Net.Mime; using Thrift; using Thrift.Transport; using Thrift.Protocol; @@ -210,10 +211,9 @@ public int delete_data(List ts_path_lst, long start_time, long end_time) } public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp){ if(values.Count() != measurements.Count()){ - var err_msg = String.Format("length of data types does not equal to length of values!"); - Console.WriteLine(err_msg) + throw new TException("length of data types does not equal to length of values!",null); } - return TSInsertStringRecordReq(sessionId, device_id, measurements, values, timestamp); + return new TSInsertStringRecordReq(sessionId, device_id, measurements, values, timestamp); } public int insert_str_record(string device_id, List measurements, List values, long timestamp){ // TBD by Luzhan @@ -221,25 +221,93 @@ public int insert_str_record(string device_id, List measurements, List measurements, List values, List data_types, long timestamp){ + if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + throw new TException("length of data types does not equal to length of values!", null); + } + var values_in_bytes = value_to_bytes(data_types, values); + return new TSInsertRecordReq(sessionId, device_id, measurements, values_in_bytes, timestamp); + } public int insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan - return 0; + var data_types_in_int = data_types.ConvertAll(x => (int)x); + var req = gen_insert_record_req(device_id, measurements, values, data_types_in_int, timestamp); + var task = client.insertRecordAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("insert one record to device {0} message: {1}", device_id, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ + //TODO + if(device_id.Count() != measurements_lst.Count() || timestamp_lst.Count() != data_types_lst.Count() || + device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ + var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); + throw new TException(err_msg,null); + } + + List values_lst_in_bytes = new List(); + for(int i = 0;i < values_lst.Count(); i++){ + var values = values_lst[i]; + var data_types = data_types_lst[i]; + var measurements = measurements_lst[i]; + if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); + throw new TException(err_msg, null); + } + var values_in_bytes = value_to_bytes(data_types, values); + values_lst_in_bytes.Add(values_in_bytes); + } + + return new TSInsertRecordsReq(sessionId, device_id, measurements_lst, values_lst_in_bytes, timestamp_lst); } public int insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan - return 0; + List> data_types_lst_in_int = new List>(); + var len = data_types_lst.Count(); + for(int i = 0; i < len; i++){ + var data_types_in_int = data_types_lst[i].ConvertAll(x => (int)x); + data_types_lst_in_int.Add(data_types_in_int); + } + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); + var task = client.insertRecordsAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("insert multiple records to devices {0} message: {1}", device_id, status.Message); + Console.WriteLine(message); + return verify_success(status); } public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan - return 0; + var data_types_int = data_types.ConvertAll(x => (int)x); + var req = gen_insert_record_req(device_id, measurements, values, data_types_int, timestamp); + var task = client.testInsertRecordAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("testing! insert one record to device {0} message: {1}", device_id, status.Message); + Console.WriteLine(message); + return verify_success(status); } public int test_insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan - return 0; + List> data_types_lst_in_int = new List>(); + var len = data_types_lst.Count(); + for(int i = 0; i < len; i++){ + var data_types_in_int = data_types_lst[i].ConvertAll(x => (int)x); + data_types_lst_in_int.Add(data_types_in_int); + } + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); + var task = client.testInsertRecordsAsync(req); + task.Wait(); + var status = task.Result; + var message = String.Format("testing! insert multiple records, message: {0}", status.Message); + Console.WriteLine(message); + return verify_success(status); } private int verify_success(TSStatus status){ @@ -283,6 +351,37 @@ public string get_time_zone(){ } return resp.TimeZone; } - + public byte[] value_to_bytes(List data_types, List values){ + //TODO + List res = new List(){}; + for(int i = 0; i < data_types.Count(); i++){ + switch(data_types[i]){ + case (int)TSDataType.BOOLEAN: + res.AddRange(BitConverter.GetBytes(Boolean.Parse(values[i]))); + break; + case (int)TSDataType.FLOAT: + res.AddRange(BitConverter.GetBytes(float.Parse(values[i]))); + break; + case (int)TSDataType.DOUBLE: + res.AddRange(BitConverter.GetBytes(double.Parse(values[i]))); + break; + case (int)TSDataType.INT32: + res.AddRange(BitConverter.GetBytes(Int32.Parse(values[i]))); + break; + case (int)TSDataType.INT64: + res.AddRange(BitConverter.GetBytes(Int64.Parse(values[i]))); + break; + case (int)TSDataType.TEXT: + var len = values[i].Length; + res.AddRange(BitConverter.GetBytes(len)); + res.AddRange(System.Text.Encoding.UTF8.GetBytes(values[i])); + break; + default: + var err_msg = String.Format("Unsupported data type:{0}",data_types[i].ToString()); + break; + } + } + return res.ToArray(); + } } } \ No newline at end of file From efb0315de21dc0ef4caababc73fcd0fa0a30848e Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 3 Apr 2021 12:19:16 +0800 Subject: [PATCH 019/214] add session code --- client/Session.cs | 33 +++++++++++++++++++++++++++++++++ client/utils/Tablet.cs | 9 +++------ 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index dc17005..fd6d2ad 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -20,6 +20,7 @@ using Thrift.Transport.Client; using Thrift.Transport.Server; using Thrift.Processor; +using iotdb_client_csharp.client.utils; namespace iotdb_client_csharp.client { @@ -228,6 +229,36 @@ public int test_insert_records(List device_id, List> measur // TBD by Luzhan return 0; } + public int insert_tablet(Tablet tablet){ + // TBD by Luzhan + return 0; + } + public int insert_tablets(List tablet_lst){ + // TBD by Luzhan + return 0; + } + public int insert_records_of_one_device(long device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); + List sorted_timestamp_lst = sorted.Select(x => x.timestamp).ToList(); + List> sorted_measurements_lst = sorted.Select(x => x.measurements).ToList(); + List> sorted_datatye_lst = sorted.Select(x => x.data_types).ToList(); + List> sorted_value_lst = sorted.Select(x => x.values).ToList(); + return insert_records_of_one_device_sorted(device_id, sorted_timestamp_lst, sorted_measurements_lst, sorted_datatye_lst, sorted_value_lst); + + } + public int insert_records_of_one_device_sorted(long device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + // TBD by Luzhan + return 0; + } + + public int test_insert_tablet(Tablet tablet){ + // TBD by Luzhan + return 0; + } + public int test_insert_tablets(List tablet_lst){ + // TBD by Luzhan + return 0; + } private int verify_success(TSStatus status){ if (status.Code == SUCCESS_CODE){ @@ -271,12 +302,14 @@ public string get_time_zone(){ return resp.TimeZone; } public void execute_query_statement(string sql, long timeout){ + // TODO var req = new TSExecuteStatementReq(sessionId, sql, statementId); req.FetchSize = fetch_size; req.Timeout = timeout; var task = client.executeQueryStatementAsync(req); task.Wait(); var resp = task.Result; + return ; } diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index c02f802..b1a6341 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -22,12 +22,9 @@ public Tablet(string device_id, List measurement_lst, List d throw new Exception("input length not matched"); } if(!check_timestamp_lst_sorted()){ - var sorted = timestamp_lst.Select((x, i) => (value:x, original_idx:i)).OrderBy(x => x.value).ToList(); - this.timestamp_lst = sorted.Select(x => x.value).ToList(); - var idx_lst = sorted.Select(x => x.original_idx).ToList(); - foreach(var index in idx_lst){ - this.value_lst.Add(value_lst[index]); - } + var sorted = timestamp_lst.Select((x, index) => (timestamp:x, values:value_lst[index])).OrderBy(x => x.timestamp).ToList(); + this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); + this.value_lst = sorted.Select(x => x.values).ToList(); }else{ this.value_lst = value_lst; this.timestamp_lst = timestamp_lst; From 7be201e17b0ea8e321aee6b075acee61f79dc658 Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 3 Apr 2021 12:20:55 +0800 Subject: [PATCH 020/214] resolve conflict --- client/Session.cs | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index fd6d2ad..ffe2bc8 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -301,17 +301,6 @@ public string get_time_zone(){ } return resp.TimeZone; } - public void execute_query_statement(string sql, long timeout){ - // TODO - var req = new TSExecuteStatementReq(sessionId, sql, statementId); - req.FetchSize = fetch_size; - req.Timeout = timeout; - var task = client.executeQueryStatementAsync(req); - task.Wait(); - var resp = task.Result; - return ; - - } } } \ No newline at end of file From 99554f9604bbb93408d64cbfcdd64d47b68304d1 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Sat, 3 Apr 2021 16:56:33 +0800 Subject: [PATCH 021/214] Add:several interfaces --- client/Session.cs | 225 +++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 201 insertions(+), 24 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 0b8ff01..26c0f2a 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -212,23 +212,33 @@ public int delete_data(List ts_path_lst, long start_time, long end_time) } public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp){ if(values.Count() != measurements.Count()){ - throw new TException("length of data types does not equal to length of values!",null); + var err_msg = "length of data types does not equal to length of values!"; + throw new TException(err_msg, null); } return new TSInsertStringRecordReq(sessionId, device_id, measurements, values, timestamp); } public int insert_str_record(string device_id, List measurements, List values, long timestamp){ // TBD by Luzhan var req = gen_insert_str_record_req(device_id, measurements, values, timestamp); - var task = client.insertStringRecordAsync(req); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.insertStringRecordAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("String insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } var message = String.Format("insert one record to device {0} message: {1}", device_id, status.Message); Console.WriteLine(message); return verify_success(status); } public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, List data_types, long timestamp){ if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ - throw new TException("length of data types does not equal to length of values!", null); + var err_msg = "length of data types does not equal to length of values!"; + throw new TException(err_msg, null); } var values_in_bytes = value_to_bytes(data_types, values); return new TSInsertRecordReq(sessionId, device_id, measurements, values_in_bytes, timestamp); @@ -237,9 +247,17 @@ public int insert_record(string device_id, List measurements, List(x => (int)x); var req = gen_insert_record_req(device_id, measurements, values, data_types_in_int, timestamp); - var task = client.insertRecordAsync(req); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.insertRecordAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Record insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } var message = String.Format("insert one record to device {0} message: {1}", device_id, status.Message); Console.WriteLine(message); return verify_success(status); @@ -276,9 +294,17 @@ public int insert_records(List device_id, List> measurement data_types_lst_in_int.Add(data_types_in_int); } var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); - var task = client.insertRecordsAsync(req); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.insertRecordsAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Multiple records insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } var message = String.Format("insert multiple records to devices {0} message: {1}", device_id, status.Message); Console.WriteLine(message); return verify_success(status); @@ -287,9 +313,17 @@ public int test_insert_record(string device_id, List measurements, List< // TBD by Luzhan var data_types_int = data_types.ConvertAll(x => (int)x); var req = gen_insert_record_req(device_id, measurements, values, data_types_int, timestamp); - var task = client.testInsertRecordAsync(req); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.testInsertRecordAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Testing record insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } var message = String.Format("testing! insert one record to device {0} message: {1}", device_id, status.Message); Console.WriteLine(message); return verify_success(status); @@ -302,21 +336,88 @@ public int test_insert_records(List device_id, List> measur var data_types_in_int = data_types_lst[i].ConvertAll(x => (int)x); data_types_lst_in_int.Add(data_types_in_int); } - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); - var task = client.testInsertRecordsAsync(req); - task.Wait(); - var status = task.Result; + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); + TSStatus status; + try{ + var task = client.testInsertRecordsAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Testing multiple records insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } var message = String.Format("testing! insert multiple records, message: {0}", status.Message); Console.WriteLine(message); return verify_success(status); } + public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet){ + List data_type_values = new List(){}; + for(int i = 0; i < tablet.data_type_lst.Count(); i++){ + var data_type_value = (int)tablet.data_type_lst[i]; + data_type_values.Add(data_type_value); + } + return new TSInsertTabletReq(sessionId, tablet.device_id, tablet.measurement_lst, tablet.get_binary_values(), tablet.get_binary_timestamps(), data_type_values, tablet.row_number); + } public int insert_tablet(Tablet tablet){ // TBD by Luzhan - return 0; + var req = gen_insert_tablet_req(tablet); + TSStatus status; + try{ + var task = client.insertTabletAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Tablet insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } + var message = String.Format("insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst){ + List device_id_lst = new List(){}; + List> measurements_lst = new List>(){}; + List values_lst = new List(){}; + List timestamps_lst = new List(){}; + List> type_lst = new List>(){}; + List size_lst = new List(){}; + for(int i = 0; i < tablet_lst.Count(); i++){ + List data_type_values = new List(){}; + for(int j = 0;j < tablet_lst[i].data_type_lst.Count(); j++){ + var data_type_value = (int)tablet_lst[i].data_type_lst[j]; + data_type_values.Add(data_type_value); + } + device_id_lst.Add(tablet_lst[i].device_id); + measurements_lst.Add(tablet_lst[i].measurement_lst); + values_lst.Add(tablet_lst[i].get_binary_values()); + timestamps_lst.Add(tablet_lst[i].get_binary_timestamps()); + type_lst.Add(data_type_values); + size_lst.Add(tablet_lst[i].row_number); + } + return new TSInsertTabletsReq(sessionId, device_id_lst, measurements_lst, values_lst, timestamps_lst, type_lst, size_lst); } + public int insert_tablets(List tablet_lst){ // TBD by Luzhan - return 0; + var req = gen_insert_tablets_req(tablet_lst); + TSStatus status; + try{ + var task = client.insertTabletsAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Multiple tablets insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } + var message = String.Format("insert multiple tablets, message: {0}", status.Message); + Console.WriteLine(message); + return verify_success(status); } public int insert_records_of_one_device(long device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); @@ -327,18 +428,94 @@ public int insert_records_of_one_device(long device_id, List timestamp_lst return insert_records_of_one_device_sorted(device_id, sorted_timestamp_lst, sorted_measurements_lst, sorted_datatye_lst, sorted_value_lst); } + public bool check_sorted(List timestamp_lst){ + for(int i = 1; i < timestamp_lst.Count(); i++){ + if(timestamp_lst[i] < timestamp_lst[i-1]){ + return false; + } + } + return true; + } + public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(long device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst){ + List binary_value_lst = new List(){}; + for(int i = 0; i < values_lst.Count(); i++){ + List data_type_values = new List(){}; + for(int j = 0;j < data_types_lst[i].Count(); j++){ + var data_type_value = (int)data_types_lst[i][j]; + data_type_values.Add(data_type_value); + } + if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ + var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; + throw new TException(err_msg, null); + } + var value_in_bytes = value_to_bytes(data_type_values, values_lst[i]); + binary_value_lst.Add(value_in_bytes); + } + return new TSInsertRecordsOfOneDeviceReq(sessionId, device_id.ToString(), measurements_lst, binary_value_lst, timestamp_lst); + } public int insert_records_of_one_device_sorted(long device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ // TBD by Luzhan - return 0; + var size = timestamp_lst.Count(); + if(size != measurements_lst.Count() || size != data_types_lst.Count() || size != values_lst.Count()){ + var err_msg = "insert records of one device error: types, times, measurementsList and valuesList's size should be equal"; + throw new TException(err_msg, null); + } + if(!check_sorted(timestamp_lst)){ + var err_msg = "insert records of one device error: timestamp not sorted"; + throw new TException(err_msg, null); + } + var req = gen_insert_records_of_one_device_request(device_id, timestamp_lst, measurements_lst, values_lst, data_types_lst); + TSStatus status; + try{ + var task = client.insertRecordsOfOneDeviceAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Sorted records of one device insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } + var message = String.Format("insert records of one device, message: {0}", status.Message); + Console.WriteLine(message); + return verify_success(status); } public int test_insert_tablet(Tablet tablet){ // TBD by Luzhan - return 0; + var req = gen_insert_tablet_req(tablet); + TSStatus status; + try{ + var task = client.testInsertTabletAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Testing tablet insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } + var message = String.Format("testing! insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); + Console.WriteLine(message); + return verify_success(status); } public int test_insert_tablets(List tablet_lst){ // TBD by Luzhan - return 0; + var req = gen_insert_tablets_req(tablet_lst); + TSStatus status; + try{ + var task = client.testInsertTabletsAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var message_local = String.Format("Testing multiple tablets insertion fails because: {0}", e); + Console.WriteLine(message_local); + throw e; + } + var message = String.Format("testing! insert multiple tablets, message: {0}", status.Message); + Console.WriteLine(message); + return verify_success(status); } private int verify_success(TSStatus status){ @@ -415,4 +592,4 @@ public byte[] value_to_bytes(List data_types, List values){ return res.ToArray(); } } -} \ No newline at end of file +} From 5f1125de70d00ec1faf1e25ca0782533b2713a98 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 5 Apr 2021 19:03:28 +0800 Subject: [PATCH 022/214] move constants to another file --- client/Session.cs | 49 +++++++++++++++++++++++++++++++++++++---------- 1 file changed, 39 insertions(+), 10 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index ffe2bc8..77a22a9 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -24,17 +24,17 @@ namespace iotdb_client_csharp.client { - public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; - public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA, NONE}; - public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; + //public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; + //public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA, NONE}; + //public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; public class Session { - private string username="root", password="root", zoneId, host; + private string username, password, zoneId, host; public int SUCCESS_CODE{ get{return 200;} } - private int port, fetch_size=10000; + private int port, fetch_size; private long sessionId, statementId; private bool is_close = true; @@ -47,7 +47,28 @@ public Session(string host, int port){ // init success code this.host = host; this.port = port; + this.username = "root"; + this.password = "root"; + this.zoneId = "UTC+08:00"; + this.fetch_size = 10000; } + public Session(string host, int port, string username, string password){ + this.host = host; + this.port = port; + this.password = password; + this.username = username; + this.zoneId = "UTC+08:00"; + this.fetch_size = 10000; + } + public Session(string host, int port, string username, string password, int fetch_size){ + this.host = host; + this.port = port; + this.username = username; + this.password = password; + this.fetch_size = fetch_size; + this.zoneId = "UTC+08:00"; + + } public Session(string host, int port, string username="root", string password="root", int fetch_size=10000, string zoneId = "UTC+08:00"){ this.host = host; this.port = port; @@ -69,7 +90,7 @@ public void open(bool enableRPCCompression){ catch(TTransportException e){ //TODO, should define our own Exception // here we just print the exception - Console.Write(e.ToString()); + Console.Write(e); throw e; } } @@ -89,6 +110,7 @@ public void open(bool enableRPCCompression){ if(open_resp.ServerProtocolVersion != protocol_version){ var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); Console.WriteLine(message); + throw new TException(message, null); } if (open_resp.ServerProtocolVersion == 0){ throw new TException("Protocol not supported", null); @@ -137,10 +159,17 @@ public void close(){ } public int set_storage_group(string group_name){ - var task = client.setStorageGroupAsync(sessionId, group_name); - task.Wait(); - var status = task.Result; - return verify_success(status); + try{ + var task = client.setStorageGroupAsync(sessionId, group_name); + task.Wait(); + var status = task.Result; + return verify_success(status); + } + catch(TException e){ + var message = String.Format("set storage group {0} failed, beacuse {1}", group_name, e); + Console.WriteLine(message); + throw e; + } } public int delete_storage_group(string group_name){ From 2b5974d987fdd2acb6f8087f3cbee4629227beba Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 6 Apr 2021 08:29:50 +0800 Subject: [PATCH 023/214] move some constants to another file --- client/utils/IoTDBConstants.cs | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 client/utils/IoTDBConstants.cs diff --git a/client/utils/IoTDBConstants.cs b/client/utils/IoTDBConstants.cs new file mode 100644 index 0000000..ad8cce7 --- /dev/null +++ b/client/utils/IoTDBConstants.cs @@ -0,0 +1,7 @@ +namespace iotdb_client_csharp.client.utils +{ + public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; + public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA, NONE}; + public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; + +} \ No newline at end of file From b76c4edcb9b827a78dc3405281618678465270fe Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 6 Apr 2021 08:32:03 +0800 Subject: [PATCH 024/214] change Field --- client/utils/Field.cs | 58 +++++++++++++++++++++++++++++----- client/utils/RowRecord.cs | 10 +++--- client/utils/SessionDataSet.cs | 12 +++---- 3 files changed, 61 insertions(+), 19 deletions(-) diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 70a82e2..0ce8dfb 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -5,16 +5,58 @@ public class Field { // TBD By Zengz public bool bool_val{ - get{return bool_val;}; + get{ + return bool_val; + } set{ valid_data_type(); bool_val = value; - }} - private int int_val; - private long long_val; - private float float_val; - private double double_val; - private byte[] binary_val; + } + } + public int int_val{ + get{ + return int_val; + } + set{ + valid_data_type(); + int_val = value; + } + } + public long long_val{ + get{ + return long_val; + } + set{ + valid_data_type(); + long_val = value; + } + } + public float float_val{ + get{ + return float_val; + } + set{ + valid_data_type(); + float_val = value; + } + } + public double double_val{ + get{ + return double_val; + } + set{ + valid_data_type(); + double_val = value; + } + } + private byte[] binary_val{ + get{ + return binary_val; + } + set{ + binary_val = value; + } + } private TSDataType data_type{get;set;} @@ -27,7 +69,7 @@ public void valid_data_type(){ } } - public void set_value(TSDataType data_type, T value){ + public void set_value(T value){ switch(data_type){ case TSDataType.BOOLEAN: bool_val = (bool)(object)value; diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index d757e32..5c45e2a 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -14,15 +14,15 @@ public void add_filed(Field field){ field_lst.Add(field); } - public void set_filed(int index, Field filed){ - field_lst[index] = filed; - } - public void add_filed(TSDataType data_type, T value){ var filed = new Field(data_type); - filed.set_value(data_type, value); + filed.set_value(value); field_lst.Add(filed); } + + public void set_filed(int index, Field filed){ + field_lst[index] = filed; + } public override string ToString() { var str = timestamp.ToString(); diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index b29fb95..155f6fe 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -70,27 +70,27 @@ public RowRecord construct_row_record_from_value_array(){ switch(data_type){ case TSDataType.BOOLEAN: var bool_value = unpack_bool(value_bytes); - field.set_value(data_type, bool_value); + field.set_value(bool_value); break; case TSDataType.INT32: var int_value = unpack_int(value_bytes); - field.set_value(data_type, int_value); + field.set_value(int_value); break; case TSDataType.INT64: var long_value = unpack_long(value_bytes); - field.set_value(data_type, long_value); + field.set_value(long_value); break; case TSDataType.TEXT: var bytes_value = value_bytes; - field.set_value(data_type, bytes_value); + field.set_value(bytes_value); break; case TSDataType.FLOAT: float float_value = unpack_float(value_bytes); - field.set_value(data_type, float_value); + field.set_value(float_value); break; case TSDataType.DOUBLE: double double_value = unpack_double(value_bytes); - field.set_value(data_type, double_value); + field.set_value(double_value); break; default: var message = "unsupported data type"; From 7b50e428a0d398a7731b4be12e42519e0dfbfbf9 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 6 Apr 2021 10:07:52 +0800 Subject: [PATCH 025/214] add ColRecord --- client/utils/ColumnRecord.cs | 51 ++++++++++++++++++++++++++++++++++++ client/utils/Field.cs | 34 +++++++++++++++++++++++- client/utils/Tablet.cs | 16 ++++++++++- 3 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 client/utils/ColumnRecord.cs diff --git a/client/utils/ColumnRecord.cs b/client/utils/ColumnRecord.cs new file mode 100644 index 0000000..73beb12 --- /dev/null +++ b/client/utils/ColumnRecord.cs @@ -0,0 +1,51 @@ +using System.Collections.Generic; +using iotdb_client_csharp.client; +using System; +namespace iotdb_client_csharp.client.utils +{ + public class ColumnRecord + { + public TSDataType data_type; + List values; + + public ColumnRecord(TSDataType data_type, List values){ + this.data_type = data_type; + this.values = values; + } + public byte[] get_value_bytes(){ + List res = new List{}; + foreach(var value in values){ + switch(data_type){ + case TSDataType.BOOLEAN: + bool bool_val = (bool)(object)value; + res.AddRange(BitConverter.GetBytes(bool_val)); + break; + case TSDataType.FLOAT: + float float_val = (float)(object)value; + res.AddRange(BitConverter.GetBytes(float_val)); + break; + case TSDataType.DOUBLE: + double double_val = (double)(object)value; + res.AddRange(BitConverter.GetBytes(double_val)); + break; + case TSDataType.INT32: + int int_val = (int)(object)value; + res.AddRange(BitConverter.GetBytes(int_val)); + break; + case TSDataType.INT64: + long long_val = (long)(object)value; + res.AddRange(BitConverter.GetBytes(long_val)); + break; + case TSDataType.TEXT: + string str_val = (string)(object)(value); + res.AddRange(BitConverter.GetBytes(str_val.Length)); + res.AddRange(System.Text.Encoding.UTF8.GetBytes(str_val)); + break; + } + } + return res.ToArray(); + + } + + } +} \ No newline at end of file diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 0ce8dfb..637ca6e 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; namespace iotdb_client_csharp.client.utils { public class Field @@ -49,6 +50,7 @@ public double double_val{ double_val = value; } } + // why we need to keep binary values here private byte[] binary_val{ get{ return binary_val; @@ -58,6 +60,7 @@ private byte[] binary_val{ } } + private TSDataType data_type{get;set;} public Field(TSDataType data_type){ @@ -87,7 +90,11 @@ public void set_value(T value){ double_val = (double)(object)value; break; case TSDataType.TEXT: - binary_val = (byte[])(object)value; + var res = new List{}; + var str_val = (string)(object)value; + res.AddRange(BitConverter.GetBytes(str_val.Length)); + res.AddRange(System.Text.Encoding.UTF8.GetBytes(str_val)); + binary_val = res.ToArray(); break; default: var message = "unsupported data type"; @@ -95,6 +102,31 @@ public void set_value(T value){ break; } } + public byte[] get_value_bytes(){ + List res = new List{}; + switch(data_type){ + case TSDataType.BOOLEAN: + res.AddRange(BitConverter.GetBytes(bool_val)); + break; + case TSDataType.INT32: + res.AddRange(BitConverter.GetBytes(int_val)); + break; + case TSDataType.INT64: + res.AddRange(BitConverter.GetBytes(long_val)); + break; + case TSDataType.FLOAT: + res.AddRange(BitConverter.GetBytes(float_val)); + break; + case TSDataType.DOUBLE: + res.AddRange(BitConverter.GetBytes(double_val)); + break; + case TSDataType.TEXT: + res.AddRange(binary_val); + break; + } + return res.ToArray(); + } + public override string ToString() { switch(data_type){ diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index b1a6341..6565924 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -3,9 +3,22 @@ using System.Linq; namespace iotdb_client_csharp.client.utils { + /* + * A tablet data of one device, the tablet contains multiple measurements of this device that share + * the same time column. + * + * for example: device root.sg1.d1 + * + * time, m1, m2, m3 + * 1, 1, 2, 3 + * 2, 1, 2, 3 + * 3, 1, 2, 3 + * + * Notice: The tablet should not have empty cell + * + */ public class Tablet { - // TBD by Zengz public string device_id{get;} public List measurement_lst{get;} public List data_type_lst{get;} @@ -52,6 +65,7 @@ public byte[] get_binary_timestamps(){ } return res.ToArray(); } + public byte[] get_binary_values(){ List res = new List{}; for(int i = 0; i < col_number; i++){ From 5c0295afafb4d63e2da51738cfd51d530856eee8 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 6 Apr 2021 10:18:40 +0800 Subject: [PATCH 026/214] Change Binarary type to string type --- client/utils/Field.cs | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 637ca6e..22bd2b8 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -51,12 +51,12 @@ public double double_val{ } } // why we need to keep binary values here - private byte[] binary_val{ + public string str_val{ get{ - return binary_val; + return str_val; } set{ - binary_val = value; + str_val = value; } } @@ -90,11 +90,7 @@ public void set_value(T value){ double_val = (double)(object)value; break; case TSDataType.TEXT: - var res = new List{}; - var str_val = (string)(object)value; - res.AddRange(BitConverter.GetBytes(str_val.Length)); - res.AddRange(System.Text.Encoding.UTF8.GetBytes(str_val)); - binary_val = res.ToArray(); + str_val = (string)(object)value; break; default: var message = "unsupported data type"; @@ -121,7 +117,8 @@ public byte[] get_value_bytes(){ res.AddRange(BitConverter.GetBytes(double_val)); break; case TSDataType.TEXT: - res.AddRange(binary_val); + res.AddRange(BitConverter.GetBytes(str_val.Length)); + res.AddRange(System.Text.Encoding.UTF8.GetBytes(str_val)); break; } return res.ToArray(); @@ -131,7 +128,7 @@ public override string ToString() { switch(data_type){ case TSDataType.TEXT: - return System.Text.Encoding.UTF8.GetString(binary_val); + return str_val; case TSDataType.INT32: return int_val.ToString(); case TSDataType.INT64: From e01a9850b2ddcfbf52009748e341d81d8e41a216 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 7 Apr 2021 08:47:27 +0800 Subject: [PATCH 027/214] add byte buffer --- client/utils/ByteBuffer.cs | 83 +++++++++ client/utils/ColumnRecord.cs | 51 ------ client/utils/Field.cs | 36 +++- client/utils/IoTDBRpcDataSet.cs | 262 ---------------------------- client/utils/RowRecord.cs | 6 +- client/utils/SessionDataSet.cs | 298 +++++++++++++++++++++++--------- client/utils/Tablet.cs | 7 +- 7 files changed, 333 insertions(+), 410 deletions(-) create mode 100644 client/utils/ByteBuffer.cs delete mode 100644 client/utils/ColumnRecord.cs delete mode 100644 client/utils/IoTDBRpcDataSet.cs diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs new file mode 100644 index 0000000..eaa4d1d --- /dev/null +++ b/client/utils/ByteBuffer.cs @@ -0,0 +1,83 @@ +using System; +using System.Linq; +namespace iotdb_client_csharp.client.utils +{ + public class ByteBuffer + { + private byte[] buffer; + private int pos; + private int total_length; + public ByteBuffer(byte[] buffer){ + this.buffer = buffer; + this.pos = 0; + this.total_length = buffer.Length; + } + public bool has_remaining(){ + return pos < total_length; + } + // these for read + public byte get_byte(){ + var byte_val = buffer[pos]; + pos += 1; + return byte_val; + } + public bool get_bool(){ + bool bool_value = BitConverter.ToBoolean(buffer, pos); + pos += 1; + return bool_value; + } + public int get_int(){ + int int_value = BitConverter.ToInt32(buffer, pos); + pos += 4; + return int_value; + } + public long get_long(){ + long long_value = BitConverter.ToInt64(buffer, pos); + pos += 8; + return long_value; + } + public float get_float(){ + float float_value = BitConverter.ToSingle(buffer, pos); + pos += 4; + return float_value; + } + public double get_double(){ + double double_value = BitConverter.ToDouble(buffer, pos); + pos += 8; + return double_value; + } + public string get_str(){ + int length = BitConverter.ToInt32(buffer, pos); + pos += 1; + string str_value = System.Text.Encoding.UTF8.GetString(buffer, pos, length); + return str_value; + } + // these for write + public void add_bool(bool value){ + buffer.Concat(BitConverter.GetBytes(value)); + total_length = buffer.Length; + } + public void add_int(int value){ + buffer.Concat(BitConverter.GetBytes(value)); + total_length = buffer.Length; + } + public void add_long(long value){ + buffer.Concat(BitConverter.GetBytes(value)); + total_length = buffer.Length; + } + public void add_float(float value){ + buffer.Concat(BitConverter.GetBytes(value)); + total_length = buffer.Length; + } + public void add_double(double value){ + buffer.Concat(BitConverter.GetBytes(value)); + total_length = buffer.Length; + } + public void add_str(string value){ + buffer.Concat(BitConverter.GetBytes(value.Length)); + buffer.Concat(System.Text.Encoding.UTF8.GetBytes(value)); + } + + } + +} \ No newline at end of file diff --git a/client/utils/ColumnRecord.cs b/client/utils/ColumnRecord.cs deleted file mode 100644 index 73beb12..0000000 --- a/client/utils/ColumnRecord.cs +++ /dev/null @@ -1,51 +0,0 @@ -using System.Collections.Generic; -using iotdb_client_csharp.client; -using System; -namespace iotdb_client_csharp.client.utils -{ - public class ColumnRecord - { - public TSDataType data_type; - List values; - - public ColumnRecord(TSDataType data_type, List values){ - this.data_type = data_type; - this.values = values; - } - public byte[] get_value_bytes(){ - List res = new List{}; - foreach(var value in values){ - switch(data_type){ - case TSDataType.BOOLEAN: - bool bool_val = (bool)(object)value; - res.AddRange(BitConverter.GetBytes(bool_val)); - break; - case TSDataType.FLOAT: - float float_val = (float)(object)value; - res.AddRange(BitConverter.GetBytes(float_val)); - break; - case TSDataType.DOUBLE: - double double_val = (double)(object)value; - res.AddRange(BitConverter.GetBytes(double_val)); - break; - case TSDataType.INT32: - int int_val = (int)(object)value; - res.AddRange(BitConverter.GetBytes(int_val)); - break; - case TSDataType.INT64: - long long_val = (long)(object)value; - res.AddRange(BitConverter.GetBytes(long_val)); - break; - case TSDataType.TEXT: - string str_val = (string)(object)(value); - res.AddRange(BitConverter.GetBytes(str_val.Length)); - res.AddRange(System.Text.Encoding.UTF8.GetBytes(str_val)); - break; - } - } - return res.ToArray(); - - } - - } -} \ No newline at end of file diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 22bd2b8..bcf201f 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -61,19 +61,19 @@ public string str_val{ } - private TSDataType data_type{get;set;} + private TSDataType type{get;set;} public Field(TSDataType data_type){ - this.data_type = data_type; + this.type = data_type; } public void valid_data_type(){ - if(data_type == TSDataType.NONE){ + if(type == TSDataType.NONE){ throw new Exception("CanNot Set A None Type"); } } - public void set_value(T value){ - switch(data_type){ + public void set(T value){ + switch(type){ case TSDataType.BOOLEAN: bool_val = (bool)(object)value; break; @@ -98,13 +98,33 @@ public void set_value(T value){ break; } } - public byte[] get_value_bytes(){ + public T get(){ + switch(type){ + case TSDataType.BOOLEAN: + return (T)(object)bool_val; + case TSDataType.INT64: + return (T)(object)long_val; + case TSDataType.FLOAT: + return (T)(object)float_val; + case TSDataType.INT32: + return (T)(object)int_val; + case TSDataType.DOUBLE: + return (T)(object)double_val; + case TSDataType.TEXT: + return (T)(object)str_val; + default: + return (T)(object)null; + } + } + public byte[] get_bytes(){ List res = new List{}; - switch(data_type){ + res.AddRange(BitConverter.GetBytes((int)type)); + switch(type){ case TSDataType.BOOLEAN: res.AddRange(BitConverter.GetBytes(bool_val)); break; case TSDataType.INT32: + res.AddRange(BitConverter.GetBytes(int_val)); break; case TSDataType.INT64: @@ -126,7 +146,7 @@ public byte[] get_value_bytes(){ public override string ToString() { - switch(data_type){ + switch(type){ case TSDataType.TEXT: return str_val; case TSDataType.INT32: diff --git a/client/utils/IoTDBRpcDataSet.cs b/client/utils/IoTDBRpcDataSet.cs deleted file mode 100644 index 51f8878..0000000 --- a/client/utils/IoTDBRpcDataSet.cs +++ /dev/null @@ -1,262 +0,0 @@ -using iotdb_client_csharp.client; -using System; -using System.Collections.Generic; -using Thrift; -namespace iotdb_client_csharp.client.utils -{ - public class IoTDBRpcDataSet - { - public string TIMESTAMP_STR{ - get{return "Time";} - } - public int START_INDEX{ - get{return 2;} - } - public int FLAG{ - get{return 0x80;} - } - private long session_id, query_id, default_timeout; - private TSIService.Client client; - private int fetch_size, column_size, rows_index; - private List column_name_lst; - private List column_type_lst, column_type_deduplicated_lst; - private Dictionary column_name_index, data_type_map; - private bool ignore_timestamp, is_closed, empty_resultset, has_cached_record; - - private TSQueryDataSet query_dataset; - private string sql; - private byte[] time_bytes; - private List value; - private List current_bitmap; - - - public IoTDBRpcDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, bool ignore_timestamp, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_dataset, int fetch_size){ - this.session_id = session_id; - this.sql = sql; - this.ignore_timestamp = ignore_timestamp; - this.client = client; - this.fetch_size = fetch_size; - this.column_size = column_name_lst.Count; - this.default_timeout = 1000; - this.column_name_lst = new List{}; - this.column_type_lst = new List{}; - this.column_name_index = new Dictionary{}; - this.column_type_deduplicated_lst = new List{}; - if(!ignore_timestamp){ - this.column_name_lst.Add(this.TIMESTAMP_STR); - this.column_type_lst.Add(TSDataType.INT64); - this.column_name_index.Add(this.TIMESTAMP_STR, 1); - } - if(column_name_index.Count > 0){ - // init - for(int i=0; i < column_name_index.Count; i++){ - column_type_deduplicated_lst.Add(TSDataType.NONE); - } - // init data type map - for(int i = 0; i < column_name_lst.Count; i++){ - var name = column_name_lst[i]; - this.column_name_lst.Add(name); - this.column_type_lst.Add((TSDataType)Enum.Parse(typeof(TSDataType), name)); - if(!this.column_name_index.ContainsKey(name)){ - var index = column_name_index[name]; - this.column_name_index[name] = index + START_INDEX; - this.column_type_deduplicated_lst[i] = (TSDataType)Enum.Parse(typeof(TSDataType), name); - } - } - }else{ - var index = START_INDEX; - for(int i=0; i < column_name_lst.Count; i++){ - var name = column_name_lst[i]; - this.column_name_lst.Add(name); - this.column_type_lst.Add((TSDataType)Enum.Parse(typeof(TSDataType), name)); - if(!this.column_name_index.ContainsKey(name)){ - this.column_name_index[name] = index; - index += 1; - this.column_type_deduplicated_lst[index] = (TSDataType)Enum.Parse(typeof(TSDataType), name); - - } - } - } - time_bytes = new byte[]{}; - for(int i=0; i< column_type_deduplicated_lst.Count; i++){ - current_bitmap.Add((byte)0); - value.Add(new byte[]{}); - } - this.query_dataset = query_dataset; - this.is_closed = false; - this.has_cached_record = false; - this.empty_resultset = false; - this.rows_index = 0; - } - public void close(){ - if(is_closed){ - return; - } - if(client != null){ - var req = new TSCloseOperationReq(session_id); - req.QueryId = query_id; - var task = client.closeOperationAsync(req); - task.Wait(); - var status = task.Result; - try{ - var message = string.Format("close session {0}, message: {1}", session_id, status.Message); - Console.WriteLine(message); - } - catch(TException e){ - var message = string.Format("close session {0} failed because:{1} ", session_id, e); - Console.WriteLine(message); - throw e; - } - is_closed = true; - client = null; - } - } - public bool next(){ - if(has_cached_result()){ - construct_one_row(); - return true; - }else if(this.empty_resultset){ - return false; - }else if(fetch_results()){ - construct_one_row(); - return true; - } - return false; - } - private bool has_cached_result(){ - return (query_dataset != null) && (query_dataset.Time.Length > 0); - } - private bool fetch_results(){ - rows_index = 0; - var req = new TSFetchResultsReq(session_id, sql, fetch_size, query_id, true); - req.Timeout = default_timeout; - try{ - var task = client.fetchResultsAsync(req); - task.Wait(); - var resp = task.Result; - if(!resp.HasResultSet){ - empty_resultset = true; - }else{ - this.query_dataset = resp.QueryDataSet; - } - return resp.HasResultSet; - } - catch(TException e){ - var message = string.Format("Cannot fetch result from server, because of network connection:{0}", e); - Console.WriteLine(message); - } - return false; - } - private void construct_one_row(){ - time_bytes = query_dataset.Time[0..8]; - query_dataset.Time = query_dataset.Time[8..]; - for(int index = 0; index < query_dataset.BitmapList.Count; index++){ - var bitmap_buffer = query_dataset.BitmapList[index]; - if(rows_index % 8 == 0){ - current_bitmap[index] = bitmap_buffer[0]; - query_dataset.BitmapList[index] = bitmap_buffer[1..]; - } - if(!is_null(index, rows_index)){ - var value_buffer = query_dataset.ValueList[index]; - var data_type = column_type_deduplicated_lst[index]; - switch(data_type){ - case TSDataType.BOOLEAN: - value[index] = value_buffer[..1]; - query_dataset.ValueList[index] = value_buffer[1..]; - break; - case TSDataType.INT32: - value[index] = value_buffer[..4]; - query_dataset.ValueList[index] = value_buffer[4..]; - break; - case TSDataType.INT64: - value[index] = value_buffer[..8]; - query_dataset.ValueList[index] = value_buffer[8..]; - break; - case TSDataType.TEXT: - var length = (Int32)BitConverter.ToUInt32(value_buffer[..4]); - value[index] = value_buffer[4..(4+length)]; - query_dataset.ValueList[index] = value_buffer[(4+length)..]; - break; - default: - Console.WriteLine(string.Format("unsupported data type {0}", data_type)); - break; - } - } - } - rows_index += 1; - has_cached_record = true; - - } - public bool is_null(int index, int row_num){ - var bitmap = current_bitmap[index]; - var shift = row_num % 8; - return ((FLAG >> shift & bitmap) & 0xff ) == 0; - } - public bool is_null_by_index(int column_index){ - var name = find_column_name_by_index(column_index); - var index = column_name_index[name] - START_INDEX; - if(index < 0){ - return true; - } - return is_null(index, rows_index-1); - } - public bool is_null_by_name(string column_name){ - var index = column_name_index[column_name] - START_INDEX; - if(index < 0){ - return true; - } - return is_null(index, rows_index-1); - } - - public string find_column_name_by_index(int column_index){ - if(column_index <= 0){ - throw new Exception("Column index should start from 1"); - } - if(column_index > column_name_lst.Count){ - throw new Exception(string.Format("column index {0} out of range {0}", column_index, column_name_lst.Count)); - } - return column_name_lst[column_index -1]; - } - - public int get_fetch_size(){ - return fetch_size; - } - public int set_fetch_size(int fetch_size){ - this.fetch_size = fetch_size; - return fetch_size; - } - public List get_column_names(){ - return column_name_lst; - } - public List get_column_types(){ - return column_type_lst; - } - public int get_column_size(){ - return column_size; - } - public bool get_ignore_timestamp(){ - return ignore_timestamp; - } - public Dictionary get_column_ordinal_dict(){ - return column_name_index; - } - public List get_column_type_deduplicated_list(){ - return column_type_deduplicated_lst; - } - public List get_values(){ - return value; - } - public byte[] get_time_bytes(){ - return time_bytes; - } - public bool get_has_cached_record(){ - return has_cached_record; - } - public void set_has_cached_record(bool value){ - has_cached_record = value; - } - - - - } -} \ No newline at end of file diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index 5c45e2a..e40efcc 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -6,9 +6,11 @@ public class RowRecord { private long timestamp{get;set;} private List field_lst{get;set;} - public RowRecord(long timestamp, List field_lst){ + private List measurements{get;set;} + public RowRecord(long timestamp, List field_lst, List measurements){ this.timestamp = timestamp; this.field_lst = field_lst; + this.measurements = measurements; } public void add_filed(Field field){ field_lst.Add(field); @@ -16,7 +18,7 @@ public void add_filed(Field field){ public void add_filed(TSDataType data_type, T value){ var filed = new Field(data_type); - filed.set_value(value); + filed.set(value); field_lst.Add(filed); } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 155f6fe..9cf3512 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -1,111 +1,237 @@ using System; using System.Collections.Generic; +using Thrift; namespace iotdb_client_csharp.client.utils { public class SessionDataSet { - private IoTDBRpcDataSet iotdb_rpc_data_set; - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set, bool ignore_timestamp){ - iotdb_rpc_data_set = new IoTDBRpcDataSet(sql, column_name_lst, column_type_lst, column_name_index,ignore_timestamp, query_id, client, session_id, query_data_set, 1024); - } - public int get_fetch_size(){ - return iotdb_rpc_data_set.get_fetch_size(); - } - public int set_fetch_size(int fetch_size){ - return iotdb_rpc_data_set.set_fetch_size(fetch_size); + private long session_id, query_id; + private string sql; + List column_name_lst; + Dictionary column_name_index_map; + Dictionary duplicate_location; + List deduplicated_column_type_lst; + TSQueryDataSet query_dataset; + byte[] current_bitmap; + int column_size; + List value_buffer_lst, bitmap_buffer_lst; + ByteBuffer time_buffer; + TSIService.Client client; + + private string TIMESTAMP_STR{ + get{return "Time";} } - public List get_column_names(){ - return iotdb_rpc_data_set.get_column_names(); + private int START_INDEX{ + get{return 2;} } - public List get_column_types(){ - return iotdb_rpc_data_set.get_column_types(); + private int FLAG{ + get{return 0x80;} } - public bool has_next(){ - return iotdb_rpc_data_set.next(); + private int default_timeout{ + get{return 10000;} } - public void close_operation_handle(){ - iotdb_rpc_data_set.close(); + public int fetch_size{get;set;} + private int row_index; + + private bool has_catched_result, empty_result; + private RowRecord cached_row_record; + + + + public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set){ + this.sql = sql; + this.query_dataset = query_data_set; + this.query_id = query_id; + this.current_bitmap = new byte[column_name_lst.Count]; + this.column_size = column_name_lst.Count; + this.column_name_lst = column_name_lst; + this.column_size = column_name_lst.Count; + this.time_buffer = new ByteBuffer(query_data_set.Time); + this.client = client; + + // some internal variable + has_catched_result = false; + row_index = 0; + + for(int index = 0; index < column_name_lst.Count; index++){ + var column_name = column_name_lst[index]; + if(this.column_name_index_map.ContainsKey(column_name)){ + this.duplicate_location[index] = this.column_name_index_map[column_name]; + }else{ + this.column_name_index_map[column_name] = index; + this.deduplicated_column_type_lst.Add(column_type_lst[index]); + } + this.value_buffer_lst.Add(new ByteBuffer(query_data_set.ValueList[index])); + this.bitmap_buffer_lst.Add(new ByteBuffer(query_data_set.BitmapList[index])); + } + + } - private bool unpack_bool(byte[] value_byes){ - return false; + + public List get_column_names(){ + return this.column_name_lst; } - private int unpack_int(byte[] value_byes){ - return 0; + public bool has_next(){ + if(has_catched_result){ + return true; + } + // we have consumed all current data, fetch some more + if(!this.time_buffer.has_remaining()){ + if(!fetch_results()){ + return false; + } + } + construct_one_row(); + has_catched_result = true; + return true; } - private long unpack_long(byte[] value_bytes){ - return 0; + public RowRecord next(){ + if(!has_catched_result){ + if(!has_next()){ + return null; + } + } + has_catched_result = false; + return cached_row_record; } - private float unpack_float(byte[] value_bytes){ - return 0; + private TSDataType get_data_type_from_str(string str){ + switch(str){ + case "BOOLEAN": + return TSDataType.BOOLEAN; + case "INT32": + return TSDataType.INT32; + case "INT64": + return TSDataType.INT64; + case "FLOAT": + return TSDataType.FLOAT; + case "DOUBLE": + return TSDataType.DOUBLE; + case "TEXT": + return TSDataType.TEXT; + case "NULLTYPE": + return TSDataType.NONE; + default: + return TSDataType.TEXT; + } } + public void construct_one_row(){ + List field_lst = new List{}; + int loc = 0; + for(int i = 0; i < this.column_size; i++){ + if(duplicate_location.ContainsKey(i)){ + var field = field_lst[duplicate_location[i]]; + field_lst.Add(field); + }else{ + ByteBuffer column_value_buffer = value_buffer_lst[loc]; + ByteBuffer column_bitmap_buffer = bitmap_buffer_lst[loc]; + if(row_index % 8 == 0){ + current_bitmap[loc] = column_bitmap_buffer.get_byte(); + } + if(!is_null(loc, row_index)){ + TSDataType column_data_type = get_data_type_from_str(deduplicated_column_type_lst[loc]); + var local_field = new Field(column_data_type); + switch(column_data_type){ + case TSDataType.BOOLEAN: + var bool_val = column_value_buffer.get_bool(); + local_field.set(local_field); + break; + case TSDataType.INT32: + var int_val = column_value_buffer.get_int(); + local_field.set(int_val); + break; + case TSDataType.INT64: + var long_val = column_value_buffer.get_long(); + local_field.set(long_val); + break; + case TSDataType.FLOAT: + float float_val = column_value_buffer.get_float(); + local_field.set(float_val); + break; + case TSDataType.DOUBLE: + double double_val = column_value_buffer.get_double(); + local_field.set(double_val); + break; + case TSDataType.TEXT: + string str_val = column_value_buffer.get_str(); + local_field.set(str_val); + break; + default: + string err_msg = string.Format("value format not supported"); + Console.WriteLine(err_msg); + throw new TException(err_msg, null); + } + field_lst.Add(local_field); - private double unpack_double(byte[] value_bytes){ - return 0; - } - public RowRecord next(){ - if(!(iotdb_rpc_data_set.get_has_cached_record() || has_next())){ - return null; + } + else{ + var local_field = new Field(TSDataType.NONE); + field_lst.Add(local_field); + } + loc += 1; + } } - iotdb_rpc_data_set.set_has_cached_record(false); - return construct_row_record_from_value_array(); + long timestamp = time_buffer.get_long(); + row_index += 1; + this.cached_row_record = new RowRecord(timestamp, field_lst); } + private bool is_null(int loc, int row_index){ + byte bitmap = current_bitmap[loc]; + int shift = row_index % 8; + return ((FLAG >> shift) & bitmap) == 0; - public RowRecord construct_row_record_from_value_array(){ - var out_field_lst = new List{}; - for(int i = 0; i < iotdb_rpc_data_set.get_column_size(); i++){ - var index = i + 1; - var dataset_column_index = i + iotdb_rpc_data_set.START_INDEX; - if(iotdb_rpc_data_set.get_ignore_timestamp()){ - index -= 1; - dataset_column_index -= 1; + } + private bool fetch_results(){ + row_index = 0; + var req = new TSFetchResultsReq(session_id, sql, fetch_size, query_id, true); + req.Timeout = default_timeout; + try{ + var task = client.fetchResultsAsync(req); + task.Wait(); + var resp = task.Result; + //TODO we should check response status + if(resp.Status.Code != 200){ + throw new TException("fetch result failed", null); } - Field field; - var column_name = iotdb_rpc_data_set.get_column_names()[index]; - var location = iotdb_rpc_data_set.get_column_ordinal_dict()[column_name] - iotdb_rpc_data_set.START_INDEX; - if(!iotdb_rpc_data_set.is_null_by_index(dataset_column_index)){ - var value_bytes = iotdb_rpc_data_set.get_values()[location]; - var data_type = iotdb_rpc_data_set.get_column_type_deduplicated_list()[location]; - field = new Field(data_type); - - switch(data_type){ - case TSDataType.BOOLEAN: - var bool_value = unpack_bool(value_bytes); - field.set_value(bool_value); - break; - case TSDataType.INT32: - var int_value = unpack_int(value_bytes); - field.set_value(int_value); - break; - case TSDataType.INT64: - var long_value = unpack_long(value_bytes); - field.set_value(long_value); - break; - case TSDataType.TEXT: - var bytes_value = value_bytes; - field.set_value(bytes_value); - break; - case TSDataType.FLOAT: - float float_value = unpack_float(value_bytes); - field.set_value(float_value); - break; - case TSDataType.DOUBLE: - double double_value = unpack_double(value_bytes); - field.set_value(double_value); - break; - default: - var message = "unsupported data type"; - Console.WriteLine(message); - break; + if(resp.HasResultSet){ + this.query_dataset = resp.QueryDataSet; + // reset buffer + this.time_buffer = new ByteBuffer(resp.QueryDataSet.Time); + this.value_buffer_lst = new List{}; + this.bitmap_buffer_lst = new List{}; + for(int index = 0; index < query_dataset.ValueList.Count; index++){ + this.value_buffer_lst.Add(new ByteBuffer(query_dataset.ValueList[index])); + this.bitmap_buffer_lst.Add(new ByteBuffer(query_dataset.BitmapList[index])); } - - }else{ - field = new Field(TSDataType.NONE); + // reset row index + row_index = 0; } - out_field_lst.Add(field); + return resp.HasResultSet; + } + catch(TException e){ + var message = string.Format("Cannot fetch result from server, because of network connection:{0}", e); + Console.WriteLine(message); + throw e; } - long timestamp = unpack_long(iotdb_rpc_data_set.get_time_bytes()); - return new RowRecord(timestamp, out_field_lst); } - + public void close_operation_handle(){ + var req = new TSCloseOperationReq(session_id); + req.QueryId = query_id; + try{ + var task = client.closeOperationAsync(req); + task.Wait(); + var status = task.Result; + var message = string.Format("close session {0}, message: {1}", session_id, status.Message); + Console.WriteLine(message); + } + catch(TException e){ + var message = string.Format("close session {0} failed because:{1} ", session_id, e); + Console.WriteLine(message); + throw e; + } + + + } } -} \ No newline at end of file +} + + \ No newline at end of file diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 6565924..76a3f9b 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -30,7 +30,12 @@ public class Tablet public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ if(timestamp_lst.Count != value_lst.Count){ - var err_msg = String.Format("Input error! len(timestamps) does not equal to len(values)!"); + var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); + Console.WriteLine(err_msg); + throw new Exception("input length not matched"); + } + if(measurement_lst.Count != data_type_lst.Count){ + var err_msg = string.Format("Input Error, len(measurement_lst) does not equal to len(data_type_lst)"); Console.WriteLine(err_msg); throw new Exception("input length not matched"); } From e87c993b023726790933d4830afb95858be13867 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 7 Apr 2021 08:55:05 +0800 Subject: [PATCH 028/214] rewrite some code with bytebuffer --- client/utils/ByteBuffer.cs | 3 +++ client/utils/Tablet.cs | 23 +++++++++++------------ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs index eaa4d1d..a5044a3 100644 --- a/client/utils/ByteBuffer.cs +++ b/client/utils/ByteBuffer.cs @@ -52,6 +52,9 @@ public string get_str(){ string str_value = System.Text.Encoding.UTF8.GetString(buffer, pos, length); return str_value; } + public byte[] get_buffer(){ + return buffer; + } // these for write public void add_bool(bool value){ buffer.Concat(BitConverter.GetBytes(value)); diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 76a3f9b..bd29b37 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -64,46 +64,45 @@ private bool check_timestamp_lst_sorted(){ return true ; } public byte[] get_binary_timestamps(){ - List res = new List{}; + ByteBuffer buffer = new ByteBuffer(new byte[]{}); foreach(var timestamp in timestamp_lst){ - res.AddRange(BitConverter.GetBytes(timestamp)); + buffer.add_long(timestamp); } - return res.ToArray(); + return buffer.get_buffer(); } public byte[] get_binary_values(){ - List res = new List{}; + ByteBuffer buffer = new ByteBuffer(new byte[]{}); for(int i = 0; i < col_number; i++){ switch(data_type_lst[i]){ case TSDataType.BOOLEAN: for(int j=0; j< row_number; j++){ - res.AddRange(BitConverter.GetBytes(value_lst[j][i] == "True")); + buffer.add_bool(value_lst[j][i] == "true"); } break; case TSDataType.INT32: for(int j=0; j Date: Wed, 7 Apr 2021 08:58:41 +0800 Subject: [PATCH 029/214] rewrite some code with bytebuffer --- client/utils/Field.cs | 20 +++++++++----------- client/utils/RowRecord.cs | 4 +--- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/client/utils/Field.cs b/client/utils/Field.cs index bcf201f..b1dfae5 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -117,31 +117,29 @@ public T get(){ } } public byte[] get_bytes(){ - List res = new List{}; - res.AddRange(BitConverter.GetBytes((int)type)); + ByteBuffer buffer = new ByteBuffer(new byte[]{}); + buffer.add_int((int)type); switch(type){ case TSDataType.BOOLEAN: - res.AddRange(BitConverter.GetBytes(bool_val)); + buffer.add_bool(bool_val); break; case TSDataType.INT32: - - res.AddRange(BitConverter.GetBytes(int_val)); + buffer.add_int(int_val); break; case TSDataType.INT64: - res.AddRange(BitConverter.GetBytes(long_val)); + buffer.add_long(long_val); break; case TSDataType.FLOAT: - res.AddRange(BitConverter.GetBytes(float_val)); + buffer.add_float(float_val); break; case TSDataType.DOUBLE: - res.AddRange(BitConverter.GetBytes(double_val)); + buffer.add_double(double_val); break; case TSDataType.TEXT: - res.AddRange(BitConverter.GetBytes(str_val.Length)); - res.AddRange(System.Text.Encoding.UTF8.GetBytes(str_val)); + buffer.add_str(str_val); break; } - return res.ToArray(); + return buffer.get_buffer(); } public override string ToString() diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index e40efcc..d1ad52a 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -6,11 +6,9 @@ public class RowRecord { private long timestamp{get;set;} private List field_lst{get;set;} - private List measurements{get;set;} - public RowRecord(long timestamp, List field_lst, List measurements){ + public RowRecord(long timestamp, List field_lst){ this.timestamp = timestamp; this.field_lst = field_lst; - this.measurements = measurements; } public void add_filed(Field field){ field_lst.Add(field); From a3ffed8cf46e590e755fe78a6b36fbc4a3b478fc Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 7 Apr 2021 09:01:04 +0800 Subject: [PATCH 030/214] throw exception when get bytes from a nonetype filed --- client/utils/Field.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/client/utils/Field.cs b/client/utils/Field.cs index b1dfae5..5894c27 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -138,6 +138,10 @@ public byte[] get_bytes(){ case TSDataType.TEXT: buffer.add_str(str_val); break; + case TSDataType.NONE: + var err_msg = string.Format("NONE type does not support get bytes"); + Console.WriteLine(err_msg); + throw new Exception(err_msg); } return buffer.get_buffer(); } From aca7dff16abab5598f07617ba11202f012139b7b Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 7 Apr 2021 09:10:11 +0800 Subject: [PATCH 031/214] fix buf --- client/utils/ByteBuffer.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs index a5044a3..156f190 100644 --- a/client/utils/ByteBuffer.cs +++ b/client/utils/ByteBuffer.cs @@ -50,6 +50,7 @@ public string get_str(){ int length = BitConverter.ToInt32(buffer, pos); pos += 1; string str_value = System.Text.Encoding.UTF8.GetString(buffer, pos, length); + pos += length; return str_value; } public byte[] get_buffer(){ @@ -79,6 +80,7 @@ public void add_double(double value){ public void add_str(string value){ buffer.Concat(BitConverter.GetBytes(value.Length)); buffer.Concat(System.Text.Encoding.UTF8.GetBytes(value)); + total_length = buffer.Length; } } From f217b2f5a5929ebfaa32ad43391ec15e9f2fe137 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Wed, 7 Apr 2021 16:52:57 +0800 Subject: [PATCH 032/214] add two interfaces and change some interfaces --- client/Session.cs | 177 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 140 insertions(+), 37 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 632c10b..e850375 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -160,39 +160,68 @@ public void close(){ } public int set_storage_group(string group_name){ + TSStatus status; try{ var task = client.setStorageGroupAsync(sessionId, group_name); task.Wait(); - var status = task.Result; - return verify_success(status); + status = task.Result; } catch(TException e){ - var message = String.Format("set storage group {0} failed, beacuse {1}", group_name, e); - Console.WriteLine(message); + var err_msg = String.Format("set storage group {0} failed, beacuse {1}", group_name, e); + Console.WriteLine(err_msg); throw e; } + var message = String.Format("set storage group {0} message: {1}", group_name, status.Message); + Console.WriteLine(message); + return verify_success(status); } public int delete_storage_group(string group_name){ - var task = client.deleteStorageGroupsAsync(sessionId, new List{group_name}); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.deleteStorageGroupsAsync(sessionId, new List{group_name}); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("delete storage group {0} failed, beacuse {1}", group_name, e); + Console.WriteLine(err_msg); + throw e; + } + var message = String.Format("delete storage group {0} message: {1}", group_name, status.Message); + Console.WriteLine(message); return verify_success(status); } public int delete_storage_groups(List group_names){ - var task = client.deleteStorageGroupsAsync(sessionId, group_names); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.deleteStorageGroupsAsync(sessionId, group_names); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("delete storage group(s) {0} failed, beacuse {1}", group_names, e); + Console.WriteLine(err_msg); + throw e; + } var message = String.Format("delete storage group(s) {0} message: {1}", group_names, status.Message); Console.WriteLine(message); return verify_success(status); } public int create_time_series(string ts_path, TSDataType data_type, TSEncoding encoding, Compressor compressor){ + TSStatus status; var req = new TSCreateTimeseriesReq(sessionId, ts_path, (int)data_type, (int)encoding, (int)compressor); - var task = client.createTimeseriesAsync(req); - task.Wait(); - var status = task.Result; + try{ + var task = client.createTimeseriesAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("create time series {0} failed, beacuse {1}", ts_path, e); + Console.WriteLine(err_msg); + throw e; + } var message = String.Format("creating time series {0} message: {1}", ts_path, status.Message); Console.WriteLine(message); return verify_success(status); @@ -202,25 +231,49 @@ public int create_multi_time_series(List ts_path_lst, List d var data_types = data_type_lst.ConvertAll(x => (int)x); var encodings = encoding_lst.ConvertAll(x => (int)x); var compressors = compressor_lst.ConvertAll(x => (int)x); + TSStatus status; var req = new TSCreateMultiTimeseriesReq(sessionId, ts_path_lst, data_types, encodings, compressors); - var task = client.createMultiTimeseriesAsync(req); - task.Wait(); - var status = task.Result; + try{ + var task = client.createMultiTimeseriesAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("create multiple time series {0} failed, beacuse {1}", ts_path_lst, e); + Console.WriteLine(err_msg); + throw e; + } var message = String.Format("creating multiple time series {0} message: {1}", ts_path_lst, status.Message); Console.WriteLine(message); return verify_success(status); } public int delete_time_series(List path_list){ - var task = client.deleteTimeseriesAsync(sessionId, path_list); - task.Wait(); - var status = task.Result; + TSStatus status; + try{ + var task = client.deleteTimeseriesAsync(sessionId, path_list); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("delete time series {0} failed, beacuse {1}", path_list, e); + Console.WriteLine(err_msg); + throw e; + } var message = String.Format("deleting multiple time series {0} message: {1}", path_list, status.Message); Console.WriteLine(message); return verify_success(status); } public bool check_time_series_exists(string ts_path){ // TBD by dalong - return false; + try{ + string sql = "SHOW TIMESERIES " + ts_path; + return execute_query_statement(sql).has_next(); + } + catch(TException e){ + var err_msg = String.Format("could not check if certain time series exists because {0}", e); + Console.WriteLine(err_msg); + throw e; + } } public int delete_data(List ts_path_lst, long start_time, long end_time){ var req = new TSDeleteDataReq(sessionId, ts_path_lst, start_time, end_time); @@ -555,6 +608,16 @@ private int verify_success(TSStatus status){ Console.WriteLine(message); return -1; } + + // 这个函数可能会用到,C++里面验证成功的时候不是返回值,而是throw一个exception + private void verify_success_(TSStatus status){ + if(status.Code == SUCCESS_CODE){ + return; + } + var message = String.Format("error status is {0}, {1}", status.Code, status.Message); + Console.WriteLine(message); + throw new TException(); + } public void set_time_zone(string zoneId){ var req = new TSSetTimeZoneReq(sessionId, zoneId); @@ -588,37 +651,77 @@ public string get_time_zone(){ } return resp.TimeZone; } + public SessionDataSet execute_query_statement(string sql){ + TSExecuteStatementResp resp; + TSStatus status; + var req = new TSExecuteStatementReq(sessionId, sql, statementId); + try{ + var task = client.executeQueryStatementAsync(req); + task.Wait(); + resp = task.Result; + status = resp.Status; + } + catch(TException e){ + var err_msg = String.Format("could not execute query statement because {0}", e); + Console.WriteLine(err_msg); + throw e; + } + if(verify_success(status) == -1){ + throw new TException(); + } + return new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); + + } + public int execute_non_query_statement(string sql){ + TSExecuteStatementResp resp; + TSStatus status; + var req = new TSExecuteStatementReq(sessionId, sql, statementId); + try{ + var task = client.executeUpdateStatementAsync(req); + task.Wait(); + resp = task.Result; + status = resp.Status; + } + catch(TException e){ + var err_msg = String.Format("execution of non-query statement fails because: {0}", e); + Console.WriteLine(err_msg); + throw e; + } + var message = String.Format("execute non-query statement {0} message: {1}", sql, status.Message); + Console.WriteLine(message); + return verify_success(status); + } + + public byte[] value_to_bytes(List data_types, List values){ - //TODO - List res = new List(){}; - for(int i = 0; i < data_types.Count(); i++){ + ByteBuffer buffer = new ByteBuffer(new byte[]{}); + for(int i = 0;i < data_types.Count(); i++){ switch(data_types[i]){ case (int)TSDataType.BOOLEAN: - res.AddRange(BitConverter.GetBytes(Boolean.Parse(values[i]))); - break; - case (int)TSDataType.FLOAT: - res.AddRange(BitConverter.GetBytes(float.Parse(values[i]))); - break; - case (int)TSDataType.DOUBLE: - res.AddRange(BitConverter.GetBytes(double.Parse(values[i]))); + buffer.add_bool(bool.Parse(values[i])); break; case (int)TSDataType.INT32: - res.AddRange(BitConverter.GetBytes(Int32.Parse(values[i]))); + buffer.add_int(int.Parse(values[i])); break; case (int)TSDataType.INT64: - res.AddRange(BitConverter.GetBytes(Int64.Parse(values[i]))); + buffer.add_long(long.Parse(values[i])); + break; + case (int)TSDataType.FLOAT: + buffer.add_float(float.Parse(values[i])); + break; + case (int)TSDataType.DOUBLE: + buffer.add_double(double.Parse(values[i])); break; case (int)TSDataType.TEXT: - var len = values[i].Length; - res.AddRange(BitConverter.GetBytes(len)); - res.AddRange(System.Text.Encoding.UTF8.GetBytes(values[i])); + buffer.add_str(values[i]); break; default: - var err_msg = String.Format("Unsupported data type:{0}",data_types[i].ToString()); + var message = String.Format("Unsupported data type:{0}",data_types[i]); + Console.WriteLine(message); break; } } - return res.ToArray(); + return buffer.get_buffer(); } } } From 7d626939980ca426a4e7c52b62c9d19868f3a42e Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 7 Apr 2021 21:48:01 +0800 Subject: [PATCH 033/214] add test --- client/Session.cs | 18 +++++++++--------- client/SessionTest.cs | 19 +++++++++++++++++++ 2 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 client/SessionTest.cs diff --git a/client/Session.cs b/client/Session.cs index e850375..f9b1f92 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -521,10 +521,9 @@ public bool check_sorted(List timestamp_lst){ public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(long device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst){ List binary_value_lst = new List(){}; for(int i = 0; i < values_lst.Count(); i++){ - List data_type_values = new List(){}; + List data_type_values = data_types_lst[i]; for(int j = 0;j < data_types_lst[i].Count(); j++){ var data_type_value = (int)data_types_lst[i][j]; - data_type_values.Add(data_type_value); } if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; @@ -693,26 +692,27 @@ public int execute_non_query_statement(string sql){ } - public byte[] value_to_bytes(List data_types, List values){ + public byte[] value_to_bytes(List data_types, List values){ ByteBuffer buffer = new ByteBuffer(new byte[]{}); for(int i = 0;i < data_types.Count(); i++){ + buffer.add_int((int)data_types[i]); switch(data_types[i]){ - case (int)TSDataType.BOOLEAN: + case TSDataType.BOOLEAN: buffer.add_bool(bool.Parse(values[i])); break; - case (int)TSDataType.INT32: + case TSDataType.INT32: buffer.add_int(int.Parse(values[i])); break; - case (int)TSDataType.INT64: + case TSDataType.INT64: buffer.add_long(long.Parse(values[i])); break; - case (int)TSDataType.FLOAT: + case TSDataType.FLOAT: buffer.add_float(float.Parse(values[i])); break; - case (int)TSDataType.DOUBLE: + case TSDataType.DOUBLE: buffer.add_double(double.Parse(values[i])); break; - case (int)TSDataType.TEXT: + case TSDataType.TEXT: buffer.add_str(values[i]); break; default: diff --git a/client/SessionTest.cs b/client/SessionTest.cs new file mode 100644 index 0000000..6dc0895 --- /dev/null +++ b/client/SessionTest.cs @@ -0,0 +1,19 @@ +using System; +namespace iotdb_client_csharp.client +{ + public class SessionTest + { + public void TestOpen(){ + var session = new Session("localhost", 8001); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + System.Console.WriteLine("Test Passed!"); + } + + + public void main(){ + TestOpen(); + } + } + +} \ No newline at end of file From e26481b3fcac503a5d333dbee59b4bd17fb6ee37 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Thu, 8 Apr 2021 10:20:01 +0800 Subject: [PATCH 034/214] Fix the bug of func value_to_bytes --- client/Session.cs | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index f9b1f92..8ced6a3 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -317,7 +317,7 @@ public int insert_str_record(string device_id, List measurements, List measurements, List values, List data_types, long timestamp){ + public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, List data_types, long timestamp){ if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ var err_msg = "length of data types does not equal to length of values!"; throw new TException(err_msg, null); @@ -327,8 +327,7 @@ public TSInsertRecordReq gen_insert_record_req(string device_id, List me } public int insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan - var data_types_in_int = data_types.ConvertAll(x => (int)x); - var req = gen_insert_record_req(device_id, measurements, values, data_types_in_int, timestamp); + var req = gen_insert_record_req(device_id, measurements, values, data_types, timestamp); TSStatus status; try{ var task = client.insertRecordAsync(req); @@ -344,7 +343,7 @@ public int insert_record(string device_id, List measurements, List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ + public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ //TODO if(device_id.Count() != measurements_lst.Count() || timestamp_lst.Count() != data_types_lst.Count() || device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ @@ -369,13 +368,7 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan - List> data_types_lst_in_int = new List>(); - var len = data_types_lst.Count(); - for(int i = 0; i < len; i++){ - var data_types_in_int = data_types_lst[i].ConvertAll(x => (int)x); - data_types_lst_in_int.Add(data_types_in_int); - } - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst, timestamp_lst); TSStatus status; try{ var task = client.insertRecordsAsync(req); @@ -393,8 +386,7 @@ public int insert_records(List device_id, List> measurement } public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan - var data_types_int = data_types.ConvertAll(x => (int)x); - var req = gen_insert_record_req(device_id, measurements, values, data_types_int, timestamp); + var req = gen_insert_record_req(device_id, measurements, values, data_types, timestamp); TSStatus status; try{ var task = client.testInsertRecordAsync(req); @@ -412,13 +404,7 @@ public int test_insert_record(string device_id, List measurements, List< } public int test_insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan - List> data_types_lst_in_int = new List>(); - var len = data_types_lst.Count(); - for(int i = 0; i < len; i++){ - var data_types_in_int = data_types_lst[i].ConvertAll(x => (int)x); - data_types_lst_in_int.Add(data_types_in_int); - } - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst_in_int, timestamp_lst); + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst, timestamp_lst); TSStatus status; try{ var task = client.testInsertRecordsAsync(req); From 85197074979d634ab0abaaee55dc0b583ad23ef6 Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 8 Apr 2021 17:58:52 +0800 Subject: [PATCH 035/214] fix protoco --- client/Session.cs | 6 +++--- client/SessionTest.cs | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 8ced6a3..85180a6 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -40,7 +40,7 @@ public int SUCCESS_CODE{ private bool is_close = true; private TSIService.Client client; - private TSocketTransport transport; + private TFramedTransport transport; private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -82,10 +82,10 @@ public void open(bool enableRPCCompression){ if(!is_close){ return ; } - this.transport = new TSocketTransport(this.host, this.port, null); + this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ - var task = transport.OpenAsync(new CancellationToken()); + var task = transport.OpenAsync(new CancellationToken(false)); task.Wait(); } catch(TTransportException e){ diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 6dc0895..9460b23 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -4,15 +4,15 @@ namespace iotdb_client_csharp.client public class SessionTest { public void TestOpen(){ - var session = new Session("localhost", 8001); + var session = new Session("localhost", 6667); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); System.Console.WriteLine("Test Passed!"); } - - public void main(){ - TestOpen(); + static void Main(){ + var session_test = new SessionTest(); + session_test.TestOpen(); } } From 80687b08341196ad3eefb5116ae8f33ebdaf0f03 Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 8 Apr 2021 19:27:47 +0800 Subject: [PATCH 036/214] add some test interface --- client/SessionTest.cs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 9460b23..6fa1898 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -9,10 +9,35 @@ public void TestOpen(){ System.Diagnostics.Debug.Assert(session.is_open()); System.Console.WriteLine("Test Passed!"); } + public void TestOpenFailuer(){ + // by Luzhan + } + public void TestClose(){ + // by Luzhan + } + public void TestCreateStorageGroup(){ + // by Luzhan + } + public void TestDeleteStorageGroup(){ + // by Luzhan + } + public void TestCreateTimeSeries(){ + // by Luzhan + } + public void TestCreateMultiTimeSeries(){ + // by Luzhan + } + public void TestDeleteTimeSeries(){ + // by Luzhan + } + public void TestDeleteStorageGroups(){ + // by Luzhan + } static void Main(){ var session_test = new SessionTest(); session_test.TestOpen(); + session_test.TestOpenFailuer(); } } From 2ff23426aa3dabe8d783254ede29d998ee3ef70e Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 8 Apr 2021 21:24:27 +0800 Subject: [PATCH 037/214] fix bytebuffer bug --- client/Session.cs | 18 ++++++++++--- client/SessionTest.cs | 55 +++++++++++++++++++++++++++++++++++--- client/utils/ByteBuffer.cs | 38 +++++++++++++++++--------- 3 files changed, 92 insertions(+), 19 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 85180a6..81297f0 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -263,6 +263,9 @@ public int delete_time_series(List path_list){ Console.WriteLine(message); return verify_success(status); } + public int delete_time_series(string ts_path){ + return delete_time_series(new List{ts_path}); + } public bool check_time_series_exists(string ts_path){ // TBD by dalong try{ @@ -299,9 +302,10 @@ public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List< } return new TSInsertStringRecordReq(sessionId, device_id, measurements, values, timestamp); } - public int insert_str_record(string device_id, List measurements, List values, long timestamp){ + public int insert_record(string device_id, List measurements, List values, long timestamp){ // TBD by Luzhan var req = gen_insert_str_record_req(device_id, measurements, values, timestamp); + Console.WriteLine(req); TSStatus status; try{ var task = client.insertStringRecordAsync(req); @@ -589,7 +593,8 @@ private int verify_success(TSStatus status){ if (status.Code == SUCCESS_CODE){ return 0; } - var message = String.Format("error status is {}", status); + + var message = String.Format("error status is {0}", status); Console.WriteLine(message); return -1; } @@ -681,7 +686,7 @@ public int execute_non_query_statement(string sql){ public byte[] value_to_bytes(List data_types, List values){ ByteBuffer buffer = new ByteBuffer(new byte[]{}); for(int i = 0;i < data_types.Count(); i++){ - buffer.add_int((int)data_types[i]); + buffer.add_char((char)data_types[i]); switch(data_types[i]){ case TSDataType.BOOLEAN: buffer.add_bool(bool.Parse(values[i])); @@ -707,7 +712,12 @@ public byte[] value_to_bytes(List data_types, List values){ break; } } - return buffer.get_buffer(); + // Append value into buffer in Big Endian order to comply with IoTDB server + var buf = buffer.get_buffer(); + if(BitConverter.IsLittleEndian){ + buf = buf.Reverse().ToArray(); + } + return buf; } } } diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 6fa1898..23f61e9 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -1,4 +1,7 @@ using System; +using System.Collections.Generic; +using iotdb_client_csharp.client.utils; + namespace iotdb_client_csharp.client { public class SessionTest @@ -7,13 +10,15 @@ public void TestOpen(){ var session = new Session("localhost", 6667); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); - System.Console.WriteLine("Test Passed!"); + System.Console.WriteLine("TestOpen Passed!"); } public void TestOpenFailuer(){ // by Luzhan } public void TestClose(){ + // by Luzhan + } public void TestCreateStorageGroup(){ // by Luzhan @@ -33,11 +38,55 @@ public void TestDeleteTimeSeries(){ public void TestDeleteStorageGroups(){ // by Luzhan } - + public void TestGetTimeZone(){ + var session = new Session("localhost", 6667); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + var time_zone = session.get_time_zone(); + Console.WriteLine("TestGetTimeZone Passed!"); + } + public void TestInsertStrRecord(){ + var session = new Session("localhost", 6667); + int status = 0; + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + session.delete_storage_group("root.test_group"); + status = session.set_storage_group("root.test_group"); + System.Diagnostics.Debug.Assert(status == 0); + session.delete_time_series("root.test_group.test_series"); + status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"s_01", "s_02"}; + var values = new List{"test_record", "test_record"}; + status = session.insert_record("root.test_group.test_device", measures, values, 1); + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestInsertStrRecord Passed!"); + } + public void TestInsertRecord(){ + var session = new Session("localhost", 6667); + int status = 0; + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + session.delete_storage_group("root.test_group"); + status = session.set_storage_group("root.test_group"); + System.Diagnostics.Debug.Assert(status == 0); + session.delete_time_series("root.test_group.test_series"); + status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"s_01"}; + var values = new List{0.ToString()}; + var types = new List{TSDataType.INT32}; + status = session.insert_record("root.test_group.test_device", measures, values, types, 1); + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestInsertRecord Passed!"); + } + static void Main(){ var session_test = new SessionTest(); session_test.TestOpen(); - session_test.TestOpenFailuer(); + session_test.TestGetTimeZone(); + //session_test.TestInsertStrRecord(); + session_test.TestInsertRecord(); } } diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs index 156f190..267be6d 100644 --- a/client/utils/ByteBuffer.cs +++ b/client/utils/ByteBuffer.cs @@ -1,16 +1,19 @@ using System; using System.Linq; +using System.Collections.Generic; namespace iotdb_client_csharp.client.utils { public class ByteBuffer { private byte[] buffer; + private List write_buffer; private int pos; private int total_length; public ByteBuffer(byte[] buffer){ this.buffer = buffer; this.pos = 0; this.total_length = buffer.Length; + this.write_buffer = new List{}; } public bool has_remaining(){ return pos < total_length; @@ -58,30 +61,41 @@ public byte[] get_buffer(){ } // these for write public void add_bool(bool value){ - buffer.Concat(BitConverter.GetBytes(value)); + write_buffer.AddRange(BitConverter.GetBytes(value)); + buffer = write_buffer.ToArray(); total_length = buffer.Length; } - public void add_int(int value){ - buffer.Concat(BitConverter.GetBytes(value)); - total_length = buffer.Length; + public void add_int(Int32 value){ + write_buffer.AddRange(BitConverter.GetBytes(value)); + buffer = write_buffer.ToArray(); + total_length = buffer.Length; } public void add_long(long value){ - buffer.Concat(BitConverter.GetBytes(value)); - total_length = buffer.Length; + write_buffer.AddRange(BitConverter.GetBytes(value)); + buffer = write_buffer.ToArray(); + total_length = buffer.Length; } public void add_float(float value){ - buffer.Concat(BitConverter.GetBytes(value)); - total_length = buffer.Length; + write_buffer.AddRange(BitConverter.GetBytes(value)); + buffer = write_buffer.ToArray(); + total_length = buffer.Length; } public void add_double(double value){ - buffer.Concat(BitConverter.GetBytes(value)); - total_length = buffer.Length; + write_buffer.AddRange(BitConverter.GetBytes(value)); + buffer = write_buffer.ToArray(); + total_length = buffer.Length; } public void add_str(string value){ - buffer.Concat(BitConverter.GetBytes(value.Length)); - buffer.Concat(System.Text.Encoding.UTF8.GetBytes(value)); + write_buffer.AddRange(BitConverter.GetBytes(value.Length)); + write_buffer.AddRange(System.Text.Encoding.UTF8.GetBytes(value)); + buffer = write_buffer.ToArray(); total_length = buffer.Length; } + public void add_char(char value){ + write_buffer.AddRange(BitConverter.GetBytes(value)); + buffer = write_buffer.ToArray(); + total_length = buffer.Length; + } } From c6ca5be92123632c36db4f66679f0a280742de6a Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 8 Apr 2021 21:29:41 +0800 Subject: [PATCH 038/214] add test --- client/SessionTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 23f61e9..79f9ae4 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -85,7 +85,7 @@ static void Main(){ var session_test = new SessionTest(); session_test.TestOpen(); session_test.TestGetTimeZone(); - //session_test.TestInsertStrRecord(); + session_test.TestInsertStrRecord(); session_test.TestInsertRecord(); } } From 2aa1b9a9ed6f524a518347cbb26c49dcf13fa245 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 11:31:12 +0800 Subject: [PATCH 039/214] add sql test --- client/Session.cs | 17 +++--- client/SessionTest.cs | 26 ++++++++- client/utils/ByteBuffer.cs | 78 ++++++++++++++++++++----- client/utils/Field.cs | 103 ++++++++------------------------- client/utils/RowRecord.cs | 6 -- client/utils/SessionDataSet.cs | 18 +++--- 6 files changed, 131 insertions(+), 117 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 81297f0..9e2b1d3 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -51,7 +51,7 @@ public Session(string host, int port){ this.username = "root"; this.password = "root"; this.zoneId = "UTC+08:00"; - this.fetch_size = 10000; + this.fetch_size = 1024; } public Session(string host, int port, string username, string password){ this.host = host; @@ -59,7 +59,7 @@ public Session(string host, int port, string username, string password){ this.password = password; this.username = username; this.zoneId = "UTC+08:00"; - this.fetch_size = 10000; + this.fetch_size = 1024; } public Session(string host, int port, string username, string password, int fetch_size){ this.host = host; @@ -85,7 +85,7 @@ public void open(bool enableRPCCompression){ this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ - var task = transport.OpenAsync(new CancellationToken(false)); + var task = transport.OpenAsync(new CancellationToken()); task.Wait(); } catch(TTransportException e){ @@ -645,6 +645,7 @@ public SessionDataSet execute_query_statement(string sql){ TSExecuteStatementResp resp; TSStatus status; var req = new TSExecuteStatementReq(sessionId, sql, statementId); + req.FetchSize = this.fetch_size; try{ var task = client.executeQueryStatementAsync(req); task.Wait(); @@ -657,7 +658,7 @@ public SessionDataSet execute_query_statement(string sql){ throw e; } if(verify_success(status) == -1){ - throw new TException(); + throw new TException("execute query failed", null); } return new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); @@ -684,6 +685,7 @@ public int execute_non_query_statement(string sql){ public byte[] value_to_bytes(List data_types, List values){ + ByteBuffer buffer = new ByteBuffer(new byte[]{}); for(int i = 0;i < data_types.Count(); i++){ buffer.add_char((char)data_types[i]); @@ -714,9 +716,10 @@ public byte[] value_to_bytes(List data_types, List values){ } // Append value into buffer in Big Endian order to comply with IoTDB server var buf = buffer.get_buffer(); - if(BitConverter.IsLittleEndian){ - buf = buf.Reverse().ToArray(); - } + + //if(BitConverter.IsLittleEndian){ + // buf = buf.Reverse().ToArray(); + //} return buf; } } diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 79f9ae4..21e928c 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -74,12 +74,33 @@ public void TestInsertRecord(){ status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"s_01"}; - var values = new List{0.ToString()}; + var values = new List{12.ToString()}; var types = new List{TSDataType.INT32}; - status = session.insert_record("root.test_group.test_device", measures, values, types, 1); + status = session.insert_record("root.test_group.test_series.test_device", measures, values, types, 1); System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestInsertRecord Passed!"); } + public void TestSqlQuery(){ + var session = new Session("localhost", 6667); + int status = 0; + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + session.delete_storage_group("root.test_group"); + status = session.set_storage_group("root.test_group"); + System.Diagnostics.Debug.Assert(status == 0); + session.delete_time_series("root.test_group.test_series"); + status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var res = session.execute_query_statement("show timeseries root"); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + res = session.execute_query_statement("show devices"); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + + } static void Main(){ var session_test = new SessionTest(); @@ -87,6 +108,7 @@ static void Main(){ session_test.TestGetTimeZone(); session_test.TestInsertStrRecord(); session_test.TestInsertRecord(); + session_test.TestSqlQuery(); } } diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs index 267be6d..77b8fe9 100644 --- a/client/utils/ByteBuffer.cs +++ b/client/utils/ByteBuffer.cs @@ -1,6 +1,7 @@ using System; using System.Linq; using System.Collections.Generic; +using System.Net; namespace iotdb_client_csharp.client.utils { public class ByteBuffer @@ -9,11 +10,13 @@ public class ByteBuffer private List write_buffer; private int pos; private int total_length; - public ByteBuffer(byte[] buffer){ + private bool is_little_endian; + public ByteBuffer(byte[] buffer){ this.buffer = buffer; this.pos = 0; this.total_length = buffer.Length; this.write_buffer = new List{}; + this.is_little_endian = BitConverter.IsLittleEndian; } public bool has_remaining(){ return pos < total_length; @@ -30,29 +33,46 @@ public bool get_bool(){ return bool_value; } public int get_int(){ - int int_value = BitConverter.ToInt32(buffer, pos); + + var int_buff = buffer[pos..(pos+4)]; + if(is_little_endian){ + int_buff = int_buff.Reverse().ToArray(); + } + int int_value = BitConverter.ToInt32(int_buff); pos += 4; return int_value; } public long get_long(){ - long long_value = BitConverter.ToInt64(buffer, pos); + var long_buff = buffer[pos..(pos + 8)]; + if(is_little_endian){ + long_buff = long_buff.Reverse().ToArray(); + } + long long_value = BitConverter.ToInt64(long_buff); pos += 8; return long_value; } public float get_float(){ - float float_value = BitConverter.ToSingle(buffer, pos); + var float_buff = buffer[pos..(pos +4)]; + if(is_little_endian){ + float_buff = float_buff.Reverse().ToArray(); + } + float float_value = BitConverter.ToSingle(float_buff); pos += 4; return float_value; } public double get_double(){ - double double_value = BitConverter.ToDouble(buffer, pos); + var double_buff = buffer[pos..(pos+8)]; + if(is_little_endian){ + double_buff = double_buff.Reverse().ToArray(); + } + double double_value = BitConverter.ToDouble(double_buff); pos += 8; return double_value; } public string get_str(){ - int length = BitConverter.ToInt32(buffer, pos); - pos += 1; - string str_value = System.Text.Encoding.UTF8.GetString(buffer, pos, length); + int length = get_int(); + var str_buff = buffer[pos..(pos+length)]; + string str_value = System.Text.Encoding.UTF8.GetString(str_buff); pos += length; return str_value; } @@ -61,38 +81,66 @@ public byte[] get_buffer(){ } // these for write public void add_bool(bool value){ + var bool_buffer = BitConverter.GetBytes(value); + if(is_little_endian){ + bool_buffer = bool_buffer.Reverse().ToArray(); + } write_buffer.AddRange(BitConverter.GetBytes(value)); buffer = write_buffer.ToArray(); total_length = buffer.Length; } public void add_int(Int32 value){ - write_buffer.AddRange(BitConverter.GetBytes(value)); + var int_buff = BitConverter.GetBytes(value); + if(is_little_endian){ + int_buff = int_buff.Reverse().ToArray(); + } + write_buffer.AddRange(int_buff); buffer = write_buffer.ToArray(); total_length = buffer.Length; } public void add_long(long value){ - write_buffer.AddRange(BitConverter.GetBytes(value)); + var long_buff = BitConverter.GetBytes(value); + if(is_little_endian){ + long_buff = long_buff.Reverse().ToArray(); + } + write_buffer.AddRange(long_buff); buffer = write_buffer.ToArray(); total_length = buffer.Length; } public void add_float(float value){ - write_buffer.AddRange(BitConverter.GetBytes(value)); + var float_buff = BitConverter.GetBytes(value); + if(is_little_endian){ + float_buff = float_buff.Reverse().ToArray(); + } + write_buffer.AddRange(float_buff); buffer = write_buffer.ToArray(); total_length = buffer.Length; } public void add_double(double value){ - write_buffer.AddRange(BitConverter.GetBytes(value)); + var double_buff = BitConverter.GetBytes(value); + if(is_little_endian){ + double_buff = double_buff.Reverse().ToArray(); + } + write_buffer.AddRange(double_buff); buffer = write_buffer.ToArray(); total_length = buffer.Length; } public void add_str(string value){ - write_buffer.AddRange(BitConverter.GetBytes(value.Length)); - write_buffer.AddRange(System.Text.Encoding.UTF8.GetBytes(value)); + add_int(value.Length); + var str_buf = System.Text.Encoding.UTF8.GetBytes(value); + if(is_little_endian){ + str_buf = str_buf.Reverse().ToArray(); + } + write_buffer.AddRange(str_buf); buffer = write_buffer.ToArray(); total_length = buffer.Length; } public void add_char(char value){ - write_buffer.AddRange(BitConverter.GetBytes(value)); + var char_buf = BitConverter.GetBytes(value); + if(is_little_endian){ + char_buf = char_buf.Reverse().ToArray(); + } + write_buffer.AddRange(char_buf); buffer = write_buffer.ToArray(); total_length = buffer.Length; } diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 5894c27..2ad1248 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -5,61 +5,13 @@ namespace iotdb_client_csharp.client.utils public class Field { // TBD By Zengz - public bool bool_val{ - get{ - return bool_val; - } - set{ - valid_data_type(); - bool_val = value; - } - } - public int int_val{ - get{ - return int_val; - } - set{ - valid_data_type(); - int_val = value; - } - } - public long long_val{ - get{ - return long_val; - } - set{ - valid_data_type(); - long_val = value; - } - } - public float float_val{ - get{ - return float_val; - } - set{ - valid_data_type(); - float_val = value; - } - } - public double double_val{ - get{ - return double_val; - } - set{ - valid_data_type(); - double_val = value; - } - } + public bool bool_val; + public int int_val; + public long long_val; + public float float_val; + public double double_val; // why we need to keep binary values here - public string str_val{ - get{ - return str_val; - } - set{ - str_val = value; - } - } - + public string str_val; private TSDataType type{get;set;} @@ -72,31 +24,24 @@ public void valid_data_type(){ } } - public void set(T value){ - switch(type){ - case TSDataType.BOOLEAN: - bool_val = (bool)(object)value; - break; - case TSDataType.INT32: - int_val = (int)(object)value; - break; - case TSDataType.INT64: - long_val = (long)(object)value; - break; - case TSDataType.FLOAT: - float_val= (float)(object)value; - break; - case TSDataType.DOUBLE: - double_val = (double)(object)value; - break; - case TSDataType.TEXT: - str_val = (string)(object)value; - break; - default: - var message = "unsupported data type"; - Console.WriteLine(message); - break; - } + + public void set(string value){ + str_val = value; + } + public void set(int value){ + int_val = value; + } + public void set(double value){ + double_val = value; + } + public void set(long value){ + long_val = value; + } + public void set(float value){ + float_val = value; + } + public void set(bool value){ + bool_val = value; } public T get(){ switch(type){ diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index d1ad52a..dd2cd8f 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -14,12 +14,6 @@ public void add_filed(Field field){ field_lst.Add(field); } - public void add_filed(TSDataType data_type, T value){ - var filed = new Field(data_type); - filed.set(value); - field_lst.Add(filed); - } - public void set_filed(int index, Field filed){ field_lst[index] = filed; } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 9cf3512..9aa413b 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -48,10 +48,16 @@ public SessionDataSet(string sql, List column_name_lst, List col this.column_size = column_name_lst.Count; this.time_buffer = new ByteBuffer(query_data_set.Time); this.client = client; + this.column_name_index_map = new Dictionary{}; + this.deduplicated_column_type_lst = new List{}; + this.duplicate_location = new Dictionary{}; + this.value_buffer_lst = new List{}; + this.bitmap_buffer_lst = new List{}; + // some internal variable - has_catched_result = false; - row_index = 0; + this.has_catched_result = false; + this.row_index = 0; for(int index = 0; index < column_name_lst.Count; index++){ var column_name = column_name_lst[index]; @@ -133,7 +139,7 @@ public void construct_one_row(){ switch(column_data_type){ case TSDataType.BOOLEAN: var bool_val = column_value_buffer.get_bool(); - local_field.set(local_field); + local_field.set(bool_val); break; case TSDataType.INT32: var int_val = column_value_buffer.get_int(); @@ -187,11 +193,7 @@ private bool fetch_results(){ try{ var task = client.fetchResultsAsync(req); task.Wait(); - var resp = task.Result; - //TODO we should check response status - if(resp.Status.Code != 200){ - throw new TException("fetch result failed", null); - } + var resp = task.Result; if(resp.HasResultSet){ this.query_dataset = resp.QueryDataSet; // reset buffer From 5ae160a84e1ea064e07cd752cf92fb6e769e2c8d Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 11:34:41 +0800 Subject: [PATCH 040/214] remove some documents --- client/Session.cs | 5 ----- 1 file changed, 5 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 9e2b1d3..3750c32 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -714,12 +714,7 @@ public byte[] value_to_bytes(List data_types, List values){ break; } } - // Append value into buffer in Big Endian order to comply with IoTDB server var buf = buffer.get_buffer(); - - //if(BitConverter.IsLittleEndian){ - // buf = buf.Reverse().ToArray(); - //} return buf; } } From 21f17bb39cd40d2d97678f199ee8f02f17f60a0b Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Fri, 9 Apr 2021 12:22:54 +0800 Subject: [PATCH 041/214] Add serveral tests --- client/SessionTest.cs | 91 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 85 insertions(+), 6 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 6fa1898..7b15ffc 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -1,43 +1,122 @@ +using System.Collections.Generic; using System; namespace iotdb_client_csharp.client { public class SessionTest { public void TestOpen(){ - var session = new Session("localhost", 6667); + Session session = new Session("localhost", 6667, "root", "root"); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); - System.Console.WriteLine("Test Passed!"); + System.Console.WriteLine("Test open Passed!"); } - public void TestOpenFailuer(){ + public void TestOpenFailure(){ // by Luzhan + // TODO 后续所有的失败测例一起处理吧 + // var session = new Session("localhost", 6667, "root", "root"); + // session.open(false); + // System.Diagnostics.Debug.Assert(!session.is_open()); + // System.Console.WriteLine("Test open failure Passed!"); } public void TestClose(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + session.close(); + System.Diagnostics.Debug.Assert(!session.is_open()); + System.Console.WriteLine("Test close Passed!"); } - public void TestCreateStorageGroup(){ + public void TestSetStorageGroup(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + System.Diagnostics.Debug.Assert(session.set_storage_group("root.sg_test")==0); + System.Console.WriteLine("Test set storage group Passed!"); + session.close(); } public void TestDeleteStorageGroup(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + System.Diagnostics.Debug.Assert(session.delete_storage_group("root.sg_test")==0); + System.Console.WriteLine("Test delete storage group Passed!"); + session.close(); } public void TestCreateTimeSeries(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + session.set_storage_group("root.sg_test"); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_01"), utils.TSDataType.BOOLEAN, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_02"), utils.TSDataType.INT32, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_03"), utils.TSDataType.INT64, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_04"), utils.TSDataType.FLOAT, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_05"), utils.TSDataType.DOUBLE, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_06"), utils.TSDataType.TEXT, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); + System.Console.WriteLine("Test create timeseries Passed!"); + session.close(); } public void TestCreateMultiTimeSeries(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + session.set_storage_group("root.sg_test"); + List ts_path_lst = new List(){"root.sg_test.d_01.s_01", "root.sg_test.d_01.s_02", "root.sg_test.d_01.s_03", "root.sg_test.d_01.s_04", "root.sg_test.d_01.s_05", "root.sg_test.d_01.s_06"}; + List data_type_lst = new List(){utils.TSDataType.BOOLEAN, utils.TSDataType.INT32, utils.TSDataType.INT64, utils.TSDataType.FLOAT, utils.TSDataType.DOUBLE, utils.TSDataType.TEXT}; + List encoding_lst = new List(){utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN}; + List compressor_lst = new List(){utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY}; + System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); + System.Console.WriteLine("Test create multi timeseries Passed!"); + session.delete_time_series(ts_path_lst); + session.delete_storage_group("root.sg_test"); + session.close(); } public void TestDeleteTimeSeries(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + List ts_path_lst = new List(){}; + ts_path_lst.Add("root.sg_test.d_01.s_01"); + ts_path_lst.Add("root.sg_test.d_01.s_02"); + ts_path_lst.Add("root.sg_test.d_01.s_03"); + ts_path_lst.Add("root.sg_test.d_01.s_04"); + ts_path_lst.Add("root.sg_test.d_01.s_05"); + ts_path_lst.Add("root.sg_test.d_01.s_06"); + System.Diagnostics.Debug.Assert(session.delete_time_series(ts_path_lst)==0); + System.Console.WriteLine("Test delete timeseries Passed!"); + session.delete_storage_group("root.sg_test"); + session.close(); } public void TestDeleteStorageGroups(){ // by Luzhan + var session = new Session("localhost", 6667, "root", "root"); + session.open(false); + session.set_storage_group("root.sg_test_01"); + session.set_storage_group("root.sg_test_02"); + session.set_storage_group("root.sg_test_03"); + session.set_storage_group("root.sg_test_04"); + List group_names = new List(){}; + group_names.Add("root.sg_test_01"); + group_names.Add("root.sg_test_02"); + group_names.Add("root.sg_test_03"); + group_names.Add("root.sg_test_04"); + System.Diagnostics.Debug.Assert(session.delete_storage_groups(group_names)==0); + System.Console.WriteLine("Test delete storage groups Passed!"); + session.close(); } static void Main(){ - var session_test = new SessionTest(); + SessionTest session_test = new SessionTest(); session_test.TestOpen(); - session_test.TestOpenFailuer(); + session_test.TestOpenFailure(); + session_test.TestClose(); + session_test.TestSetStorageGroup(); + session_test.TestDeleteStorageGroup(); + session_test.TestCreateTimeSeries(); + session_test.TestDeleteTimeSeries(); + session_test.TestCreateMultiTimeSeries(); + session_test.TestDeleteStorageGroups(); + Console.WriteLine("All tests passed!"); } } From c2b21e82bc35cbbfff6fc8cfc60ff08392691f31 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 13:32:40 +0800 Subject: [PATCH 042/214] fix sessionDataset --- client/SessionTest.cs | 45 ++++++++++++++++++++++++++---- client/utils/Field.cs | 4 +++ client/utils/SessionDataSet.cs | 51 ++++++++++++++++++++++++---------- 3 files changed, 80 insertions(+), 20 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 21e928c..ead1917 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -71,14 +71,30 @@ public void TestInsertRecord(){ status = session.set_storage_group("root.test_group"); System.Diagnostics.Debug.Assert(status == 0); session.delete_time_series("root.test_group.test_series"); - status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + session.delete_time_series("root.test_group.test_device.test_series"); + status = session.create_time_series("root.test_group.test_device.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"s_01"}; var values = new List{12.ToString()}; var types = new List{TSDataType.INT32}; - status = session.insert_record("root.test_group.test_series.test_device", measures, values, types, 1); + status = session.insert_record("root.test_group.test_device", measures, values, types, 1); System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestInsertRecord Passed!"); + } + public void TestNonSql(){ + var session = new Session("localhost", 6667); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + session.execute_non_query_statement("delete timeseries root.test_group.test_series"); + session.execute_non_query_statement("delete timeseries root.test_group.test_device.test_series"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.status with datatype=BOOLEAN,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.temperature with datatype=FLOAT,encoding=RLE"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.hardware with datatype=TEXT,encoding=RLE"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + + } public void TestSqlQuery(){ var session = new Session("localhost", 6667); @@ -92,22 +108,39 @@ public void TestSqlQuery(){ status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var res = session.execute_query_statement("show timeseries root"); + res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); res = session.execute_query_statement("show devices"); + res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } - + Console.WriteLine("SHOW DEVICES sql passed!"); + res = session.execute_query_statement("COUNT TIMESERIES root"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("COUNT TIMESERIES root sql Passed"); + res=session.execute_query_statement("select * from root.ln.wf01 where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SELECT sql Passed"); } + static void Main(){ var session_test = new SessionTest(); session_test.TestOpen(); - session_test.TestGetTimeZone(); - session_test.TestInsertStrRecord(); - session_test.TestInsertRecord(); + //session_test.TestGetTimeZone(); + //session_test.TestInsertStrRecord(); + //session_test.TestInsertRecord(); + session_test.TestNonSql(); session_test.TestSqlQuery(); } } diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 2ad1248..9a8960d 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -104,6 +104,10 @@ public override string ToString() return float_val.ToString(); case TSDataType.DOUBLE: return double_val.ToString(); + case TSDataType.BOOLEAN: + return bool_val.ToString(); + case TSDataType.NONE: + return "NULL"; default: return ""; } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 9aa413b..40dfbca 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using Thrift; +using System.Linq; namespace iotdb_client_csharp.client.utils { public class SessionDataSet @@ -10,7 +11,7 @@ public class SessionDataSet List column_name_lst; Dictionary column_name_index_map; Dictionary duplicate_location; - List deduplicated_column_type_lst; + List column_type_lst; TSQueryDataSet query_dataset; byte[] current_bitmap; int column_size; @@ -44,12 +45,12 @@ public SessionDataSet(string sql, List column_name_lst, List col this.query_id = query_id; this.current_bitmap = new byte[column_name_lst.Count]; this.column_size = column_name_lst.Count; - this.column_name_lst = column_name_lst; + this.column_name_lst = new List{}; this.column_size = column_name_lst.Count; this.time_buffer = new ByteBuffer(query_data_set.Time); this.client = client; this.column_name_index_map = new Dictionary{}; - this.deduplicated_column_type_lst = new List{}; + this.column_type_lst = new List{}; this.duplicate_location = new Dictionary{}; this.value_buffer_lst = new List{}; this.bitmap_buffer_lst = new List{}; @@ -58,14 +59,28 @@ public SessionDataSet(string sql, List column_name_lst, List col // some internal variable this.has_catched_result = false; this.row_index = 0; + if(column_name_index != null){ + for(var index = 0; index < column_name_lst.Count; index++){ + this.column_name_lst.Add(""); + this.column_type_lst.Add(""); + } + for(var index = 0; index < column_name_lst.Count; index++){ + var name = column_name_lst[index]; + this.column_name_lst[column_name_index[name]] = name; + this.column_type_lst[column_name_index[name]] = column_type_lst[index]; + + } + }else{ + this.column_name_lst = column_name_lst; + this.column_type_lst = column_type_lst; + } - for(int index = 0; index < column_name_lst.Count; index++){ - var column_name = column_name_lst[index]; + for(int index = 0; index < this.column_name_lst.Count; index++){ + var column_name = this.column_name_lst[index]; if(this.column_name_index_map.ContainsKey(column_name)){ this.duplicate_location[index] = this.column_name_index_map[column_name]; }else{ this.column_name_index_map[column_name] = index; - this.deduplicated_column_type_lst.Add(column_type_lst[index]); } this.value_buffer_lst.Add(new ByteBuffer(query_data_set.ValueList[index])); this.bitmap_buffer_lst.Add(new ByteBuffer(query_data_set.BitmapList[index])); @@ -75,7 +90,17 @@ public SessionDataSet(string sql, List column_name_lst, List col } public List get_column_names(){ - return this.column_name_lst; + var name_lst = new List{"timestamp"}; + name_lst.AddRange(this.column_name_lst); + return name_lst; + } + public void show_table_names(){ + var str = ""; + var name_lst = get_column_names(); + foreach(var name in name_lst){ + str += name + "\t\t"; + } + Console.WriteLine(str); } public bool has_next(){ if(has_catched_result){ @@ -122,19 +147,18 @@ private TSDataType get_data_type_from_str(string str){ } public void construct_one_row(){ List field_lst = new List{}; - int loc = 0; for(int i = 0; i < this.column_size; i++){ if(duplicate_location.ContainsKey(i)){ var field = field_lst[duplicate_location[i]]; field_lst.Add(field); }else{ - ByteBuffer column_value_buffer = value_buffer_lst[loc]; - ByteBuffer column_bitmap_buffer = bitmap_buffer_lst[loc]; + ByteBuffer column_value_buffer = value_buffer_lst[i]; + ByteBuffer column_bitmap_buffer = bitmap_buffer_lst[i]; if(row_index % 8 == 0){ - current_bitmap[loc] = column_bitmap_buffer.get_byte(); + current_bitmap[i] = column_bitmap_buffer.get_byte(); } - if(!is_null(loc, row_index)){ - TSDataType column_data_type = get_data_type_from_str(deduplicated_column_type_lst[loc]); + if(!is_null(i, row_index)){ + TSDataType column_data_type = get_data_type_from_str(column_type_lst[i]); var local_field = new Field(column_data_type); switch(column_data_type){ case TSDataType.BOOLEAN: @@ -173,7 +197,6 @@ public void construct_one_row(){ var local_field = new Field(TSDataType.NONE); field_lst.Add(local_field); } - loc += 1; } } long timestamp = time_buffer.get_long(); From 35479740e9569a33123a7a221e96e455869b6260 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 13:33:13 +0800 Subject: [PATCH 043/214] restore test --- client/SessionTest.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index ead1917..c9c1d7e 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -137,9 +137,9 @@ public void TestSqlQuery(){ static void Main(){ var session_test = new SessionTest(); session_test.TestOpen(); - //session_test.TestGetTimeZone(); - //session_test.TestInsertStrRecord(); - //session_test.TestInsertRecord(); + session_test.TestGetTimeZone(); + session_test.TestInsertStrRecord(); + session_test.TestInsertRecord(); session_test.TestNonSql(); session_test.TestSqlQuery(); } From e4d9504317a2c10445cdabab1472ea82ec6ebb21 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 13:40:13 +0800 Subject: [PATCH 044/214] remove duplicated namespavce --- client/SessionTest.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 83b3c17..64be5c3 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -1,6 +1,5 @@ using System.Collections.Generic; using System; -using System.Collections.Generic; using iotdb_client_csharp.client.utils; namespace iotdb_client_csharp.client @@ -221,6 +220,8 @@ static void Main(){ session_test.TestInsertRecord(); session_test.TestNonSql(); session_test.TestSqlQuery(); + System.Console.WriteLine("TEST PASSED"); + } } From 3c160623f4faaeaf7b9fcaa44de8e9b52c76004d Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 20:46:51 +0800 Subject: [PATCH 045/214] fix some test case --- client/SessionTest.cs | 69 +++++++++++++++++++++++++++---------------- 1 file changed, 43 insertions(+), 26 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 64be5c3..db6f769 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -95,6 +95,7 @@ public void TestDeleteStorageGroups(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); + session.execute_query_statement("delete storage group root.*"); session.set_storage_group("root.sg_test_01"); session.set_storage_group("root.sg_test_02"); session.set_storage_group("root.sg_test_03"); @@ -111,6 +112,8 @@ public void TestDeleteStorageGroups(){ public void TestGetTimeZone(){ var session = new Session("localhost", 6667); session.open(false); + session.execute_query_statement("delete storage group root.*"); + System.Diagnostics.Debug.Assert(session.is_open()); var time_zone = session.get_time_zone(); Console.WriteLine("TestGetTimeZone Passed!"); @@ -119,64 +122,71 @@ public void TestInsertStrRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); + session.execute_query_statement("delete storage group root.*"); + System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_storage_group("root.test_group"); - status = session.set_storage_group("root.test_group"); - System.Diagnostics.Debug.Assert(status == 0); - session.delete_time_series("root.test_group.test_series"); - status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + session.delete_time_series("root.test_group.test_device.str1"); + session.delete_time_series("root.test_group.test_device.str2"); + status = session.create_time_series("root.test_group.test_device.str1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.test_group.test_device.str2", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"s_01", "s_02"}; + var measures = new List{"str1", "str2"}; var values = new List{"test_record", "test_record"}; status = session.insert_record("root.test_group.test_device", measures, values, 1); System.Diagnostics.Debug.Assert(status == 0); + var res = session.execute_query_statement("select * from root.test_group.test_device.str* where time<2"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } Console.WriteLine("TestInsertStrRecord Passed!"); } public void TestInsertRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); + session.execute_query_statement("delete storage group root.*"); System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_storage_group("root.test_group"); - status = session.set_storage_group("root.test_group"); - System.Diagnostics.Debug.Assert(status == 0); - session.delete_time_series("root.test_group.test_series"); - session.delete_time_series("root.test_group.test_device.test_series"); - status = session.create_time_series("root.test_group.test_device.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + session.delete_time_series("root.test_group.test_device.ts1"); + session.delete_time_series("root.test_group.test_device.ts3"); + session.delete_time_series("root.test_group.test_device.ts2"); + + status = session.create_time_series("root.test_group.test_device.ts1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.test_group.test_device.ts2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.test_group.test_device.ts3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"s_01"}; - var values = new List{12.ToString()}; - var types = new List{TSDataType.INT32}; + var measures = new List{"ts1", "ts2", "ts3"}; + var values = new List{"test_text", true.ToString(), 123.ToString()}; + var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; status = session.insert_record("root.test_group.test_device", measures, values, types, 1); + status = session.insert_record("root.test_group.test_device", measures, values, types, 2); + status = session.insert_record("root.test_group.test_device", measures, values, types, 3); + status = session.insert_record("root.test_group.test_device", measures, values, types, 4); System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestInsertRecord Passed!"); } public void TestNonSql(){ var session = new Session("localhost", 6667); session.open(false); + session.execute_query_statement("delete storage group root.*"); System.Diagnostics.Debug.Assert(session.is_open()); - session.execute_non_query_statement("delete timeseries root.test_group.test_series"); - session.execute_non_query_statement("delete timeseries root.test_group.test_device.test_series"); session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.status with datatype=BOOLEAN,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.temperature with datatype=FLOAT,encoding=RLE"); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.hardware with datatype=TEXT,encoding=RLE"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.temperature with datatype=FLOAT,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.hardware with datatype=TEXT,encoding=PLAIN"); session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); } public void TestSqlQuery(){ var session = new Session("localhost", 6667); - int status = 0; session.open(false); + session.execute_query_statement("delete storage group root.*"); System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_storage_group("root.test_group"); - status = session.set_storage_group("root.test_group"); - System.Diagnostics.Debug.Assert(status == 0); - session.delete_time_series("root.test_group.test_series"); - status = session.create_time_series("root.test_group.test_series", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); var res = session.execute_query_statement("show timeseries root"); res.show_table_names(); while(res.has_next()){ @@ -201,6 +211,13 @@ public void TestSqlQuery(){ Console.WriteLine(res.next()); } Console.WriteLine("SELECT sql Passed"); + res=session.execute_query_statement("select * from root.test_group.test_device where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SELECT sql Passed"); + } From a5acf94abd8fa8cc154e720f4cb83f7d5b3aa2fa Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 9 Apr 2021 21:02:10 +0800 Subject: [PATCH 046/214] fix some code --- client/Session.cs | 1 + client/SessionTest.cs | 7 ++++++- client/utils/Tablet.cs | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 3750c32..186e2fc 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -92,6 +92,7 @@ public void open(bool enableRPCCompression){ //TODO, should define our own Exception // here we just print the exception Console.Write(e); + // logging.Error("open failed") throw e; } } diff --git a/client/SessionTest.cs b/client/SessionTest.cs index db6f769..0530a14 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -2,6 +2,11 @@ using System; using iotdb_client_csharp.client.utils; +/* +group: root.97209_TEST_CSHARP_CLIENT_GROUP +timeseries: root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TSX; + +*/ namespace iotdb_client_csharp.client { public class SessionTest @@ -95,7 +100,7 @@ public void TestDeleteStorageGroups(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); - session.execute_query_statement("delete storage group root.*"); + session.execute_query_statement("delete storage group root.TEST_CSHARP_CLIENT_GROUP"); session.set_storage_group("root.sg_test_01"); session.set_storage_group("root.sg_test_02"); session.set_storage_group("root.sg_test_03"); diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index bd29b37..903b8d8 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -77,7 +77,7 @@ public byte[] get_binary_values(){ switch(data_type_lst[i]){ case TSDataType.BOOLEAN: for(int j=0; j< row_number; j++){ - buffer.add_bool(value_lst[j][i] == "true"); + buffer.add_bool(bool.Parse(value_lst[j][i])); } break; case TSDataType.INT32: From 8390b47ddf8d1c5424244a4fb3be7c0444ffb920 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Sat, 10 Apr 2021 18:28:50 +0800 Subject: [PATCH 047/214] Add some tests --- client/Session.cs | 17 +- client/SessionTest.cs | 420 ++++++++++++++++++++++++++++++++---------- 2 files changed, 326 insertions(+), 111 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 186e2fc..7cb1ab8 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -492,7 +492,7 @@ public int insert_tablets(List tablet_lst){ Console.WriteLine(message); return verify_success(status); } - public int insert_records_of_one_device(long device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + public int insert_records_of_one_device(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); List sorted_timestamp_lst = sorted.Select(x => x.timestamp).ToList(); List> sorted_measurements_lst = sorted.Select(x => x.measurements).ToList(); @@ -509,7 +509,7 @@ public bool check_sorted(List timestamp_lst){ } return true; } - public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(long device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst){ + public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst){ List binary_value_lst = new List(){}; for(int i = 0; i < values_lst.Count(); i++){ List data_type_values = data_types_lst[i]; @@ -523,9 +523,9 @@ public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(lo var value_in_bytes = value_to_bytes(data_type_values, values_lst[i]); binary_value_lst.Add(value_in_bytes); } - return new TSInsertRecordsOfOneDeviceReq(sessionId, device_id.ToString(), measurements_lst, binary_value_lst, timestamp_lst); + return new TSInsertRecordsOfOneDeviceReq(sessionId, device_id, measurements_lst, binary_value_lst, timestamp_lst); } - public int insert_records_of_one_device_sorted(long device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + public int insert_records_of_one_device_sorted(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ // TBD by Luzhan var size = timestamp_lst.Count(); if(size != measurements_lst.Count() || size != data_types_lst.Count() || size != values_lst.Count()){ @@ -600,15 +600,6 @@ private int verify_success(TSStatus status){ return -1; } - // 这个函数可能会用到,C++里面验证成功的时候不是返回值,而是throw一个exception - private void verify_success_(TSStatus status){ - if(status.Code == SUCCESS_CODE){ - return; - } - var message = String.Format("error status is {0}, {1}", status.Code, status.Message); - Console.WriteLine(message); - throw new TException(); - } public void set_time_zone(string zoneId){ var req = new TSSetTimeZoneReq(sessionId, zoneId); diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 0530a14..e26e2cc 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -1,3 +1,4 @@ +using System.ComponentModel.DataAnnotations; using System.Collections.Generic; using System; using iotdb_client_csharp.client.utils; @@ -32,7 +33,7 @@ public void TestClose(){ session.open(false); session.close(); System.Diagnostics.Debug.Assert(!session.is_open()); - System.Console.WriteLine("Test close Passed!"); + System.Console.WriteLine("TestClose Passed!"); } public void TestSetStorageGroup(){ @@ -40,7 +41,7 @@ public void TestSetStorageGroup(){ var session = new Session("localhost", 6667, "root", "root"); session.open(false); System.Diagnostics.Debug.Assert(session.set_storage_group("root.sg_test")==0); - System.Console.WriteLine("Test set storage group Passed!"); + System.Console.WriteLine("TestSetStorageGroup Passed!"); session.close(); } public void TestDeleteStorageGroup(){ @@ -48,7 +49,7 @@ public void TestDeleteStorageGroup(){ var session = new Session("localhost", 6667, "root", "root"); session.open(false); System.Diagnostics.Debug.Assert(session.delete_storage_group("root.sg_test")==0); - System.Console.WriteLine("Test delete storage group Passed!"); + System.Console.WriteLine("TestDeleteStorageGroup Passed!"); session.close(); } public void TestCreateTimeSeries(){ @@ -56,13 +57,13 @@ public void TestCreateTimeSeries(){ var session = new Session("localhost", 6667, "root", "root"); session.open(false); session.set_storage_group("root.sg_test"); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_01"), utils.TSDataType.BOOLEAN, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_02"), utils.TSDataType.INT32, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_03"), utils.TSDataType.INT64, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_04"), utils.TSDataType.FLOAT, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_05"), utils.TSDataType.DOUBLE, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_06"), utils.TSDataType.TEXT, utils.TSEncoding.PLAIN, utils.Compressor.SNAPPY)==0); - System.Console.WriteLine("Test create timeseries Passed!"); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_01"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_02"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_03"), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_04"), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_05"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_06"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Console.WriteLine("TestCreateTimeSeries Passed!"); session.close(); } public void TestCreateMultiTimeSeries(){ @@ -71,11 +72,11 @@ public void TestCreateMultiTimeSeries(){ session.open(false); session.set_storage_group("root.sg_test"); List ts_path_lst = new List(){"root.sg_test.d_01.s_01", "root.sg_test.d_01.s_02", "root.sg_test.d_01.s_03", "root.sg_test.d_01.s_04", "root.sg_test.d_01.s_05", "root.sg_test.d_01.s_06"}; - List data_type_lst = new List(){utils.TSDataType.BOOLEAN, utils.TSDataType.INT32, utils.TSDataType.INT64, utils.TSDataType.FLOAT, utils.TSDataType.DOUBLE, utils.TSDataType.TEXT}; - List encoding_lst = new List(){utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN,utils.TSEncoding.PLAIN}; - List compressor_lst = new List(){utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY,utils.Compressor.SNAPPY}; + List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; + List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; + List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); - System.Console.WriteLine("Test create multi timeseries Passed!"); + System.Console.WriteLine("TestCreateMultiTimeSeries Passed!"); session.delete_time_series(ts_path_lst); session.delete_storage_group("root.sg_test"); session.close(); @@ -92,7 +93,7 @@ public void TestDeleteTimeSeries(){ ts_path_lst.Add("root.sg_test.d_01.s_05"); ts_path_lst.Add("root.sg_test.d_01.s_06"); System.Diagnostics.Debug.Assert(session.delete_time_series(ts_path_lst)==0); - System.Console.WriteLine("Test delete timeseries Passed!"); + System.Console.WriteLine("TestDeleteTimeSeries Passed!"); session.delete_storage_group("root.sg_test"); session.close(); } @@ -111,7 +112,7 @@ public void TestDeleteStorageGroups(){ group_names.Add("root.sg_test_03"); group_names.Add("root.sg_test_04"); System.Diagnostics.Debug.Assert(session.delete_storage_groups(group_names)==0); - System.Console.WriteLine("Test delete storage groups Passed!"); + System.Console.WriteLine("TestDeleteStorageGroups Passed!"); session.close(); } public void TestGetTimeZone(){ @@ -148,100 +149,323 @@ public void TestInsertStrRecord(){ Console.WriteLine("TestInsertStrRecord Passed!"); } public void TestInsertRecord(){ - var session = new Session("localhost", 6667); - int status = 0; - session.open(false); - session.execute_query_statement("delete storage group root.*"); - System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_time_series("root.test_group.test_device.ts1"); - session.delete_time_series("root.test_group.test_device.ts3"); - session.delete_time_series("root.test_group.test_device.ts2"); - - status = session.create_time_series("root.test_group.test_device.ts1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = session.create_time_series("root.test_group.test_device.ts2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = session.create_time_series("root.test_group.test_device.ts3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"ts1", "ts2", "ts3"}; - var values = new List{"test_text", true.ToString(), 123.ToString()}; - var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - status = session.insert_record("root.test_group.test_device", measures, values, types, 1); - status = session.insert_record("root.test_group.test_device", measures, values, types, 2); - status = session.insert_record("root.test_group.test_device", measures, values, types, 3); - status = session.insert_record("root.test_group.test_device", measures, values, types, 4); - System.Diagnostics.Debug.Assert(status == 0); - Console.WriteLine("TestInsertRecord Passed!"); + var session = new Session("localhost", 6667); + int status = 0; + session.open(false); + session.execute_non_query_statement("delete storage group root.*"); + System.Diagnostics.Debug.Assert(session.is_open()); + session.delete_time_series("root.test_group.test_device.ts1"); + session.delete_time_series("root.test_group.test_device.ts3"); + session.delete_time_series("root.test_group.test_device.ts2"); + + status = session.create_time_series("root.test_group.test_device.ts1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.test_group.test_device.ts2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.test_group.test_device.ts3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"ts1", "ts2", "ts3"}; + var values = new List{"test_text", true.ToString(), 123.ToString()}; + var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + status = session.insert_record("root.test_group.test_device", measures, values, types, 1); + status = session.insert_record("root.test_group.test_device", measures, values, types, 2); + status = session.insert_record("root.test_group.test_device", measures, values, types, 3); + status = session.insert_record("root.test_group.test_device", measures, values, types, 4); + var res = session.execute_query_statement("select * from root.test_group.test_device where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestInsertRecord Passed!"); + } + public void TestInsertRecords(){ + var session = new Session("localhost", 6667); + session.open(false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.is_open()); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + List device_id = new List(){}; + for(int i = 0; i < 3; i++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + } + List> measurements_lst = new List>(){}; + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){"true", 123.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + List> datatype_lst = new List>(){}; + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List timestamp_lst = new List(){1, 2, 3}; + + var status = session.insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + // System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine(status); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + Console.WriteLine("TestInsertRecords Passed!"); + } + public void TestTestInsertRecord(){ + var session = new Session("localhost", 6667); + int status = 0; + session.open(false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.is_open()); + + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List{"test_text", true.ToString(), 123.ToString()}; + var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); + status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); + status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); + status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); + var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + System.Diagnostics.Debug.Assert(status == 0); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + Console.WriteLine("TestTestInsertRecord Passed!"); + } + + public void TestTestInsertRecords(){ + var session = new Session("localhost", 6667); + session.open(false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.is_open()); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + List device_id = new List(){}; + for(int i = 0; i < 3; i++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + } + List> measurements_lst = new List>(){}; + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){"true", 123.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + List> datatype_lst = new List>(){}; + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List timestamp_lst = new List(){1, 2, 3}; + + var status = session.test_insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + // System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine(status); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + Console.WriteLine("TestTestInsertRecords Passed!"); + } + public void TestInsertRecordsOfOneDevice(){ + var session = new Session("localhost", 6667); + session.open(false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.is_open()); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + List> measurements_lst = new List>(){}; + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){"true", 123.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + List> datatype_lst = new List>(){}; + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List timestamp_lst = new List(){1, 2, 3}; + + var status = session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + // System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine(status); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); + } + public void TestCheckTimeSeriesExists(){ + var session = new Session("localhost", 6667); + session.open(false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.is_open()); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + var ifExist_1 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); + var ifExist_2 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); + System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + Console.WriteLine("TestCheckTimeSeriesExists Passed!"); + } + public void TestSetTimeZone(){ + var session = new Session("localhost", 6667); + session.open(false); + session.set_time_zone("GMT+8:00"); + System.Diagnostics.Debug.Assert(session.get_time_zone() == "GMT+8:00"); + session.close(); + Console.WriteLine("TestSetTimeZone Passed!"); + } + public void TestDeleteData(){ + var session = new Session("localhost", 6667); + int status = 0; + session.open(false); + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.is_open()); + + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List{"test_text", true.ToString(), 123.ToString()}; + var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); + var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"}; + session.delete_data(ts_path_lst, 2 ,3); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + + + + Console.WriteLine("TestDeleteData Passed!"); } public void TestNonSql(){ - var session = new Session("localhost", 6667); - session.open(false); - session.execute_query_statement("delete storage group root.*"); - System.Diagnostics.Debug.Assert(session.is_open()); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.status with datatype=BOOLEAN,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.temperature with datatype=FLOAT,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.hardware with datatype=TEXT,encoding=PLAIN"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); + var session = new Session("localhost", 6667); + session.open(false); + session.execute_query_statement("delete storage group root.*"); + System.Diagnostics.Debug.Assert(session.is_open()); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.status with datatype=BOOLEAN,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.temperature with datatype=FLOAT,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.hardware with datatype=TEXT,encoding=PLAIN"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); + session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); } public void TestSqlQuery(){ - var session = new Session("localhost", 6667); - session.open(false); - session.execute_query_statement("delete storage group root.*"); - System.Diagnostics.Debug.Assert(session.is_open()); - var res = session.execute_query_statement("show timeseries root"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); - res = session.execute_query_statement("show devices"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SHOW DEVICES sql passed!"); - res = session.execute_query_statement("COUNT TIMESERIES root"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("COUNT TIMESERIES root sql Passed"); - res=session.execute_query_statement("select * from root.ln.wf01 where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SELECT sql Passed"); - res=session.execute_query_statement("select * from root.test_group.test_device where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SELECT sql Passed"); + var session = new Session("localhost", 6667); + session.open(false); + session.execute_query_statement("delete storage group root.*"); + System.Diagnostics.Debug.Assert(session.is_open()); + var res = session.execute_query_statement("show timeseries root"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); + res = session.execute_query_statement("show devices"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SHOW DEVICES sql passed!"); + res = session.execute_query_statement("COUNT TIMESERIES root"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("COUNT TIMESERIES root sql Passed"); + res=session.execute_query_statement("select * from root.ln.wf01 where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SELECT sql Passed"); + res=session.execute_query_statement("select * from root.test_group.test_device where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SELECT sql Passed"); } static void Main(){ SessionTest session_test = new SessionTest(); - session_test.TestOpen(); - session_test.TestOpenFailure(); - session_test.TestClose(); - session_test.TestSetStorageGroup(); - session_test.TestDeleteStorageGroup(); - session_test.TestCreateTimeSeries(); - session_test.TestDeleteTimeSeries(); - session_test.TestCreateMultiTimeSeries(); - session_test.TestDeleteStorageGroups(); - session_test.TestGetTimeZone(); - session_test.TestInsertStrRecord(); - session_test.TestInsertRecord(); - session_test.TestNonSql(); - session_test.TestSqlQuery(); + // session_test.TestOpen(); + // session_test.TestOpenFailure(); + // session_test.TestClose(); + // session_test.TestSetStorageGroup(); + // session_test.TestDeleteStorageGroup(); + // session_test.TestCreateTimeSeries(); + // session_test.TestDeleteTimeSeries(); + // session_test.TestCreateMultiTimeSeries(); + // session_test.TestDeleteStorageGroups(); + // session_test.TestGetTimeZone(); + // session_test.TestInsertStrRecord(); + // session_test.TestInsertRecord(); + // session_test.TestTestInsertRecord(); + // session_test.TestTestInsertRecords(); + // session_test.TestInsertRecordsOfOneDevice(); + // session_test.TestCheckTimeSeriesExists(); + // session_test.TestSetTimeZone(); + session_test.TestDeleteData(); + // session_test.TestNonSql(); + // session_test.TestSqlQuery(); + // session_test.TestInsertRecords(); System.Console.WriteLine("TEST PASSED"); } From 89be1506d4ffffd818cbbff10fa76710744b4223 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Sat, 10 Apr 2021 18:31:05 +0800 Subject: [PATCH 048/214] fix some comments --- client/SessionTest.cs | 43 ++++++++++++++++++++----------------------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index e26e2cc..dab2799 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -383,9 +383,6 @@ public void TestDeleteData(){ } session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); - - - Console.WriteLine("TestDeleteData Passed!"); } public void TestNonSql(){ @@ -445,27 +442,27 @@ public void TestSqlQuery(){ static void Main(){ SessionTest session_test = new SessionTest(); - // session_test.TestOpen(); - // session_test.TestOpenFailure(); - // session_test.TestClose(); - // session_test.TestSetStorageGroup(); - // session_test.TestDeleteStorageGroup(); - // session_test.TestCreateTimeSeries(); - // session_test.TestDeleteTimeSeries(); - // session_test.TestCreateMultiTimeSeries(); - // session_test.TestDeleteStorageGroups(); - // session_test.TestGetTimeZone(); - // session_test.TestInsertStrRecord(); - // session_test.TestInsertRecord(); - // session_test.TestTestInsertRecord(); - // session_test.TestTestInsertRecords(); - // session_test.TestInsertRecordsOfOneDevice(); - // session_test.TestCheckTimeSeriesExists(); - // session_test.TestSetTimeZone(); + session_test.TestOpen(); + session_test.TestOpenFailure(); + session_test.TestClose(); + session_test.TestSetStorageGroup(); + session_test.TestDeleteStorageGroup(); + session_test.TestCreateTimeSeries(); + session_test.TestDeleteTimeSeries(); + session_test.TestCreateMultiTimeSeries(); + session_test.TestDeleteStorageGroups(); + session_test.TestGetTimeZone(); + session_test.TestInsertStrRecord(); + session_test.TestInsertRecord(); + session_test.TestTestInsertRecord(); + session_test.TestTestInsertRecords(); + session_test.TestInsertRecordsOfOneDevice(); + session_test.TestCheckTimeSeriesExists(); + session_test.TestSetTimeZone(); session_test.TestDeleteData(); - // session_test.TestNonSql(); - // session_test.TestSqlQuery(); - // session_test.TestInsertRecords(); + session_test.TestNonSql(); + session_test.TestSqlQuery(); + session_test.TestInsertRecords(); System.Console.WriteLine("TEST PASSED"); } From 54ebd5e52cb177e7ecb9651c52ee26fad676745b Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Sat, 10 Apr 2021 18:49:17 +0800 Subject: [PATCH 049/214] fix the bug of endian --- client/utils/ByteBuffer.cs | 3 --- 1 file changed, 3 deletions(-) diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs index 77b8fe9..e6db241 100644 --- a/client/utils/ByteBuffer.cs +++ b/client/utils/ByteBuffer.cs @@ -128,9 +128,6 @@ public void add_double(double value){ public void add_str(string value){ add_int(value.Length); var str_buf = System.Text.Encoding.UTF8.GetBytes(value); - if(is_little_endian){ - str_buf = str_buf.Reverse().ToArray(); - } write_buffer.AddRange(str_buf); buffer = write_buffer.ToArray(); total_length = buffer.Length; From cf1b12030142106fd7dd0039a0596f8f0f4dbc3a Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 13 Apr 2021 10:34:54 +0800 Subject: [PATCH 050/214] add tablet test --- client/Session.cs | 162 ++++++---------- client/SessionTest.cs | 338 +++++++++++++++++++-------------- client/utils/SessionDataSet.cs | 7 +- client/utils/Tablet.cs | 18 +- 4 files changed, 272 insertions(+), 253 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 7cb1ab8..aa20d53 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -1,26 +1,11 @@ -using System.Net.Mime; using Thrift; using Thrift.Transport; using Thrift.Protocol; -using Thrift.Server; using System; using System.Linq; -using System.Net.Sockets; -using System.Collections; using System.Collections.Generic; -using System.Text; -using System.IO; using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift.Collections; - - -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; using iotdb_client_csharp.client.utils; namespace iotdb_client_csharp.client @@ -38,7 +23,6 @@ public int SUCCESS_CODE{ private int port, fetch_size; private long sessionId, statementId; private bool is_close = true; - private TSIService.Client client; private TFramedTransport transport; private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -88,12 +72,8 @@ public void open(bool enableRPCCompression){ var task = transport.OpenAsync(new CancellationToken()); task.Wait(); } - catch(TTransportException e){ - //TODO, should define our own Exception - // here we just print the exception - Console.Write(e); - // logging.Error("open failed") - throw e; + catch(TTransportException){ + throw; } } if(enableRPCCompression){ @@ -111,7 +91,6 @@ public void open(bool enableRPCCompression){ var open_resp = task.Result; if(open_resp.ServerProtocolVersion != protocol_version){ var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); - Console.WriteLine(message); throw new TException(message, null); } if (open_resp.ServerProtocolVersion == 0){ @@ -124,8 +103,7 @@ public void open(bool enableRPCCompression){ } catch(Exception e){ transport.Close(); - Console.WriteLine("session closed because ", e); - throw e; + throw; } if(zoneId != ""){ set_time_zone(zoneId); @@ -148,9 +126,8 @@ public void close(){ task.Wait(); } catch(TException e){ - var message = String.Format("Error occurs when closing session at server. Maybe server is down. Error message:{0}", e); - Console.WriteLine(message); - throw e; + var message = String.Format("Error occurs when closing session at server. Maybe server is down"); + throw new TException(message, e); } finally{ is_close = true; @@ -168,11 +145,10 @@ public int set_storage_group(string group_name){ status = task.Result; } catch(TException e){ - var err_msg = String.Format("set storage group {0} failed, beacuse {1}", group_name, e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("set storage group {0} failed", group_name); + throw new TException(err_msg, e); } - var message = String.Format("set storage group {0} message: {1}", group_name, status.Message); + var message = String.Format("set storage group {0} successfully", group_name); Console.WriteLine(message); return verify_success(status); } @@ -185,11 +161,10 @@ public int delete_storage_group(string group_name){ status = task.Result; } catch(TException e){ - var err_msg = String.Format("delete storage group {0} failed, beacuse {1}", group_name, e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("delete storage group {0} failed", group_name); + throw new TException(err_msg, e); } - var message = String.Format("delete storage group {0} message: {1}", group_name, status.Message); + var message = String.Format("delete storage group {0} successfully", group_name); Console.WriteLine(message); return verify_success(status); } @@ -201,11 +176,10 @@ public int delete_storage_groups(List group_names){ status = task.Result; } catch(TException e){ - var err_msg = String.Format("delete storage group(s) {0} failed, beacuse {1}", group_names, e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("delete storage group(s) {0} failed", group_names); + throw new TException(err_msg, e); } - var message = String.Format("delete storage group(s) {0} message: {1}", group_names, status.Message); + var message = String.Format("delete storage group(s) {0} successfully", group_names); Console.WriteLine(message); return verify_success(status); } @@ -219,11 +193,10 @@ public int create_time_series(string ts_path, TSDataType data_type, TSEncoding e status = task.Result; } catch(TException e){ - var err_msg = String.Format("create time series {0} failed, beacuse {1}", ts_path, e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("create time series {0} failed", ts_path); + throw new TException(err_msg, e); } - var message = String.Format("creating time series {0} message: {1}", ts_path, status.Message); + var message = String.Format("creating time series {0} successfully", ts_path); Console.WriteLine(message); return verify_success(status); } @@ -240,11 +213,10 @@ public int create_multi_time_series(List ts_path_lst, List d status = task.Result; } catch(TException e){ - var err_msg = String.Format("create multiple time series {0} failed, beacuse {1}", ts_path_lst, e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("create multiple time series {0} failed", ts_path_lst); + throw new TException(err_msg, e); } - var message = String.Format("creating multiple time series {0} message: {1}", ts_path_lst, status.Message); + var message = String.Format("creating multiple time series {0}", ts_path_lst); Console.WriteLine(message); return verify_success(status); } @@ -256,11 +228,10 @@ public int delete_time_series(List path_list){ status = task.Result; } catch(TException e){ - var err_msg = String.Format("delete time series {0} failed, beacuse {1}", path_list, e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("delete time series {0} failed", path_list); + throw new TException(err_msg, e); } - var message = String.Format("deleting multiple time series {0} message: {1}", path_list, status.Message); + var message = String.Format("deleting multiple time series {0}", path_list); Console.WriteLine(message); return verify_success(status); } @@ -274,9 +245,8 @@ public bool check_time_series_exists(string ts_path){ return execute_query_statement(sql).has_next(); } catch(TException e){ - var err_msg = String.Format("could not check if certain time series exists because {0}", e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("could not check if certain time series exists"); + throw new TException(err_msg, e); } } public int delete_data(List ts_path_lst, long start_time, long end_time){ @@ -288,11 +258,10 @@ public int delete_data(List ts_path_lst, long start_time, long end_time) status = task.Result; } catch(TException e){ - var message_local = String.Format("data deletion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("data deletion fails because"); + throw new TException(err_msg, e); } - var message = String.Format("delete data from {0}, message: {1}", ts_path_lst, status.Message); + var message = String.Format("delete data from {0}", ts_path_lst); Console.WriteLine(message); return verify_success(status); } @@ -314,11 +283,10 @@ public int insert_record(string device_id, List measurements, List measurements, List device_id, List> measurement status = task.Result; } catch(TException e){ - var message_local = String.Format("Multiple records insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Multiple records insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("insert multiple records to devices {0} message: {1}", device_id, status.Message); Console.WriteLine(message); @@ -399,9 +365,8 @@ public int test_insert_record(string device_id, List measurements, List< status = task.Result; } catch(TException e){ - var message_local = String.Format("Testing record insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Testing record insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("testing! insert one record to device {0} message: {1}", device_id, status.Message); Console.WriteLine(message); @@ -417,9 +382,8 @@ public int test_insert_records(List device_id, List> measur status = task.Result; } catch(TException e){ - var message_local = String.Format("Testing multiple records insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Testing multiple records insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("testing! insert multiple records, message: {0}", status.Message); Console.WriteLine(message); @@ -443,9 +407,8 @@ public int insert_tablet(Tablet tablet){ status = task.Result; } catch(TException e){ - var message_local = String.Format("Tablet insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Tablet insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); Console.WriteLine(message); @@ -484,9 +447,8 @@ public int insert_tablets(List tablet_lst){ status = task.Result; } catch(TException e){ - var message_local = String.Format("Multiple tablets insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Multiple tablets insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("insert multiple tablets, message: {0}", status.Message); Console.WriteLine(message); @@ -544,9 +506,8 @@ public int insert_records_of_one_device_sorted(string device_id, List time status = task.Result; } catch(TException e){ - var message_local = String.Format("Sorted records of one device insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Sorted records of one device insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("insert records of one device, message: {0}", status.Message); Console.WriteLine(message); @@ -563,9 +524,8 @@ public int test_insert_tablet(Tablet tablet){ status = task.Result; } catch(TException e){ - var message_local = String.Format("Testing tablet insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Testing tablet insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("testing! insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); Console.WriteLine(message); @@ -581,9 +541,8 @@ public int test_insert_tablets(List tablet_lst){ status = task.Result; } catch(TException e){ - var message_local = String.Format("Testing multiple tablets insertion fails because: {0}", e); - Console.WriteLine(message_local); - throw e; + var err_msg = String.Format("Testing multiple tablets insertion failed"); + throw new TException(err_msg, e); } var message = String.Format("testing! insert multiple tablets, message: {0}", status.Message); Console.WriteLine(message); @@ -610,9 +569,8 @@ public void set_time_zone(string zoneId){ Console.WriteLine(message); } catch(TException e ){ - var message = String.Format("could not set time zone because {0}", e); - Console.WriteLine(message); - throw e; + var message = String.Format("could not set time zone"); + throw new TException(message, e); } this.zoneId = zoneId; } @@ -627,9 +585,8 @@ public string get_time_zone(){ resp = task.Result; } catch(TException e){ - var message = String.Format("counld not get time zone beacuse {0}", e); - Console.WriteLine(message); - throw e; + var message = String.Format("counld not get time zone"); + throw new TException(message, e); } return resp.TimeZone; } @@ -645,9 +602,8 @@ public SessionDataSet execute_query_statement(string sql){ status = resp.Status; } catch(TException e){ - var err_msg = String.Format("could not execute query statement because {0}", e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("could not execute query statement"); + throw new TException(err_msg, e); } if(verify_success(status) == -1){ throw new TException("execute query failed", null); @@ -666,9 +622,8 @@ public int execute_non_query_statement(string sql){ status = resp.Status; } catch(TException e){ - var err_msg = String.Format("execution of non-query statement fails because: {0}", e); - Console.WriteLine(err_msg); - throw e; + var err_msg = String.Format("execution of non-query statement failed"); + throw new TException(err_msg, e); } var message = String.Format("execute non-query statement {0} message: {1}", sql, status.Message); Console.WriteLine(message); @@ -702,8 +657,7 @@ public byte[] value_to_bytes(List data_types, List values){ break; default: var message = String.Format("Unsupported data type:{0}",data_types[i]); - Console.WriteLine(message); - break; + throw new TException(message, null); } } var buf = buffer.get_buffer(); diff --git a/client/SessionTest.cs b/client/SessionTest.cs index dab2799..562a500 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -12,23 +12,16 @@ namespace iotdb_client_csharp.client { public class SessionTest { + public void TestOpen(){ Session session = new Session("localhost", 6667, "root", "root"); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); + session.close(); System.Console.WriteLine("TestOpen Passed!"); } - public void TestOpenFailure(){ - // by Luzhan - // TODO 后续所有的失败测例一起处理吧 - // var session = new Session("localhost", 6667, "root", "root"); - // session.open(false); - // System.Diagnostics.Debug.Assert(!session.is_open()); - // System.Console.WriteLine("Test open failure Passed!"); - } + public void TestClose(){ - - // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); session.close(); @@ -36,159 +29,164 @@ public void TestClose(){ System.Console.WriteLine("TestClose Passed!"); } - public void TestSetStorageGroup(){ + public void TestSetAndDeleteStorageGroup(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); - System.Diagnostics.Debug.Assert(session.set_storage_group("root.sg_test")==0); - System.Console.WriteLine("TestSetStorageGroup Passed!"); - session.close(); - } - public void TestDeleteStorageGroup(){ - // by Luzhan - var session = new Session("localhost", 6667, "root", "root"); - session.open(false); - System.Diagnostics.Debug.Assert(session.delete_storage_group("root.sg_test")==0); - System.Console.WriteLine("TestDeleteStorageGroup Passed!"); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); + System.Diagnostics.Debug.Assert(session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); session.close(); + System.Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } public void TestCreateTimeSeries(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); - session.set_storage_group("root.sg_test"); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_01"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_02"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_03"), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_04"), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_05"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.sg_test.d_01.s_06"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Console.WriteLine("TestCreateTimeSeries Passed!"); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3"), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4"), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); + System.Console.WriteLine("TestCreateTimeSeries Passed!"); } public void TestCreateMultiTimeSeries(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); - session.set_storage_group("root.sg_test"); - List ts_path_lst = new List(){"root.sg_test.d_01.s_01", "root.sg_test.d_01.s_02", "root.sg_test.d_01.s_03", "root.sg_test.d_01.s_04", "root.sg_test.d_01.s_05", "root.sg_test.d_01.s_06"}; + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); - System.Console.WriteLine("TestCreateMultiTimeSeries Passed!"); - session.delete_time_series(ts_path_lst); - session.delete_storage_group("root.sg_test"); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); + System.Console.WriteLine("TestCreateMultiTimeSeries Passed!"); + } public void TestDeleteTimeSeries(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); - List ts_path_lst = new List(){}; - ts_path_lst.Add("root.sg_test.d_01.s_01"); - ts_path_lst.Add("root.sg_test.d_01.s_02"); - ts_path_lst.Add("root.sg_test.d_01.s_03"); - ts_path_lst.Add("root.sg_test.d_01.s_04"); - ts_path_lst.Add("root.sg_test.d_01.s_05"); - ts_path_lst.Add("root.sg_test.d_01.s_06"); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; + List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; + List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; + List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; + System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); System.Diagnostics.Debug.Assert(session.delete_time_series(ts_path_lst)==0); System.Console.WriteLine("TestDeleteTimeSeries Passed!"); - session.delete_storage_group("root.sg_test"); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); } public void TestDeleteStorageGroups(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); - session.open(false); - session.execute_query_statement("delete storage group root.TEST_CSHARP_CLIENT_GROUP"); - session.set_storage_group("root.sg_test_01"); - session.set_storage_group("root.sg_test_02"); - session.set_storage_group("root.sg_test_03"); - session.set_storage_group("root.sg_test_04"); + session.open(false); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); List group_names = new List(){}; - group_names.Add("root.sg_test_01"); - group_names.Add("root.sg_test_02"); - group_names.Add("root.sg_test_03"); - group_names.Add("root.sg_test_04"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); System.Diagnostics.Debug.Assert(session.delete_storage_groups(group_names)==0); - System.Console.WriteLine("TestDeleteStorageGroups Passed!"); session.close(); + System.Console.WriteLine("TestDeleteStorageGroups Passed!"); } public void TestGetTimeZone(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_query_statement("delete storage group root.*"); - + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); - var time_zone = session.get_time_zone(); + var time_zone = session.get_time_zone(); + session.close(); Console.WriteLine("TestGetTimeZone Passed!"); } public void TestInsertStrRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); - session.execute_query_statement("delete storage group root.*"); - System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_time_series("root.test_group.test_device.str1"); - session.delete_time_series("root.test_group.test_device.str2"); - status = session.create_time_series("root.test_group.test_device.str1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = session.create_time_series("root.test_group.test_device.str2", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"str1", "str2"}; + + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; var values = new List{"test_record", "test_record"}; - status = session.insert_record("root.test_group.test_device", measures, values, 1); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, 1); System.Diagnostics.Debug.Assert(status == 0); - var res = session.execute_query_statement("select * from root.test_group.test_device.str* where time<2"); + + var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); Console.WriteLine("TestInsertStrRecord Passed!"); } public void TestInsertRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); - session.execute_non_query_statement("delete storage group root.*"); System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_time_series("root.test_group.test_device.ts1"); - session.delete_time_series("root.test_group.test_device.ts3"); - session.delete_time_series("root.test_group.test_device.ts2"); - - status = session.create_time_series("root.test_group.test_device.ts1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = session.create_time_series("root.test_group.test_device.ts2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = session.create_time_series("root.test_group.test_device.ts3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"ts1", "ts2", "ts3"}; + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var values = new List{"test_text", true.ToString(), 123.ToString()}; var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - status = session.insert_record("root.test_group.test_device", measures, values, types, 1); - status = session.insert_record("root.test_group.test_device", measures, values, types, 2); - status = session.insert_record("root.test_group.test_device", measures, values, types, 3); - status = session.insert_record("root.test_group.test_device", measures, values, types, 4); - var res = session.execute_query_statement("select * from root.test_group.test_device where time<10"); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); + System.Diagnostics.Debug.Assert(status == 0); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); + System.Diagnostics.Debug.Assert(status == 0); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); + System.Diagnostics.Debug.Assert(status == 0); + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); + System.Diagnostics.Debug.Assert(status == 0); + var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } - System.Diagnostics.Debug.Assert(status == 0); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); Console.WriteLine("TestInsertRecord Passed!"); } public void TestInsertRecords(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + List device_id = new List(){}; for(int i = 0; i < 3; i++){ device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); @@ -206,8 +204,7 @@ public void TestInsertRecords(){ datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); List timestamp_lst = new List(){1, 2, 3}; - - var status = session.insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + status = session.insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); // System.Diagnostics.Debug.Assert(status == 0); var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); @@ -215,7 +212,8 @@ public void TestInsertRecords(){ Console.WriteLine(res.next()); } Console.WriteLine(status); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); session.close(); Console.WriteLine("TestInsertRecords Passed!"); } @@ -223,13 +221,17 @@ public void TestTestInsertRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var values = new List{"test_text", true.ToString(), 123.ToString()}; var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; @@ -242,8 +244,8 @@ public void TestTestInsertRecord(){ while(res.has_next()){ Console.WriteLine(res.next()); } + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); Console.WriteLine("TestTestInsertRecord Passed!"); } @@ -251,9 +253,10 @@ public void TestTestInsertRecord(){ public void TestTestInsertRecords(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); @@ -278,24 +281,24 @@ public void TestTestInsertRecords(){ datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); List timestamp_lst = new List(){1, 2, 3}; - var status = session.test_insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + status = session.test_insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); // System.Diagnostics.Debug.Assert(status == 0); var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } - Console.WriteLine(status); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); session.close(); Console.WriteLine("TestTestInsertRecords Passed!"); } public void TestInsertRecordsOfOneDevice(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); @@ -317,29 +320,31 @@ public void TestInsertRecordsOfOneDevice(){ datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); List timestamp_lst = new List(){1, 2, 3}; - var status = session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + status = session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); // System.Diagnostics.Debug.Assert(status == 0); var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } - Console.WriteLine(status); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); session.close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); } public void TestCheckTimeSeriesExists(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); var ifExist_1 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); var ifExist_2 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); session.close(); Console.WriteLine("TestCheckTimeSeriesExists Passed!"); } @@ -355,20 +360,28 @@ public void TestDeleteData(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var values = new List{"test_text", true.ToString(), 123.ToString()}; var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); + System.Diagnostics.Debug.Assert(status == 0); status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); + System.Diagnostics.Debug.Assert(status == 0); status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); + System.Diagnostics.Debug.Assert(status == 0); status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); + System.Diagnostics.Debug.Assert(status == 0); var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ @@ -381,31 +394,52 @@ public void TestDeleteData(){ while(res.has_next()){ Console.WriteLine(res.next()); } - session.execute_non_query_statement("delete storage group root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); session.close(); Console.WriteLine("TestDeleteData Passed!"); } public void TestNonSql(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_query_statement("delete storage group root.*"); System.Diagnostics.Debug.Assert(session.is_open()); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.status with datatype=BOOLEAN,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.temperature with datatype=FLOAT,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.ln.wf01.wt01.hardware with datatype=TEXT,encoding=PLAIN"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); - session.execute_non_query_statement("insert into root.ln.wf01.wt01(timestamp, status, hardware) VALUES (7, true,'lz')"); - - + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.close(); + Console.WriteLine("TestNonSql Passed"); } public void TestSqlQuery(){ var session = new Session("localhost", 6667); session.open(false); - session.execute_query_statement("delete storage group root.*"); System.Diagnostics.Debug.Assert(session.is_open()); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + var res = session.execute_query_statement("show timeseries root"); res.show_table_names(); while(res.has_next()){ @@ -430,39 +464,67 @@ public void TestSqlQuery(){ Console.WriteLine(res.next()); } Console.WriteLine("SELECT sql Passed"); - res=session.execute_query_statement("select * from root.test_group.test_device where time<10"); + res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.close(); Console.WriteLine("SELECT sql Passed"); + + } + public void TestInsertTablet(){ + var session = new Session("localhost", 6667); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + List measurement_lst = new List{"TS1", "TS2", "TS3"}; + List datatype_lst = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + List> value_lst = new List>{new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}; + List timestamp_lst = new List{2, 1, 3}; + var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + status = session.insert_tablet(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.close(); + Console.WriteLine("TestInsertTablet Passed!"); } static void Main(){ SessionTest session_test = new SessionTest(); + session_test.TestOpen(); - session_test.TestOpenFailure(); session_test.TestClose(); - session_test.TestSetStorageGroup(); - session_test.TestDeleteStorageGroup(); + session_test.TestSetAndDeleteStorageGroup(); session_test.TestCreateTimeSeries(); session_test.TestDeleteTimeSeries(); - session_test.TestCreateMultiTimeSeries(); - session_test.TestDeleteStorageGroups(); - session_test.TestGetTimeZone(); - session_test.TestInsertStrRecord(); - session_test.TestInsertRecord(); - session_test.TestTestInsertRecord(); - session_test.TestTestInsertRecords(); - session_test.TestInsertRecordsOfOneDevice(); - session_test.TestCheckTimeSeriesExists(); - session_test.TestSetTimeZone(); - session_test.TestDeleteData(); - session_test.TestNonSql(); - session_test.TestSqlQuery(); - session_test.TestInsertRecords(); + //session_test.TestCreateMultiTimeSeries(); + //session_test.TestDeleteStorageGroups(); + //session_test.TestGetTimeZone(); + //session_test.TestInsertStrRecord(); + //session_test.TestInsertRecord(); + //session_test.TestTestInsertRecord(); + //session_test.TestTestInsertRecords(); + //session_test.TestInsertRecordsOfOneDevice(); + //session_test.TestCheckTimeSeriesExists(); + //session_test.TestSetTimeZone(); + //session_test.TestDeleteData(); + //session_test.TestNonSql(); + //session_test.TestSqlQuery(); + //session_test.TestInsertRecords(); + //session_test.TestInsertTablet(); System.Console.WriteLine("TEST PASSED"); } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 40dfbca..e768427 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -34,7 +34,7 @@ private int default_timeout{ public int fetch_size{get;set;} private int row_index; - private bool has_catched_result, empty_result; + private bool has_catched_result; private RowRecord cached_row_record; @@ -49,6 +49,7 @@ public SessionDataSet(string sql, List column_name_lst, List col this.column_size = column_name_lst.Count; this.time_buffer = new ByteBuffer(query_data_set.Time); this.client = client; + this.session_id = session_id; this.column_name_index_map = new Dictionary{}; this.column_type_lst = new List{}; this.duplicate_location = new Dictionary{}; @@ -235,7 +236,7 @@ private bool fetch_results(){ catch(TException e){ var message = string.Format("Cannot fetch result from server, because of network connection:{0}", e); Console.WriteLine(message); - throw e; + throw; } } public void close_operation_handle(){ @@ -251,7 +252,7 @@ public void close_operation_handle(){ catch(TException e){ var message = string.Format("close session {0} failed because:{1} ", session_id, e); Console.WriteLine(message); - throw e; + throw; } diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 903b8d8..93ae915 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -39,7 +39,7 @@ public Tablet(string device_id, List measurement_lst, List d Console.WriteLine(err_msg); throw new Exception("input length not matched"); } - if(!check_timestamp_lst_sorted()){ + if(!check_timestamp_lst_sorted(timestamp_lst)){ var sorted = timestamp_lst.Select((x, index) => (timestamp:x, values:value_lst[index])).OrderBy(x => x.timestamp).ToList(); this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); this.value_lst = sorted.Select(x => x.values).ToList(); @@ -47,7 +47,7 @@ public Tablet(string device_id, List measurement_lst, List d this.value_lst = value_lst; this.timestamp_lst = timestamp_lst; } - + this.device_id = device_id; this.measurement_lst = measurement_lst; this.data_type_lst = data_type_lst; @@ -55,7 +55,7 @@ public Tablet(string device_id, List measurement_lst, List d this.col_number = measurement_lst.Count; } - private bool check_timestamp_lst_sorted(){ + private bool check_timestamp_lst_sorted(List timestamp_lst){ for(int index = 1; index < timestamp_lst.Count; index++){ if(timestamp_lst[index] < timestamp_lst[index-1]){ return false; @@ -77,11 +77,13 @@ public byte[] get_binary_values(){ switch(data_type_lst[i]){ case TSDataType.BOOLEAN: for(int j=0; j< row_number; j++){ + Console.WriteLine(value_lst[j][i]); buffer.add_bool(bool.Parse(value_lst[j][i])); } break; case TSDataType.INT32: for(int j=0; j Date: Tue, 13 Apr 2021 10:36:22 +0800 Subject: [PATCH 051/214] add tablet test --- client/SessionTest.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 562a500..fcc48fc 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -510,7 +510,7 @@ static void Main(){ session_test.TestSetAndDeleteStorageGroup(); session_test.TestCreateTimeSeries(); session_test.TestDeleteTimeSeries(); - //session_test.TestCreateMultiTimeSeries(); + session_test.TestCreateMultiTimeSeries(); //session_test.TestDeleteStorageGroups(); //session_test.TestGetTimeZone(); //session_test.TestInsertStrRecord(); @@ -524,7 +524,7 @@ static void Main(){ //session_test.TestNonSql(); //session_test.TestSqlQuery(); //session_test.TestInsertRecords(); - //session_test.TestInsertTablet(); + session_test.TestInsertTablet(); System.Console.WriteLine("TEST PASSED"); } From 8dea61e9e89d5b9f97aad7880dee568940ec14bd Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 13 Apr 2021 11:21:19 +0800 Subject: [PATCH 052/214] add logger --- client/Session.cs | 62 +++++++++++++++++++++++++++++++------------ client/SessionTest.cs | 34 +++++++++++++++++++----- 2 files changed, 73 insertions(+), 23 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index aa20d53..374792f 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -7,6 +7,7 @@ using System.Threading; using Thrift.Transport.Client; using iotdb_client_csharp.client.utils; +using NLog; namespace iotdb_client_csharp.client { @@ -21,10 +22,12 @@ public int SUCCESS_CODE{ get{return 200;} } private int port, fetch_size; + private bool debug_mode = false; private long sessionId, statementId; private bool is_close = true; private TSIService.Client client; private TFramedTransport transport; + private NLog.Logger _logger; private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -44,6 +47,7 @@ public Session(string host, int port, string username, string password){ this.username = username; this.zoneId = "UTC+08:00"; this.fetch_size = 1024; + this.debug_mode = false; } public Session(string host, int port, string username, string password, int fetch_size){ this.host = host; @@ -52,6 +56,7 @@ public Session(string host, int port, string username, string password, int fetc this.password = password; this.fetch_size = fetch_size; this.zoneId = "UTC+08:00"; + this.debug_mode = false; } public Session(string host, int port, string username="root", string password="root", int fetch_size=10000, string zoneId = "UTC+08:00"){ @@ -61,6 +66,20 @@ public Session(string host, int port, string username="root", string password="r this.password = password; this.zoneId = zoneId; this.fetch_size = fetch_size; + this.debug_mode = false; + } + public void open_debug_mode(NLog.Config.LoggingConfiguration config=null){ + this.debug_mode = true; + if(config == null){ + config = new NLog.Config.LoggingConfiguration(); + var logconsole = new NLog.Targets.ConsoleTarget("logconsole"); + config.AddRule(LogLevel.Debug, LogLevel.Fatal, logconsole); + NLog.LogManager.Configuration = config; + _logger = NLog.LogManager.GetCurrentClassLogger(); + }else{ + NLog.LogManager.Configuration = config; + _logger = NLog.LogManager.GetCurrentClassLogger(); + } } public void open(bool enableRPCCompression){ if(!is_close){ @@ -101,7 +120,7 @@ public void open(bool enableRPCCompression){ statement_task.Wait(); statementId = statement_task.Result; } - catch(Exception e){ + catch(Exception){ transport.Close(); throw; } @@ -148,8 +167,9 @@ public int set_storage_group(string group_name){ var err_msg = String.Format("set storage group {0} failed", group_name); throw new TException(err_msg, e); } - var message = String.Format("set storage group {0} successfully", group_name); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("set storage group {0} successfully, server message is {1}", group_name, status.Message); + } return verify_success(status); } @@ -164,8 +184,10 @@ public int delete_storage_group(string group_name){ var err_msg = String.Format("delete storage group {0} failed", group_name); throw new TException(err_msg, e); } - var message = String.Format("delete storage group {0} successfully", group_name); - Console.WriteLine(message); + if(debug_mode){ + var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, status.Message); + _logger.Info(message); + } return verify_success(status); } public int delete_storage_groups(List group_names){ @@ -179,8 +201,9 @@ public int delete_storage_groups(List group_names){ var err_msg = String.Format("delete storage group(s) {0} failed", group_names); throw new TException(err_msg, e); } - var message = String.Format("delete storage group(s) {0} successfully", group_names); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, status.Message); + } return verify_success(status); } @@ -196,8 +219,9 @@ public int create_time_series(string ts_path, TSDataType data_type, TSEncoding e var err_msg = String.Format("create time series {0} failed", ts_path); throw new TException(err_msg, e); } - var message = String.Format("creating time series {0} successfully", ts_path); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); + } return verify_success(status); } @@ -216,8 +240,9 @@ public int create_multi_time_series(List ts_path_lst, List d var err_msg = String.Format("create multiple time series {0} failed", ts_path_lst); throw new TException(err_msg, e); } - var message = String.Format("creating multiple time series {0}", ts_path_lst); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("creating multiple time series {0}, server message is {1}", ts_path_lst, status.Message); + } return verify_success(status); } public int delete_time_series(List path_list){ @@ -231,8 +256,9 @@ public int delete_time_series(List path_list){ var err_msg = String.Format("delete time series {0} failed", path_list); throw new TException(err_msg, e); } - var message = String.Format("deleting multiple time series {0}", path_list); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("deleting multiple time series {0}, server message is {1}", path_list, status.Message); + } return verify_success(status); } public int delete_time_series(string ts_path){ @@ -261,8 +287,9 @@ public int delete_data(List ts_path_lst, long start_time, long end_time) var err_msg = String.Format("data deletion fails because"); throw new TException(err_msg, e); } - var message = String.Format("delete data from {0}", ts_path_lst); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("delete data from {0}, server message is {1}", ts_path_lst, status.Message); + } return verify_success(status); } public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp){ @@ -286,8 +313,9 @@ public int insert_record(string device_id, List measurements, List measurements, List values, List data_types, long timestamp){ diff --git a/client/SessionTest.cs b/client/SessionTest.cs index fcc48fc..bf6e5f5 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -15,6 +15,7 @@ public class SessionTest public void TestOpen(){ Session session = new Session("localhost", 6667, "root", "root"); + session.open_debug_mode(); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); session.close(); @@ -33,6 +34,7 @@ public void TestSetAndDeleteStorageGroup(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); + session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); System.Diagnostics.Debug.Assert(session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); @@ -43,6 +45,7 @@ public void TestCreateTimeSeries(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); + session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); @@ -58,6 +61,8 @@ public void TestCreateMultiTimeSeries(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); + session.open_debug_mode(); + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; @@ -73,6 +78,7 @@ public void TestDeleteTimeSeries(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); session.open(false); + session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; @@ -87,7 +93,9 @@ public void TestDeleteTimeSeries(){ public void TestDeleteStorageGroups(){ // by Luzhan var session = new Session("localhost", 6667, "root", "root"); - session.open(false); + session.open(false); + session.open_debug_mode(); + session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); @@ -104,6 +112,7 @@ public void TestDeleteStorageGroups(){ public void TestGetTimeZone(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); var time_zone = session.get_time_zone(); @@ -114,6 +123,7 @@ public void TestInsertStrRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -139,6 +149,7 @@ public void TestInsertRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -171,6 +182,7 @@ public void TestInsertRecord(){ public void TestInsertRecords(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -221,6 +233,7 @@ public void TestTestInsertRecord(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -253,6 +266,7 @@ public void TestTestInsertRecord(){ public void TestTestInsertRecords(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -296,6 +310,7 @@ public void TestTestInsertRecords(){ public void TestInsertRecordsOfOneDevice(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -335,6 +350,7 @@ public void TestInsertRecordsOfOneDevice(){ public void TestCheckTimeSeriesExists(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -351,6 +367,7 @@ public void TestCheckTimeSeriesExists(){ public void TestSetTimeZone(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); session.set_time_zone("GMT+8:00"); System.Diagnostics.Debug.Assert(session.get_time_zone() == "GMT+8:00"); session.close(); @@ -360,6 +377,7 @@ public void TestDeleteData(){ var session = new Session("localhost", 6667); int status = 0; session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -402,6 +420,7 @@ public void TestDeleteData(){ public void TestNonSql(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -427,6 +446,7 @@ public void TestNonSql(){ public void TestSqlQuery(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -479,6 +499,7 @@ public void TestSqlQuery(){ public void TestInsertTablet(){ var session = new Session("localhost", 6667); session.open(false); + session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -505,12 +526,13 @@ public void TestInsertTablet(){ static void Main(){ SessionTest session_test = new SessionTest(); - session_test.TestOpen(); - session_test.TestClose(); + + //session_test.TestOpen(); + //session_test.TestClose(); session_test.TestSetAndDeleteStorageGroup(); - session_test.TestCreateTimeSeries(); - session_test.TestDeleteTimeSeries(); - session_test.TestCreateMultiTimeSeries(); + //session_test.TestCreateTimeSeries(); + //session_test.TestDeleteTimeSeries(); + //session_test.TestCreateMultiTimeSeries(); //session_test.TestDeleteStorageGroups(); //session_test.TestGetTimeZone(); //session_test.TestInsertStrRecord(); From e83e59ec65bcc9a92e7272b2e4aa8a6c256bc6da Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 13 Apr 2021 11:43:02 +0800 Subject: [PATCH 053/214] add logger --- client/Session.cs | 63 ++++++++++++++++++++-------------- client/SessionTest.cs | 4 +-- client/utils/Field.cs | 10 ++---- client/utils/SessionDataSet.cs | 5 ++- client/utils/Tablet.cs | 14 +++----- 5 files changed, 48 insertions(+), 48 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 374792f..bd23483 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -339,8 +339,9 @@ public int insert_record(string device_id, List measurements, List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ @@ -379,8 +380,9 @@ public int insert_records(List device_id, List> measurement var err_msg = String.Format("Multiple records insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("insert multiple records to devices {0} message: {1}", device_id, status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + } return verify_success(status); } public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ @@ -396,8 +398,10 @@ public int test_insert_record(string device_id, List measurements, List< var err_msg = String.Format("Testing record insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("testing! insert one record to device {0} message: {1}", device_id, status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("testing! insert one record to device {0}, server message: {1}", device_id, status.Message); + } + return verify_success(status); } public int test_insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ @@ -413,8 +417,9 @@ public int test_insert_records(List device_id, List> measur var err_msg = String.Format("Testing multiple records insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("testing! insert multiple records, message: {0}", status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("testing! insert multiple records, server message: {0}", status.Message); + } return verify_success(status); } public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet){ @@ -437,9 +442,11 @@ public int insert_tablet(Tablet tablet){ catch(TException e){ var err_msg = String.Format("Tablet insertion failed"); throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); } - var message = String.Format("insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); - Console.WriteLine(message); + return verify_success(status); } public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst){ @@ -478,8 +485,9 @@ public int insert_tablets(List tablet_lst){ var err_msg = String.Format("Multiple tablets insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("insert multiple tablets, message: {0}", status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } return verify_success(status); } public int insert_records_of_one_device(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ @@ -537,8 +545,9 @@ public int insert_records_of_one_device_sorted(string device_id, List time var err_msg = String.Format("Sorted records of one device insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("insert records of one device, message: {0}", status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("insert records of one device, message: {0}", status.Message); + } return verify_success(status); } @@ -555,8 +564,9 @@ public int test_insert_tablet(Tablet tablet){ var err_msg = String.Format("Testing tablet insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("testing! insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("testing! insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); + } return verify_success(status); } public int test_insert_tablets(List tablet_lst){ @@ -572,8 +582,9 @@ public int test_insert_tablets(List tablet_lst){ var err_msg = String.Format("Testing multiple tablets insertion failed"); throw new TException(err_msg, e); } - var message = String.Format("testing! insert multiple tablets, message: {0}", status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("testing! insert multiple tablets, message: {0}", status.Message); + } return verify_success(status); } @@ -581,9 +592,9 @@ private int verify_success(TSStatus status){ if (status.Code == SUCCESS_CODE){ return 0; } - - var message = String.Format("error status is {0}", status); - Console.WriteLine(message); + if(debug_mode){ + _logger.Error("error status is {0}, server message is {1}", status.Code, status); + } return -1; } @@ -593,8 +604,9 @@ public void set_time_zone(string zoneId){ try{ var task = client.setTimeZoneAsync(req); task.Wait(); - var message = String.Format("setting time zone_id as {0}, message:{1}", zoneId, task.Result.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, task.Result.Message); + } } catch(TException e ){ var message = String.Format("could not set time zone"); @@ -653,8 +665,9 @@ public int execute_non_query_statement(string sql){ var err_msg = String.Format("execution of non-query statement failed"); throw new TException(err_msg, e); } - var message = String.Format("execute non-query statement {0} message: {1}", sql, status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + } return verify_success(status); } diff --git a/client/SessionTest.cs b/client/SessionTest.cs index bf6e5f5..186fc74 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -538,14 +538,14 @@ static void Main(){ //session_test.TestInsertStrRecord(); //session_test.TestInsertRecord(); //session_test.TestTestInsertRecord(); - //session_test.TestTestInsertRecords(); + session_test.TestTestInsertRecords(); //session_test.TestInsertRecordsOfOneDevice(); //session_test.TestCheckTimeSeriesExists(); //session_test.TestSetTimeZone(); //session_test.TestDeleteData(); //session_test.TestNonSql(); //session_test.TestSqlQuery(); - //session_test.TestInsertRecords(); + session_test.TestInsertRecords(); session_test.TestInsertTablet(); System.Console.WriteLine("TEST PASSED"); diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 9a8960d..04c0278 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using Thrift; namespace iotdb_client_csharp.client.utils { public class Field @@ -18,12 +19,6 @@ public class Field public Field(TSDataType data_type){ this.type = data_type; } - public void valid_data_type(){ - if(type == TSDataType.NONE){ - throw new Exception("CanNot Set A None Type"); - } - } - public void set(string value){ str_val = value; @@ -85,8 +80,7 @@ public byte[] get_bytes(){ break; case TSDataType.NONE: var err_msg = string.Format("NONE type does not support get bytes"); - Console.WriteLine(err_msg); - throw new Exception(err_msg); + throw new TException(err_msg, null); } return buffer.get_buffer(); } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index e768427..f899cc3 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -234,9 +234,8 @@ private bool fetch_results(){ return resp.HasResultSet; } catch(TException e){ - var message = string.Format("Cannot fetch result from server, because of network connection:{0}", e); - Console.WriteLine(message); - throw; + var message = string.Format("Cannot fetch result from server, because of network connection"); + throw new TException(message, e); } } public void close_operation_handle(){ diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 93ae915..cd4f3e8 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Thrift; namespace iotdb_client_csharp.client.utils { /* @@ -31,13 +32,11 @@ public class Tablet public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ if(timestamp_lst.Count != value_lst.Count){ var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); - Console.WriteLine(err_msg); - throw new Exception("input length not matched"); + throw new TException(err_msg, null); } if(measurement_lst.Count != data_type_lst.Count){ var err_msg = string.Format("Input Error, len(measurement_lst) does not equal to len(data_type_lst)"); - Console.WriteLine(err_msg); - throw new Exception("input length not matched"); + throw new TException(err_msg, null); } if(!check_timestamp_lst_sorted(timestamp_lst)){ var sorted = timestamp_lst.Select((x, index) => (timestamp:x, values:value_lst[index])).OrderBy(x => x.timestamp).ToList(); @@ -77,13 +76,11 @@ public byte[] get_binary_values(){ switch(data_type_lst[i]){ case TSDataType.BOOLEAN: for(int j=0; j< row_number; j++){ - Console.WriteLine(value_lst[j][i]); buffer.add_bool(bool.Parse(value_lst[j][i])); } break; case TSDataType.INT32: for(int j=0; j Date: Tue, 13 Apr 2021 11:47:06 +0800 Subject: [PATCH 054/214] Add tablet tests --- client/SessionTest.cs | 94 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 2 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index fcc48fc..e91ace9 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -500,8 +500,95 @@ public void TestInsertTablet(){ session.close(); Console.WriteLine("TestInsertTablet Passed!"); } - - + public void TestTestInsertTablet(){ + var session = new Session("localhost", 6667); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + List measurement_lst = new List{"TS1", "TS2", "TS3"}; + List datatype_lst = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + List> value_lst = new List>{new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}; + List timestamp_lst = new List{2, 1, 3}; + var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + status = session.test_insert_tablet(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + // System.Diagnostics.Debug.Assert(status == 0); + session.close(); + Console.WriteLine("TestTestInsertTablet Passed!"); + } + public void TestInsertTablets(){ + var session = new Session("localhost", 6667); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; + List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; + List> datatypes_lst = new List>(){new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }, new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }}; + List>> values_lst = new List>>(){new List>(){new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}, new List>(){new List{"iotdb_2", true.ToString(), 1.ToString()}, new List{"c#_2", false.ToString(), 2.ToString()}, new List{"client_2", true.ToString(), 3.ToString()}}}; + List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; + List tablets = new List(){}; + for(int i = 0;i < device_id.Count; i++){ + var tablet = new Tablet(device_id[i], measurements_lst[i], datatypes_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + status = session.insert_tablets(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.close(); + Console.WriteLine("TestInsertTablets Passed!"); + } + public void TestTestInsertTablets(){ + var session = new Session("localhost", 6667); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; + List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; + List> datatypes_lst = new List>(){new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }, new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }}; + List>> values_lst = new List>>(){new List>(){new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}, new List>(){new List{"iotdb_2", true.ToString(), 1.ToString()}, new List{"c#_2", false.ToString(), 2.ToString()}, new List{"client_2", true.ToString(), 3.ToString()}}}; + List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; + List tablets = new List(){}; + for(int i = 0;i < device_id.Count; i++){ + var tablet = new Tablet(device_id[i], measurements_lst[i], datatypes_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + status = session.test_insert_tablets(tablets); + System.Diagnostics.Debug.Assert(status == 0); + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session.close(); + Console.WriteLine("TestTestInsertTablets Passed!"); + } static void Main(){ SessionTest session_test = new SessionTest(); @@ -525,6 +612,9 @@ static void Main(){ //session_test.TestSqlQuery(); //session_test.TestInsertRecords(); session_test.TestInsertTablet(); + session_test.TestTestInsertTablet(); + session_test.TestInsertTablets(); + session_test.TestTestInsertTablets(); System.Console.WriteLine("TEST PASSED"); } From eff94b8efdebab587de16e2f676f0206b8cbf754 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 13 Apr 2021 11:48:48 +0800 Subject: [PATCH 055/214] add test code --- client/Session.cs | 3 +++ client/SessionTest.cs | 39 ++++++++++++++++----------------------- 2 files changed, 19 insertions(+), 23 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index bd23483..704878b 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -81,6 +81,9 @@ public void open_debug_mode(NLog.Config.LoggingConfiguration config=null){ _logger = NLog.LogManager.GetCurrentClassLogger(); } } + public void close_debug_mode(){ + this.debug_mode = false; + } public void open(bool enableRPCCompression){ if(!is_close){ return ; diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 186fc74..8521031 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -236,7 +236,6 @@ public void TestTestInsertRecord(){ session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -354,7 +353,6 @@ public void TestCheckTimeSeriesExists(){ System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); var ifExist_1 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); var ifExist_2 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); @@ -380,7 +378,6 @@ public void TestDeleteData(){ session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -424,7 +421,6 @@ public void TestNonSql(){ System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); @@ -450,7 +446,6 @@ public void TestSqlQuery(){ System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); @@ -525,26 +520,24 @@ public void TestInsertTablet(){ static void Main(){ SessionTest session_test = new SessionTest(); - - - //session_test.TestOpen(); - //session_test.TestClose(); + session_test.TestOpen(); + session_test.TestClose(); session_test.TestSetAndDeleteStorageGroup(); - //session_test.TestCreateTimeSeries(); - //session_test.TestDeleteTimeSeries(); - //session_test.TestCreateMultiTimeSeries(); - //session_test.TestDeleteStorageGroups(); - //session_test.TestGetTimeZone(); - //session_test.TestInsertStrRecord(); - //session_test.TestInsertRecord(); - //session_test.TestTestInsertRecord(); + session_test.TestCreateTimeSeries(); + session_test.TestDeleteTimeSeries(); + session_test.TestCreateMultiTimeSeries(); + session_test.TestDeleteStorageGroups(); + session_test.TestGetTimeZone(); + session_test.TestInsertStrRecord(); + session_test.TestInsertRecord(); + session_test.TestTestInsertRecord(); session_test.TestTestInsertRecords(); - //session_test.TestInsertRecordsOfOneDevice(); - //session_test.TestCheckTimeSeriesExists(); - //session_test.TestSetTimeZone(); - //session_test.TestDeleteData(); - //session_test.TestNonSql(); - //session_test.TestSqlQuery(); + session_test.TestInsertRecordsOfOneDevice(); + session_test.TestCheckTimeSeriesExists(); + session_test.TestSetTimeZone(); + session_test.TestDeleteData(); + session_test.TestNonSql(); + session_test.TestSqlQuery(); session_test.TestInsertRecords(); session_test.TestInsertTablet(); System.Console.WriteLine("TEST PASSED"); From da496db25cd9b0aa05325b578dbf84171caccd40 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 13 Apr 2021 12:29:37 +0800 Subject: [PATCH 056/214] fix test status --- client/Session.cs | 11 +++++++++++ client/SessionTest.cs | 1 + 2 files changed, 12 insertions(+) diff --git a/client/Session.cs b/client/Session.cs index 704878b..c86de53 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -592,6 +592,17 @@ public int test_insert_tablets(List tablet_lst){ } private int verify_success(TSStatus status){ + if(status.__isset.subStatus){ + foreach(var sub_status in status.SubStatus){ + if(verify_success(sub_status) != 0){ + if(debug_mode){ + _logger.Error("error status is {0}, server message is {1}", status.Code, status); + } + return -1; + } + } + return 0; + } if (status.Code == SUCCESS_CODE){ return 0; } diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 8521031..64ea1d3 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -520,6 +520,7 @@ public void TestInsertTablet(){ static void Main(){ SessionTest session_test = new SessionTest(); + session_test.TestOpen(); session_test.TestClose(); session_test.TestSetAndDeleteStorageGroup(); From 7e186af01009edb573440a618d01cbfed43ed918 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 13 Apr 2021 12:31:59 +0800 Subject: [PATCH 057/214] remove some code --- client/SessionTest.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 2ba5bea..3dc0b8d 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -335,7 +335,7 @@ public void TestInsertRecordsOfOneDevice(){ List timestamp_lst = new List(){1, 2, 3}; status = session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); - // System.Diagnostics.Debug.Assert(status == 0); + System.Diagnostics.Debug.Assert(status == 0); var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ @@ -536,7 +536,7 @@ public void TestTestInsertTablet(){ Console.WriteLine(res.next()); } session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - // System.Diagnostics.Debug.Assert(status == 0); + System.Diagnostics.Debug.Assert(status == 0); session.close(); Console.WriteLine("TestTestInsertTablet Passed!"); } From 0c9fdf51b84ca187c99b63fc71b5b04c0465d4e4 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Tue, 13 Apr 2021 17:32:05 +0800 Subject: [PATCH 058/214] add the structure of README --- README.md | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++-- README_ZH.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 132 insertions(+), 2 deletions(-) create mode 100644 README_ZH.md diff --git a/README.md b/README.md index 5b3ab78..1d3e71e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,67 @@ -# iotdb-client-csharp -c# client for iotdb + +[English](./README.md) | [中文](./README_ZH.md) + +# Apache IoTDB Client for C# + +## Overview + +This is the C# client of Apache IoTDB. + +[Apache IoTDB](https://iotdb.apache.org) (Internet of Things Database) is a data management system for time series data, which can provide users specific services, such as, data collection, storage and analysis. Due to its light weight structure, high performance and usable features together with its seamless integration with the Hadoop and Spark ecology, IoTDB meets the requirements of massive dataset storage, high throughput data input, and complex data analysis in the industrial IoT field. + +Apache IoTDB website: https://iotdb.apache.org +Apache IoTDB Github: https://github.com/apache/iotdb + +## How to Compile the Client + +## Prerequisites + + csharp + +## How to Use the Client (Quick Start) + + + +```sh + +``` + + + +```sh +# get thrift 0.13.0 + +``` + +## Developer environment requirements for iotdb-client-csharp + +### OS + +* Linux, Macos or other unix-like OS +* Windows+bash(WSL, cygwin, Git Bash) + +### Command Line Tools + +* +* +* +* thrift 0.13.x \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md new file mode 100644 index 0000000..02d8c0b --- /dev/null +++ b/README_ZH.md @@ -0,0 +1,65 @@ + +[English](./README.md) | [中文](./README_ZH.md) + +# Apache IoTDB C#语言客户端 + +## 概览 + +本仓库是Apache IoTDB的C#语言客户端. + +Apache IoTDB website: https://iotdb.apache.org +Apache IoTDB Github: https://github.com/apache/iotdb + +## 如何编译 + +## 环境准备 + + dotnet + +## 如何使用 (快速上手) + + + +```sh + +``` + + + +```sh +# get thrift 0.13.0 + +``` + +## iotdb-client-csharp的开发者环境要求 + +### 操作系统 + +* Linux、Macos或其他类unix系统 +* Windows+bash(WSL、cygwin、Git Bash) + +### 命令行工具 + +* +* +* +* thrift 0.13.x \ No newline at end of file From 952b97a4f66b1236674b9019c0dad629dbc2e893 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 14 Apr 2021 10:05:44 +0800 Subject: [PATCH 059/214] add README --- README_ZH.md | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/README_ZH.md b/README_ZH.md index 02d8c0b..db31bef 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -24,33 +24,35 @@ ## 概览 -本仓库是Apache IoTDB的C#语言客户端. +本仓库是Apache IoTDB的C#语言客户端,与其他语言支持相同语义的用户接口。 Apache IoTDB website: https://iotdb.apache.org -Apache IoTDB Github: https://github.com/apache/iotdb - -## 如何编译 - -## 环境准备 - dotnet +Apache IoTDB Github: https://github.com/apache/iotdb -## 如何使用 (快速上手) +## 如何安装 +### 从Nuget Package安装 +我们为CSharp用户准备了NuGet包,用户可直接通过.NET CLI进行客户端安装,[NuGet包链接如下](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0),命令行中运行如下命令即可完成安装 + + dotnet add package iotdb_client_csharp --version 0.12.0 -```sh +## 环境准备 -``` + .NET SDK Version == 5.0 +## 如何使用 (快速上手) +用户可参考[SessionTest.cs](https://github.com/eedalong/iotdb-client-csharp/blob/main/client/SessionTest.cs)中的测试代码了解各个接口使用方式 -```sh -# get thrift 0.13.0 -``` ## iotdb-client-csharp的开发者环境要求 + .NET SDK Version == 5.0 + ApacheThrift >= 0.14.1 + NLog >= 4.7.9 + ### 操作系统 @@ -58,8 +60,3 @@ Apache IoTDB Github: https://github.com/apache/iotdb * Windows+bash(WSL、cygwin、Git Bash) ### 命令行工具 - -* -* -* -* thrift 0.13.x \ No newline at end of file From 2cd87bde31557cc555e5ccbeba499fb2305fe022 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 14 Apr 2021 10:16:47 +0800 Subject: [PATCH 060/214] add apache license --- LICENSE | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e69de29 From 45d280c1d32f303ee79cc078e62d1efecae0b1a6 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 14 Apr 2021 10:17:35 +0800 Subject: [PATCH 061/214] add license --- LICENSE | 236 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 236 insertions(+) diff --git a/LICENSE b/LICENSE index e69de29..b07d2b3 100644 --- a/LICENSE +++ b/LICENSE @@ -0,0 +1,236 @@ +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- + APACHE IOTDB SUBCOMPONENTS +-------------------------------------------------------------------------------- + +The following class is copied from maven-wrapper (https://github.com/takari/maven-wrapper), +which is under Apache License 2.0: + +./.mvn/wrapper/MavenWrapperDownloader.java + +-------------------------------------------------------------------------------- + +The following class is modified from Apache commons-collections + +./tsfile/src/main/java/org/apache/iotdb/tsfile/utils/Murmur128Hash.java +Relevant pr is: https://github.com/apache/commons-collections/pull/83/ + +-------------------------------------------------------------------------------- + +The following files include code modified from Michael Burman's gorilla-tsc project. + +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/encoder/GorillaEncoderV2.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/encoder/IntGorillaEncoder.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/encoder/LongGorillaEncoder.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/encoder/SinglePrecisionEncoderV2.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/encoder/DoublePrecisionEncoderV2.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/decoder/GorillaDecoderV2.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/decoder/IntGorillaDecoder.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/decoder/LongGorillaDecoder.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/decoder/SinglePrecisionDecoderV2.java +./tsfile/src/main/java/org/apache/iotdb/tsfile/encoding/decoder/DoublePrecisionDecoderV2.java + +Copyright: 2016-2018 Michael Burman and/or other contributors +Project page: https://github.com/burmanm/gorilla-tsc +License: http://www.apache.org/licenses/LICENSE-2.0 \ No newline at end of file From 4b3ee6596b6f2bdccb7b57d50b17c707871fa5f7 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Wed, 14 Apr 2021 10:28:57 +0800 Subject: [PATCH 062/214] add README in English --- README.md | 30 ++++++++++++++---------------- README_ZH.md | 10 +++++----- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 1d3e71e..0071a65 100644 --- a/README.md +++ b/README.md @@ -31,37 +31,35 @@ This is the C# client of Apache IoTDB. Apache IoTDB website: https://iotdb.apache.org Apache IoTDB Github: https://github.com/apache/iotdb -## How to Compile the Client - -## Prerequisites - - csharp - -## How to Use the Client (Quick Start) +## Installation +### Install from NuGet Package +We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0). Run the following command in the command line to complete installation ```sh - +dotnet add package iotdb_client_csharp --version 0.12.0 ``` +## Prerequisites + .NET SDK Version == 5.0 -```sh -# get thrift 0.13.0 +## How to Use the Client (Quick Start) -``` +Users can refer to the test code in [SessionTest.cs](https://github.com/eedalong/iotdb-client-csharp/blob/main/client/SessionTest.cs) to understand the usage mode of each interface. ## Developer environment requirements for iotdb-client-csharp +``` +.NET SDK Version == 5.0 +ApacheThrift >= 0.14.1 +NLog >= 4.7.9 +``` + ### OS * Linux, Macos or other unix-like OS * Windows+bash(WSL, cygwin, Git Bash) ### Command Line Tools - -* -* -* -* thrift 0.13.x \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md index db31bef..10e169d 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -31,11 +31,13 @@ Apache IoTDB website: https://iotdb.apache.org Apache IoTDB Github: https://github.com/apache/iotdb ## 如何安装 -### 从Nuget Package安装 +### 从NuGet Package安装 我们为CSharp用户准备了NuGet包,用户可直接通过.NET CLI进行客户端安装,[NuGet包链接如下](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0),命令行中运行如下命令即可完成安装 - dotnet add package iotdb_client_csharp --version 0.12.0 +```sh +dotnet add package iotdb_client_csharp --version 0.12.0 +``` ## 环境准备 @@ -46,13 +48,11 @@ Apache IoTDB Github: https://github.com/apache/iotdb 用户可参考[SessionTest.cs](https://github.com/eedalong/iotdb-client-csharp/blob/main/client/SessionTest.cs)中的测试代码了解各个接口使用方式 - - ## iotdb-client-csharp的开发者环境要求 .NET SDK Version == 5.0 ApacheThrift >= 0.14.1 NLog >= 4.7.9 - + ### 操作系统 From 613a9ddb64f26dd30069e43c23e4556a44182fc9 Mon Sep 17 00:00:00 2001 From: dalong Date: Mon, 19 Apr 2021 18:28:46 +0800 Subject: [PATCH 063/214] fix remote server access bug --- client/Session.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/client/Session.cs b/client/Session.cs index c86de53..265918a 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -8,6 +8,7 @@ using Thrift.Transport.Client; using iotdb_client_csharp.client.utils; using NLog; +using System.Net.Sockets; namespace iotdb_client_csharp.client { @@ -88,7 +89,10 @@ public void open(bool enableRPCCompression){ if(!is_close){ return ; } - this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); + + TcpClient tcp_client = new TcpClient(this.host, this.port); + this.transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); + //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ var task = transport.OpenAsync(new CancellationToken()); From 4c35a548879ddcaa6b28c3b0d3846573b2d03a83 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 19 Apr 2021 18:41:36 +0800 Subject: [PATCH 064/214] fix remote server access bug --- client/Session.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/client/Session.cs b/client/Session.cs index c86de53..265918a 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -8,6 +8,7 @@ using Thrift.Transport.Client; using iotdb_client_csharp.client.utils; using NLog; +using System.Net.Sockets; namespace iotdb_client_csharp.client { @@ -88,7 +89,10 @@ public void open(bool enableRPCCompression){ if(!is_close){ return ; } - this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); + + TcpClient tcp_client = new TcpClient(this.host, this.port); + this.transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); + //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ var task = transport.OpenAsync(new CancellationToken()); From 7ae25e66217d1f0808c81945f019efc09947753f Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 19 Apr 2021 18:54:18 +0800 Subject: [PATCH 065/214] #7 fix remote server access error --- client/Session.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/client/Session.cs b/client/Session.cs index 265918a..a70c117 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -92,6 +92,7 @@ public void open(bool enableRPCCompression){ TcpClient tcp_client = new TcpClient(this.host, this.port); this.transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); + // this will fail remote server access //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ From f55b6f0979773021780e1bb6d5bffed072522286 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 19 Apr 2021 19:49:50 +0800 Subject: [PATCH 066/214] polish test code --- client/SessionTest.cs | 52 ++++++++++++++++++++++--------------------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 3dc0b8d..d680382 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -6,15 +6,17 @@ /* group: root.97209_TEST_CSHARP_CLIENT_GROUP timeseries: root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TSX; - */ namespace iotdb_client_csharp.client { public class SessionTest { - + public string host = "localhost"; + public int port = 6667; + public string user = "root"; + public string passwd = "root"; public void TestOpen(){ - Session session = new Session("localhost", 6667, "root", "root"); + Session session = new Session(host, port, "root", "root"); session.open_debug_mode(); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); @@ -23,7 +25,7 @@ public void TestOpen(){ } public void TestClose(){ - var session = new Session("localhost", 6667, "root", "root"); + var session = new Session(host, port, "root", "root"); session.open(false); session.close(); System.Diagnostics.Debug.Assert(!session.is_open()); @@ -32,7 +34,7 @@ public void TestClose(){ } public void TestSetAndDeleteStorageGroup(){ // by Luzhan - var session = new Session("localhost", 6667, "root", "root"); + var session = new Session(host, port, "root", "root"); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -43,7 +45,7 @@ public void TestSetAndDeleteStorageGroup(){ } public void TestCreateTimeSeries(){ // by Luzhan - var session = new Session("localhost", 6667, "root", "root"); + var session = new Session(host, port, "root", "root"); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -59,7 +61,7 @@ public void TestCreateTimeSeries(){ } public void TestCreateMultiTimeSeries(){ // by Luzhan - var session = new Session("localhost", 6667, "root", "root"); + var session = new Session(host, port, "root", "root"); session.open(false); session.open_debug_mode(); @@ -76,7 +78,7 @@ public void TestCreateMultiTimeSeries(){ } public void TestDeleteTimeSeries(){ // by Luzhan - var session = new Session("localhost", 6667, "root", "root"); + var session = new Session(host, port, "root", "root"); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -92,7 +94,7 @@ public void TestDeleteTimeSeries(){ } public void TestDeleteStorageGroups(){ // by Luzhan - var session = new Session("localhost", 6667, "root", "root"); + var session = new Session(host, port, "root", "root"); session.open(false); session.open_debug_mode(); @@ -110,7 +112,7 @@ public void TestDeleteStorageGroups(){ System.Console.WriteLine("TestDeleteStorageGroups Passed!"); } public void TestGetTimeZone(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -120,7 +122,7 @@ public void TestGetTimeZone(){ Console.WriteLine("TestGetTimeZone Passed!"); } public void TestInsertStrRecord(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); int status = 0; session.open(false); session.open_debug_mode(); @@ -146,7 +148,7 @@ public void TestInsertStrRecord(){ Console.WriteLine("TestInsertStrRecord Passed!"); } public void TestInsertRecord(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); int status = 0; session.open(false); session.open_debug_mode(); @@ -180,7 +182,7 @@ public void TestInsertRecord(){ Console.WriteLine("TestInsertRecord Passed!"); } public void TestInsertRecords(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -230,7 +232,7 @@ public void TestInsertRecords(){ Console.WriteLine("TestInsertRecords Passed!"); } public void TestTestInsertRecord(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); int status = 0; session.open(false); session.open_debug_mode(); @@ -263,7 +265,7 @@ public void TestTestInsertRecord(){ } public void TestTestInsertRecords(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -307,7 +309,7 @@ public void TestTestInsertRecords(){ Console.WriteLine("TestTestInsertRecords Passed!"); } public void TestInsertRecordsOfOneDevice(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -347,7 +349,7 @@ public void TestInsertRecordsOfOneDevice(){ Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); } public void TestCheckTimeSeriesExists(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -363,7 +365,7 @@ public void TestCheckTimeSeriesExists(){ Console.WriteLine("TestCheckTimeSeriesExists Passed!"); } public void TestSetTimeZone(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); session.set_time_zone("GMT+8:00"); @@ -372,7 +374,7 @@ public void TestSetTimeZone(){ Console.WriteLine("TestSetTimeZone Passed!"); } public void TestDeleteData(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); int status = 0; session.open(false); session.open_debug_mode(); @@ -415,7 +417,7 @@ public void TestDeleteData(){ Console.WriteLine("TestDeleteData Passed!"); } public void TestNonSql(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -440,7 +442,7 @@ public void TestNonSql(){ Console.WriteLine("TestNonSql Passed"); } public void TestSqlQuery(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -492,7 +494,7 @@ public void TestSqlQuery(){ } public void TestInsertTablet(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); session.open_debug_mode(); System.Diagnostics.Debug.Assert(session.is_open()); @@ -517,7 +519,7 @@ public void TestInsertTablet(){ Console.WriteLine("TestInsertTablet Passed!"); } public void TestTestInsertTablet(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; @@ -541,7 +543,7 @@ public void TestTestInsertTablet(){ Console.WriteLine("TestTestInsertTablet Passed!"); } public void TestInsertTablets(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; @@ -574,7 +576,7 @@ public void TestInsertTablets(){ Console.WriteLine("TestInsertTablets Passed!"); } public void TestTestInsertTablets(){ - var session = new Session("localhost", 6667); + var session = new Session(host, port); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; From 6f6b0831c687cd003487ee76f497e7791ed3175e Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 19 Apr 2021 19:51:09 +0800 Subject: [PATCH 067/214] polish test code --- client/SessionTest.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index d680382..556cddf 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -16,7 +16,7 @@ public class SessionTest public string user = "root"; public string passwd = "root"; public void TestOpen(){ - Session session = new Session(host, port, "root", "root"); + Session session = new Session(host, port, user, passwd); session.open_debug_mode(); session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); @@ -25,7 +25,7 @@ public void TestOpen(){ } public void TestClose(){ - var session = new Session(host, port, "root", "root"); + var session = new Session(host, port, user, passwd); session.open(false); session.close(); System.Diagnostics.Debug.Assert(!session.is_open()); @@ -34,7 +34,7 @@ public void TestClose(){ } public void TestSetAndDeleteStorageGroup(){ // by Luzhan - var session = new Session(host, port, "root", "root"); + var session = new Session(host, port, user, passwd); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -45,7 +45,7 @@ public void TestSetAndDeleteStorageGroup(){ } public void TestCreateTimeSeries(){ // by Luzhan - var session = new Session(host, port, "root", "root"); + var session = new Session(host, port, user, passwd); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -61,7 +61,7 @@ public void TestCreateTimeSeries(){ } public void TestCreateMultiTimeSeries(){ // by Luzhan - var session = new Session(host, port, "root", "root"); + var session = new Session(host, port, user, passwd); session.open(false); session.open_debug_mode(); @@ -78,7 +78,7 @@ public void TestCreateMultiTimeSeries(){ } public void TestDeleteTimeSeries(){ // by Luzhan - var session = new Session(host, port, "root", "root"); + var session = new Session(host, port, user, passwd); session.open(false); session.open_debug_mode(); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -94,7 +94,7 @@ public void TestDeleteTimeSeries(){ } public void TestDeleteStorageGroups(){ // by Luzhan - var session = new Session(host, port, "root", "root"); + var session = new Session(host, port, user, passwd); session.open(false); session.open_debug_mode(); From eceaf419778b213056a1bcd1873dcc23290dad3d Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 19 Apr 2021 20:11:28 +0800 Subject: [PATCH 068/214] fix #9 initilize fetch_size in SessionDataset --- client/Session.cs | 4 +++- client/SessionTest.cs | 25 +++++++++++++++++++++++++ client/utils/SessionDataSet.cs | 2 +- 3 files changed, 29 insertions(+), 2 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index a70c117..e0e65f9 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -667,7 +667,9 @@ public SessionDataSet execute_query_statement(string sql){ if(verify_success(status) == -1){ throw new TException("execute query failed", null); } - return new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); + var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); + session_dataset.fetch_size = fetch_size; + return session_dataset; } public int execute_non_query_statement(string sql){ diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 556cddf..0ad5b7f 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -15,6 +15,7 @@ public class SessionTest public int port = 6667; public string user = "root"; public string passwd = "root"; + public int fetch_size = 10; public void TestOpen(){ Session session = new Session(host, port, user, passwd); session.open_debug_mode(); @@ -607,6 +608,29 @@ public void TestTestInsertTablets(){ session.close(); Console.WriteLine("TestTestInsertTablets Passed!"); } + void TestLargeData(){ + var session = new Session(host, port, user, passwd, fetch_size); + session.open(false); + System.Diagnostics.Debug.Assert(session.is_open()); + int status = 0; + status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + for(var timestamp = 0; timestamp < fetch_size * 4; timestamp++){ + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; + var values = new List{"test_record", "test_record"}; + status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); + System.Diagnostics.Debug.Assert(status == 0); + } + var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session.close(); + Console.WriteLine("TestTestInsertTablet Passed!"); + + } static void Main(){ SessionTest session_test = new SessionTest(); @@ -633,6 +657,7 @@ static void Main(){ session_test.TestTestInsertTablet(); session_test.TestInsertTablets(); session_test.TestTestInsertTablets(); + session_test.TestLargeData(); System.Console.WriteLine("TEST PASSED"); } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index f899cc3..c69163d 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -217,7 +217,7 @@ private bool fetch_results(){ try{ var task = client.fetchResultsAsync(req); task.Wait(); - var resp = task.Result; + var resp = task.Result; if(resp.HasResultSet){ this.query_dataset = resp.QueryDataSet; // reset buffer From eee0d85b3fe0ff17967c4c128c3cb0d2536aba76 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 19 Apr 2021 21:06:40 +0800 Subject: [PATCH 069/214] add large data test --- client/Session.cs | 1 - client/SessionTest.cs | 105 +++++++++++++++++++++++++++++------------- 2 files changed, 74 insertions(+), 32 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index e0e65f9..1e119a8 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -310,7 +310,6 @@ public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List< public int insert_record(string device_id, List measurements, List values, long timestamp){ // TBD by Luzhan var req = gen_insert_str_record_req(device_id, measurements, values, timestamp); - Console.WriteLine(req); TSStatus status; try{ var task = client.insertStringRecordAsync(req); diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 0ad5b7f..887fd35 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -15,14 +15,17 @@ public class SessionTest public int port = 6667; public string user = "root"; public string passwd = "root"; - public int fetch_size = 10; + public int fetch_size = 5000; + public bool debug = false; public void TestOpen(){ Session session = new Session(host, port, user, passwd); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.open(false); System.Diagnostics.Debug.Assert(session.is_open()); session.close(); - System.Console.WriteLine("TestOpen Passed!"); + Console.WriteLine("TestOpen Passed!"); } public void TestClose(){ @@ -30,25 +33,29 @@ public void TestClose(){ session.open(false); session.close(); System.Diagnostics.Debug.Assert(!session.is_open()); - System.Console.WriteLine("TestClose Passed!"); + Console.WriteLine("TestClose Passed!"); } public void TestSetAndDeleteStorageGroup(){ // by Luzhan var session = new Session(host, port, user, passwd); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); System.Diagnostics.Debug.Assert(session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); session.close(); - System.Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); + Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } public void TestCreateTimeSeries(){ // by Luzhan var session = new Session(host, port, user, passwd); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); @@ -58,13 +65,15 @@ public void TestCreateTimeSeries(){ System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); - System.Console.WriteLine("TestCreateTimeSeries Passed!"); + Console.WriteLine("TestCreateTimeSeries Passed!"); } public void TestCreateMultiTimeSeries(){ // by Luzhan var session = new Session(host, port, user, passwd); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; @@ -74,14 +83,16 @@ public void TestCreateMultiTimeSeries(){ System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); - System.Console.WriteLine("TestCreateMultiTimeSeries Passed!"); + Console.WriteLine("TestCreateMultiTimeSeries Passed!"); } public void TestDeleteTimeSeries(){ // by Luzhan var session = new Session(host, port, user, passwd); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; @@ -89,7 +100,7 @@ public void TestDeleteTimeSeries(){ List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); System.Diagnostics.Debug.Assert(session.delete_time_series(ts_path_lst)==0); - System.Console.WriteLine("TestDeleteTimeSeries Passed!"); + Console.WriteLine("TestDeleteTimeSeries Passed!"); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); } @@ -97,7 +108,9 @@ public void TestDeleteStorageGroups(){ // by Luzhan var session = new Session(host, port, user, passwd); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); @@ -110,12 +123,14 @@ public void TestDeleteStorageGroups(){ group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); System.Diagnostics.Debug.Assert(session.delete_storage_groups(group_names)==0); session.close(); - System.Console.WriteLine("TestDeleteStorageGroups Passed!"); + Console.WriteLine("TestDeleteStorageGroups Passed!"); } public void TestGetTimeZone(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session.is_open()); var time_zone = session.get_time_zone(); @@ -126,7 +141,9 @@ public void TestInsertStrRecord(){ var session = new Session(host, port); int status = 0; session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -152,7 +169,9 @@ public void TestInsertRecord(){ var session = new Session(host, port); int status = 0; session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -185,7 +204,9 @@ public void TestInsertRecord(){ public void TestInsertRecords(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -236,7 +257,9 @@ public void TestTestInsertRecord(){ var session = new Session(host, port); int status = 0; session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -268,7 +291,9 @@ public void TestTestInsertRecord(){ public void TestTestInsertRecords(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -312,7 +337,9 @@ public void TestTestInsertRecords(){ public void TestInsertRecordsOfOneDevice(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -352,7 +379,9 @@ public void TestInsertRecordsOfOneDevice(){ public void TestCheckTimeSeriesExists(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -368,7 +397,9 @@ public void TestCheckTimeSeriesExists(){ public void TestSetTimeZone(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } session.set_time_zone("GMT+8:00"); System.Diagnostics.Debug.Assert(session.get_time_zone() == "GMT+8:00"); session.close(); @@ -378,7 +409,9 @@ public void TestDeleteData(){ var session = new Session(host, port); int status = 0; session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -420,7 +453,9 @@ public void TestDeleteData(){ public void TestNonSql(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -445,7 +480,9 @@ public void TestNonSql(){ public void TestSqlQuery(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -497,7 +534,9 @@ public void TestSqlQuery(){ public void TestInsertTablet(){ var session = new Session(host, port); session.open(false); - session.open_debug_mode(); + if(debug){ + session.open_debug_mode(); + } System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -614,7 +653,8 @@ void TestLargeData(){ System.Diagnostics.Debug.Assert(session.is_open()); int status = 0; status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - for(var timestamp = 0; timestamp < fetch_size * 4; timestamp++){ + int record_inserted_count = fetch_size * 4; + for(var timestamp = 0; timestamp < record_inserted_count; timestamp++){ var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; var values = new List{"test_record", "test_record"}; status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); @@ -622,14 +662,17 @@ void TestLargeData(){ } var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); + int res_count = 0; while(res.has_next()){ - Console.WriteLine(res.next()); + res.next(); + res_count += 1; } + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); + System.Diagnostics.Debug.Assert(record_inserted_count == res_count); session.close(); Console.WriteLine("TestTestInsertTablet Passed!"); - } static void Main(){ SessionTest session_test = new SessionTest(); @@ -658,7 +701,7 @@ static void Main(){ session_test.TestInsertTablets(); session_test.TestTestInsertTablets(); session_test.TestLargeData(); - System.Console.WriteLine("TEST PASSED"); + Console.WriteLine("TEST PASSED"); } } From 77c42d70e95349dd740e045017efe2a7d4d8cf1f Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Tue, 20 Apr 2021 23:29:53 +0800 Subject: [PATCH 070/214] add large data test --- client/SessionTest.cs | 191 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 191 insertions(+) diff --git a/client/SessionTest.cs b/client/SessionTest.cs index 887fd35..8ef786d 100644 --- a/client/SessionTest.cs +++ b/client/SessionTest.cs @@ -161,6 +161,18 @@ public void TestInsertStrRecord(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + for(int timestamp = 2; timestamp <=fetch_size * 4; timestamp++){ + session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); + } + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); Console.WriteLine("TestInsertStrRecord Passed!"); @@ -197,6 +209,18 @@ public void TestInsertRecord(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + for(int timestamp = 5; timestamp <= fetch_size * 4; timestamp++){ + session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); + } + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); Console.WriteLine("TestInsertRecord Passed!"); @@ -248,6 +272,31 @@ public void TestInsertRecords(){ Console.WriteLine(res.next()); } Console.WriteLine(status); + + // large data test + device_id = new List(){}; + values_lst = new List>(){}; + measurements_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + values_lst.Add(new List(){"true", 123.ToString()}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + timestamp_lst.Add(timestamp); + } + status = session.insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int record_count = fetch_size * 4; + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -282,6 +331,17 @@ public void TestTestInsertRecord(){ while(res.has_next()){ Console.WriteLine(res.next()); } + // large data test + for(int timestamp = 5; timestamp <= fetch_size * 4; timestamp++){ + session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); + } + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == 0); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -329,6 +389,29 @@ public void TestTestInsertRecords(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + device_id = new List(){}; + values_lst = new List>(){}; + measurements_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + values_lst.Add(new List(){"true", 123.ToString()}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + timestamp_lst.Add(timestamp); + } + status = session.test_insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == 0); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -371,6 +454,26 @@ public void TestInsertRecordsOfOneDevice(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + measurements_lst = new List>(){}; + values_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + for(int timestamp = 4; timestamp <= fetch_size * 4;timestamp++){ + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + timestamp_lst.Add(timestamp); + } + session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -553,6 +656,24 @@ public void TestInsertTablet(){ while(res.has_next()){ Console.WriteLine(res.next()); } + // large data test + value_lst = new List>(){}; + timestamp_lst = new List(){}; + for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ + timestamp_lst.Add(timestamp); + value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); + } + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + status = session.insert_tablet(tablet); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -577,6 +698,24 @@ public void TestTestInsertTablet(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + value_lst = new List>(){}; + timestamp_lst = new List(){}; + for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ + timestamp_lst.Add(timestamp); + value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); + } + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + status = session.test_insert_tablet(tablet); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == 0); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -610,6 +749,32 @@ public void TestInsertTablets(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + device_id = new List(){}; + measurements_lst = new List>(){}; + values_lst = new List>>(){}; + datatypes_lst = new List>(){}; + timestamp_lst = new List>(){}; + tablets = new List(){}; + for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); + values_lst.Add(new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}); + datatypes_lst.Add(new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}); + timestamp_lst.Add(new List(){timestamp}); + Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); + tablets.Add(tablet); + } + session.insert_tablets(tablets); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session.close(); @@ -643,6 +808,32 @@ public void TestTestInsertTablets(){ while(res.has_next()){ Console.WriteLine(res.next()); } + + // large data test + device_id = new List(){}; + measurements_lst = new List>(){}; + values_lst = new List>>(){}; + datatypes_lst = new List>(){}; + timestamp_lst = new List>(){}; + tablets = new List(){}; + for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); + values_lst.Add(new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}); + datatypes_lst.Add(new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}); + timestamp_lst.Add(new List(){timestamp}); + Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); + tablets.Add(tablet); + } + session.test_insert_tablets(tablets); + res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == 0); session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); session.close(); Console.WriteLine("TestTestInsertTablets Passed!"); From 7234bdeb829dfa7c4e55d1f01cb87b3dd5b1e1e3 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 21 Apr 2021 19:38:08 +0800 Subject: [PATCH 071/214] add new bytebuffer --- client/Session.cs | 2 +- client/utils/ByteBuffer.cs | 112 +++++++++++++++++++++++-------------- client/utils/Tablet.cs | 31 +++++++++- 3 files changed, 101 insertions(+), 44 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 1e119a8..3f06209 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -694,7 +694,7 @@ public int execute_non_query_statement(string sql){ public byte[] value_to_bytes(List data_types, List values){ - ByteBuffer buffer = new ByteBuffer(new byte[]{}); + ByteBuffer buffer = new ByteBuffer(values.Count); for(int i = 0;i < data_types.Count(); i++){ buffer.add_char((char)data_types[i]); switch(data_types[i]){ diff --git a/client/utils/ByteBuffer.cs b/client/utils/ByteBuffer.cs index e6db241..178b9fc 100644 --- a/client/utils/ByteBuffer.cs +++ b/client/utils/ByteBuffer.cs @@ -7,77 +7,99 @@ namespace iotdb_client_csharp.client.utils public class ByteBuffer { private byte[] buffer; - private List write_buffer; - private int pos; + private int write_pos = 0, read_pos = 0; private int total_length; private bool is_little_endian; - public ByteBuffer(byte[] buffer){ + + public ByteBuffer(byte[] buffer){ this.buffer = buffer; - this.pos = 0; + this.read_pos = 0; + this.write_pos = buffer.Length; this.total_length = buffer.Length; - this.write_buffer = new List{}; + this.is_little_endian = BitConverter.IsLittleEndian; + } + public ByteBuffer(int reserve = 1){ + this.buffer = new byte[reserve]; + this.write_pos = 0; + this.read_pos = 0; + this.total_length = reserve; this.is_little_endian = BitConverter.IsLittleEndian; } public bool has_remaining(){ - return pos < total_length; + return read_pos < this.write_pos; } // these for read public byte get_byte(){ - var byte_val = buffer[pos]; - pos += 1; + var byte_val = buffer[read_pos]; + read_pos += 1; return byte_val; } public bool get_bool(){ - bool bool_value = BitConverter.ToBoolean(buffer, pos); - pos += 1; + bool bool_value = BitConverter.ToBoolean(buffer, read_pos); + read_pos += 1; return bool_value; } public int get_int(){ - var int_buff = buffer[pos..(pos+4)]; + var int_buff = buffer[read_pos..(read_pos+4)]; if(is_little_endian){ int_buff = int_buff.Reverse().ToArray(); } int int_value = BitConverter.ToInt32(int_buff); - pos += 4; + read_pos += 4; return int_value; } public long get_long(){ - var long_buff = buffer[pos..(pos + 8)]; + var long_buff = buffer[read_pos..(read_pos + 8)]; if(is_little_endian){ long_buff = long_buff.Reverse().ToArray(); } long long_value = BitConverter.ToInt64(long_buff); - pos += 8; + read_pos += 8; return long_value; } public float get_float(){ - var float_buff = buffer[pos..(pos +4)]; + var float_buff = buffer[read_pos..(read_pos +4)]; if(is_little_endian){ float_buff = float_buff.Reverse().ToArray(); } float float_value = BitConverter.ToSingle(float_buff); - pos += 4; + read_pos += 4; return float_value; } public double get_double(){ - var double_buff = buffer[pos..(pos+8)]; + var double_buff = buffer[read_pos..(read_pos+8)]; if(is_little_endian){ double_buff = double_buff.Reverse().ToArray(); } double double_value = BitConverter.ToDouble(double_buff); - pos += 8; + read_pos += 8; return double_value; } public string get_str(){ int length = get_int(); - var str_buff = buffer[pos..(pos+length)]; + var str_buff = buffer[read_pos..(read_pos+length)]; string str_value = System.Text.Encoding.UTF8.GetString(str_buff); - pos += length; + read_pos += length; return str_value; } public byte[] get_buffer(){ - return buffer; + return buffer[0..this.write_pos]; + } + private int max(int a, int b){ + if(a <= b){ + return b; + } + return a; + } + private void extend_buffer(int space_need){ + if(write_pos + space_need >= total_length){ + total_length = max(space_need, total_length); + byte[] new_buffer = new byte[total_length * 2]; + buffer.CopyTo(new_buffer, 0); + buffer = new_buffer; + total_length = 2 * total_length; + } } // these for write public void add_bool(bool value){ @@ -85,61 +107,67 @@ public void add_bool(bool value){ if(is_little_endian){ bool_buffer = bool_buffer.Reverse().ToArray(); } - write_buffer.AddRange(BitConverter.GetBytes(value)); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + + extend_buffer(bool_buffer.Length); + bool_buffer.CopyTo(buffer, write_pos); + write_pos += bool_buffer.Length; + } public void add_int(Int32 value){ var int_buff = BitConverter.GetBytes(value); if(is_little_endian){ int_buff = int_buff.Reverse().ToArray(); } - write_buffer.AddRange(int_buff); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + + extend_buffer(int_buff.Length); + int_buff.CopyTo(buffer, write_pos); + write_pos += int_buff.Length; } public void add_long(long value){ var long_buff = BitConverter.GetBytes(value); if(is_little_endian){ long_buff = long_buff.Reverse().ToArray(); } - write_buffer.AddRange(long_buff); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + + extend_buffer(long_buff.Length); + long_buff.CopyTo(buffer, write_pos); + write_pos += long_buff.Length; + } public void add_float(float value){ var float_buff = BitConverter.GetBytes(value); if(is_little_endian){ float_buff = float_buff.Reverse().ToArray(); } - write_buffer.AddRange(float_buff); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + extend_buffer(float_buff.Length); + float_buff.CopyTo(buffer, write_pos); + write_pos += float_buff.Length; } public void add_double(double value){ var double_buff = BitConverter.GetBytes(value); if(is_little_endian){ double_buff = double_buff.Reverse().ToArray(); } - write_buffer.AddRange(double_buff); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + extend_buffer(double_buff.Length); + double_buff.CopyTo(buffer, write_pos); + write_pos += double_buff.Length; } public void add_str(string value){ add_int(value.Length); var str_buf = System.Text.Encoding.UTF8.GetBytes(value); - write_buffer.AddRange(str_buf); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + + extend_buffer(str_buf.Length); + str_buf.CopyTo(buffer, write_pos); + write_pos += str_buf.Length; } public void add_char(char value){ var char_buf = BitConverter.GetBytes(value); if(is_little_endian){ char_buf = char_buf.Reverse().ToArray(); } - write_buffer.AddRange(char_buf); - buffer = write_buffer.ToArray(); - total_length = buffer.Length; + extend_buffer(char_buf.Length); + char_buf.CopyTo(buffer, write_pos); + write_pos += char_buf.Length; } } diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index cd4f3e8..55cab1c 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -69,9 +69,38 @@ public byte[] get_binary_timestamps(){ } return buffer.get_buffer(); } + public int estimate_buffer_size(){ + var estimate_size = 0; + // estimate one row size + foreach(var data_type in data_type_lst){ + switch(data_type){ + case TSDataType.BOOLEAN: + estimate_size += 1; + break; + case TSDataType.INT32: + estimate_size += 4; + break; + case TSDataType.INT64: + estimate_size += 8; + break; + case TSDataType.FLOAT: + estimate_size += 4; + break; + case TSDataType.DOUBLE: + estimate_size += 8; + break; + case TSDataType.TEXT: + estimate_size += 1; + break; + } + } + estimate_size *= timestamp_lst.Count; + return estimate_size; + } public byte[] get_binary_values(){ - ByteBuffer buffer = new ByteBuffer(new byte[]{}); + var estimate_size = estimate_buffer_size(); + ByteBuffer buffer = new ByteBuffer(estimate_size); for(int i = 0; i < col_number; i++){ switch(data_type_lst[i]){ case TSDataType.BOOLEAN: From e00480a91d0ef909506cd1dd9a9c5b80bf0bb5b6 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 21 Apr 2021 21:16:58 +0800 Subject: [PATCH 072/214] reconstruct Field --- client/utils/Field.cs | 80 ++++++++++++--------------------------- client/utils/RowRecord.cs | 17 +++++++-- 2 files changed, 39 insertions(+), 58 deletions(-) diff --git a/client/utils/Field.cs b/client/utils/Field.cs index 04c0278..a57ad2a 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -6,77 +6,59 @@ namespace iotdb_client_csharp.client.utils public class Field { // TBD By Zengz - public bool bool_val; - public int int_val; - public long long_val; - public float float_val; - public double double_val; - // why we need to keep binary values here - public string str_val; - - private TSDataType type{get;set;} - + private object val; + public TSDataType type{get;set;} public Field(TSDataType data_type){ this.type = data_type; } - - public void set(string value){ - str_val = value; + public void set(T value){ + val = value; } - public void set(int value){ - int_val = value; + public double get_double(){ + return type==TSDataType.TEXT?double.Parse((string)val):(double)val; } - public void set(double value){ - double_val = value; + public Int32 get_int(){ + return type==TSDataType.TEXT?Int32.Parse((string)val):(Int32)val; } - public void set(long value){ - long_val = value; + public Int64 get_long(){ + return type==TSDataType.TEXT?Int64.Parse((string)val):(Int64)val; } - public void set(float value){ - float_val = value; + public float get_float(){ + return type==TSDataType.TEXT?float.Parse((string)val):(float)val; } - public void set(bool value){ - bool_val = value; + public string get_str(){ + return val.ToString(); } public T get(){ switch(type){ - case TSDataType.BOOLEAN: - return (T)(object)bool_val; - case TSDataType.INT64: - return (T)(object)long_val; - case TSDataType.FLOAT: - return (T)(object)float_val; - case TSDataType.INT32: - return (T)(object)int_val; - case TSDataType.DOUBLE: - return (T)(object)double_val; - case TSDataType.TEXT: - return (T)(object)str_val; - default: + case TSDataType.NONE : return (T)(object)null; + default: + return (T)val; } } + public byte[] get_bytes(){ ByteBuffer buffer = new ByteBuffer(new byte[]{}); buffer.add_int((int)type); switch(type){ case TSDataType.BOOLEAN: - buffer.add_bool(bool_val); + buffer.add_bool((bool)val); break; case TSDataType.INT32: - buffer.add_int(int_val); + buffer.add_int((Int32)val); break; case TSDataType.INT64: - buffer.add_long(long_val); + buffer.add_long((Int64)val); break; case TSDataType.FLOAT: - buffer.add_float(float_val); + buffer.add_float((float)val); break; case TSDataType.DOUBLE: - buffer.add_double(double_val); + buffer.add_double((double)val); break; case TSDataType.TEXT: - buffer.add_str(str_val); + buffer.add_str((string)val); break; case TSDataType.NONE: var err_msg = string.Format("NONE type does not support get bytes"); @@ -88,22 +70,10 @@ public byte[] get_bytes(){ public override string ToString() { switch(type){ - case TSDataType.TEXT: - return str_val; - case TSDataType.INT32: - return int_val.ToString(); - case TSDataType.INT64: - return long_val.ToString(); - case TSDataType.FLOAT: - return float_val.ToString(); - case TSDataType.DOUBLE: - return double_val.ToString(); - case TSDataType.BOOLEAN: - return bool_val.ToString(); case TSDataType.NONE: return "NULL"; default: - return ""; + return val.ToString(); } } diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index dd2cd8f..fa03ce1 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -1,22 +1,33 @@ using System.Collections.Generic; using Thrift; +using System; namespace iotdb_client_csharp.client.utils { public class RowRecord { - private long timestamp{get;set;} - private List field_lst{get;set;} + public long timestamp{get;set;} + public List field_lst{get;set;} public RowRecord(long timestamp, List field_lst){ this.timestamp = timestamp; this.field_lst = field_lst; } - public void add_filed(Field field){ + public void add_field(Field field){ + field_lst.Add(field); + } + public void append(Field field){ field_lst.Add(field); } public void set_filed(int index, Field filed){ field_lst[index] = filed; } + public Field this[int index]{ + get => field_lst[index]; + set => field_lst[index] = value; + } + public DateTime TimeStampAsDateTime(){ + return DateTime.UnixEpoch.AddMilliseconds(timestamp); + } public override string ToString() { var str = timestamp.ToString(); From 91a23d1f8a11878e144b1f0969be1b6982f13c43 Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 22 Apr 2021 10:53:08 +0800 Subject: [PATCH 073/214] add unit test --- .gitignore | 3 +- client/Test.cs | 20 +++++++ client/{ => tests}/SessionTest.cs | 63 ++++++++++---------- client/tests/UnitTest.cs | 98 +++++++++++++++++++++++++++++++ client/utils/Field.cs | 74 ++++++++++++++++++++--- client/utils/RowRecord.cs | 2 +- 6 files changed, 219 insertions(+), 41 deletions(-) create mode 100644 client/Test.cs rename client/{ => tests}/SessionTest.cs (97%) create mode 100644 client/tests/UnitTest.cs diff --git a/.gitignore b/.gitignore index 71912f5..47d245f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ #dotnet project files obj/ *.csproj -.vscode/ \ No newline at end of file +.vscode/ +bin/ \ No newline at end of file diff --git a/client/Test.cs b/client/Test.cs new file mode 100644 index 0000000..9053673 --- /dev/null +++ b/client/Test.cs @@ -0,0 +1,20 @@ +using iotdb_client_csharp.client.test; +using System; +namespace iotdb_client_csharp.client +{ + public class Test + { + static void Main(){ + // Unit Test + UnitTest unit_test = new UnitTest(); + unit_test.Test(); + // Session Test + SessionTest session_test = new SessionTest(); + session_test.Test(); + + Console.WriteLine("TEST PASSED"); + + } + + } +} \ No newline at end of file diff --git a/client/SessionTest.cs b/client/tests/SessionTest.cs similarity index 97% rename from client/SessionTest.cs rename to client/tests/SessionTest.cs index 8ef786d..677aa60 100644 --- a/client/SessionTest.cs +++ b/client/tests/SessionTest.cs @@ -7,7 +7,7 @@ group: root.97209_TEST_CSHARP_CLIENT_GROUP timeseries: root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TSX; */ -namespace iotdb_client_csharp.client +namespace iotdb_client_csharp.client.test { public class SessionTest { @@ -659,12 +659,16 @@ public void TestInsertTablet(){ // large data test value_lst = new List>(){}; timestamp_lst = new List(){}; + for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ timestamp_lst.Add(timestamp); value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); } tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + long start_ms= (DateTime.Now.Ticks / 10000); status = session.insert_tablet(tablet); + long end_ms = (DateTime.Now.Ticks / 10000); + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); int res_count = 0; @@ -838,6 +842,7 @@ public void TestTestInsertTablets(){ session.close(); Console.WriteLine("TestTestInsertTablets Passed!"); } + void TestLargeData(){ var session = new Session(host, port, user, passwd, fetch_size); session.open(false); @@ -858,42 +863,38 @@ void TestLargeData(){ res.next(); res_count += 1; } - + session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); System.Diagnostics.Debug.Assert(record_inserted_count == res_count); session.close(); Console.WriteLine("TestTestInsertTablet Passed!"); } - static void Main(){ - SessionTest session_test = new SessionTest(); - - session_test.TestOpen(); - session_test.TestClose(); - session_test.TestSetAndDeleteStorageGroup(); - session_test.TestCreateTimeSeries(); - session_test.TestDeleteTimeSeries(); - session_test.TestCreateMultiTimeSeries(); - session_test.TestDeleteStorageGroups(); - session_test.TestGetTimeZone(); - session_test.TestInsertStrRecord(); - session_test.TestInsertRecord(); - session_test.TestTestInsertRecord(); - session_test.TestTestInsertRecords(); - session_test.TestInsertRecordsOfOneDevice(); - session_test.TestCheckTimeSeriesExists(); - session_test.TestSetTimeZone(); - session_test.TestDeleteData(); - session_test.TestNonSql(); - session_test.TestSqlQuery(); - session_test.TestInsertRecords(); - session_test.TestInsertTablet(); - session_test.TestTestInsertTablet(); - session_test.TestInsertTablets(); - session_test.TestTestInsertTablets(); - session_test.TestLargeData(); - Console.WriteLine("TEST PASSED"); - + public void Test(){ + TestOpen(); + TestClose(); + TestSetAndDeleteStorageGroup(); + TestCreateTimeSeries(); + TestDeleteTimeSeries(); + TestCreateMultiTimeSeries(); + TestDeleteStorageGroups(); + TestGetTimeZone(); + TestInsertStrRecord(); + TestInsertRecord(); + TestTestInsertRecord(); + TestTestInsertRecords(); + TestInsertRecordsOfOneDevice(); + TestCheckTimeSeriesExists(); + TestSetTimeZone(); + TestDeleteData(); + TestNonSql(); + TestSqlQuery(); + TestInsertRecords(); + TestInsertTablet(); + TestTestInsertTablet(); + TestInsertTablets(); + TestTestInsertTablets(); + TestLargeData(); } } diff --git a/client/tests/UnitTest.cs b/client/tests/UnitTest.cs new file mode 100644 index 0000000..ffadc19 --- /dev/null +++ b/client/tests/UnitTest.cs @@ -0,0 +1,98 @@ +using System.Collections.Generic; +using iotdb_client_csharp.client.utils; +using System; + + +namespace iotdb_client_csharp.client.test +{ + public class UnitTest + { + public UnitTest(){} + public void Test(){ + TestField(); + TestRowRecord(); + } + public void TestField(){ + double double_val_set = 12.3, double_val_get; + int int_val_get; + string str_val_set = "12", str_val_get; + bool bool_val_get, bool_val_set; + float float_val_get; + Int64 long_val_get; + + + // set double + Field field = new Field(TSDataType.DOUBLE); + field.set(double_val_set); + double_val_get = (double)field.get(); + System.Diagnostics.Debug.Assert(double_val_get == double_val_set); + int_val_get = field.get_int(); + System.Diagnostics.Debug.Assert(int_val_get == Convert.ToInt32(double_val_set)); + str_val_get = field.get_str(); + System.Diagnostics.Debug.Assert(str_val_get == double_val_set.ToString()); + bool_val_get = field.get_bool(); + System.Diagnostics.Debug.Assert(bool_val_get == Convert.ToBoolean(double_val_set)); + float_val_get = field.get_float(); + System.Diagnostics.Debug.Assert(float_val_get == Convert.ToSingle(double_val_set)); + long_val_get = field.get_long(); + System.Diagnostics.Debug.Assert(long_val_get == Convert.ToInt64(double_val_set)); + + // Set Str value + field = new Field(TSDataType.TEXT); + field.set(str_val_set); + double_val_get = field.get_double(); + System.Diagnostics.Debug.Assert(double_val_get == double.Parse(str_val_set)); + int_val_get = field.get_int(); + System.Diagnostics.Debug.Assert(int_val_get == Int32.Parse(str_val_set)); + bool_val_get = field.get_bool(); + System.Diagnostics.Debug.Assert(bool_val_get); + float_val_get = field.get_float(); + System.Diagnostics.Debug.Assert(float_val_get == float.Parse(str_val_set)); + long_val_get = field.get_long(); + System.Diagnostics.Debug.Assert(long_val_get == Int64.Parse(str_val_set)); + + // set true + field = new Field(TSDataType.BOOLEAN); + bool_val_set = true; + field.set(bool_val_set); + double_val_get = field.get_double(); + System.Diagnostics.Debug.Assert(double_val_get == Convert.ToDouble(bool_val_set)); + + System.Console.WriteLine("Filed Test Passed!"); + } + public void TestRowRecord(){ + var save_datetime = DateTime.Now; + TimeSpan ts = save_datetime - DateTime.UnixEpoch; + var row_reord = new RowRecord(Convert.ToInt64(ts.TotalMilliseconds), new List{}); + + // test append + row_reord.append(new Field(TSDataType.DOUBLE, 12.3)); + row_reord.append(new Field(TSDataType.BOOLEAN, false)); + row_reord.append(new Field(TSDataType.FLOAT, 12.3)); + row_reord.append(new Field(TSDataType.INT64, 1234)); + row_reord.append(new Field(TSDataType.TEXT, "TEST")); + + // test indexing + var field_get = row_reord[0]; + System.Diagnostics.Debug.Assert(field_get.type == TSDataType.DOUBLE); + System.Diagnostics.Debug.Assert((double)field_get.val == 12.3); + + // test indexing + row_reord[0] = new Field(TSDataType.BOOLEAN, true); + field_get = row_reord[0]; + System.Diagnostics.Debug.Assert(field_get.type == TSDataType.BOOLEAN); + System.Diagnostics.Debug.Assert((bool)field_get.val == true); + + // test datetime + var datetime = row_reord.get_date_time(); + Console.WriteLine(datetime.ToString() == save_datetime.ToString()); + System.Console.WriteLine("RowRecord Test Passed!"); + + + + + } + + + } +} \ No newline at end of file diff --git a/client/utils/Field.cs b/client/utils/Field.cs index a57ad2a..5b802c9 100644 --- a/client/utils/Field.cs +++ b/client/utils/Field.cs @@ -6,35 +6,93 @@ namespace iotdb_client_csharp.client.utils public class Field { // TBD By Zengz - private object val; + public object val; public TSDataType type{get;set;} public Field(TSDataType data_type){ this.type = data_type; } + public Field(TSDataType data_type, object val){ + this.type = data_type; + this.val = val; + } public void set(T value){ val = value; } public double get_double(){ - return type==TSDataType.TEXT?double.Parse((string)val):(double)val; + switch(type){ + case TSDataType.TEXT: + return double.Parse((string)val); + case TSDataType.BOOLEAN: + return (bool)val?1.0:0; + case TSDataType.NONE: + return 0.0; + default: + return Convert.ToDouble(val); + + } } public Int32 get_int(){ - return type==TSDataType.TEXT?Int32.Parse((string)val):(Int32)val; + switch(type){ + case TSDataType.TEXT: + return Int32.Parse((string)val); + case TSDataType.BOOLEAN: + return (bool)val?1:0; + case TSDataType.NONE: + return 0; + default: + return Convert.ToInt32(val); + } } public Int64 get_long(){ - return type==TSDataType.TEXT?Int64.Parse((string)val):(Int64)val; + switch(type){ + case TSDataType.TEXT: + return Int64.Parse((string)val); + case TSDataType.BOOLEAN: + return (bool)val?1:0; + case TSDataType.NONE: + return 0; + default: + return Convert.ToInt64(val); + } } + public float get_float(){ - return type==TSDataType.TEXT?float.Parse((string)val):(float)val; + switch(type){ + case TSDataType.TEXT: + return float.Parse((string)val); + case TSDataType.BOOLEAN: + return (bool)val?1:0; + case TSDataType.NONE: + return 0; + default: + return Convert.ToSingle(val); + } + } + public bool get_bool(){ + switch(type){ + case TSDataType.TEXT: + try{ + return Convert.ToBoolean((string)val); + } + catch(System.FormatException){ + return ((string)val).Length > 0; + } + case TSDataType.NONE: + return false; + default: + return Convert.ToBoolean(val); + } + } public string get_str(){ return val.ToString(); } - public T get(){ + public object get(){ switch(type){ case TSDataType.NONE : - return (T)(object)null; + return null; default: - return (T)val; + return val; } } diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index fa03ce1..13c4e4a 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -25,7 +25,7 @@ public Field this[int index]{ get => field_lst[index]; set => field_lst[index] = value; } - public DateTime TimeStampAsDateTime(){ + public DateTime get_date_time(){ return DateTime.UnixEpoch.AddMilliseconds(timestamp); } public override string ToString() From 6f72ea6fd67e705e9050eb7f35a150ae1bbd231c Mon Sep 17 00:00:00 2001 From: eedalong Date: Thu, 22 Apr 2021 12:00:28 +0800 Subject: [PATCH 074/214] update readme --- README.md | 2 +- README_ZH.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0071a65..9b4d6fb 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ dotnet add package iotdb_client_csharp --version 0.12.0 ## How to Use the Client (Quick Start) -Users can refer to the test code in [SessionTest.cs](https://github.com/eedalong/iotdb-client-csharp/blob/main/client/SessionTest.cs) to understand the usage mode of each interface. +Users can refer to the test code in [tests](https://github.com/eedalong/iotdb-client-csharp/tree/main/client/tests) to understand the usage mode of each interface. ## Developer environment requirements for iotdb-client-csharp diff --git a/README_ZH.md b/README_ZH.md index 10e169d..2a1131d 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -45,7 +45,7 @@ dotnet add package iotdb_client_csharp --version 0.12.0 .NET SDK Version == 5.0 ## 如何使用 (快速上手) -用户可参考[SessionTest.cs](https://github.com/eedalong/iotdb-client-csharp/blob/main/client/SessionTest.cs)中的测试代码了解各个接口使用方式 +用户可参考[测试代码](https://github.com/eedalong/iotdb-client-csharp/tree/main/client/tests)中的测试代码了解各个接口使用方式 ## iotdb-client-csharp的开发者环境要求 From d60b4f0d87ec5dae30cc55398cf28380a01a25a9 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Thu, 22 Apr 2021 16:30:47 +0800 Subject: [PATCH 075/214] fix #30 change console.Write to logging --- client/Session.cs | 2 +- client/utils/SessionDataSet.cs | 23 ++++++++++++++++++----- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 3f06209..73060e9 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -666,7 +666,7 @@ public SessionDataSet execute_query_statement(string sql){ if(verify_success(status) == -1){ throw new TException("execute query failed", null); } - var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); + var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet, debug_mode); session_dataset.fetch_size = fetch_size; return session_dataset; diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index c69163d..603a97c 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -2,12 +2,15 @@ using System.Collections.Generic; using Thrift; using System.Linq; +using NLog; namespace iotdb_client_csharp.client.utils { public class SessionDataSet { private long session_id, query_id; private string sql; + private NLog.Logger _logger; + private bool debug_mode = false; List column_name_lst; Dictionary column_name_index_map; Dictionary duplicate_location; @@ -39,10 +42,12 @@ private int default_timeout{ - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set){ + public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set, bool debug_mode){ this.sql = sql; this.query_dataset = query_data_set; this.query_id = query_id; + this.debug_mode = debug_mode; + this._logger = NLog.LogManager.GetCurrentClassLogger(); this.current_bitmap = new byte[column_name_lst.Count]; this.column_size = column_name_lst.Count; this.column_name_lst = new List{}; @@ -101,7 +106,9 @@ public void show_table_names(){ foreach(var name in name_lst){ str += name + "\t\t"; } - Console.WriteLine(str); + if(debug_mode){ + _logger.Info(str); + } } public bool has_next(){ if(has_catched_result){ @@ -188,7 +195,9 @@ public void construct_one_row(){ break; default: string err_msg = string.Format("value format not supported"); - Console.WriteLine(err_msg); + if(debug_mode){ + _logger.Error(err_msg); + } throw new TException(err_msg, null); } field_lst.Add(local_field); @@ -246,11 +255,15 @@ public void close_operation_handle(){ task.Wait(); var status = task.Result; var message = string.Format("close session {0}, message: {1}", session_id, status.Message); - Console.WriteLine(message); + if(debug_mode){ + _logger.Info(message); + } } catch(TException e){ var message = string.Format("close session {0} failed because:{1} ", session_id, e); - Console.WriteLine(message); + if(debug_mode){ + _logger.Error(message); + } throw; } From 30075b9d63d6bd3d39850af7ccb6c33bf7e20347 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Thu, 22 Apr 2021 16:32:17 +0800 Subject: [PATCH 076/214] #28 fix the error of RowRecord DateTime --- client/utils/RowRecord.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index 13c4e4a..c2b156d 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -26,7 +26,7 @@ public Field this[int index]{ set => field_lst[index] = value; } public DateTime get_date_time(){ - return DateTime.UnixEpoch.AddMilliseconds(timestamp); + return DateTimeOffset.FromUnixTimeMilliseconds(timestamp).DateTime.ToLocalTime();; } public override string ToString() { From d698c900cd5f694cf01d08dd9d07c3999f739e20 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Thu, 22 Apr 2021 21:15:57 +0800 Subject: [PATCH 077/214] fix #28 #30 datetime and remove console.write --- client/tests/UnitTest.cs | 18 +++++++++++++----- client/utils/SessionDataSet.cs | 16 ++-------------- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/client/tests/UnitTest.cs b/client/tests/UnitTest.cs index ffadc19..b8a6598 100644 --- a/client/tests/UnitTest.cs +++ b/client/tests/UnitTest.cs @@ -7,10 +7,18 @@ namespace iotdb_client_csharp.client.test { public class UnitTest { + public string host = "81.69.18.71"; + public int port = 8888; + public string user = "root"; + public string passwd = "root"; + public int fetch_size = 5000; + public bool debug = false; + public UnitTest(){} public void Test(){ TestField(); TestRowRecord(); + TestSessionDataSet(); } public void TestField(){ double double_val_set = 12.3, double_val_get; @@ -61,8 +69,8 @@ public void TestField(){ System.Console.WriteLine("Filed Test Passed!"); } public void TestRowRecord(){ - var save_datetime = DateTime.Now; - TimeSpan ts = save_datetime - DateTime.UnixEpoch; + var save_datetime = DateTime.Now.ToLocalTime(); + TimeSpan ts = save_datetime - DateTime.UnixEpoch.ToLocalTime(); var row_reord = new RowRecord(Convert.ToInt64(ts.TotalMilliseconds), new List{}); // test append @@ -87,10 +95,10 @@ public void TestRowRecord(){ var datetime = row_reord.get_date_time(); Console.WriteLine(datetime.ToString() == save_datetime.ToString()); System.Console.WriteLine("RowRecord Test Passed!"); + } - - - + public void TestSessionDataSet(){ + } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 603a97c..1fc6764 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -106,9 +106,7 @@ public void show_table_names(){ foreach(var name in name_lst){ str += name + "\t\t"; } - if(debug_mode){ - _logger.Info(str); - } + Console.WriteLine(str); } public bool has_next(){ if(has_catched_result){ @@ -195,9 +193,6 @@ public void construct_one_row(){ break; default: string err_msg = string.Format("value format not supported"); - if(debug_mode){ - _logger.Error(err_msg); - } throw new TException(err_msg, null); } field_lst.Add(local_field); @@ -254,17 +249,10 @@ public void close_operation_handle(){ var task = client.closeOperationAsync(req); task.Wait(); var status = task.Result; - var message = string.Format("close session {0}, message: {1}", session_id, status.Message); - if(debug_mode){ - _logger.Info(message); - } } catch(TException e){ var message = string.Format("close session {0} failed because:{1} ", session_id, e); - if(debug_mode){ - _logger.Error(message); - } - throw; + throw new TException(message, e); } From 02cf0ac7413a0409bed3a5c3267a25e2989f2ac8 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Fri, 23 Apr 2021 00:14:28 +0800 Subject: [PATCH 078/214] add primitive parallel & slice the 'insert_records' --- client/Session.cs | 70 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 53 insertions(+), 17 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 73060e9..ee5cbf9 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -1,3 +1,4 @@ +using System.Diagnostics; using Thrift; using Thrift.Transport; using Thrift.Protocol; @@ -9,6 +10,7 @@ using iotdb_client_csharp.client.utils; using NLog; using System.Net.Sockets; +using System.Threading.Tasks; namespace iotdb_client_csharp.client { @@ -358,8 +360,24 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • values_lst_in_bytes = new List(); + var count = values_lst.Count; + List values_lst_in_bytes = new List(new byte[count][]); + ParallelOptions opts = new ParallelOptions(){}; + opts.MaxDegreeOfParallelism = 100; + if(count >= 1000){ + Parallel.For(0, count,opts, i =>{ + var values = values_lst[i]; + var data_types = data_types_lst[i]; + var measurements = measurements_lst[i]; + if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); + throw new TException(err_msg, null); + } + var values_in_bytes = value_to_bytes(data_types, values); + values_lst_in_bytes[i] = values_in_bytes; + }); + } + else { for(int i = 0;i < values_lst.Count(); i++){ var values = values_lst[i]; var data_types = data_types_lst[i]; @@ -369,28 +387,46 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst, timestamp_lst); + int STEP = 4000; TSStatus status; - try{ - var task = client.insertRecordsAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Multiple records insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + var device_id_slice = new List(){}; + var measurements_lst_slice = new List>(){}; + var values_lst_slice = new List>(){}; + var data_types_lst_slice = new List>(){}; + var timestamp_lst_slice = new List(){}; + for(var i = 0; i < device_id.Count; i+= STEP){ + int items_num = (device_id.Count - i) < STEP? (device_id.Count - i) : STEP; + device_id_slice = device_id.GetRange(i, items_num); + measurements_lst_slice = measurements_lst.GetRange(i ,items_num); + values_lst_slice = values_lst.GetRange(i, items_num); + data_types_lst_slice = data_types_lst.GetRange(i, items_num); + timestamp_lst_slice = timestamp_lst.GetRange(i, items_num); + var req = gen_insert_records_req(device_id_slice, measurements_lst_slice, values_lst_slice, data_types_lst_slice, timestamp_lst_slice); + try{ + var task = client.insertRecordsAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("Multiple records insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + } + if(verify_success(status) == -1){ + return -1; + } } - return verify_success(status); + + return 0; } public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan From fd9fb7e20fd919cfb6f9270b749f7facb3ac5b68 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 23 Apr 2021 07:58:24 +0800 Subject: [PATCH 079/214] fix typo in unit test --- client/tests/UnitTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/tests/UnitTest.cs b/client/tests/UnitTest.cs index b8a6598..8650ee7 100644 --- a/client/tests/UnitTest.cs +++ b/client/tests/UnitTest.cs @@ -66,7 +66,7 @@ public void TestField(){ double_val_get = field.get_double(); System.Diagnostics.Debug.Assert(double_val_get == Convert.ToDouble(bool_val_set)); - System.Console.WriteLine("Filed Test Passed!"); + System.Console.WriteLine("Field Test Passed!"); } public void TestRowRecord(){ var save_datetime = DateTime.Now.ToLocalTime(); From 21db35bb2026de0cc95312d20af16552c04f175d Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 23 Apr 2021 08:05:16 +0800 Subject: [PATCH 080/214] remove debug mode parameter from SessionDataset --- client/Session.cs | 2 +- client/utils/SessionDataSet.cs | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 73060e9..3f06209 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -666,7 +666,7 @@ public SessionDataSet execute_query_statement(string sql){ if(verify_success(status) == -1){ throw new TException("execute query failed", null); } - var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet, debug_mode); + var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); session_dataset.fetch_size = fetch_size; return session_dataset; diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 1fc6764..b784d24 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -10,7 +10,6 @@ public class SessionDataSet private long session_id, query_id; private string sql; private NLog.Logger _logger; - private bool debug_mode = false; List column_name_lst; Dictionary column_name_index_map; Dictionary duplicate_location; @@ -42,11 +41,10 @@ private int default_timeout{ - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set, bool debug_mode){ + public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set){ this.sql = sql; this.query_dataset = query_data_set; this.query_id = query_id; - this.debug_mode = debug_mode; this._logger = NLog.LogManager.GetCurrentClassLogger(); this.current_bitmap = new byte[column_name_lst.Count]; this.column_size = column_name_lst.Count; From 470cccfdd7b1cda273d781b8e171485bd01e2052 Mon Sep 17 00:00:00 2001 From: eedalong Date: Fri, 23 Apr 2021 08:49:53 +0800 Subject: [PATCH 081/214] add docs --- docs/bytebuffer_zh.md | 59 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 docs/bytebuffer_zh.md diff --git a/docs/bytebuffer_zh.md b/docs/bytebuffer_zh.md new file mode 100644 index 0000000..a482789 --- /dev/null +++ b/docs/bytebuffer_zh.md @@ -0,0 +1,59 @@ +## IoTDB CSharp Client ByteBuffer实现介绍 +在进行`RowRecords`以及`Tablet`的插入时,我们需要对多行RowRecord和Tablet进行序列化以进行发送。客户端中的序列化实现主要依赖于ByteBuffer完成。接下来我们介绍ByteBuffer的实现细节。本文包含如下几点内容: + - 序列化的协议 + - C#与Java的大小端的差异 + - ByteBuffer内存倍增算法 + +### 一、序列化协议 +客户端向IoTDB服务器发送的序列化数据总体应该包含两个信息。 + - 数据类型 + - 数据本身 + +其中对于`字符串`的序列化时,我们需要再加入字符串的长度信息。即一个字符串的序列化完整结果为: + + [类型][长度][数据内容] +接下来我们分别介绍`RowRecord`、`Tablet`的序列化方式 + +#### 1.1 RowRecord +我们对RowRecord进行序列化时,`伪代码`如下: + + public byte[] value_to_bytes(List data_types, List values){ + ByteBuffer buffer = new ByteBuffer(values.Count); + for(int i = 0;i < data_types.Count(); i++){ + buffer.add_type((data_types[i]); + buffer.add_val(values[i]); + } + } + +对于其序列化的结果格式如下: + + [数据类型1][数据1][数据类型2][数据2]...[数据类型N][数据N] + 其中数据类型为自定义的`Enum`变量,分别如下: + + public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; + +#### 1.2. Tablet序列化 +使用`Tabelt`进行数据插入时有如下限制: + + 限制:Tablet中数据不能有空值 +由于向 `IoTDB`服务器发送`Tablet`数据插入请求时会携带`行数`, `列数`, `列数据类型`,所以`Tabelt`序列化时我们不需要加入数据类型信息。`Tablet`是`按照列进行序列化`,这是因为后端可以通过行数得知出当前列的元素个数,同时根据列类型来对数据进行解析。 + +## CSharp与Java序列化数据时的大小端差异 +由于Java序列化默认大端协议,而CSharp序列化默认得到小端序列。所以我们在CSharp中序列化数据之后,需要对数据进行反转这样后端才可以正常解析。同时当我们从后端获取到序列化的结果时(如`SessionDataset`),我们也需要对获得的数据进行反转以解析内容。这其中特例便是字符串的序列化,CSharp中对字符串的序列化结果为大端序,所以序列化字符串或者接收到字符串序列化结果时,不需要反转序列结果。 + +## ByteBuffer内存倍增法 +拥有数万行的Tablet的序列化结果可能有上百兆,为了能够高效的实现大`Tablet`的序列化,我们对ByteBuffer使用`内存倍增法`的策略来减少序列化过程中对于内存的申请和释放。即当当前的buffer的长度不足以放下序列化结果时,我们将当前buffer的内存`至少`扩增2倍。这极大的减少了内存的申请释放次数,加速了大Tablet的序列化速度。 + + private void extend_buffer(int space_need){ + if(write_pos + space_need >= total_length){ + total_length = max(space_need, total_length); + byte[] new_buffer = new byte[total_length * 2]; + buffer.CopyTo(new_buffer, 0); + buffer = new_buffer; + total_length = 2 * total_length; + } + } +同时在序列化`Tablet`时,我们首先根据Tablet的`行数`,`列数`以及每一列的数据类型估计当前`Tablet`序列化结果所需要的内存大小,并在初始化时进行内存的申请。这进一步的减少了内存的申请释放频率。 + +通过上述的策略,我们在一个有`20000`行的Tablet上进行测试时,序列化速度相比Naive数组长度动态生长实现算法具有约35倍的性能加速。 + From 94de58fc86823ed8d6b1d701c719f5d1931e0f08 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Fri, 23 Apr 2021 18:05:43 +0800 Subject: [PATCH 082/214] change SLICE_SIZE to class member --- client/Session.cs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index ee5cbf9..7154970 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -32,8 +32,7 @@ public int SUCCESS_CODE{ private TFramedTransport transport; private NLog.Logger _logger; private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - - + public int SLICE_SIZE{get;set;} = 4000; public Session(string host, int port){ // init success code this.host = host; @@ -394,15 +393,14 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan - int STEP = 4000; TSStatus status; var device_id_slice = new List(){}; var measurements_lst_slice = new List>(){}; var values_lst_slice = new List>(){}; var data_types_lst_slice = new List>(){}; var timestamp_lst_slice = new List(){}; - for(var i = 0; i < device_id.Count; i+= STEP){ - int items_num = (device_id.Count - i) < STEP? (device_id.Count - i) : STEP; + for(var i = 0; i < device_id.Count; i+= SLICE_SIZE){ + int items_num = (device_id.Count - i) < SLICE_SIZE? (device_id.Count - i) : SLICE_SIZE; device_id_slice = device_id.GetRange(i, items_num); measurements_lst_slice = measurements_lst.GetRange(i ,items_num); values_lst_slice = values_lst.GetRange(i, items_num); From 452406e68ff4285fc464b510809c01d472deeefd Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Sat, 24 Apr 2021 12:54:46 +0800 Subject: [PATCH 083/214] add time_profile doc --- docs/time_profile_zh.pdf | Bin 0 -> 262072 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/time_profile_zh.pdf diff --git a/docs/time_profile_zh.pdf b/docs/time_profile_zh.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a8ed50ff68491c79410635818bb25dd8971267d1 GIT binary patch literal 262072 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%0Ar19$IL zuyW>t>gT5nkeyqNS`Df2l)eGa4O~j^mZonB*s@1HSwhIt=exw)fh45ipmMqmC&N-kwA=w1KFaaSDoKoJ$5SK$zZ;1nuNeRH@sbi zHsT)WJO$cVFs*=17|pgOaHf%}_{hq9wQ?uH?U*v+B#!?sthlG^qZI#FeEpBY6MydB zKRosS>)~c$`kjNVtZlOk7%QBlbn<&Q|21i1)~E)*?*3JG#%7t4A!VvYL@_V#SA9?&>|3G1pf`QtEd-|mKqqQjGwJ8p`mZ`LEUoVI*7Hchr~>pZ>N`KKL+#E=0d?PB0rB%nUP1o2f@ z-gDT2aY}Z;@)`}HnwuM5?UCbD>wLoUtEGLu9`j`jw!!UrPiJM9`W;@f@#qq4s1Y{J zx8-CfP+cM1&D6PV*6lByNLIK=G5OE1`rxK}awGT$C2-!Q!*DtzPQAKnVZ8P_VkE4= zfk=yPC6j1@SecZNc6t2CX3JCQAM*Tr1wZ1O&EFw#=DOJb6ktdG++iU>0O_QVYLpPR zZX@j=i(}h2(9dDR#h9)b-$6&`hY8NfNg1F&+XQLnS?+xGaT)|8ehjwq{hR|H0VnkM z^cM&y+h$&KFTq{Cz(Fq{EN!^+A7QKGg@-vMxih0OKT(}a6g>!c!KhS*Ovmdy3P+K5 zV5@2H_B+}AEHC#T;X8Z29Q|dp-&TwLT}rO1EE&Bj@K4{v*H6jZN8XtI6b%DI8QMLJmp_MMeUb-m3GXA@9s!m9E{;N_&F zs8yW9pup9j=5vp#<8zaMPo@Fe^VLsOi{r@ik~Kj>^JLtR;ofkOGK0=9zUG1Co4|K| zTu?<<3EKv8K8hY<)(fGPj5OZ@JH?WLE%_1Tbanu- zm_q@)i#>rQE8Btn%&VLuW2L_*^t$uCtkV0XrsNL_th^2x;7XGDP6Zi`I97onOq(D1 zC->Bhe{iN!aORvBwf9{%Oc1AR_QmW8_r7}u!Jpm|6tlNOq07Lir8MnuHV?PAsmU$n zpFFCd`2Otp3`|DXgz(2{V16T^@b`&g-Po_cYOkXAUca=$AGqPklVV7RVoB*A71q3b zfp<_!2O;8vUORyS#aGY+n7&L*I?1&x?Ft+cd>15KE{udEwEaUH&|XwqsX8lQCCK~G zUb?~c>cIXrCT<*UUYSTo-`)7yx;p4DRGhk(L8Rwud8&_K<gYstnpqN)Z6tb{TK%=<~~**XMPj6;V1KeB$h|d)3Xz@M|x8H)VG|k;rae1Uzp#ay~*Z3@~#$j=9T; z=X63Rv?QcF%up_J8#SX}!c(I4xv6o$)TG?_eBXKDyam-8e*s;KV|V0pL00f8)|7aL z-~6txiDDSWlGn?r$&1I&Z&_Jw3!Ap#q9F*K)i^HVYFyESESL%pprB~!015^$;V0V$ z2wj^KIk@0g{G>KgPB9|djf@`*v1yFxTPhd#0zIx@J<3K%p>5{g3(v+e0hWEvs&2%c zlN_Iq8Ur?Q;Qfrgm60V8J-I|mtkn$A0wtt}LUJvEPeH9dnUVX6+=tJ;`84(M_y(xH7-0Tb`!Fs0?eB8 zC|(~f1Hmq<2mMVp5I&&$GxtX`neAwmzjHIN9s-_eEk=PQ&A{d}=YmhNNWU@PhoB)M z1Cj`I(0x648sD)cIgulcA5mo=Lhj7kV{=MoDcn)U(9%46dxq=eM6QbP(Yzv1+g`k6huDkw2Vp1 zGLdTC1Uri86@+Pj`E9?icvwc+)|!w4PtFWS#5HV8Ml<%bFU2?4>X|{R{obyAS|el%OZ!v27#Td++O|f8VGqW8z`49Dv;SN)MKwA@#I9at%$cR+@HG9 z4tT<;gFTM7VU?|0-N1stK{ueeM$7GNwPkF|J1#XAbHjNg`ww$&1A7>^$P8WS`&wX( zb=gG5{BTg0m&*D%u&>63r;BtLrZ2+#ix39D*J>d6S#Ul>C1D`y4Ctj9aIl#$2c$f70^22#RB2G9iqF<56Z$gvW_#f#{&ak$kHFktLC zPdjnvp}8Ua8|%!V?O^z#oY$d;l*r80`Q^rEXzbLuR^OsIl8r#LXeJ&kHBjhpN8=V_ zbVAq13Z#MXD+`~i>)FR{x(vp*<~!}n<~7!Qb49A}6u&i&fZTqqctF%Uk^9PS944B+ zuN=B0y0@d5V|(59^WA%DJIFs5?%!Q8{`U>K|1i7PjgzzijF$WwaRxZAW)xl*K-5Z{ zcbyi44B4{}GXLO=@I3!E!i~$BV2WWf1JACQlED3J!(!^e9$_y$4xMQZyo*+okFTER z>UoMkIoetu^l?6@Z9Yi*!h&-LMyHw7#-*>~#f;z26ONse+g>?GM$0h#lKq2odtD`= zYX$Tqr^KUggtOk!OKy$sxD;8yVBb=%yqe*Nklyerk6dmk0F-w=3t(q=T740v07 z5pc}Gv`S1Ut)v(b-!^GeS_1ha;@xti$bb;KW{nKgQ>+^K7l_P$Rw^D1bm$WfCN&QK zyjdN1aIKmvYVw-6=wvK;=R6Cpp>BB@dadD&V?TE&Gwp#Ii+PJVcMh}}l07A`j>VbNsk*vK;z5Rka_z}?mXMYU zE5xd^oQE$lVF}c`LAoe^h?&y0d6_ipVy^2)D-@(YitaI0dk;y*0M_7nbZb=7juXe8 z?yb<0G3=9npV`tQ?)Qf1AD~f#s`j5{L0x=>>9DCj8zF06;JIos zl&Wa#7@oC|&S=w1;$z&CeZYl9={*Wh4uqfGdYD-mvW0ss?5ZSEmX=}K$qW90l+G5H zg<+w=Ap=4^L7Zjmpg%_9-hJ|&qGEYoSq!JT=#WmmW!Hp{{%Kps3jJh@?4Q0k%x|-* z2N<0Gd-)a6{rv@!02G`+(L?)(eooBhtI;z7w3Cg<@*auB??h3_L_h*3>;f?g5Sx48 z8xr6`%DT^mj6>>5`_ZFQ>u%FLwk@jNW@5O~Io5{{?IfHC=-o}T$V!mg(@Yhkg1!>MxWz;&Na}TQaE46v5kRT zpmyc`vJ6Ei?%Zc7eAH}6k8VvzE|OEYL^vg5Dw);{-FpCkI?RMObb2(lJ{YymXbzr}=O#L=cG(RU&E%@Mcw z4z;Sd@0=L+nc;e0;vy6H85CKA#I1A!EB9Lz%;%9WNZB>|pV}qRj0p`r$c-I*C!~VK z)(xHLn1*}~N|)NhhFJLFr~rXfK!(4`B?e z{YxWWflAw2tuMQFa=q-dAoC8c*edKZ;IT`3_Nxq@&TYn4S5OIopamW1M2V;q&NRZv za998v)HAxsklivc+V7(q?)v8IjGt}w;F2=`}6R=ZJPK$G`p(tihwy&2$5HB zC_04^jOt7GTCH2+j@NTIj-_U$xz0Es_^c$$3KdE0j&|p?@nP&|J9FnL>4NFv(5GHU zLur|wVCf6JIJ!^lX>;1Oh7c3t*io7bn&*Sv(nQysdp)FX=<%%?Ug67KrTwhjpxDtC zO$L37uUxi$q{G*2I`5Ny1W6k-&T_Hg+q!95aoaboYzCjUs@;{88%Z`U_L%qLF_*?r z;1&WWdLgB?Kt=fxr7QPE7>Zt+N8$x~@c=W|qk(B`pK({a&MYDm69(_(mtY5JT%M2u z!%y*(kMQoh74;8S#;RdsEU_{Lc2zPX)q{qo2b}g}%Gz87O?&eN7+K7N%ge~t>nSsJ zF@WsnM-4uh?9B8=N3~q&l%yIMITB(w=a&|Q;)mf5AQWMxb~nZMz`YPLWT6*)BW;{t zq`L}?FveY*ndPv)+6KA zJ*2NmGD^aDFapTsRuf%b>ZBh28c%Tu0o^KOm{xONL4le$xE z6aIvUVT^)xgOFM7yYNF2mT(E<1L_GF4cW&nO5JfAp^6bdPj$xi*gByJPm0-H#4e0O~_nmjXBYZFsY zrpd%5Tcr&gYUz{FL?H)pQ!8aS<`XM8Gf#FAlFMUfp=8D8kv9SY>7R^Ez+vXZm5Z1@J_MUq+9fsBrB3c2%r{JhP`DTm@_!~O2Jw~z7MR9-eVh!eZ>3ywnmQ_A zS4OP5fTwY=iqBH%l*UTaRXw)SfN$Tpa5CA#_OOl9-u6rJ=R>W_k1lH#q(_EngwR9P zfue)$jd#gql2|Zupw()u*2cq4OB`%m`^aX2lU!T2-SC!DTz#nU%fiw(5=JNAc+>f~aiX9*GvcHci|p*obQ1 z+v=s5TlN9V2T0Z{pYM;|WqF%Z71QsYD*p>g8I*iTL^{lNBd)65B&CJbks9V|a7d8Iz#t#7B~WD-A6}gTHFB!D9dh2( z?;zyl&Sh#-F&Df_0jf@LTSnBJBVW|F1luwEKP(xgDqOCxp$vR28uo3@6E%f6w-8uxi+t! z`?C-8y=&mx%!mLzOT<9a1BWfZZyg<5aP{o znt;Ix-*pf5%c#R1yEIBxux97jyWJ*ksT3u0;Y;^QOu1VnY&_YTa=xj{sQ0wd3Ju=x zEkUGWZq{)AR%*W%u-p2hl}#^zjQySbyuljF&ST#3J9N3@U9>5CXb?|pP!Os`-lG&@ zdab~P;=a~hdXe}ExyIJzMOvxPI7rGZNH<{stxGwIH^&W1!&&CmwoDj^Oae0`OVIp# zKPJYEJnl-F@=1hKP%OF+RyB6D^&e%r15-pT`;iT9j!k%)3=(E!Z2Z8eB5lOXIO>(T zQEJVT9e2Rg6+=s5>E%U_D$!v%pWrNF>$Xl7X$P+%6Elt4B3@Dskx5Riho`nj8PIK~ z7@lEcXK&o5b}RhFq-+y|tpZ$a*BP3@RYhYm<9d1Iuq-ZuUbiUmIG1%hY;YhX$sm)+ zyEs0y>KWhh?hc9BgMNy^5gRHnfVa8s40`}&W@{9uM^47(7F0n;mUOHF`~|PLU4gt; zq<=YhZ+pytr%uSmOGjh>nvwt%zNUO1iYJ%_V}iV2t;<+0NFss{_o|L0D?DwN9AvW2 z;_|67ucXz_;)YzldJYg+wvgt1zr;oIMEI6eg_?CGk|L5vxJHWg{X2V@Rv>NFcb(Yp z+fnNrgjwKzut%#XhWIs#aEdhsoG9M3ysmaep`gd65t&f}%BwX!vkD)-)KT2D@}$u& zOJsR}%*pcB3GCPtLu`VMrE;=w+|E`GfK?A+x*^```_OCR$j0ph(J`Mr7jnM!v!k_U zou)8sFj{KMPlC(3@M%#3PM1(3VPQZ)14_q9ivx6%skBu}H@vdb9yRIxf&>}@**YSo z9inigj~%094HAi6Py!y6;^@#*h`?-&N;iao*WSdY&SI!=ESV(S1#Qlk0^Zlbv2YP;yRmCGZPe&^D_9H#ZlL#enI8{EG%RR>@ z?D^;3olErj?cEXddgx>zHU+N!&oABf!v@;ZgWb+!&uE)FQmk?>h_c{a3;H_OY1Mz( z**DD*vivTxR*jd9t6+c#+6T-4YoJQ>PI`FF%>jG9&bmr`I}kW-1A_za{jLOsS|-z` zUaUao_&Ai#o}K-|R+Z@DNJVYIH`-n#OVjHxt2whya-q(WI5Io zhW5k9>W>%}J=u7wd-(IX>Bp*iNX)#>XWlU?M<+f@qz=;-3hb^3P2zE(;K))N?aFbg zxk!yvhq}M?aEz)QlDOT4YsC?lPse^^NcG$AH!rOFWT%D?M9(q_8R%p7IHtK~maJTv z>`K!cBX~>t0AO$?h2e044=V0KEFI$<*NAq2XRv4+{14{dDLTxqTN{pTyRmJvvDw(R zZQDs>yRp-tvEA6VlLn3c^m+HU$L`aP@#pY8OU{zD=34h$*Ss(b?(mJ+|H1-iWNY*lR43EF9Nuai{G!HO?*WjH&BjGBkC?7TsN5)9Z2bRDqT7S zuSd3k=QmBCf)o#29v5GLXNV@Y|FYHZ656r+ZqOmEByNo(0MmL$b>jynVNtr4(0QTv z^lBmYqxZHiRuWshMs!}iwpZh9oTOOEd_<=mA!TU3@K7x5G?7c;3FAfUYTy2;9aXk! z1W8;=bcWs}edC9W&=k|Ilb3ddhV^w&9J0tZ2ak`a)HiR+MKooQ8x~NAEQwQ>RTp1I z5HD~4Ww;TJjZf@Eyj4;tGjMqfUfuHz*!U8kE#VQwk`o|P{K7fbHES2E1(8tBDX*Tg z*p%2*&Qdl92@60VVa}^jkZ-jWl9iCtxZ+P|ST1>+_(ujYq1_3|5nRs3C5|Q}4IK)x zzlOmRRB!zVmG>V-05-x2$Y)t-C-=iEnm|gQ>fDQvgD*|H9z0VNEy2oblW-o%B@_oq z_vh!)=9?5l?t?V+2M@-|z;!Kx(nATK4(y_+##MmyV2|p{u-3KTP%-i41wB~?=gL`| zqjiuek&amG%n^t>%Yg*UpDf2c#{*^Ag#)%RiT3C3zzp;o=lukht^p3Yq=$uVBLr~U z5)YHY&S5x?U_EFHsm)BFxFA-J;&&^y!ki|Ex-)4PjeL^%Y}W6ds-7}$pYj}&koDE51To}6sLZgD$L=mFlKJ1J$&h`Ipk1p9}OCSEY;oq zM8nVV14ESSp z4@f}B4WVtQEvN;xQ8?)*E}_9p^|x$p6yomtu{>fu`gg!&>Kdil9>e9wxngl0euQSF z*3&rNvE~aB{UIe!yAfR~lcOntsKA25iwOnBuTVjzF65^P3jC##0$DM2RkjP7@`j+$ z>2R#X7^}U8RV|=y+lp;9@w@hv&aS-Y)TDzCI42>u6BtuaIvk~KS$riuxSFMoyKF|= zhLzAnPV6D?$j)Nmyx%Z<{o@D6r5K@@)#ur%Eejyj+ z9OFC_0mk-m(S{wH+B0=txj9cSbRTTp>G<4VlYHLfDx`nen|IytOdP*4#kCY9?SEM* zep9psoJffQ%qGi}K|g$MN_v`}a7>8B4^d}aen3Y zxdnar<?$;%2lsNs)=t8KBX(b$GXW3R&O5xUfYWCo}0i&#@hyB88CJE`8abL*(u2#S= z!doO?hRn%o4+P2X;d@DY1Jj9#18WseQX*swYWgxT4g%Z2a+|`zz6%M#22{>~1ci2! z)bv*KhOa|sg4P6IRNIgnq6C`HT8OaSN9w9Z4DrtoMLwurPEy}?q*p$YyMazn-S-0t zV>JubX2ilP0-O6UDsVB%b))X&_ig~GbcSUwnyg0zC31r^+jKw>QpD=PxH<=dVvr)R z`a=+B9M?yr1EGtnMXcqxvg~g2$LOe3lJjLf9E96Q=#>Z9h^Bq!c-UBFSGHLJ^OL+z z3^!nQO23|ZLWukE{1fN|DrxI4d-<-XG|TT{8azsp(Z3!5`zT-e0gi35ivzkeMpt|u z#R@Zp5ebqh!VSwTXwGEyX6umzpkd zZ93QiRIVvcjI8p?7BtSH?p(~uwpvR8+D0=1pX z9 zbDW^EpOY|xjX!3q-Su8_5=+EB2(mA65Y$+b8~7^&k@9a&<=n$*^y=9n#2UI=*ku+R zgWcX)hBi(R5ahGtL~s}!boAePGed?8Z3(RoQZM2Vy`hh9QqH$x0`-Q)Q#?PhTH!DoP3&b4s>6zkiWBD+@4IWyaD=26m$l9g{g|J!5pt1sZOfg0}wiZFTt@Xaj=kDIt3HHKQ= z$A84#NJ8#zgRBWjSCY#sd5YT7`@IROK{vWv@f}K)XhMZl=4Zw&fT9qux4TFssbK{n zyVgEwXzHpIr;o5jei;z&@?24CRq91=3KnK6hh)Ez%bsYu6swWn%ddh6k^L zkr^uUeo-aX49#7u3B5jWCVgPY(jYfE-qD8-9Bq}BxfS;8_?Aiyy#N%VO$N9z)O$Yk z=-cOHdGi7wMn>G_b0OzDhi{{2SH;!~#IN-TTC#Q++*ljT= z8gRDH2`{dD=XM4nW75H;S+Vs!cbrK@<%We`l7j9z7UeXum#k(H59G@YU|Wjk05x8$ zBd6}-Z2WPI*pRgPZlxPSdH|g_UI%dfHelh)wJVst(yXDZl-#i(+oe;CT^ILfQ!uCIfB+T#g=w<$w`H+IRJz4$ntXFx)gLL=m z&1l2I*LrzK(|B?V%y;IOw>nMTrNb~u^wX38b5FEqR2^2epgV4ADdjQ>Kv-4HM7-MI z0r3JrRC#8Ut_R?4vPC_I9zbv(*9^!Cmya$1Yn>!gHj{eabu6sMPZ9c=K6qaj32Of( zh<*kT0*Z8eiEvJPj#6X!5OH*k@^~R!ZOg|mcUaj%YE~Q1EHDq>+4?ysP6F)GPuRzS zyMQVzngL1sxr!!6QIknRREmepmc47dMp+u@G5in8}mOV6}cF& z$?8B{7GGBE-?X>0TOxS+2@FNKK@WkaR2xrua-XRsXdNJn(81 z`r!*$cA&q5ja)obp?Ar8hXbk+jX<%h57p3yOv=$<^qCV#mM-ZdRz`h7a`PyE3z z21d9iKp1ggr-yUHlF(bc=aS=$RbgB|(15dMeFLdm%vAJF9Y z-mVg!&o_Gt25=9QXF^BSiTTZ2oXKGo0HFwyS5jTy*8rA*WapnQ{OhRt5cBrbH&Q|K znXfjq6@`>2>Xa@5XwAe~nuFyV&O!60N`QYXg4{N^Bmf$-iAZPpLVS3lW5}4p8+Sw= z?npaHiDqB{V$vM%BMpWjU$*VCYDj5@v>h$psK#0Whnm!aE}*cKZ`)8$NlPL1^>#%jh*(3eF=(p%IgZ^;kMc*HKq)q1AeUm?(7rU|fq z(S~2fF44?`SQX<#I>3q5o6gQgFc8urI@k(`2LYh+70`Jb55={U=2GK+=E!&2t;-Tc z;*^fvCDboE`-1SMQ9D-uLpSj4j_RFjPe01Y6D*q^Hs1z`^S;r2_7!-=r}VtP?Ag2I zy)6GapKrp@U+43V>K;%zto0^Kyu}{l^%aZX9%p~X5=j$4fpb5RVvSLy{sg9!;@i!X zGiIX{?+3}GO{=X&qmMS1T8#EqZailc`QVjk7OQ#vfekzLV<6>=fYwiuzUd%9Bs#JvCXV9nll8IKd!u^2 z#pL8YVhlv2nBRq?zX;>vtRAyE(SS_3spg}kVVQy!ir3~b?okrwVMEkUqK=xm%S}Ll zo#&^ba&Z2rDS{7H1OQu2xuya*CxU@&sHNU?-voNQnffP|a* zF`i0nJ5sG1uvoIEu3-kGuDTP~bac=fE8nLj*mH-RxR=K9XidAAoAJ|U*5jFKj5nfq zD+S4`Naxy1y7JHqkZ%+kz+m?H)ia#TfncC57WiII8vv=)m4K$ybqMlkzUi#CxdNhb z<&p1t`uN^>iM!gr(IU@5AYr%5V0VlSK5rrlPxBGc)8*w8 zAl1ke$Dj4|zHFiYS}hPW%e%BpEWhUkD!<_$Z#?bRi8uTMu)MGFDGN;)e(1G|ghj(W z3^Kizd>Z-JBUNsZNi!K1lVbhrp=GVc*ETk2{%nG^$bGGU@18uEMe-SlY-5RnwoTn*^80p-z75G7z(MyDIsZhguTM)at|xJYQBW zRL+s6H=88*o%s;DUKjihGh!K`I3gIxb&ong#3i(j1%6|=XZe2qwpD(x5(AI|gWMcW z&z3O`lSa3X-Z57P!j_H4Qdn?YS)(d?pQnu(*a61yhFAAoif-}>IsU@EnObv{6b%}B zJltz*OfzE~+|G;L=EdR7V0U2`-H>Zg1mDiYez-8$4k5^>v58*0X=K9I*CT zcpL6mEMiCxw0{?OVA6LZ=Cz)kRHqBvDZjLcpWm|N+0m2m^E)*`+u5SWoB8k|t3pP) z8BQswU8_xc`CO}QXrVoLf`9!QviR#)Ya>w-zvgxH87L_}0=Vc}?9S?DYcE~RuhzDB z$tU2!*#YYt+|-cpZ7PG3DKS;7mtN*xa0tat(Sxy8g!G=`knAaXaAaanLAq)wjSe32 zMsw>(9gMU;c&_?{+aH$U)2`o`iMLS)j(?m9mUptb{>^9mpLD|ve`sdEGT;3}!|9;* zS7%;UToe5~x+{J;;lQBQtGy{(N{{`|@u-@p@Ez7O2izs9uRSRJ_TZU2@waQS>@_OV z*b`6sRI*{hsmv-b)N_|;5mgeNSChU%OeYIPkdI>|3X zj&!!jx!B-9qTsL2B9%Fv9fWr9BXsLeFe(U0OFoot6$8Xo+BH`zYu?Q`df%??$4%gV zIn3CQ{$QaXWA~R8co)3D!2BD$@GCRzE%+OBGV2XrKn6+L`!YLFwIdTn5QhxfA zQ@uH9%2TaL*$f2sao6w(j$af*B$E!f34b|m#+ZoiHim-h=ib0qy0jFNbFS?%oqIqE zV*%+u|D*RMvj58_Q2C9c_-2domTnM4i_jTgzV4=uqE&FWo@_ro>Uf7R4I`Z8FkQfM z7@DDEj3SWDoeYgjDZtk=L&r_$m?ZKkheM4NKPdx~g8R@Qam{rtC5qv7Dmm&yFsu6lk0~vHNHH30sYtF1r)^WlA4)i_=!I;iMKD z+(8VBZi4P-YrT(mcq;2|1%2FbUs${Wk0aFoB{|xJo5Aee8~tfg z;X35n5XDGu-3Qy$q(3!imrM}_rN04<8X*`nBbIanijO@5m$bCUEti%ZjKfFqbBu;t zRa@T|?(520M|4495fqMSRNW!U4eM(Y6sJ;(Bxz=03 zHEUk^Nv5JzMmEqZPIawseK7NtV=aSL7wOLuV|rIR{ku3zd8`$-6CXx+YE7{XG}aOZ z<2Ec0rP>FZ7m<85&b0%ADS&{|wkX^({J;*OT=$Krt554|7{F(nrJ{_s z^RkR(nrPgYz=D^R8p=NzePVn-Xxo>b;3$BGo`D^KAwt=}YYWz&iF+t!9z7~=Z#|P_ zybbQ$PHCMcxxJQc^xY&(cv04lx>nm?^TscUPTzkX4Vhhod^@Rpf=_q!dLz_0tW*M& zO9@*kM`iyR5pD>esvfU+A;K;{6j5CdMNKyP<0zR`T;Ws5@`G6R4XCZYFy>$W<9D^o zOutXUq!k$Aff*o#bs#4i?xU`K{)$k3C^bHVHPoKmAvbd ziX6Wa#E>~Ad{H~K>Am`)r+vC+i4!nD0KlD!N4JJOL%8q)nAv-b;n`(iXLBaxZrsg& z=iU9~%|e?3P(4NtvdloLrC}%)2!_r)Bs?APWA6QJzMGLaU9npq@lIgJ)ravK0Ea`YkW`jaKzH-w6=hOEsIq2;E0!Ffi6o<7{+wIACRE zo(~JwfnY?FANkg~nX|UAvF3^)JAsZ{;IF0E2G3|kR`6ZmVPM43AgkjH1@lmv@2N&i z`7aCbE{vD)U#h1!Pvn1m^#37<>lR%reVL7zd2WJrj#oI%f(3gS2n_YbhYJB0Nb|>j zn%pR%A_%yP4GY@CC$N=5OGyOPyTCf?xWo~e*@QGc_VaVmMtAc%%G|DktAmqoK)<~C z>U>34e*a*2`z51Mqn)kHd{y=bc>Yf;O7b~k6~IDryXv={wDo4BBF}0P zM~b0^zCJfL>Pz<~>m}OI$tcU|9;Voa`iv2i-=v7(+JcJG@k4_VzC2+X8Mus<66v2;CqlIJ|)D=d1Q2P9oE~45WwsiAZtLJPX z7}+gG6zCfsvAJ6hg`cB+?q2P@|6Et*cZo>;?VJ(+kBH>0umnHkNQeo(VHi{m;E%8K znFP@Z87pW#k;JW~WhD#ooK}O~%McG%ePac14jd5^0PYfjz+c6s4n%1mC^qM3^IdI9 zXcHPaW2EDMLJamhV>6=4I^`OTMHi z168f#Q52d#L7XYd$>%JFF}jV0lL*F8`0|5liK*(~bX0o9SEzAgh#40tICZQhK4*Tb z+=FY5%Q3EGN$S$DnA0fzBmGO*GN+37ro$x7J->H!{!@|?T;T9SFHX7a2wlO3tA$&Q zgU%EFzK9Q`b;&}P(=+Kd{u6`s0@}cG)LhIJyg;dS{-5jl&S39B-w3=3q=}*w1!$nv)b7u@;sv3!#4_A8 z?MxDttyZy42_9_|P9}SDqU_ma*~k!SU1x*Ca1xVW@cJ~O+l?^8T8(bm8;w&`-w zrxxty?bhf^S?}-RxE6Du_R(vY0`~u?4OaU1UE=?(wZZy6i$*5;--R9VlGgq75P^3b zZz3JTwOcoJ?ul2RNN@`f@vx3prTl}Dr@n=@&3dEywx~8k?$C7 zW%@AjSmYX_3TKNa!WNErY@Bk6rQ3AI*Y_E_6&Hr^SK;`PEiTp!?NouON6RGkZu6duev_A^lafGh6RbzIQ_^Lq`S}vj8to0f_a#X#Ctuww* z1wfDQa8Ckb#%wGcweZ@dYS+ze@GbLAokb@6rC{Fm(PLu!{WYN=X^s28!zP<-GU3?1 zk>@57o-v`Xm)Xw56ybJB<18cv6RV_{DOj`F z`1yq*a<<`FghWB#ymPSg)pM2(5jvlz4$&5#iy!<<3bdQ(o)9`j(ci6vFuXRBMF}~y z0|UF~SX^SU4mk1)0Cc7}i*kCh@_|pE+y7bWMQO6M4@b*hmqT z;k)DCdPY^h>XB}eJo#Gz9z?4|#SjfI`e~s^I)S=#2CVKS;=J%kqB!K1W2AV3!)iKO z5VU@lu+a`qC!dfP%{BKYDw08BYQDgP*nAS4IB0wVr^IcOw!JeGi<~n5&UGQm0EHQD zB#`#?$Q`-+bFUf1A(s0tpAB~{SvXrK7lEVE_}UhR8P?p@GGWTlBOdp-S7287HglCH zS(iO~H2a5j*qXlBbI2~LFee>0!Jc+hm>pKsJMM@I&)l0ciHM0y^hv$sKgs^A4DZtH zGco)|Onp-n|Bra$moWAzY|BjnMeWytF(nPojC#h04dJ`Q2mmvi>>#GlBKP-p)yS*& zfOxjzHQxTh;0Orc1*&neqQcoG0-847|0zF)+zFC)!GFJq!}N0!#EfsQeJn8)lU;l& zfULV^)E9r|-QcsJkPZLbd=QvNdeR0?2O=$)l-*Ku9)Q4{7#@2>+0)|^ev?7{r1Yt> z*Uo1A%zJLuWVQP+ESZd?;0D@j>Oq^CLWjk6M5EL23`q1EZI}sAWKq<}=`Te6ra+Jk znQt+v3vqVppcOI|#^*DL=i(W*1psr7NeL*K=l`2x4!~;A&)O^)2hVENAb;?uQfVK!<`}Yg{824?&?+lCyZ$zb8%9q2 z)9i!weK8;`zuRzYz43w#|3mTc`(y-z;h7~>Xgt;O>P-Cou)rjtB>MpZQeyyvu~*^D zJ_(mZ?Mk$2rx-`0qjHAkZaA?49iUqU%Qwwa6EA;r`$_>Xy_X$Qvb#LO^J&II(}ymb z9A)t7tAt69sF2Q(LgV_T_=)caQwPQkKK6Nv}v%h)a=_SFmYQV`?_E0uGFu~5qCD|9Ro6Q5;?$f<`%ls1GAD;6D_2gfLlwE zP3h&kow7XJYnc##vqI9FUiZR_ z7H&YDri8GwQmrZ zpni0F27WlW9scwFerJ%&zm$+~s@Av1^FL^iZrHa=H>4&SWGgkUn2O4z8`OBjx_7q{-7lEA>knX3@Djt7we`QW`AT^!mqlAQ5E_9epikl6d zP>7Nc7Qg!cUZ)(my?R(pbAm`v`1avcSwnN-e8iS-6J<9ZTz%BEdzmW2> zg~;uGZ7YmZ+1v{JNH-c7hzj}!;@JC(JRjrQgzF`)cO$E?+FdzXtIMb=8(V)F9N@Im z(j?^jlnNg*IL2{ZI=<%ext>I83sI+XZD8j?lfxeB3oI|~QMqKoAu zN^5RVE^sgX<{3|~zuBBdG#?!&l#ii3Jo$2U6Rh0^{5g6Dfo-|dcah#gl|e44^c6@i zN)37-Bijef4Pn1%s&im-R5s0#@f~+xp&0h;@2lCd|70QitS?SK3wojtEHA(WW0D#n+#yE`l&OD z0gT|nlkiPA{s_?R8X$@>m?#U*Y-D!;_&-bu#8=^hcpH#ZDS80SCcU1=Z_OzS zaiI5V(I&};GL-v5=Y8$j<5lIzY;)`E4Ba@xD3Rm@s4IsDPCxBMcWYg`=?o@^TKoi- zv|U@uOj#(;{8Z3dY0oP+H?UdMQ1MbXQo6KY#aS+O+I`)9bhTI%1Fr4Q6O3KuQq`P0 zQPP7WyYqyg9?c64T3N_~D_hRe^ftaD6LkhkU-t|)auN{0cF}~}bVfxqQ{EGqlpCof%%vacb@#2JE z&2^G^LJ@Wr-e4^?f-xy6blOOUGjY>?-UU^>|=t;{O9<#C!8cAnp@O8PUD3tpEH^@Sbhqd*7d* zglD5bnii0Igu7@IjekIWuj`S3^go^<-bo$=Zi1sF1uN+VM{36W=ztCVGi%0}z?s`Z z)@Sm2Kjt|wFU`7WR+}1wvqnmIVY)1EsPoAhZNQ^lXy)hHODxxw{7rvF_v90)b$6N< z9&dnR#en6%6xO>SXU5;Dxyt`*#3T3?nfbHFEkk0gyXBRY#+ExFD8j_F;p6g(N3qPN zhWY}b;#}KK^Uae(E?5R%aFSc}4Cyg8eTb+i3#*e-Y>0x4ONcryyQ$P!~*S6`HilEAAU2>040Q&JXkTQ}nYXx4$S*8Q(XnqW{e_ zS6EKKy7$c@eINCOpIBGd_pV<3N9@b%SN5sK;!9Os>@T7G)vV);LdAs0>+bi_AwRux zNGicexb2-ilRK*wq>DM#SoSZUo8TVp8ws0C)~vCAo)%Yp4b8Kybf^ZQc%vZjg+zJUhR$KuRB>NU6|M75*b_X-QPn{-P_F)Q4fkhMrx-= zM$$$>y=bg}!1__;vWD72{w;_sW7h7<(@f_}Xcd<=AukE|T&)scjgrkUavW(#Cb(_}2o7bM&~6u7BFNu)OcZ%lJFOrS*TpDc`bfdN9?( zk%X^urInjL`0AY!&O)niza^{kS126;7U=DDQC}^sa$Z61V1q9k_)jGmXm$^yy=7A- zuv6Kt6=}_`j*~*AZhC7VjpIfMn8M<(*R>L_ZP?oBb>_#yI}c`&vU_SjmOrxe+hoKc zG3QxzZKl|`GhEJ&Le%OPj~lHQpC+b$>m5KtRGQsiXJuvA%&Qp;CPn#brapP+K^42g zXG0b|<&BB<(|JgImRz~+(JXh^aDvm>Xk7Z}zCqA!1)0}}JXp1))*AqDu6V(OVNe==1DzynpiMSbimQZ$7{OAKsd~|N;*<4DA!n}o#yNVma zvSqH2n;Gsx1na1Aho{|@Xl-CZB5EO!Vkc#YU7{jgkV;?JK~ni_`kbza*Rl&t)rA}I z$0255dlzi>U%SE#?C-;ke$TFW`vCrjYQgb~YVlK@S2jE^;!T@EvTZzBDY!6=EG+s4 zTNnms;L?mp?s+Nj%;CJo0_Y?3>K8Bs;hUw0AP%4D8% zHb%s4=RynK8jeciP>6q=HQv+`z3WL@fN+Dy2;Naf!_hUjr47GJ+TCTA#81j(uR3Q++Q$eO6BqW&ViPY>HF|9fLO|r*<2kzOe+Y^BPRRGPO6~+FpDH$`v?{uCwAa<4i zKdgVhDIdoy^#5>Q>UA;)M)*T~AB8cT`jB=D7`av;m~U@@=Jr^|B$W%@*Tb>C>*}_g$$5@+;R01O z0Fr;5Yzs++83;(WzbN4AM7pZfK2}b&jrkUWy1DYeKu-a9FY5gHBlbx&E6jc8J+>P0 zKG}j-gV)?M);9e30Wz}`MK$}LI2~ul5vJcK%k{;R*7{SXw-D47LjRJVwpIrIeI(`q z1nboca=TAJL;SYAe=HZvJKZgQH`UgP{l7y({BK*&tryBXcdkkQvFp{3PK z94KRP)`r-rwN^(=A$6J0SBYW|`SYE8fl4o0X%u6Kb8xyuw?9}Ec;_|wm-=jF=Z92LqQwcZjmyU!R z7Vqd5ENZJdkZ!$Hdiv_FfD)q(IQLb8krSlY<|uy&*UA)7)Kb!g`{ZM=eJVccJh#697wpvkdEKzEyz9F8 zuWe9RSl$JlF#an{I9}k*;qQOk8bQE-d1cFv=&sJc(IAV8e+|pJpobyv9_=lV(J-H^ z7Z|!B8Y41;hWp9tLRBwQ>B}+bM*X}dGTVfbn-3e~4p+o5MJ1vA16Jm7+ofLi*dR}5 zq|ITLhfBN)Cf|He|Hoo_(y*a|nsu6l{L4`aWn{4g0ftR7F<^=*@EnrpF)6$yEgXz+ zf%q`428Y=IW0JFvJ%OP_RFcH4)oQ%~no z6I#@_Q}`@bd*i>{0`EdQm^uC}D74=FU-2s4n|L)ZV*b%4#IdNV4kAyrmOMVZvcWJc zXl0wGRpje#jP_m+QPR2OU3}};kEjB9$-8{Jx>;?By7F>{go;%~83e$^X~x-+`jL0J<6v@?5m>Ml>&g;I zjff|3q$c?o4*X(HrAWs>v}f#Q{SISFdkd;cA_`-=YW4;;3rcXR(QIfx6S@`VjI+KFdiZ<;G4F z(4XuAeiM|O8XN-58HkTe+6?d0lrF+zy*w-Aq20-9B1HDQPS$8&+Fy$1UC<2^<8Ls< z|Gp6ZA!EB%o3#+p(xGq!2Y5v>8#ymdyb+ z5Z~f3rW3!T@oMnBN~z}5kkYLnsVRw~STsm)OB4R~Oj|JDg6+LQdvCT`eWf2uuX_-S z0i{aHi^$Ehc@%C_icILj9M#RRE%Iq*bFwG(>NdY+4>fgE(! zj&j!ez@OEI^IbJCLU0DKK+y%|Qj1hJnb0_X+RWM z0^1PqQW#zlVx0}iPs88`XD`5_ z@dl!AiYZ3Qt$2aWqOOofhQE@3m84xJZH6_l+J~0ei6axt9z2lg`8P zKIIJK@1C{N@o%2B_`h6xyU{}fFX6`%M)*e!AL_C$6c z#z%O$QNPh#qM-3lbY3gqyH1!MaW!X+650;cl9Oy8 zU%AlWu{LT-h6il`_t~O-@_HtK`)-vAn9yZpuyJZWg55V+j||%sz1i&8q`h5CUG)cP zWiXn1e)im`TPjOi4F^E&rT(}Y>G+6w`!_MC z@)^xI|7fZddJe{i;*%X`IGkMej({>gW^6c>vwM0cN2x^_>ShmMoL(6FK6NAryi$4= z2EQnhUIrVnSb2}sd8nsn=58^_ZH{A#rs-s+@B^}Ea8Vrn}G|rF-`H*76lgl!{;KGmV(Vbx=`bv(*0D zzI?C(!@|+=gKk<9>=fcCNp<8c0Q*y!crG}k2vasQm6utz#uelZ7x=QCe^-J*Mo%|d?!Z(6 zCr+1JI;*lXS87Rp=PD;zhB}sinFYWz!C8iD&}u$34=?$1KiuMXh}J4evacHYPyLV- z0)=T{IB@pgBf_eT1t&q5n`At*=i2Fg!X{V9xpKn)qyq4Q(&6*tkYthx#|6EeRz3~1(hVB@6U-6B&<0!TkD(WfC;npgis=Ze`! zWGZPPPt11=Rs=a)3>eL=L7`=(Bw>8AXdL7clAW#}$TYzQ@?x)~Nh-adl=Qe&Svo#{?tMs*hNz~ zK3A9GaI~lwS)2jw*w3CpWHV>QERYpo2PD6Xq*$}cn^6XnNn5RO$Dp*rnG`~Qa}pm0 z=^V^jRbJCRIa<#?C!Z+_Gocp6|XAdE(kS*NSO@u@yapgR^g_%u@v3{KxNf_ z=tUp!Vo+>R5I=XivD>w^)9v%!J#dy$o6R3}`$k5@r^o;QO;=<5m-6lZIRs(_UVU$TFHXXP*-lKcVnv%+=xjm%o+!11dlD;+$$}w?y z!f!MB_3FcwIc&`nI13y8xDNuI8{wd6`dk94ln#;mRUV9>Z8|_zSGiIzSQ4@FPN(Jo zbgiD<{V`Vz+2HrUZR((DfpE36+zpQ&nP*jb&^nX^&SC${1~McoJPinu=|LF?>`r$a zzCO*>>Y)}duB@S$fM@qiiP}{|vA9gt==0eC3RiV#+*n{t*BrYnaS+K#wann^+rmVy z)|v~XDX1V!eg#$doHZux=JA6}K#MAQOi-{?oJEq0u}qmokHS!f%^&4sKUxLaWwN)y zCtHI4baQ2TA0W@n_B;HmIASIArjhiM#1DW&(U1j!{jsl~XCp>Sq#JQG%5pn5u0V~+9~Ob_bl@A%E^FP_T{!BK z{_V07^aAGzG&na$RG`kB&o!@t4yyJ2?V7qYIK?&TV{j7(spc7AwnVI2#o{s_w@ic+ z%s3X9Fd?Ulue;dfI$yQ{u{w1_2!05L2z|nN*dUZ1s>4q4HK-RwfW1%btma4FuqevL zU1^qBqUaT;G$PZo!$7+eHOgNoxA8=;Zb;A>d3Z@|txL?)ydqtiOAJNGFQhul{mK=LDtAq0}dK&B~TA%3bkE zx1O%8tGVQ0_MOjhj3f~1-nGuIEh`Lpnx-PGE}-$Ls;0Qhpy{Y)eT#h@(#pJQ5v)-& zy4sK+)TCf=1N>%>;?LrGHtSKz_xW(cE2No#k2&PP(b!IYxE_m^hG#xo(hfNuy0wd# zAdOw8#r8zQ+QQ&4TEMD_chjL8M&jY4d^vT-G6#v=3oc%)L`FxxnlS*#_^ufjv=x)f zne+5%-~=Sq>DZNySiwZ;!M6(>_T6t&ag0@LGhjXSD9S2IH9S8lku(4ek#lg`rXEf& z_8qJ^0dZKxauuBWnYABDg`{$IEm%TJYpj7^6jbAe#WkYB=MH4@d;I}X{dVT&V7=F2 z7-pQX`Blq_9v_CPzi;xXI;4r=(i==pkt|2ExOLfnZtU;XV*-Kp;61P-W^A6#V!E|B z={cCf7Mu|3GyP1qgegIrq2Q2rWCa*?DJVp}Mg&h4?pcXhg_Ez?=6`~X6uSvnVgr^U z2spu_qoL!**^&shMlEw>v(TpG%(yk_DN+$ zZ*#)ovgI4WYI;D!cNu1-oARXKId5Q*BbM9d5W}mfuCNVVx4I_Payu;gNt;MHd$ARY z_}zg%OEl>3<|k#3W1Usr)3u@6C<01;cokh%}_f}uQACnxYK&~%_v zu=5vu2bZtw=6G-{V#WhJ(JA+TK#$H@NuuYvomZro8MA{n%LfAUx(XX zqwccb9`U6(#QmK1uxU?ibTDt+{o-cxx`XhPL9pl@z3H%hC&C7t+ymUyGp{G)0}S01 z0q3!K+u?<&+TsKQk_>%$#fkz@1Q5c84S20NwgQ-Yx?LS+dYm+iT(SgHmx=bJ6uuMb zUhCmXrhOq{%v0~#ytbeFBH@={;o6sz&6nMg z5h)oh;xrJ#b7*NwXH%@MKEa?dlo?M4=d@L>mE|q^UakRs+6vD>T^Q^|pS~ltOQyR9 z4q>#kN0wcw(62{N4#=G)lYkvm`H&bv{?cDY=_5y0TYZ2{o6w(N{{J!e6;X9)!Lqo! zySuwP0fM``ySs$o65QS0-3h@R0)*f$!GgR0ll$LV@8u=~hIhz;0jIZhS9eu~)Q~a> zB<|M9meJF8?QNZO2(t|zSJP8B!!lCNZM1wR!HTeVk4H4oX?9D`i3%4T2=Hvclxxf) zpa&o&u@t-p(Nfi}R5sCRU%|Y-_ozhz3s_g^q>);}Z$mJWT40m9&C9LwHHf(*^do@E zc8A&fMxjNVQky01d2X_MEnPQK1&2J(?Vvi*9qzbxoR6smk0}HV?Ld?8eNT%R%p6Z% zGt0t*i|Cl2OpkzPUZx?vxLk*1#~*CRyJ3cuN7ds#VupQQQ%{Cs=RR8K zt=X!Qb?!NBlV@7}zNf%Jj${Z_Ed|YEPZ-z+gXr}4{`Gq&eIu`dme!K1z!isHwnbr( z)TSAh(sZUv;BDAV&pSpmv5P5j$Ndi)4aAu}n@1eqjO$}J63^F4NW3358XIE=F$y28 zVQ0)W1}o4ILsut9TWM`f6=06nI=>rPIg8_%#Cr>5KKq6$pNUtiahIG1$)A+1_ml{B z@Cw>{MxCDHeDt!`{aY&irZL|CYzfH9`8L3Y`*)NwLHL&!jMzV>P9~8(Klt#Y>Mc&c zWFa79zt8*(Nc#?X!WWlFoJu%nSA zY4nEy%v|q1N;GFM`P2PFe6C5yWOiOCDCT6P_%P=rj7MrtH0JZer#NsDeBxp5^9P7C zc>OpNxT6H1Gzn~lxQK_2r@}kQLOXR1@qB%3;N(@e`|=~4JI^(_8bGOA4WK8R^QVzN z=JDOXN0E*XfKA@8iS9+z1I0y^hz<^R$4tB$8p2mKgR)t#1smKBAxG-i)}Fc!ajlhU zGepB~xj~eZ;9Zq;Gg0EgQ^q>+a)}H|nzF$b$Jq?`HpW9MaP02j`xNZVz?QA3djl(R zMc`)0e}>oW;^ah@#f%l*Xlx8OHSZG&SslI^7R9P(8dE0HK3%af^kv@g$^H>E#Jbhy zFGu=KT?!VC-|7?H*spehOmKszo-l+RqTr^Dl_(-cF7NSfBnrI!VzDqRgQ$W)?FA`S zvKmG6bBsT_2}r0qTQ)i&eOQoe+|O0l(#k9ufC)l?1o$)omj!i*ZDNpe(vdiJOd<@4 z-=dB=`|bbo&87V*#qE06o$pRNO~c=PQej1HhiUBV@a~w%Obi&s`|xUX0+$dupJ)FGj`s!M`7$^n~k!|=er-tG&!XgiE1eU zyCv~lW#3Y{q@N$p&wt)`p2Irc<8fWGn|^kb(kaQf!7^KGe?0INb=NkkOU4UkhoD^x zn(%zl1$K@tOJ~nrzH(s*zd$r4kY^>-6*21<3=Bsen#|w9j`*lk^K5!J%gT zx~7pM)^Xp!#L5g`l-*}>pPzaqpYD}ekyC6mYm5`lbDbs=vM?)F1Mwjz4APE|k{nHd zmV{Xt6-)O&k`315VO`e?-4epOSh!{N#)Dnurckj-HX#73S zh#VQ3V#$2OPl%A{b%)ztL|d?f&kiON2IV5V21_$45d>US5 zC74(UJjRjfR6@T-8HuF6Kg$pQj+5O5 z7l%p1+)JpATk0+ODSmPn+~4#&vgE>01v#D$6*2B!sZA>*4>{dDWVTbwMo3B1S2Zg! z{bS7LiPVR`EYRD^@qf_;{#W&)mKDOLc0C~@11;mVg>rGktVS|X1B!U+m$f3pkVDF1 z#SXw)QB*ZLjJjqf#MZ+uHOc|m&H*+1QR4Q7n#>0?ZPijw+x#e?6BnTwWJCgB)~Vr*YY>SD za7cqta&?s(j(&bFXv$WfX_Eq0+a4ls5VeHK!s#kr8JcgY%`aTip?qemXxG$H)Ko8? zK1HQt+gx;L?FEN`f47V3+cDwJ$>dgR9PdidJ3jZ;ft4-7*)+mlcwZrd6b*K{W{NqW zFU)OTJDm1mMcQ3tZvGn$fy+EQ7Vdqz%Vi ziO$(=c>)%~&i&KE6)=DG7VPOi`(U!Y4H;+s7xf7+X7&!iSlmO?*^t~s1=;gd{XTH@ zvb=O^DbA`pKx_~h{tIWY=N?t%5gpx?mS9K{)!uclY_q#--PD4|$|h8>1$BE0R9|eq z^F!_dbNdh|y~nx?+EoEy0>h3Et>qrU8 zC+2$mTp)#L37weA*rvc3;uLW2`itE`<0m-CK4jI}L33m$ohnSW66xjsrQw6E%u|ex zC-E3uVHB9k90luqFj-aP2sz-d$V{7fYM!DhOowNS7#H+Xkp&ji7m1!`4Cy{AM9#6E zbm>KOY|Z%|fh9N!`Ajkq-b!+nJ?uej5}U6MG(towLckfD>i0>SC>GN?EwQKXIh>fV zvdh6wOfh0mEA+rtJQEr*_d0wD*jR;;yJNNYTz_=QyLR-vdV<#HoE9cW$f z8q)|Of!`vp3K_ua+i#2-X!Myed5GiaJ(uEr#^}Jpmo?=}1s=lpZsa5g;y3~&ob+^r z1|74soWj6sY#B&@_c;!U2##rR)1}{&!}$HC8JiFKjTvD+H10qH?k%F3#L9@!*>tf$ zS_6UX3gHzt;Zi2qk=43WSHG`(O2Ln2j)C_JabD+C>D&un_cPE9FgWWx2AqMDU>zsZ z#tp_7kAeN&3FZb=6GF?`#--aLnt-W~C zUxYOtF}+-pehCyFd3l+ud>_BIXR>_3-KghClpqwk&+aaf(bmDn@?vmLapJAXaGmMb zdLEbv1grF0p;(vLsnKITnOZ!U0_lScof*}^*1T-0Jh=jn6SE5e!tC9-P=bQ#3S2~@ z8?ge5gvKbb@P^e1E&=K+op92r*czkdA#DwZhZ~>U@4p*<=xGSU9=qVA)v@j^uG?ks zbZW;mwLuy`uL(ct?FctzgWI|q(3GhUX_y{g4R$xg@l5gm;_~!p)8$!IKU^`@g?0(A z?C@&E$~-Q8K~s6Ravq|(Es+r}y8kqj9sU7rEjW$NUpB6aU;({8QC)_E4%5U)h@VbeuC5gF-I2n{5F5cHgu@x2ZUI)33ll(h&9np5 zatFgohFZJUI#Fu~rj#&Z--A{M{kEnXGhYqK@p4vZ8Y2%a^BlJCtK$&)*sZV-BSi=i zmkbfSH^{GZS*mJ%k*-CWM2l9Mw2Iz&UMUQ_uJ(|Abg;LnX_KD84S{ zGUs`T7RKoftYXc_zqm{=zp2`0{e6H)7tj{}$D$G7LWCqlcD?;eWq=C+(1<(XwF%(~ zM)cK?O>j#m$L}()kXgM~zn^AvN|As~x((;qd0+J+3Kd;*^Sr}O2>UT><&tuuzbHEZKBXYWQQ}hiOpK9rVG4Jt(i6sQmJf9ZzNufL)^I}I8I#_* z_6%OVlzPDtp6My1qMv%fp^4S2Z4>7`+Luk7H8h)rFJgAXQG&~h4$ypu@XPKpypw1( zCUjlz3}9_dNMP&nFx8Tw6ZRllrh}gOc|Lg;&tc+6uo!FAAzF>gP>eREM}Td&_kK@j zC>+|DRT&4G)1m7tozDFhO)#E81zV>mb`H#a`L)jw&(Ca>39tyViZyP7-2x;b&Iq~z zv{C9qt&x(wkp)yVe9g{5f7Xcb&AMmTsBa5BbcVyRX$XB)Tu!ipgBGU$2|SMhsA zJ{BeTfd-R<+?TpzK7z{F5uLSJ#A^H7Y?^0RnqjP;G2fX%nqFD*xkoPFX1oCDn+<&a z%PD%(a1RUDZ?+)-FXaC{MPMB3mojLk(}3at#@#Hw@}aCpMG=Y>H35BMC1Ny*p7VD&+EG6SWA~U! z2|Dd&SLusB9x&8syiR2l3dI6ER}cc`bPztf%V#1mIWaVGFU9 z=W6ZSeJtDe;D~u zUA8M^$asa|w26{E*CI8%9T-$ckbCAb(6)niOckxpTy%I1CKbLc(=#`G02a1Pk+5O# zzM|%npa{V0kHLyp;^jO;81jO<3wVds=JwC{vb?FY&i;FrrK+MG4R~yxPL&<}lOvfC zb0{mOePvEwJ5)Vb6W%K-Su&}jwYmZz`ya6#bf%%wcJ~G97Qk2u&Yj zz1>Qzs5#^l&Le-U2ApbRk>5w?P*W9Du~=I9ti=LLl;|T^P8CPL3UjmPKj*txiO4nN zBOI(_O_2aC>0C!>eHWqS0A)ZJ~4>cvv z_G`dL#077>OB+hk5egi!Y&3R~AeuIZJV;_3A8zHc1M(de@Wp=L^6>yCL{Z#n=9Rcc zs=H>qOJIXqFJZ*6cygXSeBv7v`1~}ypY<1>)9&xyN-w}wSFU1fn?KNcTOAyjF<3V> zJZfllBMbf;rI0wJR505poGfB_+g#STvY20 zY9IK_{4>_tXMx(9BSL)hW1hckw>K3f|5C2gjr(d9#DoNZPCjwlAx2cY*?F6w{oO3(e`|JX*|NEnn3us84-SX{CDbX(MP! zc>Ds73_<0fh_z-l2nl?-E-q2sjyHZ!{=5x4h^)WlGcL2Vjtu3Lo7cO+Z7xW?d2Uhq z*IkB=0>XZGb8LASrR)lxvG9s4*ex~yi4*$#Lp$sDZOy6KvUwc>5Ocjtw8PmL^R0R~ z8Oy)8;UQEDM1lD1Y?kQPZse0i+ii4{RaVI7}j>Uf&b!7Tti zbGJ8*0QRy?92%L_BXQxf=(_+(Oy2C7VU*a!qIB+%0UjE>N=_mNdL?p&@%5k3Ttv{v z`gjSTYJ%EyG0>m8xt%~tumQ8Espi&}6lOTMGn1T|EOUHv!B3|51gJz{hANO{*Vq=S za&Z$+!?F_5HdF@GSJQ@wKYzQaC^*_}IjiJDXVaV=`XF|fbaqfXM%q>FA#tZe>BCpp z8OlmAbexm4`;)&(mQsq{SlIT=Q_Nh~W#AUpZqD^jF-f*J$}|7Y(p3G=Xw(515pOB; zS$_BXQ3Yrg0>qWUPP_62rjP>yF0$8B7XaS5M*&xI@;Ne1rG84~P5JrM(RrV^c`3F- zKe-I{n0ZjTp;xkm6JQ0nTC3mFk6-8y^EtBJnsJ0qqj;%ik~?a zN6nZ>|MVx;XyJfy&meC5@&0-+(WVEpxEq%LQ`SgFtj>95Kh}oG9PlB6II@woKpNA^ zn(-B{HLy8x6j*oDCJ~OoCvN_nOPob!-rM}2r=atu5HG>*x2a8!v8=A*rJx3atZ4}U=>WMX3H9%&JgxUiy)P~zY) zbrhd0J7OCmmDk$&Wfok%?j&6gVzYEWR-m@Nvuh63HrX88tAe1CXRD6OAIy%^ZX1r^ z;@!4nampRimct-uMp!EHs#DWYw>|_YFxdtfsagUEoO`iqU%n#&M5^u4q)`9z&EACD zG5_mnj}t}!B?f#mfXoM*zoK}j{5KcF(=S!SVXfXhx7QT_jZmTfvv?h091&9wxF>rM+C4cS1C+G-5Uc%Nq9w8)tNrEXWZs50J>m3a8}*f(MB9imLK| ze!aJ8aI-P}UM4I5AET?Whs8Zl#6Sj?+jRs>`Gm=01KCf-WD?reGlj*OeX?fkBk`|Z zF7({a=|1-R+&et8gM{yUt}SY|T~i;EbD2(i!COqA1vW4`o8Nsq6|rsE@ki5%Ne<>k zBRegX{=AV)*8{l{Fuy6gTbW9=0~A&r?A29-m`2=gf&OZPN6Zis5ndb?!haO zE+RSe<`xCWrYKr}6+WJrf}yi#aWB4a1C#-FK`!$L3xOJLZ>i%?1=ZY)FouBy3*y)4 z$R+c#6`HWrtR(!M;})%5PwaVKDIq*Piu<#TAB zj&N(1AmKfHicML(v`L{P^FFpcq7kTR>3q};914j;^yWbhN%BQ0l#ge_PH_p#EgwqI zh5Ev|CC!fpg=|8UUBS4#&nGw5;JC4_*dl9jY?DkJzl8Xa#?$ynME`iOATsanKTDEz zGdSCnfPjrRMoAt67y_sv%T$n^%S?8EP1V7-olkX*JLPwv)*nJ#rfmIF`HyB4?jhGwuzO#YMn)x4bLX_eEL8+^ls^-4PtWV1 zI*T27U&5h$2&$ltXJczF7YQOWlDq_`QSm%_w8rcJTK0#pHpyfbKK>@2pD%@5xM84Z z!K$BpP#0uW&jK{UdWyiN@AXRv>kG-OW74hQiP`DQslPi>8=pIJpZd7%-oi#rIb;2K8kpXcSp9d=UZyuqRh0`ASAGvJ2ANq*jh5rOj5HC;a28uShb4F47m% z4K_XaItpoAn|G{k>t}knwC+8vClT1?97$bNXKS-eLOII~EkfxaHsUGB?HNAQ0Gl)<2iJ8xc=9dW9Ir zYKFjXSdz4QbL|3oLn9xG?57NQ=I(bvXk=xg3OKlaK*P=aI$Osf+Nqid+xel8I~l3= zaB*s`;e?Ln>?`^HaH>W#S+c_P-7e&%{5|N&j8*Gj*8NR@2g~o{1-fyPP5|Bo;Q9Kc z4};@>$(3}`3sAS}QlNCK7e>4yXLC5s;?XQIuFTy{7%W7z>kEwTzW)ABeN&gqVTIho z0J^%pb>H1!i_fLF?yCluZ1#kz5UUt37LD#@`I3IP?*NF-bL zhj1pW1ah&ZMj)iiZ7xVw@AQ-L%)~mV5lt~0akCzF#ov<S@qJwHsk>7A2)me4oI^3bLNzd=}j;;D;vxIwI>Cn zQPF@j>Yv9lHOz0=(~IQ*(1bkpX)G_HIOw0Bg%l)enJbNxD@R4!+L6=O@p3627Z)sw zP{2>nNVGbocJoRi?icpo5nf3Z7mY1Z=3H8wkwmIwJ=;{aPjWx#Q>4Zk_<#vs9f*ej z2qHmG$2demC4M+AxO+{n;VTn(1r?ltLUjUq2<|zV?Dm1|CK{3Qt-l*LE}AJyU(5&v z!o;*t)CH9PM&TS{wpP!z59WF$ z3VA56Ns^>v)cvXd=+TyI^<#?uJN!71KezbXoDf(ze*;qgRWsVP8-XLMiJeUe&fWm8 zn7I62GmiMIn^1(8H`_J+YPV~;>>DU(Y3cm<4iiKhE!BVu323)V7-A~hYrOkmr;R69 zMPQZ;s2M5$sTp;4d9rld&lVh*H$(CWllSH{N^VWn%RRmhql?)FxhST_0&uKTj-!u=>^_^`vr?MI59|eS zEplJ$oamtD9CcHcr%>wk;htPe;!Jvq`z&6U&8IkSV9KqS_*bx8Ieq!=zN>%2T&+=6 zB-wWvg8b|NU|d6v+jNfA=y%5XXZ;!0w@QBfo<9NlYv6$X+W#2xc6;inx-x%$ZFUoX zt_pxUhm_dMWEs#F_k3@kB;)zbx@8QC{=O4sqHZqH>B`5pOqZpyxwBe;f7wZ2Rp?x9 z1fesFKKz!{%jl#B^yWFyM6~R@X11*h@+C3RQJ-+WKC#YK-ZemXr)@1lIMWwm~F9QOwU zEFr$;rtMf!o_Ga8VP^e;FYg`2d_b&MBXQ`4Lpzpa5N{E5ntpK9Vioq9(Me1m- zP=Smk=uKemU3P;|M)sZ?HhxXJ&b)*0T^XS%j+OUWim*B2({C-19EJvCz9}Bgp~D(~ zyaq2?2_XH;^1SUr;`n`D=vVvmmm=FIK>Kq?6lBlx|1S^6c&8=jFiCVBYU3?~uFo+0 zhmlc$CvO?O(r&%!g>x>5K>EM~q-|fuqs4la5#FdgZZ_jhNN7Fu$6NtiM6pwW`Hb_B z;+E8tYU4oNq2*$NA^X-gMv9Kc0B(8I?lN({oHk)(nM=-A9~mK-Cx7j&4o{ahCj_Xy zNKit0OHSr3#WR*0@YrZp$l1g%D52x*me5OTX$Y zt%(E+G0&Q00`;RrJ0GbQ5=JEkwNimH9R$iEZl(N6eCMA6NuO~-D?`Tl$lXGPBYP4M z9?{cz=B~di40F4;%2faGvY@V!$K|MpOwp#%zaTMP&mw+;zFEDHW-u{nc!Ir#yTQ}7 z#8_XM1@)K3dQ-y6`nyoP>i^2;ZA@$+a%BE8P#yv3=Mm+&#YGalA55nrLq00Oq7*X1Zsreh z%}!(D&);k6&up_P4jJPV?mGOfU1R*))bY3F&(DoJpR##_+ei3<>~m~)}E z_l5yo?P~eWW92|_+bvS2?E-Y|DE^ZWy~*(Rcc6%y)Of~SK|%6{blweuXGp$U)AVCq z!Qfo+5ZgE4u*Moa)?tj=?iOJ?jC^1%oGX^tPxIJk{{B;> z#;)IOO|$NhzCiHgWT{8WZq~Mec!Z$~&nT_)z}`jO#JZ)j*yz<6`dCgjc#T?xVImeo zbA^=-n{;rU_c9_;@GOv0dfhSvgBUQnsMFOsM51e?g2DFbBG^Ur%m4+}7;(Z+V)wevI#s8yRX+2MUpzPv(`E(graZJ}P$x z>L`S<4z}8b&&ADX^E71i{2~QgTZ`Z6r}v#Mf0X1?(>{5cMuY|mYpaiCT zjCGHm0{G5eJ|ts;imX&cU~&T!N5eHiF)LY*+e$`DS+zs!Y9_g{t?(G@%b?A;20;e= z$aoU+r`&Roz+443E#hp$^Q+zp&G2hKd>s}vMCB>E1O65WDc%STn%m%!S@S9!->+!bSI)GNFsWq$&F&*%^nIsZ4Z)e<%CPK1<5M zemac8)TQ$xv2<(yRytF8CBZo2PnbbP;<;AQulnoa(@lYMEqy~VM-C*X;Rga=h*d;o zzI`Dwbs?+9uJl{yZ|2J2loX$IHulh@LJaN}P3>ReYw^^9&{Q6Rrbyn9q`PhkzD)!3 zh~>YOo#PCY2)h^G>>g95RE=cAh~YXe1jvehBfx~w#{l!3ux^pS6`;!wWDui8k7xZ9 z21i*&)X*>Ck0K%|M#Lp>$RmhMvn6jYqa{K_<7J9t# z=cV#C_YAh*FYJ|ojOGenwRpaUIBQYygx^%f^E6@E6vOQ>V4B&FYTXF4lKXUN(r0B+i=rh7=5>Qu zwA^j4-El`XNmMzkxU=iIQAm@r7ObYXQt!-D9W3a1BJPyrI=L;aw(y;Dl<1k-cjrjx zp>an1AeU9g`asiqMnUCi`!6R$npL?8cwC%R$ZmzK+c98rn@>O!124W92a_`8b9%|p z@_YnNaN`XfhF%(S`Jrd`O5d*kQ7Q!7OX9GG)X$Mt9?I1oG_b20{>mOyT{*P^`T4bu^KM_~*|XBP-_=EqiVtIff@17@^UUCnoyRA$PDeeQ zzIX3g)!C-C%?*WI0sDaL@-4xMJ))(PI>&M29EM4oa>wdCidNMXEbQ~HjOaZ66pGJ^ za%HO+EVV%uTvb*LN7RN%m%LK@X5jbYK-TpYH76tZWN8C)0va)4B1+P0ZlSh{WZjU| zr>1e1pGZ01R*qYq8$X&7@#X$y(cT6q|BE9MD~$j+wxYk35U{9&gnB)T%iB}eK5BnE zkZAB$jI^Da!@&tL&d46#PmRuyTIx1qJ?C@0>n2{?LzE3)+?=cXeiQ`t^I}k=NV^QP zGF7zk9$dcXjMi(MaHcK*+Y*cPD^ADw4ZVs=F!$N9Zy0&fD$3jf)flK%CajpgK_cY- zaFKgm&v9in@`8(;hq2*N(XE*Garnr2unIx>MZ%Xz`G@$m+X^+|CffXlaI?V2l9`t; zKZz0B#$c)K-*^2b3~xf8*_eKB+$#yk<1s^ZJfiz_t3tpnoF1rHAtt=)lP>aRj1);2 z2a=imVuJa+*UzpeElPfx`QcyiK1FbXzfj)C2dFhkL+;>*bhg>uGJVRv77(x4o>|hC z5-eGltP3p_&A?z+<5$68^+&5N87~n~Cn8X`%#3?PmwmMHrGD34jEMY$f`%X0uK{F7 zqhhQJK*v+k7maE5Joyz>SljUEC9JX=t-NOAtSG$S4U#{FuCw*SC0ML7Pq&D;)UKr# zW9)unlAa3XP|4%qK$PbkWN&nBN`Or0CqiI!Af6O*jSt13wa{jcpdpAHp+RxkcO8TU zS#pr^DgTklBAF&0o#U6rk<%t`y0p7~=4zOG`+bgxE@8kCb$8i8$>F6@RR+U2k73f7 zsZ;Y3F!WE5@6|V&Ab=qgwL_D3hW&oa5>gL0VeAh0L;WL~k5H4nNj$Prd{=Ou^9s2? zcn_u|^Hnzo$tQ;)a9@lZ&?2OsW=a`Sp7#DpzA8Ee(n!z_Cnd#`ZsGY}=rd5g4*g^I zN7!)WoWG2fvc73xfR*VtZ1&e!6Tl)@^w#+oJNLTf7dw}v?X`JFhE>=-h@4+4$aRuh z*=bZGyWUoc@qUK%OrTyzFSI5eIe9CMMMqXgkqy=pPYphe-VC9xWM9e67K4&}ZGksm zneM4qKmg(E_8t@`b}+o2gaO*jncRsshe8yxwva1*ovn`7OepCJ;fK*K4(2UyoSQP( z3oefz!DGwX(~rr(GKrrq03KF)o#6%Pe2k(p$N{o=<57(aA5RkVfh!pX%Ytud{BfV0 z#~3JJk+#m_XBK8ip-QIusAp(`|Cfch)x$+@PsxVV2JNng&Qp) zpx{X?YWhHqH^SCM;zK>EB*A{AeaLzD?CI`A6K=7LRUq?Rv2K+5CDeWwzQ^7*0`>f9 zD(pqT7g)~8v*wQj#m@4kf{^9+bU;@@)*1kccRtdtIeKf1Gf3tViF9NLAw1_=e)OA8 zQL#{o#+x0)-S*T0cI%mie#lC71^R0pBLQ~zuEZeN!G^> zVKejI(w?-ccK|wEFBKY^76zfxmRq>s#c~$_i{I1p8LHw^5>^y%27Ol@w8cJm&T`OI zgXZMz`q7!eN?vk&ngkHywaJiAv@Q-<+Iapn*}el1;tg+hE&DTa%x}7i{ltiP2ldZp9X56*gm&wQ?{Bj^5o+I}y~B zhXc#>U4My?FgQc`I?M(;+=|Sh(k#ma&W{OStj&}@V*r##2F=Wmw(dM_yY*>i1*zU` zj1O1Lxm50@53N$V16Q}y>|!rmRHB@99+8EmliwHF_Q>gd2Opvc`@%sj>O5{;A5Gp< zC<KFRc{9!oRrdU{1;Ix&APG|QWsAT0mVijDhU|GxL=@j&6X9<)h;fP5nhnDSgthIAr~ zTGP5p$<)oWux*@&T*S9A7vzo}C&_`q1CE{OJE7Kux}q2_i{-(-gtZYnkqoM{SH_5< z&73Z81bicCO*+qKicuJ6yme2!lkkWM|4mWn?KVY73Hl!RmJOEXGJDc<7O$@@4 zq@>htpvFH2osCcB*ugnh0@ODl;xfcfyUsfm!Vg{*mqW>Hr4nZSPZjIkGMRO1O_evb zdeN5?EoibJdAbS%W9jn}BPl-Q^C6cHJX9nfZ8#5clA#KY5q=UhqWep<-jrRk{VsW~ zsw`cN3oz9BO6}qgeAV(HTOCaoz-3KtOke{C35p~Cl#iyYs+cByQWsLGgiZhDXL<#a zRnlJ4F{A*(Pq9|it_{gMXR(`2FFj<*RNh_KyuR)FxsMwJa#&jS`>0L2(w!nFIK(Gm ziRn)|2oJog8slcM+Uf@3_K>7l+P;61T$Tj8$VOli|$kNyTCe z7h5H&IF4vTEAHy!?heh&QrnU+GX4q*i?M0-^W$*P(07+@*d?EWWH&FO&sm}ggGnH0 z992qEx?vcJLi)ny=gKVcn@z&TmkZ+CC^sJP?i-H^bdRB}Fhdc_esIdQbBZ3PCaGKRxuQJp*>uaE)g=n?SCPHKtz zM$5gURnmg&rlKy)TBOmJH~^evIS5hmgrtNXy3ZLpU!JSCA5+(y+#u5BrA4~tQwdx3 zd4u7<>Pgd_vrH@|B@Ey2%wYB!pawhm$0cY*z02l&*p-5|SaA`ZrcdaBf|#Z*%_?xN z5Y?6;`XZu=@n9~@tdet3DbuGdBgN6u_lc|YdK_M641p|~+7?8$_gy(xoLsaGV zkY6s&zot}tTuB~LalHt|V2p&P#wKy^c32ozV{9aEuJWGIloO~xZrzp=-LDVsjLL(R z(ySR#t?NTBHNu?tcfn9+^v|uEWr#t-^Le>vz~+IAu2|ro4V>KB`%6iA-(l8(Q(m}g zB(RUOTL|EnabgV;rRL0)W-3^3_Qrhkfh?P^?2otS0t-~dC9-&wWwz=PI(2y{T4~=T zNjy@_yrn1{Sxv(r_6Yh6gyCuB$j_00WETAlQDPZ>lmAVnMk56?wBQNCI)@Rtk=nUh@SB2HV%z5n4pnqoR7KVVm4db33(^!^8r)u#xTpIuVLWS_WpYn$lA$% z*(6H}{2&>JmPzE2WC+GX9HF&%UI{(JTeA-_j3U1EVs31`Cy%q_tMtTxF+Mcm@M7Qy z(T4-wP(*&>;ecc93?Iz-4@NI2`qn~RXuAAMSoV$xOGMTHsZ;r76Ds>XXWVUlPQDcS-_eF$joV#}URzMtBE`%94CMCD*+`E9s} zKdJ-%SF-Fan+Fb;`jT1Ti3es`{}DG%Kxe=_f^b&r^Mi%n64u(#1?)=*@!gM*MtYvv+K=&`jcP9 zTYzTI!10gzroT?dYcqHPyK18){}Eb_x22{mEWb7303H$l_Y_eo3=3l|p#>t^imdwj z(N*CKe@3ys-}n+!n2zQZYru9{s5#>NI2Rv5RP$3d6d6Jy+3^MzH;6z&V#@*SNM=Q4 zaRQJ#K%dNUZ_UnZ1SiaimP?YkpPF_a zG5#8Rs@MViL0S_?Wu)5R^O&=Zsjh6>AVTl166#LH zY&{V4NC>`V)QL1)L@7b)8=-8MMZa97YIDSFRmQpug3}Ed0#}<24w^3S$ZTso^C{{p zjGR=$PGU}aMeB(^^P3&b}!BnEeLa{4(flm@`RL>?>bvd=9>#`XZrupg4|52Kp)UJ$e0sJCa4iiullodU!+4D> z0}*c;VSiM@H3Fvq>q=r5Hq#}6#|NlEUC-H3HHc62#g=>0XYzh?p43l}UYsMDio((C z#}o9F$PYd*!F`1SLx{9Psm6b9z&F|h{k!=7ZN9pNj2cSxh+{*PaP}B-cxDN?KR$LB zVCF(gUN{xl568<2uuon}nM;RyV&(d77}TSI@8Bk_0L33YSYHoftI}EjR3Yg#II>dZ z++WrdXeStk@DnN{r>< z+W1uym;0G2)40!=3F}qO8h6ecRNdsQn`oW$IT*)mD2N4*MO~XHc;ZLbfFF!mKhF~C z1l$()nbvHx0Dg&XWc6{2jmP)2l}6%7KJy@XBaqgY&3gl<2W`c1lB$=0D{}wmc6Xc* z*2=V8B7?8pZc~$hpX;Pe`?r4B&)HjEv);Ds51L=4YO_D7W}BiK50*x?Ykm!I?gbt# zwE%UIW;R#HXECox1*z^onF3Dmj{A(}8M9psUEbH8iT4v^yrG z_zv$%&2vqTKhcMPzeS_*BSS@O>85Jx=NLM$tS=L0YnS=` zWu@Nq%(F88)&$j!|DRDZfVj~H4Vc9SUzU_9z0)-RDLG>B?~?8 zZo~9si00N;;U)TL8(XXI{njMB#Rh#yGNh8s#`)K~h%ch3I?_jj(YqX58@$>lRN#Zen#;9C~EpoAF5}f?&;*B2F~+!lAUFY6Bw?_R&A7g$0P?nT|8j zER;|*>nkBiAh7dV*g9%7{IqJiu_duuSK8(y;W_zHb_H4YkP24H0|n9)-}h7rf5+1m zBls1s?9X(X<82tvfA@uZ8}tImcYd3nQ<09}C4&3K)+bWkV9YEjDfWu%0@w>D>|E37 zi6Pd;k!MT;q_Jcz_hxNq3r(8^w^PlIuaJ+;MU`#mk-J_3`5Zn>>J8oMrI16>m9}M* zej!5C$!UPQ+C3hB=?CVA6#5DM*qwJ7T))&Phh%$5bavwk5RTdU1ivM4?P?;^-KD^I zlI72cVWheuj%qdQP9x{?vogA&qJ=%RZ3tcn+&d^+e2GIJD=bPtOK6_8u_bk!AZgOH z&$pRl;AMQ?4`L$;pv|2?El8h+V5#YO zy#Wt-jf#AxPhjPOau&*eXkj&2x(+_-!ubbh2%w5Dq4uDLiPdzQ5}z~ zAbIe!k9l!rgK58~n_SEyRh?{p>LvdfLIW}^bjpuAo^N-d5*eysFxM3UsuU&T7@}>| zZ()}jPQ0fQIxZSPd})GJ@J6YHQ>f1v;Ay>H$HTHDOT~^`GN@qj7N`H~^v%rJUG9c7T zzYC1ShIGTy&><7YPnCM2`+b;(iY(T6b*SG&yO@$0ZF+A3`pksp{8!WnX*|LjUGxIS)k?>(6L*XGqoJLkKnEy%o%Az6+clP&I>o z(@;w652ls{#+K(e?ybuRo0tTv0~RYA=grWZ9^*CDuRU?gjG_)bMUg+_4c$ceQdipo z<2qTl5eQyYc#3X$@?iQOrxUPaw!V-$Qgji=>!va6fJ?ZaAi9&gb6#zYZ81Yz>(M?1 z@Z*H#oNCTjJlnnkvGq36{$+XJSa|>5ef-a`x;Wm}IcMYi?Jbs79*NpvLVBeAB-QPw zQi2u(8S%jbbm3=cVsXdbG|+N&px8_SVE%7qC%w9!q_Eg0s@Y{YscmQ7-;`Rufxx~L zpGkLoN@uK}j~RTx{o4cf9oye0ymYdS-`68x%Q)nu#Flx0(Dro5H20$0PaGN${xDxet3uIv>}&Bxoot zl-1!NgsZO&9F0w(#A<_8?{f6fU%r4V1tEdOR5WGgKK-^>Y7Ja&O1P&3uY}u$`lPuC zXu;?%w0H(ICpoZ&^05F&S2UB;8-7>{9rJbpggs{Kg950lbU-K$7lg|rb`@jTV|gpK zm%RBY(k{|PhoH(x26kJc8w=D#n|ZW;?EDpR050X87z3lMwca zbfwjWpOG%;xVLl8N6G1#y@IDn7201oE3UAH;v=8L@HQUGKSC^Gw}<~_bH8cAfQ9Wh z=ncS?i0=O%$C=vxApVKf-EYj#k9}5 zjePr9W4EBXupTYG%uTrcKmD}@gXA^~vH9l?*n_gjBxi@Qi@YF*u}%XL$egwGQjMlk zcz=Syj0a&F0JAyXXg*?nAqA<2$wpG542F{Ju(rF>AC=QtSUPRYe+Tt#ppF2JZus zU;uPfUvx_brDXH69&*J1k%1OSY?4M|c>pNH`{OJ43R6ZH?q?O}oJ`Z7B6W$?uM+tc zVO2Hjb}!)Wv8-{dlH*}@xpilRlLz`Jf6~WHziw#3YaDWpCt4o~sP?KX%1x15TN=eW*D6-Xhds{(h6!r)E+95Y+ON+30}q&PL-pI-BO}Ij&2FU$rtr-v?7L9N&EF zf$l*I(z+XL$`hoju-%mw0}@7$OKBpp9mL=rC|#qiS`(w(TtjP2QAd*PDE-S|fe=v~ zp`Cya;a0*>wNYw1C8l7mnaj^;hEg#W{*XE)p;8AUc$Ph-cG8eekj(SIZCiyzmr9+J zazFhziXCYyv9AZy4e*sdMIRL9Vvh+;ddCrLdvk^J<7@BwJP1XAlfc&=gk-v;E5n5U zh}d5g0JBZpV6qg89~t2!9QiWH2*(u)^XCG+ZMcAq{r66%vT!sR04JHJy%UlI7V*2i zvT6!FdDS11GqYwZsgF0X5k0^X4e=P!{V^j=uKWVX;0s)mz9t<)b|FTlBjQn5(%;G? z;dpf)m1jeC)y#3#?h!E^I0W=}AY{94p&a)@VRYN*wIhdIZS1;~HG@tWR)XdgK6KM% z4}4SzamQ6!d`!RO)KNtYO0#4$A)mXd!zllt;1kq(3HRXBp`awMB=54QDfTf?wbJLp zTmO|o9gRHTPN$iO!%!*$QK4`=X0uOaiwe@p1?2&y!IjE((?odmC^UMd8Ov41DMK+f z!YhX@VSPc4%F%niZjUL~z}sojbxq~0*4FBi0T@8X*qgSvJmhc}1eZrKx3)F1QKm0c z!%qeqd%hTIRtIppzr=N;nJlEW#eGRF`K+6Qr|-1Su%J0~Lz6!}9%xcnd#xN}VdZK>E= zV?t*^bu>h1Q8iHCR?=|;SLtoS9`qORpUd~aNP^|Ku)qv2zJ=8q9jev*H2t9J6VrPb z{;PCaM(x30&TmX2C?P{GZXZB!U)%n)2IF|!1SAXFZzd-I9-v(x5mM*nF9Txa<_r~n zBI$5#X@RS}_GchCYs@l;p!1%O>%s5JWsw()>+#4X=XslF5Y6Sqj5v2xL<&q`BPxp`8haSP zSx@U(o>vF&|55jrQCV*5{xIDo-QC?O-Q6i&D&5lE-6h=}(%s!10@5KMor1m(YoEQ( zV&OXuANPOw0Yrx5x#yhsob$SV)l<}NqMsuZhqxDLD(XV2T{qx+y5-?&jexeXN4=$- za#1lJpXTXRS~ibVWT~rIkphDq)=cwf9^x{=wd0imSe{DetXb8PV*Us_} z8Xdp|tLG_D2w5m#JH8~f8*JfbRYsSQ)ofn#{TtzoU8e#Td;h;`qz& zeRF;-2!YNW4cldt`nH?e8Q-eLv<=aK#vKhtRwZ{GwsbwErZ~N4As{RMoO^VO|6WP( zbH+gJq7LisFRj|t@3*j@lKOY7wy)kjbbqOZX+O2YNCTFcvd|s`JA)v=A&FqlU5-b& z7*yj+|11@BHHCjb)KQ%)3SKl{>)Nz*#CBqP%B`Kd#3a=rQ zoae?4?y*NXSHmqH$y-Rfj{F<&G_r5M!Lw)aGBj=Ejl!jFc8APT?a50aY|?HM5r$xU4F{drKAvX((1ZmNH!g0-BXAjut*Qw} zE`ktwqfSAvk#HM^6!2iwwp|pg`$!YL7mFFC%iCW-}RzgvuMCb zDr0;vC{{-vfONDhFtPkE((&tGNC)WeDl3GSV3VIFYUlJTv%qn9OV9?)Q0PA zpnHSR@CL6jcce9qi8XpX$Bn!ZU$UFgt_6KCFflpl>a<`s~-!aw|Rbbb4qXUJ9;_^BrM%h~xws9m)NGYEpz4nr`5v{1TwjHhoH_>x0AJb1B(+`*0 zm*4*cPHYH1d^r!V3(EcPJ(1X7)iQdKi`-_`3yA7+H30a(e(EX%8esB5mW-Mdgb&aIp@WGP5x+C4wFj-Xt3gBkfN2|?`MQ-(0i`W zX}>@4TiM)ST_|rzC>$wG5k@W>gq*ln3dj`mE!=OS8J+~^P+jpAtn6i+!rmnfQ!0tI z?;`;1VdXtFt1BEyj^|m;qGX{8^KLdm-T|^(iFdHN=#;$BUD zqKZGW9&FcV%Q8`r|Y^($DavzpMHWX5r_Q2@PPeQWR4e%2|)l28Y$r9 z*Iy1|OC}%Pq6H+OwE)(cG#KMeGqSz01R4!Kq;G<@oc-)IEIZWU+L7hjm9WZt8 z4>Hqxn)orUZ%d?&>!*jbP`9KwA~AP8){CU^V7Dp22((jt3Tf@y7`g{O@pm@~JNn?; z^L~b6wUWqvD;zZ&*%2Onz+ol~L7kUm&=-#fz&mO%0`QIq-U)DGc-&hWwf2#H@GJW$ zlwDE+F<1ZBJt7?tPM)t>R3JMP^m9OZ=tp77aNO$mjwpSf`%>SfkJqvM{%+it6PbP{M_4=?3$>7j2^B{&(s&;M-yK{-qR0Ulr6B4SO$Wdz^|Xs=yQa4OYm_2ddkzdA zgAs+=pV(PF2N&F=ycU2_@&$~NB`kWO!%PhVgR5XPIL{6H9sQ5J-Ul+iYwt-^o!|9L zYn#}$g7d7o3aWFy-<#D4m%P>l0bA8H?W|E!tb9@d{n8ezvdb4Yyc(uLa+3!oBK{vx zC;X`HgDSfGV8K>+F9(VBRsEp<+AWHW?NygWR>tQb#(!$0C&bp@(h$(SK3K7|}aU@gTLU;t3A?OXiN$@mCm z#o5c>Wu@Vpa2rUbA-Yxtw)yCj(1_i<(4pYMq0EneIw?%nj)%N-ylYpoY1W zg2_M0W(#eV?1_&f{`m}}~TD@P`} z$JJlJlc=399Z#8F7Zk$G^{fX5u)Fwsx`eE7sU%dfSx~Qm7i&GFcdtW?Sg?@m`tcrV zS)3E$L-?ZyyPT61eZ&<07Y>dgbY8e+%AgAed*tkaQg(|0!H)+Elo@tMv?CHL^fd$3 zOg+8B$b@c%M@Oq5pW{+p-SwABmG^6#x_2*DlvdWt9{b-!1f{8>QQ{6BG}SPy21ko7 z)hos?crL~6R&E+qL%r>9VU0*b9j}ku=e8GB+jRjq(NTwsxKH9C7v&$U99P_lq`pYg z?ImXZhH{~7d?wM#K#bw5u^n>QS-gv6)=PHAb*;VHXI<$?YZn+x!O`UxiV`Lq8~8>< zRyz+rh~i!WOfrU4ygiko<<#2X_f7uLXZzYpXGvQ{15toD1pnCBkNPctl|bxEof^~M zk9iprtM?8c2>*_%u>E!G1K0|4uo1EW_6sIfc0yw&7{CvnzO#h+_s=Z;`VR0*7Ek~7 z@2^k4V*&F4#`I;clZpLx5EaL>dFGAg0jN3vw8V5F3@Cj71i2@v=pb>@k@zK!e#(z3 zMns5$W4vo1+0Ts~eJd%t3C&~32sPerw7sz4LK3!3*t}aD@jdLSO)T5DqBUTMh7^rV z7{vua2t6E{`<%kwoIs+jjF1ssUzsLJcWQ&j7uWrqr9BvL=p)iwVMR8YwPvf z&Y|iZ{4y@!7z+(eo7ht8%TAx{Rgf`eP0Cwf6BR*uhdJjNM1mWE%@=zv6Z@+g0sqj1 zsz&oZiCM%x$#sDfpIQHWTU>&0@VEdX7by1@_?NRCB~dmCz7f0wi*X-@U%28W_?&7M z%_)-5jE^`}hQ63AMzVT8_|<(eUJ{9>*S<6?8%Emq^6~Gc@mhkI!{P80Hv9eOEDIIP zW-7I$W6MA4c{f0%Qh3S60^XyDlh<58U`-8$G~v%l1$ILA8e5$03I+D_=$=jXreddui2U@>LA(Q z3*PBzn2Z@gBZeDXjiR5N=8klwxR8EDOI}S>z()!>SRoj^i=9mH;k0>U_+U!H?<~{5 z1~W1c+aTc%HA16cSD9&i%WX4-j)6_v74Dc#nvgY6NHx{u;rOlnx4i0_!wiNsE#>|n zp5b*DujhviUGzvqFJQf%R0zR?MHfXKyMDnOHE8&KsAMbW2}BlSN{fbO(ey=#SZQ=; z0HQVZSD-v=tsUC9IhI`%WQ=rcd=-%feNqo4NW_Mrs{a?z?6A$QtR94JTETW3M0MW% zag`WKBd2!B)QGkG|L2mf+f=zZ9&`(%E}=!rQ*Z@(bAWlX&OL z!FXMphUqy_K^Fy>P$D>ylZtM5LW3iw#*By@+}K~0ScwS&p2((rSj9R_b+Qh!_B$>q zx1qB9A(}Yelk7IuwRUY_jFySTdV+giHTl3F-btr_nvjM-SdytgMYuh3Z+Wx99lME@ zuj{lP+v%r>I>Cf0XIu8Qr6^TK)|zqhsJQwl{!|rmf9-LdK3RKtCM5-#hZ$CL^)aJ8 z$$gv73(l0K`{g6PvRvnUhBAsq3nByTBLT*uzK9kHoj~^)c}iRszr5i0t?Xjdj7?{G zi)P@sh0?WYKgnCw$nnc&YfhN1)~MYCm%{MyE(^)BiVIO1T>1|!wN6R{$w4|tN8k$3 z!;aFP&|NY?ZSVxqQ_uzREH|;FAFukeu^F3o21J_Ce2rLddea4siv!oDgfLj`wgmBY%6}&3P&UlUv-cgY*9(m?@-Tb_1w9Rq3A+F<>kY_u6TW( zamvENs=%ng$gVQU#=)-4SO;{b1lJTUGwKtrO>e|vM3@d*;5Zge=OYu1ZA>mfpx{Hq z3`-2p3>E^-OyNfp0SmNcinjBIkMgSbj_J9jJzKPN6c!Cp6*SRccB$HewYSbN&EEW5N9KWxJa%0?^ z4Y#FDqwvSUcbX&y_N2nE_wS*Ds7y?ptm>NSEy3w)zSo9~HoWxnNpmBj4;DR}UZiPt z;tzULxYLP7r8u8{>}hFzhr)oGhVl7k(HL~9{DuHE*V+MxB5vVreI&@B2&?;|I5GMs zSr@Jq0%J@91Ww4)pSEn(*-fh7`%Unu?N5Jn~x6A!j2Q7q3x1} zdA*gOsRd!|hA=dpV}`r@{8dnAM+Icg8Cl@i3F(nzKga8ZM84ls0k;vM1oHO{Z!KT= zW5|x#*M47h#PHac1(fS7FSU3~9Iv{`Gci7+&xuA#BX~cd9lW9p0^KT5f-wrX5v#NCI@e1ei-3NH_?(XuOq#I`HW-9}7hif8!ZW0CVio36#+q9dVnD4_S_=t=VPwxc1ZxP-Aw%I; zx()~T8*p7BCQN~+`Lu=KA!#k(=>+M+enmBEU-KoHHH;#pk+p*=g0*kdbV{|{z+aSp z6x&YUWsY9-{52&?fJ{HrDoN@zg)2Ij^P!RVOjgfaO``hc-2A;q{O@YwZ`C&o<5S0h zi-VAk1K>N(45$YCe!=4DU;g(y#{d6X;&qLT=SC}{Q9Msu zqllXv6Ci7*y?$bgQmVSi3+J>VK9oWqqQ7U#0A;LaJx9MUOp+_KJY3MiImF^sAcTu(a?_+*Ci18jIN_lOIwCRG|>9rcfIhEnhe z>F4@p`%G&Xq!R@OMYE^7#tix1d6&1cS{O4a1a1=A3m*W-9o6C*>N=97OG>fv#PZ0c zE#--4!j`OJb`7ze4!Eoe=3M7LK%C#(bU0KXw<~jdY2a;o@Hz4}O~pC6f_5r1y)<`V z`a9bFKkJ6+Z%`=nU;2}$GvetFV8#4lG+u>HFg-U3V4L7U02r7;tY;|O0HbW@r@d#7 zqcc7EMlVrt&mZ8;O@sU+phtVERxT6TMer81AmuI%7dc3bQw7B3T{paFtF4cko+1}= zD>kuqpRw#dS-SA7-gl?jboIL-SA$t zCbTb=hD_|QJ5-*t$ay2ApB@7I$&B5Bn38g@nkD7Qh4obO=6k{^?JOM5a<93QDBh|b zhYuq5FKys*>|ipp84=k=~2FnwqSmp%8;4u8D&!^TJTBACwjx(M>``Ly`^s> zh>1%9%rKqU%(flVlut$oq@Xa%oc3+iCm7dtN-e!nSkbZ zWo=vj%fezMFr)}w2mQx5nMfaEkKbY44_E%oy8C>qMJJT;y(du&Go)q*1aE-^Ine~I z>adQuXs1KBn(AKg!A4v|GjM2AB_7S7&}j1y0w?3 zT_X*4Xr@VN8&mD0yY4JDj_TPXNcN+%;ENT^%<;NS>>oJoe+_4sne*x0v^F$@dHa?@ z?4yN)i5-KOg@J>Kh>4N4u?fTfyw)s?&-bI)|6#2BWyLI{H@;P@f}Ziyx)3~sVrd<6 zf5vRI?bCNsF>$F$)_j}$4feyq>IbWEd*Ibz_>S89slv!|9=jkOX~7VL9dtQIlYU zV3g%547jCCxb#WhBx(438Qoz}X@PCC8S2^8y%1!uSXZI9kVRtL_cWH7Xo zu{K89FEY-KH`Xrg?%$~=i|9l#GS6fB&LK#-2EN{UU7*wA3#qZn6T|-Q(3_1z9VOw-bVOHth4Odp_l6}ypxloB|(~qqyke#G3YA6 znZRm%6|EkWt6f)_!Yjo4ji#~x#3tz77efO4Da`#AoJn#ya8y{$mP_)pCLwi9eV)d> zm>uJE()TfQTc0A=JZ9>K)NrIn8N!D=_}}uMp|QMQgaLLc9m=;L*8Sf|`Q)(zMVo%3Q~7}KT+PLj zaTS#0FiZbPAi^VO*&d_EQU0Mwl(_)If9j&&1YBR?Wy1|=_RuZWsilNaoG&c3Rpz3N z1+yR8B%`!U+GOXOARRTh_5C4+g!{0*j{j8Sr#HEh@r>Q~3|(aCVj)t!G?kzN3SkwW zZC*|cWKk7Z%W-aTa0i$LB5vgggaw>c!- zTlKXBrxHKyvA&L?le(en2l~@=Zd(8~0KGQ^`=LaAtWtM#;O-F@Jw>$`?=PYia2ROB zPt@L#IlP*nFP-a{aM*dH3bUC^KJ;FUlGMO`eWQwmkSf}jVU4ZRb9?^hX-sRxjk$Mg zLgMIg_C09!W5pCQ<2^kMbZ8N!5}N@$wW-cHl6|B$9Zj*1Nl9zBjiXr~O@c9B@f^g7 zf&puaa@raMNH@?PjqPpi3|8Ka;l7*}0ogJuerb1Gjs8|72ny_DGZOTpl@nF{wwg$h zHn0v#C|1@qPItv`;I}|l88-MpXKjk>Ud%2N*XuU1e;Ox@ zJyC=GPu}+7&j|Y)6(56ZmLQ9sXY+@Ch3u?yiun#+e%58JN2o@;12oNe(M5Z{n4tx* zAHi^&0SK~VOwt~^A+iUiVmN030QYAA4d4mjUgZ`~)53lNxOM+yKO+Bc`;ooHzwAdg z`~d*BEGT-A!%PbTfvZq7_}2yiz+LgPcLn8}xj<1EpY{`-@L%>LMI~ke=@S6^5yUmI zOTW80+Sv;#GQE=fI^%{JnVlgkM}YrGYW$gWz(XTR>!ZRck+RDpC{Uu+OJiduu23A^#Cfp9AVerb@8iU3^)dgsG=!*X{?gyI{9IV z^20d{_^=Gvq8)ys2h1pjM$Id*g!?d`FEOFDvJSYE6v9Q(OrTqI!#BI2^z!K!wL@`eEc@&K_6}Nq`%Qt7&a9hNn}U|7z8U!)Zy=WY z9`mV8wGA=V7Cx6>?c}=B`bQ^Po61GlZkgd@@)pW=P_r0#p6$K$V4l%?h7MrkX3Dt{ z^!~a%r_%78grg>nq4yW8WqJv-8+{*nawPxG1x+ijQ)-7c2|2_l6INMISzwGw2F}|v~`j1P2 zPRs}Zbp})~zd|(&!h+Q$eT|6}p^(G)RHhMu+_DlwtHU)@rF0g#b5nRSco2pQ z%<>qK-1k%JKIkLGnrrW>vH+Y&h$K-#F-BKNylRS-Nvk%U-oeR5;F=0i37mec37f*f zh2guo74iKvrU=W`y-{jmxl$qZxb8nKAaRb%iBLadUbxl_O?3LjsK-(_`S=5y7g~cX zQ7>QQ^~c3gTSYwK)uA`g@IAO6boRi=ekYAMiSk#S$f2ap)-%iID9i10T|T%wxnHFf zBr>GzDSv2cbso2{cJ(;Z?oT{4-s?X5xHoLO(G>bXd!xRpVr7rmVllVOeRX(+p3X&d zb_QyuCbu)rFh$}s^kSQ0<$6`Gi}|_tjI82+)^Dfxuf&NN;{8)Q!1~pTbz(LMLzRRD zgqKo`eaXWUHJ@sLi)*aR5bpVCiX}-oR>isXLq?ATTp}HYLk$=>t?7(7`SZBs7dS$H z6-);!E#af4!1;Sn7BXPju2EHE=@*G zNQw0*YSbUbqeXFqSXP_!tq3+pgqVVEsxdbOB*UR~$K9;u?t%zU>A8jI5 z@51VZZ+|HTQ|9yeUo%UiaAPj_nS@C?$bB0xVkEdC+~LukyQick4hxp zT<5Hs>a;v7!(&?}jRWPWLlIWb9S<5CL&_7i4Y7MYb-LDKK`tz%myxRo*M;xxA3LT& zuMj9Ls4-pJsA9;_!wA6#+0O{8eWi7%`{{v*b_SG&GKlS^5SlG{LJ5FNj=dc^r%%w} zt-g`BPp#W{k(NPo6DN|eXR%{mh+-EeXngJ?`wAhUlZ;cF5wR)mW9R2`66~|$VkPU2 zxclJhyR#M}5o!X40Y9#iD@TzT*)GKw5uKB(O&^hW5`nZV8GE^!ON)NL93x8HYj|F# zI(@dE;1F_oB6Xer1x~uDNk2N{^qlliifQ}Qo(m7Xs3*vso=LX-J?MQJ!ae&)z+)aC zP;N(BpZ3O2IscJE;OY=&9~tzfGakRfxin%C9Mqoy+qJ^=`if-emh@|>EO9!E(;;sZ zd4df3li9v~yy&y+B-O7hw8fpE8y>?l-E`G$==mzzrU`63S<>Sp`}3pSFN7ZgUDMg5 zv};F0TzG+I2m&UU#dP@7$^4LBkv%pL4;NMtL8=A(PU9z=x1Yc4m7j9a>MnI0B8n&0 z+`V}3*j||+#`*j*{-4-jQJpNZi-EnA5Al85zrLdKO6Abf5_R^`M7MDOTqevcaqTbr zgUVp~c8YJc$O1=NW89O(2xEO}H>+Duw7U|p(Lp|sKDa-Gw9fC9^tfw882E9uHXFtr+z5871hq9j|v7OedIY_?oPpFqwl(Yg+0se9q1U9d` z%Ag9xpZ={UZQ?74DEL8>SX66XOXD=4DJnas3RI7I)GuH47LN+CRcy9jMz+^!lu;ba z$GXcLcZ#F6f6ZUE8sq&O9#sHU%8@;cEHAJ*J7OPQVztZNR9pW9C+*njHu6Au_LmGI zf@EXarNLPIulpzU=h!>e4sBCo#k{A8^+}M;1e8fBN^?H6N+LpV+gaR_N}9^4$zQ+< zEasV$@gm=wYn>Q;-`|>bL>jUXUH;6nEGb>j6Xt!cHzt8#f*T*&_;G2_seB%u#D_^B zblZTplviJ!A~;s`#!?-;RslC#tHYRw6Ayjp)1@=9d}Xdj9ioxqb;jCUns(T{&{l?9 z&dH}+d@qcg_b;vA*%)8d+-805Pavu!{RLp3{q-lRcBks@`%@S0E9x*nqDai!l+lup za6(WAfKAPL_(;R99^kT^pIc+{L+y@bIcan{mReXrd>G;T*bdgu-R5mJDIcZmBIQdp zX*^$`o4d`n{*$hpgU{=Alg7zSC;|o4OGUFXtod}iGKSV_L{*-j`1GQ~oKI17Mam5K z2gMhEGlFhZaH!BH>FeAB&sKYFz!JGoD{jqF$T(U#kir8Bm=MkAtSOJ|Vthy?-?zwe z(AdhIzkJ{JtnfKI%`MVH?3fDb>j4#`lx>CU8XJ|~9p$JiN#p@#;z&$PHmW31Hf=BE za6t5P6drK&t!> z;fI5|3bt@xagw3Oz*s@0Y)UvJM0u78>U#;h*-}}sN?$QgLCCxWgsK%Fl+x%ne}p2$ z0q^0{Bx$>Q&(CkTs4$_V@PICx7i4D#fpu;Z(bb1nG~VP6Z^^B7p(Vhh;vT^sU+P(Z zbd4x(xFdC8$RKj|(`!D+o!zOLH$J zXFmrJ9yQAe6+73;^iiq+&_i;WG%8haQv@UwVY@bxJ(e@`-n!XH1G9Vwjq2*=V{8D@ zF`z^^m-B`eB`k_P(7IWI8%V&{gQ4=YC8DAr!Kt@X;IwQ+aT&Wkr)1VF7NgGPiu>`# zNVxTk7WGUn5kaZ-Iv|cpn*De6h+x6`BRn)U_$C3KnEKWv4sDzKQJs{{bev?n^-UoypDe_%iR3>8(3gU1Fo z{lXz~SEioR(qJg4G5tfCsxWV=Rx={x#bl>jau}L4QB;C`--}A#5ehHVLkYN$EvXg9 zV(VmI`RehzUvv>)W5EhY!8l~PWJcA5)6?_B0qR8l3N?@AaxI;ZNS2t{xwb3Fl3{_> zLm?91F@>(TM+ArMQWiF-JsI!ts614@$Yn8qe~0Hib3$2G|3IqihBLT|C+X8?4)+ef z5T+v+sfDeXE#;j#c!gC22rdom;c|rVHj{!>H|=G(7h;P-u!%@jxv6C(cp zE8JE(sQdv_sGlH|d&UOzD7%Z#l5A{u@B3FWk#4NcYx3C7UEG*rA!bVurJ}4gO{M@D zA^IsP7~yzri2-+nJyzj{Mvmd#kPkrUQ%q%l_~fr@Iz?O+{*<)3?rv#yTGFDCa>Uh(?JkV}IR$34 z*zhvZx%0az99m{*BRVp$AMwdn-1TBcBkNKwmDyzs1wMr;$B`zNs4|a%JbB zXUDJgyY;4s?mk0e8-qG%H>Va`R3sx*sbf{@{93rk&ymsXt`fN|g~o?)$;cN{AeyFL zd+!E)p`agw90es^F)X{&O3G$Jky75e)1Mf@Cc_8RN+*J$>c;ld3W-&K@}hZVW2f5J zo;;x8yG_e*wlwx-G53kpag)g!vS39{u^F$=_~OaPXGa?;IV5BcjR`z%k4VP+5E&iz z&#K-ftSrw6cdE*g2mn8Bz^&@O6KH;ShnFf8 z_vuzOtSP^Xi7G0Md)y|CL10IRxKs_WKKSsieg}JPM{gt_V8@-d>n(cg8)U;zz_d^r zeX5x}qkF{Q3^gIta7In)jvjdM`OzoH#u`VyaTf-?1n-t}QVaxr0~Wu#Er9$7uOcR> zrNbvl;S?b*6b|#D@(6@fZumX8P9LJ;8WpmBuw;a_cah7Xh`D5aZyAsrWnn&5Bb+=m zv%wFhC}~CvGlAn*7{qe2Q;7$~R@fLzwtySi+sJt=M>YFtaB{n_1w&&hc+{@D?a%vN zASNLX3F>w!j)Vhl5+(Gaw*rAXQ?&PpZ~e9Ti}FTyVZV3pBb%!r5Id;eyTjdPiBBNq zZP~%Whjkz2h|NiU&%rqokaU#U352m@j+%%z>sll+9ruY)9sDS{$L05q#yGwBO9DUR zQAm~YKzH`=?S=rQg`{JOmVRL9#yTu2QA=G20SHo*!EWO~S5m2J!LBK(i42_{F8svT zuPl!fih;O@8WjG@YKE~A16skzw+|+jFngx{lZIoSLRwxST$%zvYi001myLF6sQzq~=SSo*!0P7cQ95SM=IsehSa=T)sE6X>3rPi3tp ziuy>!Cc_Ny>aGcRD;Ds;<31a>7l?(>2*uF|UHM4S-hB%*5b+prhQ8a2G)7q4yxwGR zOUUE3LEeh6K#mv%VX(h)x-#htaBlCCb;biOO|ltv&tzy^3bXOEHZTm9=G>aG?Hbed z$8m?XOm6@-xPr~V5mR2i(rW}X5Y9B6_EpfXYzotD;n3JXSLdAz(N^evA~GE^g$?F#!Owqx^I=8Khj4~o`#a~8E74(ZGPT=^%MK3_Q=Aqo1$62^tZKj7! zE?@Xi5tU;TC6W>CbyrrPo- zwrPpr{BJy9^njp$_qdRUt^tB(t`iIjW-LtkrbL@8dH{I3v5@75X@^|6`%UQ}rJ3YQ zw;`x3x%;L4E`c!@{UUcTL|p6u3rH*AuO1PrK1(5Z@0TcSvpj{)nlazJ6AQAkTZNKx zzr?3$2oc%_?UhuWZJzXxk}E!hvz`&8<*Z5Ry^s90Z0m#pi-wK{=?I37BF^lO3k`Or ztKOOU-mzO^$yl_!at9>z@fQACev^2-}I&A{%9VO?R~2EFoIHMN|Y{7;`aRhyUbcH1PyOEL-pe z>xZ=R(Zp{YOI-J9sTxP2A(isSE!s6v6L!fe>!R-hy^Escm83kAF{28>!xEKx%n5PD zBf3>Dc^}MyiAkPDxT71bh#y~r%8BnA!3bY8rTfTs1hnV+KKZJIpz#9mAAGXD(J~YN zw&0ZsTgLf^sr!HYBxZWmmi$6I`M(;|ANc4sO|;<9@wBj97VlE8Au-eQgjj}qanDZx z0;_DufIYX&cE$SDIud|aMKuSn7$(50qOZ~d5I~O`Vh=x`(pdWCvnC`F%8IpgZ&U6R zY(CJon_bc%4sJ#{!71f7%{yap6kNWqdZJyl*`F)vWk@;kkEvuF zDGrp47E5Avs0>E&bPphc6EG(%AOcrdz2s`Kyw36SA9R=hMGRmVW<olF_1t9&2(rCh5VS9a})mfOZbMN3O#_cNLRWFxgK zvsgZ|Ram#4OdAn&Xp5sQW1VXn^j!w96D?y6Q1#l#(o7bIu~m>fIf)6(oKCex+MO#%)CUKWy)N&R(Qkt>&PKRS51^ZZ z@05?Z%qGC?@R}}HdNaNtkaKVxEquL3XvG^#$Y$Zq4V~+{f0LiM1xQ7KX>;Qonpmn$y;zF$OgA?ZyRz4())Y(sluWkL+)^pcv z+7Dz6U1#WE%Y7@+Xe2@C_HhhC~FJZ{uxw2|f4CxA}1i zRdtsx{T>BXMNKk~%6OP0IG0FMCJA->c;HOXRZC#1UmG#s#@MWqO0k%fOym$``Jqk8 zqjpK-Z{pj{q_NgyC}$W=_$I?s#Y1U)mAKH&nd3%io#=|0II)n-@oRijzWrzg^Fi4( z&5Vkd5Ln;S$a}BgK+)ZMcC3lCRF_cS5$3#B>H+L{$yxPsmHtI+{=a9L(yiO0$Mra1T}MW)&2M+csu`9Xhc@685Hemo;l#DzjdQMm!y0}?9wTTYZ;E~J(hGp(E4boE*eafMBrLl--gM(YsE81rLgO1Gw;6E$kowGNx9Mo}RaE`Q+tq7g^8F)jGy9Kg+~m+Gr6i@6Q}7l=c%2NqH)D5h0X4yyPozM|9LT2ljKN_bZQl zE&Gy)uAmpXlr=9uKGUljJuIxxfH_qqLAxh6KR~LofVxkY_qVw6S^U_)Dx0_^BI(=A%Yguh86pIcfD-K^#z|M@^$joF5z1@MZ5k=~IvXbugqp-NK26WBEjL%G`%??5!Wgvwvy z*7r{BI60E`pjNX&>&Ya7Y0j60_i2EsEBVXn=Ab76LPlc?lSv?A(`ZdWwy}PKnwJiA z9ogbe-Z~*|MEObZAb_+T5H9NTBum=s#=0#t*+^1TU7?VyIJ|Sv&pHR;&#_$BoDwv+ zb!(Jj+MSP8KG0Y6FEHXX)P58xogEO2a>ljbybQ?8-cr&~@z%t|8DQO)2pn3Rrbit| zq9wQghN$nFC5ki^LedLYEBLvvqv3(d$g+Af_^oKZYS5pK#QHF{meG#LqciQb$BJ=T9?{v80 zVq1{0sPMuoWDbeW(tBxwHaEg0gUk`*c^h+QxV})FZTE-Bh^vu^*))iUmv{C*%$&m0 zHTR$|P44!eqBs4%j7-&;H=mu8Ge`5_HAvLk9^#5J`+OthqK zTU7^Ehpj{D7J>@_?K;qOb;bwM7=F`dp<|#o!Ir*d?jA|tT=9wZ4@3Q`x{rzN`D^eL z2ulP=%mf^HjL3JuT!^Z3eE_~C@`utCGQl695sev8syxCV9lk@vy+1y3hzOi z=1C)}riP!c0=wwEtSMS@jV_flGG>{&+McQ|{Xu%jK;J0bu`fx`aQ&A54^Q{X2Ke)1 zEoMj&To51&MhQUPr)D_L-}1@fbO#}H+uo>ISzEN!oG%I%hz^~@-lsR-RIM!YGx0pN zm9^iujWdOp{Yl_?^Nm5eXW6a441}iFVAUV4u_|TWxv4qh)_F6@2IddrLTRRM?z2s_Dp*LbSX*n{6 zwVHCe;=!7q7iG=AmsxAk`NQlJ&qmh(d>qVKu8mV_;{-@ zP+yUWqrY?_eRZEpY)!63^&Xa0^X^=Asq7d-Spdc`Tx!M7(^Q-8E&ilA-Ey7>2YY{1 z*NtV)tatBhdgz?%h7r0*vGZpg&zCuCNK>x^OfTpfH|qI@SK$+AO7XAEmcH%h20GF< z=Zfek4TYRw3haG$2ogOI%mE*CRhu_VxEk=nGt&MI_X|ZMwT^oN$c#mbfK$5i+QLhM z#p&`71N3$#oBk&M{+i!6bW9{7SmP`I|!iH#&VyUuFn#N3r z<|CiO0D}Kz2{o#6+53QD1WH}W7Ve+d(3H)VX~F0_d>fam)t@(x)(4$TFn!71t7a0n z20xM?L}EQ@ySov=YTuyzR+d5p zM6#IW`={Z~Yif`aldANv`%iLbuMc$wshy*iP;-w~8^N?|2jMJ2eXcTPs)iNkv#?6` zW#9<=1{SI1Euy6SeYeMpWCvDvsFcL_51;Z?JLhxql;q6B++gUCI`1`N_gqA$gt-M87*e*g z_o@61mGX-0>Yw+51XUB}xmlKO|1 zLtBk~j&^>ypWzu;2zKI{rwC!w} z#$jzR4XoEA3!?y^ERZ7zWF4kf3$u71E`$t*|)wo*f=3TuDxM<1p z0(EikLU?yI6;a>2c*btQ+$JoE>D0^wZPa82+C`g$;2`;LV$48;>}smOUSXS!RLQ)` ziPAlpJAk}(VmS_kJm}6^^Xe9y9Flp@^zVC>*w^uHab^2du=ajFDtk+~d@(cyUntry zl%mmFJ}KD6ng<6=Ba}OWdt6ff;_?JmK>4)wa&5e>M*~ol{hjsom*f#3i+9U3r1u8< zwZS_frWiW*_!X`!7Pa$2Kk9hOO?+T|)s*}Desah_G;>>i!>o-VZsWGxgOM6?;a3cn zFiwydP&$ilmdUjCLW|k1T3Lv~xbAZO!_OuNMyQkP*#%tLFy%h^DrIMKOzb4il;mOi z86!lOK>0QSSC3^*vluRm_>5dhPAY|ot|u$I<3H&N`s`Fa}OB=&@M zaxqf*QoF;~1Yn^t@+1#s@EV5+kHNy9WRF+731Ij**A;LlH5x%{2C4)bf4M94+KSBScQhER~LF-}vGOP;}eIump<5* z%Wz334d$sdLz~C3_`2kzT6uT-^$1LQN617Uh+YtP*w;bHE(#~?RBCW8kLm`MU2OU56tp>|4I(f9)--dPu8F3DJ7;z)_{Th^7OY2GQUiEjU#Ijts z^>F%PJaqv(suh{?V!T;iN5f}fey({_lCHoNg!;Nb)hHm@m&q-kQ%Gz2qa$MV#3YYa zO9LL$NNR%1u2<%|ahNWN{;s_Aei(tlrLu&C$1zWCxZ=Z5Z)Rk?9t}Owy&erHEqF4= zWS9umFMs@5k6Yct3FhASYia(F`M5)o} zTZ3=d_b_7#s-y{$0Z?609}JmiCtu0_!(fh>*(wbG+P5mA^}5yv{vt>INuf0K6;uvd zma`)uFNJN^sTjeNz@$MN``I9NYNg>f$C7BQ7Cl-fU?xIWU;FoO`3+Qt{JOqz;QDl= zGanmMVdb08?!;)`t*31k1l8PA6D{oTiNXA&)bjAZQOF?fF-S3nHwGWe~IGwz!?BB zb-$m?xMEhkzGf#Zj!PkK+FW9tWBNhJX7lD3y`@U=bpEVpepoj)RO?25rm_t0MyIao zYJr@E1wg-zV{qn^i%yd%BZ%jL8Ho^3EpbH&$NxX}-ZCn#Y+V<|-JReG?(XjHF2M=z z?(Xivo!|rr4#C|mxVvkD1#Z!M_r9Ioea_*0=a}OMA&y@_6fJuqo$u$ocb%h-vlc<+Eu)B6SG23!7F{$S7L@g=}cSR ze8s5rim@Z23jsgZmjC$wpPft+o>AMM_;!F+}_~(Y|!An`YE3<5SNr#iH;GS;t2$XqICx`_o}zKRTS_d zwuZ$xoS{kG#K({jCs*nCeaA!K^=J`@?}7K=w^nfi9GbM@CN&#@gG^`0$Jzbe6BzWs z=)o+D1v&LOHPBmzT}`uYf&2`ds>Jh0Fx7iWxz>E#Scz`)cF`0l_zOWbSHukqD^mm>fqq77Dv}3h>FJ=C)sY2ZF7`R6bA}m~hPY*km(0 z1tqj3QW#jaA{>6An)k=S@2uUKQ1Zd!zA=6ZQaW_6Uk|3Z`Z@?7qsP{yFX@Hat+R3g zrTi0CZVTXeL066Fl53jWqyXMqt)0#JdV&aQ=uPq$f_~Lr%JgfUmQ1{atS|!-AZ{U| zL#SvjI|eF9o%Ue!`AVSLoQj3#p`r4NkwoIi2}yCX<6ukl7Gs5Cd$0@NC5yI9QC=sm zO>ysB+yaq}5DujxbHqws)-8)_mz@ApZwxsC{|5SWuEBx7PMeC!h8tbK{X(iV>RXoV zaYj3o<7IZC0U+q=vNJr^*+Q=1`XTU-G)}igL{?aqmsqaFHjBAdy@&GQCn#+MRqSE8 z1WRh1^tx=xd^d@FVwJ9!4{vhU&5oJn$Aq1^Q9`iMMGfc{A}Ns|YO*(m*emIP(pO2L zjAm3B-Ooe*I-&3!`zs21;WaJP4 z1MBwzZGO|st0#*Vq1%pRG^MuoiSYm%PGX|Z=(6nCDdOt_{im1KeHOK&J)fK)QI!hIiAsIIksqfY07?#91f}E zCRHmP`Zi>+K;joxwn*$rPe2>9lS%G0+}5?BxLVb89nY){0T#pe)x(Px7Pk&&m(O@l zKzH~#Y4L*AN|^_QZS!A60`B> zFdG&Hc5vJUIm9{-Oi-VA%VjP+xKax)6~YB0>>WdfP-NxLp_}(78N-Q`+DG_ySO@xn zN$jCQicpA0@V(FkdKha%ab1V}?~J!}wG$Xk-`#N#8a!jB9*^I^_jPFy|Ahv>G64Nc zYzk0B9W4YXqJAMIRP+Ua>2tmr-Mo2P`mB4uP^XHIwUlEBhiyRV)ifMUq;i=*YM)vB zfr;gyNm;q!+O}o5xR^T)5-IClA(y26CIMeeJ*=sX!q*636lMpGc4XCoS-77B6NY5^ ze(#uiAp4T&?20i|9KDTnPO22FvQxiv)1Us(8-%58PnNI@6~7%2pwmZV-|RT*@GmPX zj6!tmf|4kX&h0R0>@MU4TD92J>S!!AF58uxZE1^3%WZOH15EK@<4wFm4Fs zymrnRYf{C^@c`cGm#RZ*=sY27J&bgiuQKPSMkUmM-HIknfku{6!ntppEBpByl(HFr zguXw9VcH-k()6b*q>ecM)S)xO&J1*eYsJp}Lh%!)Z%%dj{)`f>wk#`1TZ^q&#t&)q zr|RpojSHttr`qkYn{GOtr(p^VKP1*KctGCw*gQajEreA3#r(W32+jHn1mmVe(F|+V1DJXjiQiP(* zjHET^foVN|MxcWZCc>6habEX3U+f+vYnJ>~co=5Cb2nCnmYngtRkHjBmx>M^S zF=1uBcirpPk`c7BgNfK=8@ZPpn>I?ErGG>f^Y`N&F+x$UhheBPWYoP4myREt(WnhB zX^c!mxTU9+UrjF`g}TO-7#pZ6snLkdKf}tN*WFkA zoDXI$VWC&mni_BMG1^bD{)^IS{?LQkzGd)k+9zo94Yzi)Ru?C28+pV_(`Nxpo4P*> z^mP~{f8Xpd$E#Yo7=F!4$N=(&0B9(%7f><&F4p<;EL9c6gXb!pEdVz(y#Ac!`rI29 z#Uf4>vyZWe?)D#V-$N$L9n_=52y1~h2H_N)k45RNW5aO=cx_==r-JzNmNdhIIhk$7 z4b-0?S*Lcj3|KBaDG75*>W{xkQvROpS$h9Aq%`$A`7*ss3aSgd2a3ml z(iYObUEK9u2xl_5Y>oz5l4+!eBh-+s(B&aI$(Ida=YGOav9SL39P6_WBAY7h&K0sb zf1bwIbq6s1idCi(D+B0yg$jJ(zNzlv+kMFtPd(UhwTjaX4rPyYz(E1p2ANI_Me#x? z544iA+`WI&u;gZniIo)bY~H1ALV+RcF~&*`5U zz&zf^J@(awSinlbW9(TJ!^(82?7!DR#gvJP#WZ1f>b?;bULcXRGf`$1k>l$(Qd7rw z+HW=2T%SSh&WHp)MV*^585E7w@Kun`UMbpV#5{j1_epTQ;|>lSvfO!Nt1In<@fKXm zzPgQ1{sf~nSKkSWns;Igqjh8Yx_un?=)+IY1RI^oKTC`KRi^vD)8V}UB)()xf0NcY zL^fGI`3q%=(85RQngeft5KNL0X=&DyVr&|@@EiiOH=dH?MJO{LD8pzE^UY&DysSsd zHfzWOn+xTQeio~UHEPz!_kbS~c1p^L*3v`h$dug$^Un2s8sx~7PIOm~=NJi{*v{ zM>A}#X`8@2cgHtCwuMbpm*d zxs*z6o51*8pjBT?;}}L2^R3bu_Yq@CbFlTVd4>{9X!Doh;}Yr9d!?(8_h_QB;viBI z^ZZXPXhfEgf>yXznVt~*eh&WN5ne1v#QJt{C>CMX*?(bBqd7T)Lb=R>%QphDEZ|uY z#10cnQ-Vx8jQwI_AlTZu+N^wW@_38DabIelH z1~$$#q-FQ*nENO`cHlr~!6JODmb(9-TZ-|`cFE-s<&{JGYP{Cdw_C`sk%8)eo)C^# z1(g9nNq>xK%ESx2P)-Q_$ass%F9{{F4!H5Z<^W1WOs>B+W48gvY^fWTQc^mI>pBb} zB*EO(CtFDEZDD?z8dhP1sV*)!6MLS08}@FeP964JQoQ5@jTv+T^**n6aoeJ5yKvXC z6ahD4Us?y%ZAi@eEXe7~%!R&@IKdkf1Y1*~&mwUBb%VA1k<%udsA5A+b|zH04x%Qv z4R~#kTXe-gI#BgxEE(ftv?i`wVFN6s(2LXb=#M#O;2_!?)U{dkIzP~U7Z$E9hEKfp z%lbsnXd@@J9HnA&p@(HSAV(Wq?$#jC*9Eas{jIByJx#o8D$+{rGfZlxYNti$Fi>#x zmFONV?_8n70m!p2BDc%g$BgIcCm_=}^UgoZmi<+^1jb)^=v4qci-4riKYA7i=XQS- zkh`ZoK5Lr$vz`zEy$eShRY3OBBN$oq%MX(F+*dDiFK|Vm>5rr)UpN>(bJ7a#KNlem zTTbNykuX^z%Ad+d*@rp(Bot+TmCQ2I(aUrRF+FZ3{xedXnvqGS8bRP7?~?5sOM4$_ zf8)6RHdH0f$o$FtHi7GOVxl75YM#>)PWhQI)G@K2B;SY|*$Bnu${8O56)#1TC7&11 zs<+kZ%|*<_^0e-`d*^aQ^)cVfRRBgf5u3S{qfoCR-k>+Amxn_#w-6`G`ZoF4dzm8A zPp63xkMg;=1f11_V?AT1rjI$j7m%~oBdYJI z`2M*4G&E2`wy5X1h=<=njm%D9%q0dc0gQY}xQhD%1^`ArlN7cS2MZanC;W^<`Yye4 z1ojpZasWzz;X*E$m2zv%W0{0|-{5kELr=+<07F5bb40~GEY^PR!dxO?EO`UpX^dK>8W zU&YqRC-MS1i@OBM&cq)qrHy7E+6s~ z+?LyMV%@j_g0Bc1JauWKlzqwt?X{rnvfw}4Vp_*s1|H|>mZjc&XkCx4^rgF%xK5No z-HLpqub&l=tZj!aFsiFrMm&Lnor)jBW5@H3i~X<(q0f#j4g#+`fT0|DN-b+D`3ysuSk~w_+J(dn zahcCfja}w9Y{VvDC`}ockqey^o5Mpww4ti>Q}GGno3Yz9I3Is{z7Mn3>Lv=}^90n_ z*o5-YI^eX5;8`ZfFN0eu9Yi>{?B9viJHB-;SKaLeXWi7WKW)+kOYty26~#&?QwFL^eG2u6(?p z_Pyq~LbBi;H5syqL%u^JNqLcD@P}a_(uRr*HCb>P)((V6uEuxZx|lr^Rfe~XM22^$ zv%PAD!xp-E2~4|i`#zjA2&YYuKRnq9)OFR-ctMU$FIkK#E-L7EcKZ*}q<`?n+hm@9 z$#nwPMmxZXwu5}+C-79F__~3B#c3`643`nigffP%em_Ue^<;tme=)+G1C8<#s%1pzfmaz3KfMJA>cB|^5>|h zeyquEM4}lRW=Sh}8bx*n=-h^)(JDo+6A%qPSDi&EMbf3=(?ue8On7e4h-=VU)*fB7 z?Wc?+#eff{jKCchT5=Lj;7cURX^t^*V0ze}9LO>PmFH3j!+)nW&%e4jhM?uKL4RX; zeY#XY&N?IWULAX*z_L5cb1+!Z@WLxz$dX?Hpm1|w>p<8Dp|Yf_LYSmh$ci;eZGN*w z5g5@c+d=GmcrI5DkOA+YEHwFDUx?{R3k`fN>7zpZtFigK1w#uK^i^$yv!gt zN3*P9a~<%eBgj!w(Ke7tCBX>Sl==*;>TR6@9v>~MB`%6+hnI6$|Fp-dH3nOV;Q8$f&vbQCTMKEl}bZ>c0my&#{w#7_W8i$|rs z0|ELM&qpb-FVl4gGAvs$ZkK~hrba?dV&XCf?!LR5=0Fnp9-qYh+)LgcM~$1l%r{w% z8@Oejj=T2>L8&-m@`nc&6VgdiuE>-G3fYiA6;W7ysaG(V6L?PK+f5ef!}W(8jr^HM z0kj$2!VyAn;T+-GvNffN- zK87gJcgn%#R5?E_tN*w=w|38UiT+bUbYz9fmT|p#OX%Y zlGuXG*f0QunKmuFP}#Ft|0b5`4NX|smP3YT$&wQ4MajBDmsKap7H{U%R9{S*IY~JD zm4^Kn!@Q`e&sX+Ao@ig{f_82e7~@F(5;7&`Cvm})*#VB z5vrai96tNfDw*hT9j~EdKETHloRm>0^b|d*JT?*w141*1Z7*8L9ewTTW%0Qz&(nq1 zI)3lM1F+1gLFOO9^6F0bSIc#*_6(Y(ZcGB3`%}V|uPUNAl2O@T4pVchI(s`{TbDC_ zEIQssnZ{XAG^wubR}8!CgD1o1DT33nj6Iuw8@VVdCNx51s7UN6(`{H-AsbmLU}Z?Y zF$DzLzK%j*^*$EIggNZz43RQ+BQdWs`Wcl56z^mBwgVo$Ak5D8|~Joo({B zn3`gzC(S?7%zT%N4WUKl+LQ>{>kLW5H>4)XVZNPuLQNVVidNVaoeicSH@vG)@;^C7 zG7Srk_QcjXi^_ysSwJ=mj&;&w%Z!W~c5Y+MM3Ve$*3>;pzy0PPOf5iPLRg)gfW$^cFwh0yfh@X}KjOaKBK3{cB z@uGz2s@ICXku4G*-GQF^eeEB=AOI5DTmK7%dQ|{~k?|LQ`z8Jy1VEzSEBA+2PdbOL z&aR||XnsBzhGdT94o+|dM*@1=19NdGzx4^rBHRZ{GuM?R=QglMq}PK8I3F58CH1@D zgiHRqIq}fa_fK7Lcp*WqAm5YrSj)}J)+Yk7gQZI->$`5ct`Lnjo|YRJYA;jc`M3<%>c!AqE#7Ek2JF_L3#mxkhW@mu`(&<#(mnpYF|Smx zCCaFc?L1K2Be6gDZK9o?g#DuU0YB>X51vE%5wfWkrReSabKbIyvE~qnZ#cu&^FFu0 zaGpVbPLH#^lC0`)Yv-}P%KKts`gNxNY19CE>wSTx<_x})0m}6*pDhL%7-i^ynMf(p zk^x|#1Itq>O~=e7v2<3$m!9rl;8Nb>lw$#D)Z7szbEhGI25PGSLv$u)MTFGarnV4c z1{Kw)wkG}X{qSH`sK=RDr3&4qHpplTYNk4QfikV{(AY!=&ft&`JUiwgoi&XT7&* zCgFBrcH}T$vDgWxMC5wdv?eOig!WGpT9;yWJ^blIx*j_=qdi;@gQbs28SH2SVo{!HBm+e)D79x_-8`+0j5MB>$;8{H7p{HHsR;dOPW z%=E0kY=S2`S}`m2$lhzZxqBdS5(rhk3VP#}Y&HU#IQtIkq!i&j{8rCCj-n`HnC1wD zHyUD+tvKv^wiNd4Ys(T66@D{6nPGgsT9D}qF^)d0ojth}f3e~DId5{CdM*bMY5op~ zImgqIhdPDlmiceRfCZ za*ya!K%qT5eb0j(@Q(G&TfpytSe31$Q)Bg~_YckVuWV;e9zS+7XHZj6TCW;QH(&~{ z&>?$Ev>HTx%LNPf1%?ET+sp&(SV!p~&OWV>W>fw=8B2c_gEG zVPIP=-+fjc{gg3>Z1^570j-l+ijm!v?F|$SctR?k+Jd>&I;>fn#zgevF$*-S*vVad zLQX+4`wqrb^(?=)KTiKee^(TUTd=+du@CLGv|omXm^Iv~)b?^`EEDQ>DJPrgk3B&I zm~B10CW#Io&wag^sZNQcF^mZf;ARGBc3wwkn3Z88;648ZK%peCi7Z@nOwE#^){2Bx z8C~qv(LmH-7YYZvCi~V8byXk5;c%$V8&6=u`c89p$M$uIpEXNY;4YM@%D`xBVc6YZ zP47OyS^M|l;C&Rwe`$c!G}GPHP`nF%ftknD}=^Uv9>Re#eF+G;HHt$Bw7u9E-qh1F;1>Z5Vej{HZNvjt+EP zg75C~#w~jb55`>POxHaM7v0Obq>iIMa#?<30>0*{Okuf91%Zj$--_h=-JfWJ1j0<8GlZEAE?2*bn4( z5Wss9AP$~68->2X2_RNdITc{nsmHhkrVonzO9>z+k~x`R%w$~s{R?eqW2Xh|4=5k# z*11VVr7{pdVzohyv?E-7Ys`Ig^Q<9v^RCYbZOq-DJWE)x5Fc@j|w z6IKxuHJFxEQioQ~4efJ;)U3j(%IRh=Z3!o`OD>Oa?y#5B$*|CF1hSbv zkbitL|1NB3-SUTmOmWy-?(hK}dN+}`O&f~6`*}=9k?aa4nG&1Av@V|&F^9z?BIe8? zMf2#n(D{J=frO@L3*vhY#O7tU5Uwg86qiO;D#J5m8?#EEZoX0o%=gO*@iw&$IXc+ zDL3DFzAr`yqFu|}oP|3@sPHbrWnq#j#(*Roy1Stf#>KqVqbS!k*Ke_i^@=qtOgec& zKyB=t(_8>M4b?EpHLwq8%!6{8CvdiP2}vve)El^Y%%b~M-(>{i@S82J7GQ?Zv?NH~5fLU*%!tKtHj(u~MhjZjr8w)&)~ zQ?hj|o=Asbs{uy$LxlrI1WHYI`vZnAqeE>Skgqx|R<*Pr3-6q-8trl^ z*x|yK?KjRCQ}L!7xR8bDv{PQbSJ_G4YQf=B;FwEHx}}g>w2DkG7ot=hjPg)a;t($R zM$us^+WbI(Jw= zGs892)fs~}6)YcWD_d`*p}%LgG&bTTm`7e8@=6I!RNIQNuZ`hm9=qfSZlVk>nh1i1 zk+GH9%_Z44RO6ebZINLoCd{MqC1gmhxMZ?um!0N?;F0@{B1v)w%z46r{Nw6@nu9&T zWL)dM-V<&M7Eg=&YJat_L^n-u*^h69JN47og@bBtX3y+AanK}#xtnkFJfzV@F!|;U zVSbDd^W#!WTIM%MzO$>{6gOpB`LNeUR^;WDo0@Od&t)5w9uNG( z-bfoQv`XEfX;EG7{ETGKplJn(cvgsp!@z`!4s(w{eaP6WG6bzU-++t@q!P_Wqpo#h zH(9Vou_;5Dk}dEJ>bL9rEIYPd^{r?jY=m-4l{QwBFuA?}8qQiz^GPd$_D^~eTgDVXmy%UT=O!(E19l2S`2(_yfhQ={o%mJ@dvU0R z($?{{Cf`wY?IYJ2ltoSyBz zsHz=rlyK7+(+eSkHXsef&eo@xx_2H;=vu7l_wqtC8-KqI0ZDbX=`iUtOi`E~+oJz) zG9;1w5fNKy`(j^|OR6%cj}6VeE+u0g-Err|zcXAQkk?M4PCJ?8 zvvd;<*jXCeZI<&ql(+ZvP;z6$b7VMm)#Z}6fQa%GO^IE zY#L!ZoE@*)?E2a&b$X(@f0nr{u-*T^k# ztsv5M&F7>(s%b^lU6o@{gKySfDt)3Tv%~&?{$ms?iJp9VowQ+e9*tgx1lM`Rg%RO~ zn>HjmWQkF)qpQZ0*y^{};zhT=ahapWfs=03VD8!T=UjtQtrUhN@s;*dIKnSeP^1x;mR{_Uo9W zUD?Et=!I*bwv|OmF6N8tSV$csv;CQ#30Ouf0wSHsJ!n~xSV&iP@7VlSyE-bkBfDG7 zyucStO90ebgVXEjnE_~M+K_JN+xs;PP(QpCn)yXz!R&qpG$hDCQ7no$kDT0n#*9)981H#q6gzaC-K)!v`)%8y40;mS!8Gx*^taLE>EKD zPb%Y9-{prOM<_5k>^F96#u+f;VS7tTWUNo=c0#HeRncEASVGoWOGs+TB9w6!OlBfzDnvtk2$DNn>W@N0(ozh;E zg0Um!69t)joRl*$OUS}uPFdjmwiZu(!y1eqIFemPfeF>w|F)x5y}h9;D&I51WVmEj zQ{%h&&a-!$sg1S#9cDB-7msq&Uhkp)Hw+;-PAlA|TOCdIuhq85JhppqOsq=CB>Ga6 z;3><5mUrp(e&GP(=NVT=4h+yn**WO|1+Ywuqiw^-`UzXHI6bMQ_mZPFI0bAxj)B~( z-rJw15)m?VF0RNDC4pLW0-&ME6teh9Rv1InirZ|_8a!ppq81nLj zd8T1n-e+Z6ez0_n_Dh$w-rP$HY=bS!%`Jl@OxpaWP4@H=`pMv zv9}8Oz{LAJckWyCV}6xY)?EFOQT%YlOiwddASJPaM51Jeiff^|o_zcr!|=uhGm)56 z-Rfq9RXH}@*!#wl%*Bv1{*}ljxx*}Rdm#&9=7*tWP?Oj1Si1-2vGeDiwrs9Hv#i4V znwQy6kZGNjcF3Kb*JrQbe&Vp zC!U|{AK0}=EkCb_j7ECZ<9LpJkTMFyFGWUPLSB|;s9kAJ16B}=*SnYdx-tr`x6c6; zF6GW>kW8`jAz{47hR}hwxZ8b~aa1aM__?F7sR-^k!vfvGyT}(*REY;KXGHSx>6FiK z;|yDc%>5RTScF8dMj@faahX*XQYOD`aeydU^eC&YX{)^UK8-PJ;zRG zS!+jNh?6CTRvr=~Zd@W&;u!2`Y92iUd(Gj|{6(DL4@oIOK^s>sdO{j{T6(~Pm4Tj# zg#o~c$pYY&WMg8}`ER(l*qG^L^d0TZT(uZ}`z}2_1LMm%06k-X^Dz)IvJtYeGV9RE z>zi3SD!bVl6EXmf9RW;U*8hB^XzXC)WN&Ef0O0r%adi|^as&{30glC(2wyUxioCpZ z^7b}{O2&>_bn?QYbjrrAj&u@M`X7u1|M4XBk0%KoI(0b%b7MnCz?an-=otuK{sAX= zc>&;-{|(a~a5ljCl+7&7tUvto_g|iV9}=CqlB2Qh%XQOf{B{Jm`hSSz<(dGGKUN7* zZ8Nfbk*5a|)NwF$AT+kNEcyTqMhY|7qQ^%JX{GBO{fsuiYPDw`J!2%$U7w{ZKIwdCq#}^6w zCQ-WIgz--?(y5slIhwu*udVu}i1~lNRU7JIf#>U?Mfxky!$6<_0YQZS<>>!VA^n=s{}1~Aui-PW{I8Y& zw*mXA0|9~1{>4cD*t++-!OFqROv}N+!N&Rz^NgO5jhTrSP+rf-@cSDa>s1!0|zu&9>WrzRE zjrfgV?0>&czsigFBYD|t#{NGj|Gx(R|J;dS1%$Ol*fwq*CT3BET|ZUi zHGK^O$fiu~XW{QtU+B0oSig5bsorUw3s;e+-UQLQc9Hr_V$ZYG z69K2Th=ExwMD$L(WtcJuTSS7`odrZLp)5q0P~R}m)w>12vj~q$Xo*zC+2gl}ML71@ z>ul1ql1gyG(P{2bjeags;e+DK|7)bscpiX?8FCu_Gg4 ze0m5CcS*uv>Nt9XvU#t^HWI^zI1N4t?1ATNkQ6pCUf}b37?qD#&@HjgFrU3sX5gP9 zFRUzo@H|D$ECD$II#EkN@L$;2(8kF4cR%fK3$4J)@`nt{e?5L?_Fu9FFTEn&FTEna z0bFg$&A2I|=`{XWa~2IxaE#j)Aq|;{J*{9dV+_tPbpFU|Bz<=nLK$tJ`e;2P-V|+p zfrxF}W>~egHzCR40Z)n&;*wDXLRabr+ZsmkjVoO-i?;a2HxUv1?KjA=W$RQKd@*6G zR^M0`77aaY-{rS44XY?0p5))t8(6p2D+hwAbwHl_X21KgC5Mh8$!RA0`8et=xWnSm9wzYT(Vk0H=`FWGgy_$93|oFzq?LAf)KfUBY9 zmT?UTSt~NQuL8%<9F>*RawgvQhU`kH7!H~_z&T%LBUi{V{KH-YDTr+_Tn<<8<`Jaz zCYH{6bf>rdpg~WpOi~7lD@>Aa76a#l(ZbF2=XV}ZWeeZ9*)taISGU*li&pnEp27l- zSQ-!6^t9{hYu-b_j`!pn4DzEY^Q^#gyA$1PYNFIU88EBu*5`jx#(21L#SqysW?g^rW0uR{^K2%0@#2 zckt!6KrC)dn6qu7Zk-jxMP_cCd*SEdvz}Eo=D^EW7Xe2pWn5GKOxH$o?Tc=UZijwg zVDt&AT6w3eky zZWZ}{7v0^;gx&Lt(02FkG9s-h2wI?nJbP~e=EnP8fBxE&`La(()dcx_Hk%GEP%67S zg;8}dYGlOj`XrH>H$3Lty9&Xb?tSnpPHxTJ-UCF}N0zk>0d zR(tRr$g&u7{fJ`%ynEhvR`QXZORQ2Or%->6?r3dJKIp~lB|}dH_$2!`?>yq?T`ig$ zv3a+P@?v))V3a~{IDM&OIm``ZCQ0WhE|5qrP7p z1^XKt065QsD25~sB>zZX;r;586Xp98Lr>5v)Ucm_RxOs7IN?77N&oe2$^7eW`O+vx z{SVx)oC1E|4mbDfYYd(rYtflcqn47&25?wndl`(qDwUdAoI1|KDba;Wl@&B=-QNYV zNEgF$q|heHEQhTe*G*fNLxSHqqH2kczBhnY7X|%Z)DrXDjlvg=*a)B0R!ojkr7i_S z?bouTr^Ju|D7kM}s!N6TR+6tGy-7cj*V@88KeMaWq$%Ae&>_Bx%aJ0%G=r@Zr&pcg z?+yZ{fpSNUb7J!?Lo4T!LohOcwB$=zxLp>N-T5db4;!G^d6(+;5F5)tZoCNKd0T7BF0!sJ3h4)u27gi}ofjH=ChIkU0s z+CmP=Eavkw@s1sZga5_aPaUUDp7{wkBwht>Ng^{MF>5d*=cDwAm zWoF3>y-t)`3`Ux*&Iy&kjFZ)-3`4(MAAEd8JAt%qlOZ6{UZzxcON?|9GP?2B=cbmT z#GtwhpGZs!9n+Hf={*U`c73hkU+BOe$`bx-9bjVrx7$&KPjmAX6C1sw7Tp~SQt1_9z zsA!qSOOh@OJYI06r^JN(?p@Q8TKb`DC3qhw%RHAwdnY4!q>7EaVK&DReEhNZh5dkJ zG4c>^>=!T!s^m{Y{>Zp$S`MLUGnWq1UX{Zk^P&(!grx?XVYAhs7F5VFgNu}dhZRJh zjLhjr^N-efkd2q=L=x3R7v9IZ5%^P&ev+v2+xR4O3V{tdscwdANBm58DQz z(zk-8JO$fPvx2{c&gOenToWkxoo*NU1jn*_iD{^Wki#g5PP5lKwn zI2a$cz9WX#+7T0Fb^N*c=^&cQGZ72e9O^jQ7oD$+OVzOPlozYW?wj|VH^f61seUEo zVRbvc!u5A4Q3H2Unmy9|Z-V(rsqhd$PkP}SrZZk3g~agI1{-v6Bwx9OG0FLs5EIBh zivGnE{vp}<-%a5!CaVm9KL*g84}fg(>|lZjh+0dKEe^SU{w68QHb^q5hlG*?uva%p zSsoH+Rdy5UXgJ;oS`FF^@)nGB3=3LH``Q9o*eA{;z9}2luon|ZvdH5%oSyy2b=K{Y zoNWMV=Mtap)ZwTgmckEg8>Rm#w{#*H#R`fukz$~92}$XCKVpUrrv%-gAL#RLyg3EL zhDv?}4Rf`)D!W0OLfsT99}E}$+i77;`=_u0i6V}G0>1)i9h2*3v};#fTkphG|9W^9 z)_Avxh{2h#u|*C8C_ZaW#gLk1v}ItP)XK1aT3NeDB&MZh{p`H<46F0VpxH@G81_#E zwdpb22;XMk1li0t)E7)*8g<=mTX#o#IMe!kFuZ)Gpc@Fh8f+sKA?fU5=m#H%y=(>W z!hlx=j#coUTVGr&ev_+W8`1J54(>(O>6-r7_% zn9w$28QdwKJ~Wwx7{-H|oqfMyocGsZ0)^4c(mzii+pByg#$Vl60OO@~HzAVnnP)Hl zv`}CIB@dC5!jw2Ka|r-0hQ3^8d$2*ESMj+3E+PA?7_Z z7Ymj+0ts;A-YVx+b{b?`yH9VFih*fVTNx&tZPv()=x#bdLp|iVe6@;fU1N+R=^VPJAFSL~xhzubyGzYyvSk=}8F zgfX|K{|hm_O3(kkmJr*ktYDUZ+isO5qHzJxO5Xs85fIda@y9=ukw)|Z-Id}Tvj-e- z;pe9BM7{vpD?`g#lT(gyYoxsozR+x|I1FT$1>@a%?P&TokzD-H>?X-q3Rza$2AdJo zM%((HI6oGci2HoFl2UayW07j+yK)YikJ^1Gq>!xDl&d zW_Cr0l?S+Tz4%^qY?lPI;5@Of`g!z~C8P_tydMSbgFog!Cbm7hm`XTspS*FGOJq-i zoNA1|6_><7IiY3C@#-KtetrHTXmdy&Q$ajtc)t#3ldxX%bo{8N|o4A z0$AKmN_XgSoD&Zk3p?&7pj>#E`ZCpsCJvmDT2r{*r94@&gN8=s`yV%$WoLVTCPQFl zd!2XsYyZDaY@2ltAyS}6mcg);U6;!!%Yb6n0Ws#CLIyWb@RtBII@2iFuU@|Dm=xgR z-6N2-;ww5_m(bfdkV}UClL>~}T|*f99fJw%nVoLw&MGck>EuSi4^|TFF3b?QXuh7~ zr}3@<-TAPfyij*T2n*9-A#y7pR;n1hw;~gBkgZ@5`aP#>!{|&zW6`;sX&-p4`bQo~ zc*S4VJn&i= z_eh-{HFLR7q0jixgs7D@_z=~s1^!|&c~zX}Z@ieiF67Df3tN_qB7iS|9`5KTjCThU zicQ-GrjKZ2&r3k6-#=kkAOk_$zbqtl97~F-)Fts%Zi!sHqseRejsqG=@vfW}$;1S; zn)qVyT~JNYjGwmOC`Q@rkXE4TaU5m2f4gwNIvhWSwhN$QPBE=I$;&E-i`}J}K~po% z3^A3lSAZ;L%9LrnCO-`WDFeTtUprrbRYE8KU}V^&~t>0x#%?2j&+GYKJM6(UV2NNC}NAq zZ;&MQLIRI@m;?gdam`)}LeQ%`T9dx!Sfkb=+lAfeA~->Yl<}_ znf}Fb{6sVKy&8(H2iGCwNd&Nr3BEe8V~icTynZ6uYQktfd4J&d5z(z^*9T*Dt~Ky+ z9+;g#$SyMK@6aEYBZD;jDJY`N*I2nIQQ*Z!BDxfh_(J-*PRXfd1IVK|h(on^iSjm9SB zm9RvL6wO^>_o7i6&E1nEcyAqDv^=X@~`1KE9)MlPNVb1LE+IJa=lOPBLY8U_)? z&kj9oEP`}VH@w189uaQ;_x!;lF?@5C1G)LHqLao# z%0nMf+}*dPu1yl!4Y%3$*Yqv~mRS_}jmU&9?>k$3fSV0;&A_CygEiv)xp?{Ch9n?# z-OBV75ZXN;4Hcw@kEdj45NxzxKzUzsN4EFn8bjcOXN%~M<82(GdG30ntJ;G4kX{zM zj*W4y&Ef%7z)u$usp0j>38C}a#CM!sAVQx_{+Y0dmGxCYi9eA_cfQ0{h0pH8c>wh9 zT*VlXMC@Rm;)wxqeD{aJ=-RqmL?MU;Z6@dMnz2j6uk`;xa)b5B$Ky9CQ1ni;1m*TLvzi*6H>Q?%#B$Aru_~IF3>?{_`--mFmk*R zTODUU!P7rMj(Kk$O07tZ`UT^B9W8zK*x|V0j}ciG%TOQ;-+rP>0@YhV3i8YQQK8*L zbWfWpn4De#Yt})0RRaRd&*WKO zd#NB2HVtKnijpuwty>&vFl>EW#SPCl&n;`Prp6TtFKrdjpsQ}Y=MNJB~6J7@&-nSYU&1o3*^YH(m= zRKB$;?9(z=aAcF9?$xxTI~Ex zd(PTxuQT^vYtF@7Yf;bvlA><@xzFFsB>TCf)p=)kSAiYN?F&qqqQ32n*v$*2Qadzj z$?DMdDIxgMaNODhA1b)H2zI{A+vuoCen)_aV>z zQ`>?+$Z!ENHUWS(Nt!YkeiGYR;7CT}5Ea`9(sw|j)^eG$j7CwlN0V52qXBEHsYiBA zO$Qln#wf>E+ZW!@Caq;j!Z_4>cOk+icM1neFwih5TxO>IrH;r){DD>oHcFo# z+Hhd;t>LX(kLgrd1$HXGh{Uf!^t2I3c&{ht+a65b{NcC|9Zc(^zI9)%DIfA#!u0~E zpuEEyQ$QGIr3{y?$4dG@1)a4=DrEfVIuw9O@lZlcW-iH_j<43=^}yVma=3tgnB0eQ zN^d=Rj!sfdRYd7%hqQNGQ?eqIcX|WfZedgT>+$CJsl5rNUkWFE%?N&PFNg{lABO>c z^oLASg0^jGQ4kuos7C<1bZ;PQ|55Wnc!A3|cV;KNMS zytjc#(F$-!fdzS0V_)W5`rrwl&bMX`$Z#cp62mq{E0qx^)ipAZmaQ6Hu%Z>pel(qB zlsTn)%j!tFw^jJk!jmVlsk8{>vnH~tHq*`M8f3XYN&UiG!R^lqk~sEeequ?(4cj4G z82egopMPMppY*X`WCazY{+eq4Cd>G>m(**A)g?eLsZ_8N$q`i6)J)f5i5Qk0aa$?` zyIcwciCDp%BjV~D`^4jC(&RSm9=fo=s@B_YS{V*rd&YzUyKX*H-cttl*BfiEekdQ) z=LdfrO_br1SYhuY9bK57M@vs9c-p$gW4z;y>|SK!WWqh=GOsxU6D(p33e zff(qh#X@YDhgi7`Xqkw?JT)OTu<4@oI^LsGjb4u;qfd7Ovlx%C8aqT}I2T>9E)CK;>QX$#E80!7zI?=)vI-XW_Xsl}ig{D4D-uLyi{ z^u5`FD}y2x5RPWi?r04Pra2H?EjIu25Io8TX1w#msxhpU44q8YPzg{9+p1jEmvmIBtylf35y^muP&vZTbeQPX;ZVC#o+ zFnzasFE29M+?(T1D60f8?heex@l!aQ zk>M8-=8D5o@ZNylx1&7yD4x@-bUkZzxL`XTdmqrlRF{!)^ zMaGxc1Ba|K3s$4yQ08;n(%Bj;;{D(?q@pezRsU$x(!h!4<+mk<>iOM&IhKyeQ(9bAKz2@KE6vu z>-vbgpD2Ki^b6A!oO2-i*JT5U7sW4^4H03AqinVH}U_=_s?3&6S|_{QF& z6gZRawk~&UX$3b{RL)A6yin4&PUGtX>tZ*28}gy#ZSaJ?-4fpdE7N3ti6`B{WE8~) zt@YTsV60r6d@Kj&TSu2hrDG!bn+K3CGn={}nCqu94u4#D!uC_UcPxy*bj}#*h)xEm zfGf^#1%ESNxbeapwimo!AebzO4y?%!E_aSBsAY?CZKsxQWKTHUt_scW7~r2fA14Qt zbqvD|deawsZ)HjyFGm4{VTPqpmAHlygN^ynh?B3Md;REU~UIuMhAksUX<%;D7*RF)JpNRvSrSca6{N9bvC~4P;d(Som84d`4aD&-u5h6@k#kA5@sKh1e znak|!LMpcIDuU}!BkfHjK7ATl%{srS9^ppP-J3`(z1UjX&Oi8V{e z0lyZv!b=#O_1f{+_*oJHJ4GKg_=EuX%Q}$~MQ&bpfCQ2IJ!qF|C;tz8^rv<>S^lB_ zyMjdY*G>R;X!qVlUDBW2-3qB8ub#?4UkAr%Sg3%si$qpelS_N_b7uEfL^5t>;MaUa zEj+EwG)veUy?G{4x3sY5g1hvL0M-^KTz2EeH;>LZFT}NPcCovSHz@BOx5cA#584>$ z@-o0oy|+P^_|+w%<)EI{L7g-d@yL$K;Y|6GA%E5}Y2@0%{1`oom*EjB4U;*l-mKC>_Q_of3+ zX9&&3`liVFBh*2^^D`=DLc()+>3&D)zOY~)J!w?Ws$8~- zti7$Y2Y~1BLA)5qlJpFQgM$_8YEYfPvyPvWFxeDfEM<4+-9>hh;@uGN-cFBN)}>w@ zWp36@(aadM!vsmJ!K7VdHl|=7LE1aDCOu`rj?HdZ3@m&!w5(`!Jm@{*`HT)J8&7;K z1Et+Sljf*;xx&L#^6W*$RsdlxtG=QF{fDd&1hBOJVM(?r^sFKk`sU+_UHu6Z-yRQHC1#0}z1xRuspyPFipyRb!GPB2)WAjd1D@n{GO!F z!AA>1rFplSIXP2K2ff% zKLqOqnW_dL!nCKivp%v;)6D>gg0 zjHIWJj_G#xFgo8ueyQ)AKZba^Kby|;I=Luoywf&3o34G)v_v&VNr$(zGScYPmcfoa z`EbYA;`MZXAyxUrPp{pw*t#{yN^seFLEqBsfdxS=txsl-dUj)iW*vT(Iv+?q$pvri zK;q9*;vmR2Fs}q-wU|66a|xbpnP!;h4|e^TAEP_>v)@uzZIuO|GC7(if`xJ`YPl{*7v%pJ>nev8>{P! z50y56M(!uC_~jrCF`K}+x4*1!H9Ge^Hs4$mSaj=C&k_%l5kIWACOf+ksC`g_r51!W zrJ^;kAQH|6KhuPrRO@fPpn5wgPw^$|Le!1S5jS>sBX1Hr`D`Zjfa_$Um%(0k7*_$D zhx4OtBH#K+NO(tiW%judh<%&;EY&K_tGg?$YKWY*AYYkTxr>mfaWo&9X`nL?k@xb$ z+Qi$V2Hr$I0u&e1n)#BhUB{1#CWwb*2QpNGQF4{=bAr_{x3WPEN`$91;w4dC~m zHyhe54GuWy&8w9(GZNRtr>WG!FdBS7!RzW!JBkfX`#2hmGB*#b%4BMJ-$AR0OW0*& zEu0!*q{}tn(;5k@xi>navM;n@U#6eLJj(={$A$rJ*u-q^ABQw3Fs|#t6oyjAj@;E7 z?@fpw)~476o#Un?%5Q_BY2eUf7>XBaHKnMrk)HZN+hH=4)&v*uC&0VA{^trl@T|{X&tVj_@&yrJ0ZP^a@36ksye@Ygiax36)^&>(>je z2O7}OS+QR5fTwP@N?POU*VTRh(%yNFeRKE zq*q~8J^Y)Gz$}LrHcJ}V_R_m|g4bZqPT9iPoKu*bY2qlIHL2oa@soPRx2F2ViAv&R z=SxgGlH_>6PFO6xU9;hGJJ87#1uQ2Xp9;>AN4n8YJd#JZB+99A;A>Iua!_#~^1@PV z(XCGmj&zK5ZK;-=-ciKuHg~!WkCRZvxXT2Nm|b6EDJ~CI!Fi6BqaqYkm9ol~nlnXz zGU4nrOOSK}%PVZ=qj;TW)uErfjSCuZwy+h}bq}YfSM3yHD^k4EU3bxrnGgk;+AZQ2 zK$kk88Uw;!i&mQGZE!72m`o!=r#H%MT|Eu#cY>#k{Ea*QYpDU{B#| zAH^5cUB@j>TaajQB067w&L0_dpe{!Yq(Sornb7@seG#}da7Eio*k}4|iGGL^ zj0W+AvIQjnLbn#j1@Z(-_+p~o3n2HXnNZpkX4E}O_*tN>_xO=g*kNJ%Tj=v*C;Ev6 zQ-l|uEDkX>Q?_@LpWZjyRlR$a32sm$(E5?>@H6u2VcKdyxKseLHMVoZgRzj$_G7qtJZy%jXlnAqKq(8!C5^q3AM?S1N=I@{q4%!c=y3JZh2ByiLD`5uisG(~#o&=r4yNpNdo1X?P}xkbnuJmaxLjuEHp(=@-Vb`A&Udm)LX9irD>|{Z>C43IFG}U^!nc2E~5(p3w%aBpw9Qukww!KpyI58Hn zH!<^rkXT*%37r_wc}bzbG+D@aurS|;k|bom&6wqIv^3CH%ym|3QIePt3HB+E!35UX zC%w!i>M>&@d+g~9cd42rr(;vqQ2g8u4eddl6AdlC#r875#~(?4d(5*yr5c=Ra#CFx zb|QS_*o8Eut3-+8-AtJ}brUdUX)$Wv;mF5VUR*0yjvZoC(AMBKp^6cOp(K6qJ85jqL8Vp0aOB*!MK@|wpGP3-$SowR$f8$a_2Fwh za0KDgMKp<5;QL~crO4ss_&S#qJ-PQ7}x11HY1GBs?Di! z0)=)mL{d!c%K+#AayYPB;^N=kpj%pR*$kAEp}}#_C2>$CHtfFESMHHWsA-i;;nn{i~f z8Z$t!5`{k7oCJn_K0CYT%^EMHDT`;bS$=1w)^yO(Z<68%OHr>6A-Ie-eP=dQTDVjT zqRvOlHXm5Ri(Zq?_)_Seb;XHaJy3mm&xm7C8JsLs`eie}aeaieeEEc(KyD#Aqfx;) z$k1oI7&J%D1~q7Nz2L~g;kRz9#axN`TNfco&o`v@aIg+|4Ztm$7Jzp{vBBvtLzUtc zrX+dSDNuovFsFN`Yy#3S;F;xALNwvWIQG)0YXYN@XYEuJ-fLd9WD2^oT@Xqs5V?ti zFw2+hq5HH@>?-;BYRjJCT%6`9t_r;|LZ^{IrGTMTcS#0~(~kI57*lAC-0#3lQiXj} z0Nu*68bp3S?4J?rNfubw9-jL+&mS1^I4^=Yh?*&8WupZ?fU=`En=q7E7riKBj4&9R zys6>=N@ShYQxU=~0sF~qn`rAbf{s~~)mj0|l7xWYSz-H()vQjsUA>{UV|olYHI>UU zjn#-kM-Nt#TN1T4SX|`Zj!vPz>(VRZGv6jf9z|`LPums}n%W~s;x)XY%4?LXAaT8r z5EAoZN4ER%OIR>tV!ek@85OCI{6}1}JFlEx?u!yPQ|qE-6Vo!2*V4fG4_X~ypc(DP zMo4p%-4en~Q70v|E=b)h3IvT!kQkqDEttD>~uG0GW{WJoQtz@`1b5}v5O@izNR znHn8$l5sp<_d)bUJxBQBnI8RA{7V;0vBDzhm%?ol#u!!UHEH-AI%s)!LEQz12r3Fw zQ7?Pv9e9fSwh_M6fKsU=CsPa)pLeO&mm}FzKw}{$bQ4R}qSuP;chpyB+7E%dZO()S zf8s}FRx6wx<#ZV0c$0?~Y%2}%sZ+72v&%gmwmUzOa|ldhE{oHKSvA6GGfc-8lycW& zNH*;)aO>d7nZKoMKyjaW-=xFw*qi3IB)pDfd$kMHBzWnPK8~UZL=G{b*#V}Ca{7%cd%#|gC&8KDHEUbkopW9cwi_Y+n z&My`*jBdW<-_?N5lCx}AaRes`OP zuy#$(lznsNh9*9b(`!v}96?EGba~3r;sWvtb5#x42s5qCPxs!1YguNcS+Sxq9K~gx zXn2+47=p@@<0-e2GftkA&)udepfPdW4x!lo`aDrnrs>6(my2!l&$gcIb@;AaJjQPldTnAXwqKi_gD<;-pZ>M}#=b5tl;dui{xob-hm9#sb=j=?_r%Q8_ zaWzn`_IA!nlboRO`Q8kz?o;5NP;p2FE)VHkE4I0QDC=LLxg$zz?D=vlGpJ}Syrnwj z!P=>6W;w!=Ezi5meTLJSlxxFpMe>F5t;MOE z?8-K#QW{(t4$)L9bK&kMB?x{If9CvSCoP~2!1d!Fr%U`jO-c#QZw-+r&dk*w-6*&i!1R32|mlw;rgTBkFibVBx~Tz8}QKGhFpV z{}Qp~;mX7k3+>Z5*opc&uWpSlg;w&UtwIXbk7?8~RXJZEmeVkt$gs$!S~)%6X~*C= z8~JY5^9!*SvKOsQPZMBYc(LgW2PV}ymFAgrM^lOg2(mHlS;4@eVO@MI@kv$-+4EO| z(+#hgt#0Q%3xfqn;cF#mr)cXM%}?;OMsZYq4DHW?;(-DCDw&;cDUB-BjaOj(24%60 zVn~w7)3f=uDYqo@2U2Bo&cZy}xt@#pA(8lKA3laRZXC;SrjMy|vSl$3h&qU_f~95R zQ3)D5h!U9y8pMbJj%8_@FP^8#LO8$1N|WWtVulfOP?}M{<{QP*&U5Iwf_D3m0%qL* zfGj*dio7w7iX28!DLumo7-ukSa-fRnVM?3{tX#4*S*39-Lw&AnmVA2(A}(qQ(6kdp8Dq1gaZabi zan5>2m==ycxLjK{tgN750@P;uLj0+y2Mv}hE)!t#%CpX0Jp`D zK-|a*BY@QOzB0xP7jO?D!<7E)h3}a|q`0yzgpE<{hTe!8qjr3B6g3V~4txT9ouQ=h zG*a}a&>|^^)L{Z)bYMJTLSCc}camiXgxt#x>~WorGT~Whgnl|`?S9XijQai^IA5eR z+4u=8vh|t$99lhQNlB(`i%1Iteayzeo+** zao}M6(WB1msrTwAqs7zol3;uDQ|;XqF5dua{-Z= zur5BDFEv8#ANWFG-VOeGw}9ch#Nyv{p1x^J0o0}brn>dpI$W%*fRBCs`TtIbi;0tg z{j0{---O7%quBgihYRqTZ(3dKKhWUSwXQE5K-U-0N%sA(r_Q(Q{uirpF*1JL&HMc_AAibm{g3Ip z{CT23E%2uW{#_RM4LPpA#KGSYZ2yTQ(Vu!;|E>Z3w|~!X=yCl8S^N$U`n`f&jErB| zcfbEp{Zooue>wT@xcYzM|NlBkEZKk|=%TT%QM5G(5+Q#qEAkrMz?zg9DT?L@%@ zXiEWj0S^A%h&BGV5Nly?A0hy1+Mq@1F;M zLe_tKsQmK_|FpoL7WnU4;I|;_w>bDe_sIS(+Wsja``;b2Ki2>M7G(VfEq;dw{pXMC zzhl0?YsfM(eJw!z{g3LOgRI|9{yVPz{~Bav`(9W7w{?_$#Uc2ms-u6rH==*l-&Gy) z1ZaP)>Ug!liR0rHIn5)AS;Fiesx3hR$D#U-^LCOqP-2XR`O2o17HMlZJpHSxV@#v) zoQ^Y-XB%YCazCLed;8(t!q>{e`;{;{!R{O|KmFwM!j6<=B$xKfG>Mk*d0s|LD@3{DYbf2)I1fnH17T4K`d1)5|K){wfA}H3wjq`JK@TJO9es9Mjva8_Z zW^=Muuv}3^h#Un*IsDN)46gxIhIR|PP5!S?Bpc^<2>-Xu^~Wu{<@_lQ1m`c6UZoYK zD&`sB=I>A&yp6kB9nu}RG;^+&(ciB%m3H(Y3;Pn1+7B}ZmDti}=;ud-oJi3vs?53H zH-EmYBMGW|r>@5kd(tovG>4da6@Z4vao1q5#enrj+PGiGu#6)wb!3yVPjj)jAd90NXfZudwD7uX{L%~69f8Gyz z!0rD2&0PI#q*g{X9>Nm4;+F%t^LB7|YiT(78V;vcKMJfF<#7&vHaYJuF$Hvvy3j{@RUhBWaO7_nWO%Z zqlJkS!bOxDAhU9P6*E+)uZJsqOZ2WE{l!73bk6vQcAGGEmC$Q!(xNwVXF<}8ooqu< zD$Vxs8+OZw^**WCWI@u>I#@AVQ>Zc}*>oWSiqXYCdT#9^V*?+cI}we6kG%xErk7>`|;KGj7JMdnm{-WoD*>`X?4Cqw(n+mAD&}+w0MyFh$ z?+N87SjC_^#y{G~ec*W8G=_>l30f#S;!QO-8u7kQs+|yy+O3On-VK-jOo6c9zk$kj zT+!ImzxkRa6|&tJA?Ll%@X1P5re5GuvMOkQ8?OMxVo~*he^=iG(20JAq5Vs~d#nLL zSX#y)o<&SKF!&;{cAu1rixB^E+BUGRp^QcxG@j|$yJ=_>SW}Ct4m3*ik1x=}&yXt(8%ORJHCpTB1zc30ho2n$^AiA<1l>?@fYk=2v!8&lp$H>TzE zhKA0+fKq+o$3y5UX}n3M~z zaxwMBf0%ik6eU;}KNisl8WxGKpg%x{{$|B0y~1#nBcHy*l1-N_fkZI zuhm|~oeZx5Ax-KqxCkWVR5U@1U>;pXhGeYl!$PJNcL&XEl-)e%tHY%ws^tNnjsj`F z3)dy*1qt3Mvlr)M^dLMXw~qT3JB%)d$0yuU&=S`~PZtxAY@1gX2(_A_CqD>mKUX@< z_6shVNX#coQUN%jBeVcyllSKZuX>q7yYY=cY%V>EwK@~<>xE@e$=r_?8#XPchfSRw z)D69wZq%H*o$jhI4eXcVeJAIX(scGM%i_VUdOkXTQgH*Hj?wY&J_O@!cikz$sM|g( zfafT4wU$~w&)=QQLN&tIn5k|W%*@wGay|(MmN|tmgFHqK$XOH-1?xscu{hxlU4Cr@ z9Rn;)m52^)`z(QXyG-HT8f^^!dJcW`F+M$dtbkbcTcUbDSz=T2S}v&CPgnQa>riJ3 zNF)iSC>$(T>t#;?C7$Lks5|~2=bkwEkM}{97Y9Jp`8Z5w@lg(XH^2Z zpx4&*BJ!=3Y2C`1X_4PRi$w@g)Cr-XnfEc%m<%rm(4|ihgCp7N&<5#Pa7pLT^Ln_?J zZd{RMIWE2MKg#2MD?KmgJML&MLUf`*fg=y94o7Jjn%>VQq^()+ZTA*7jY*5o2i)z8 z8qfgfuw^;h2NQVCqD2kx26l|-t(&Q=n#Bgs46xEYK5DNHm&d1w0PR+*fw|TL988Te z^dC6IcY7wk{j_6Z`UP3}9|+z_K7z2w+d0gUB3>qQkPL1yFfm07i6ToaW}T=FuQ}4s zcIpT6-dOdEL>}!+2O&X-#oJ!O;`rl>iLKdy?Y&%3m>tUTi-bO$;#~VYz7ik@bV^ch zzk%lTYU;{`VgpCrK#XL+C7Eu=3VJmJMb2OHGph>jxHLUi(=N0Cy2bL`Mq}L}3V;x= z0oqZ%-D!=pPCG1sV<1feqo~OG0ia7Fewk5=^q|wi3Oku9clx+`qERt#ns;hY%Vnf1 zBRz1PE9kj^wDeV&q@c+Y2rku%;|F&7De;i)BfAz%*^=x-bw%9;(w`|)!2tbn!fC-}ASH(-iXuYw-qu~9(IGUL2x~WNPhUa~U zfh|le{jeL-i97Ee3M|3gX%IXPzQuL``<#PU4gE_!%x-+$rPK+3GhX!TfclQ%tdD0k z-KsW1TF)Zf+e=x8bdK9NQWzmL>k0I6k)TYFlhH9WF8e=l>!lId7~vdt+e_G-C%dz6 zTeY$ry|E0|L_sQJSC|K*Y$qE!c^{B-<6SDFVb93})4H!oHALS!NI-HF*iGccQaRuD z+D~NW1aa;>q z%w{|(odgVi9oSK&v_ZISol^~Sq9S2}PvRw!hH%#n!HcOGMn)&UH!Bp2#?9z?wugr* zAJQ7v3C@D0Y+8pzJ!`$3Qj>;OQIr`pq9W`PKiiW_YIY$~a)s3Jubk_ctNTB@r) zdki)gXv5tup$`W)y@cSHa)TN$XHjr@>EDb$V0W+&iz88uvFO;oWM6c28DsXPnJK93 zceZ^&_J#hW9NfQQ`|RtSrTaQ(Q2=xH*@qfSu;_=cN_ffiLxPKQvBlQY`O%Ai)zzf_ zM_tVePz28(N#Sw)F9-4*KLzBOm>Iw4e*cG#M7IXN_jSVXI`KAf^HUAU3#;Tf0`Ziy z@-RjQMA$cTZIVLJEjfzlVr$o?oRDt8gfwIF$Td(%C}Q?4xn-`LvS(q^>eavo;jMz1I*DXDheq#O7qyMf7#}CiBKN#C0 zEIM>@{CaGvCQ_xbpZlp>tFk~ZJWhN*MgYgTYh81}>SW9lnCVs-=LZwwr@|Wx^DnrD ziZP$UNf_aTk3xK*SqMXNgu9tT+i~4MX7+1CPO%SSGE!RC#OB-+=<@7xrDyF2ByX~Z zST?YAPv<=@{H_Ehp3wwB-hQ^jv>pTxqZ`B1ARj$u3^bphLyiNJNH& zYg|b?F!^RVQMM;mLwpZb>urmN{PiJfK_bZn1RRcIS%3zE;C3~l4Ups$+w#N8Lx-7L z#Di#rQ=!Blx8+@7Kcha;T`x?-o0YDdNajmOI&pVS?#R&Ad4{L9^^a>36pBd%E(1Lt zI|iIwRriV#C$#mIuJqPB++i;Wv*tjhD(0 zWJql-n^x)#F$m2Zu;|Pd&Ji8q1mofvk1^UKa1@~}*vvv53u!<=9jr>ZcP%wK&4#wI zRVgl3*jJvh787LmanSlteS+#~TAo<+RI@N(fx5Bm&lhV#umifXby>0HUs<^tR#qi` zdnKSONf!i(ACz&q_y`=h*;M+2asMeY^&j`K%<)sO;vdN1nz5fsa2Vl4uH?aS7zjN{ zh?Gpixc zk@_)wSZK?_gWOD;dSm7Nb5-K4k}Gac0`i>=GF~B^jPOsy<#4>C^u7F)2P!k<=5rV| z7xU;5xr;k0;M!X~V?N2^K~{QYgLAn|?(RY%`dj8<9mTTe7RVXFR+j;=y5RT?5@?hz zMY2dSZc1>1Ju=v)#^%i+z*;^gJgP~aIyhi+Cmo-wViBr9g9D(uNLa`Ag>xgHAr`g) zxd!us^7Mc!DKXQ(>9F5OrRiF`^Hof62bGt;@Z|)eG~r+urD@BfJZnoyS^bz+qcB4P z46H~Evo*>+zxcK_&EYDioC}S&WmI!X-j<}IHRQ&}a`eneA7}fV-U3u~p0~Wi)DOp< zX?C5@fpEY+Q@5|;pqTZ2Or4}G^Lsz-H*vvQ8*O%RjA0dn2>ZHI1k6#IOB}i+pOx9L zheNW<-xjI6D%%(P-nNJ~IH6!?1xmL!b&+<5a>ihhPa9bbJZ@Bx8&KWorq)aPeKx(c z8yggs+H3+hN67VzK-D&k>TC-=KHK0^5WM!SV>5)gH&L|qC0Fu0OFAn7>CRXunEtfo z^8-i!Ih_8>0QV2AS$cCLy%DP<;CRo28r}e@sx|tmAe-N;)RyJ=qq;?oGMv$7Z}wh( z=K8jYhbM|z%27dIDkxjAP*m(%OXokFfQtN`#nVJ`a47#Imji$ z;a{5Ffd_?)hg;uApMv6vh!VtCL!?iIpwaF?4-Y|C9YNOtl>A9%G zIQ4s0kqeMb*`nLEI(dYo$N>s4!Dis-O0gPfE&3+6n7lpz5uf-h!KD~KbD+VaW^8z6 zKTcGMCF?_Imd~vl03zLNSqk%QTX!?MhV<)SD1F&?O8&qyTNI&{s2{`aSsIC7>t9B2 zI!r-Tq76cC^`ph#&uQT>{c=$dApj4M8v#3N>LB>gm7JsXlwW8k{^<2AGO`fEyb3Nf zvrro6{!P?e9%w@i0vJ2K+-iF465VyLc}qX`$@r?dj&mn5g~~OQX$o}@N5|w@J64T8 zf=kb;=pqy|&fu5D7pJh(49!$r2CkKtvT4_gvm4YDwvUY1KN#enQb=HC`NfWgVziVU zC?k~cl|2j{gW?)B$2<8_n$$b%3GoQ#%JCTf(W)+eIP47>9Oxd=`rpytr;Y{`g=v>=Q)B6OQcJyO9r}ngu*xEJ}G*K7}(3#3}mde+@?y1%m zn#+Rp_OM_gu2^PNKkBoM|+Xu zUL4i&$R~#;Ig9<0;>H3I&lc_}&68F|DVP;{jzzQ%0{}+d@ls&+JYUrogqh-cZb*`3TT-=}H*)0UbwBO_bJZ6Q zyO+qiWxHM*TCU~tMWcwO@`0sk$IHuW7LI_|Yi6-2b|{Fx@zJwLIJ?f_0qn@Rtn(2hKDU0cPV<-F#@HcFLWX8x^QR%cOvY4CLHhYs$lk zOOf2a8ywXCr~1DzxH8z$Im!WwL>C znq2#)(!QL)7tt;y6{vzQVo@P1+DIRz?#M_B7|^8$`n;K^HnI>XP3=Sm(3Bm{+vu{z zxeK}ar8LgT2Xy*^SunZqBGPE6K?C)ph1(A$?Xut(iNg&>>7$~ZlJ?waU{?xe#hA9 zOv>Kf2~x{~85ySKF9uACXcg0Zf^x3ihouQeS6U&K#m^<)A0P0hRugA~Pcd6$qw2=u z99%5WYOVFzK@(K#>u`{D&5ksIi`OiFE0@(a&B0hJG9cR0e0I^dk`*Yc zP;|SeyB)lFJ*C!Jha``otGh zp;mxEl?<;$#> z{v(+Cy-tGChS4y@Jv1NVbO{m}ldkA`N#^j(7Ehq#=Chb7TVaV7(dzl19$|_4*(QBqELGaVIgrw}8rLYdt*Apv(eUd#cubhK z#;E03)b?bO0=AlBW3Ef#o@AY=LwIo##IrnwSBhA7IeNMupc!8~IIF%+VJ!DO8#F6f zd7iyNo-X%{bpmE5bL4|Ko*8n#9kx)BMG#$S7^2xOFln&*dh51Ugj9FNyl5UgCn@?x zW8>=-{#GqI!SOH5=)z~}m?>?WOp)0_4#iJ z2zWJ`RXq7&!O(oG1h<2Imh6TGh8Zm_{hs~P9@rz6O**IPSMbz4x=bOX{HN=wm$19hq%`ww2n5<={|JDj2l?>|eds7*-r!<|>1GZIH(Z-Fcn znWS3TJLtsZIH$mmv8Nqzy&e`ey#g{83`#rNo|N4vP}U}~<&w66YTuD}XrY8srK2t8 z>{5zio}x6t3qjl#B&YQCSs*7AR7)SQ zyGQU%hfmGt^VDngMB6mMSHkY1#Dr6EJyhz_E45e)0{Q^jpo=b zo7gw@&va7W9@|v)vEI7)hw`8!F*EWoP{uqbkOQl;F{BOwny+dyn|sMOb)qj+bda3w zn3B3&=Si6q)Rt0>nCfH_d2TOYOS++Cq~!As zCEY6yBjm6oe?4-aHWEvcSTU90k9kzOuiwQnU{a`YlEY;yYo;;S*5$H!vSaLdfa(k8I_`)m(LK<}(O|zCk;*CRk5G#v9n(;wO$yu|&TlG9fo7Eb z-QLO8z7@M?FH{dZ*QkCo*&?LYwp3U0ijVyrg4&eJ>NB1F+D$^%kyJ}i zn+fHxEEcau#W-$~dZ(FcWnudhpcvT|K1Ip>uS*heuAS>5+ z!$efE^{#At>IrhhE*Gh?&L6?q1f6tmm9JJrWwaLkya*nhNby~snMOKv7Gr2{iK)Bs z$sI>`-bHl;^#gv@4Fu?VL>}Kfh@T_k2Oe(`866%>-}2qLRzv*?EU`2E)L!MUbcz2% z9sXn9V}iP~mX;A==uRvqtt73sQ$aMX^s zmF307{5WX%RLf>j=_gPKci1*N2OEiqK=;fI=I`;~jSoaUbnnwxqRW|aTT+O2bMeSjCK+w56OZUb7U1N zdUBmi!=!MG=@NF0=r43PHzSwHzxK48XS07NoE+(SQ=G?^HA7WKJS`y-*1c8JbQUbR zh0%FrQ~v{d{S>(T!|waAGyK%bg^B4Gd%K#EQdST|aDG>*9T@z?^dMVFg}ZugPnKz` z%GyO9#4>s``fza9f+N)*xA@7IatdB#7_3zqwjA?fa=m@Gf`Q*I2Fva+iLFr&zeK+v z!0k)muuKMZw3OT7p z`Axus!IE=zfGGO-tEl3R`Bm_8Qwdax7PYH1hwjIv7N8eIN-jSb;h$T;GycLtictb~ z;6#A69Y8(qB^p$iOL~r+YT})>kp5#=t9!uWcuB`#SB}7RqUZ$VwS02j=7(3ere;?? z)nkh&QZ_5-9<{s_nmlgU(yr@sAJBuzI7Z2Z2rmQ0E7b;LE^T`iA$wdz>IlZU(mkR{ zAVa8pvp(>9GCRsmr9!Im_)myc7TX8gx^kC87F>YU7udlHU40h0id0Y&cB0?+**?4v zL@f5A4P#Y)wTv#MDDx@!@T6g_jcA64`r60mT{)wSLgHhK3#e16@r!7WYVEgehP%JA z3nSBaJBEKFAbh3k60)-}(=jsxT;?yFWd=e{4#uw>UO+kJUw;0-V=*&xaBzIHz+VmU zBNj8@GvAob0H*F&>oEcvwzB?*<$jLE%=}%V=5IstU*LrNQCZB)41|n;*Izgx%uIlT zZ*`UbW==>C#BXsz@_L~Fln}55)YMngfM^O$k59>>N&XD z7}85v>KYr;D|~&c@=DLlP~U-G+0?+ngpif>7rlf2q=fvj>XiSynm;Y@rv-k(0>4EG z`4$I%N3i`TCGp=y+dnBGKQS!-i$3yOl#p-8;&*t^fBv}s0VRa_>pJ^iMG5(K^51dw z|HS|Qe)){7zZ+Y8fj=$q7YqC*V*Rds z@MnVUKY3#RiCF)ib-3R|tlw|PnmX9OHnbD6wzRRfGPH6apB6LmYDf)hehLt(lcnmy~=csZ`sW0=(7UgDCPe2?PnSXfwN(nv^1 z3-O+wo(^cQ#6W?7K1aAba&d8u-zUfcPAw;gyjZ2%2{E8I_6iLZbrfL@l?DjNdk$$t zJ9%k*5)uJlVQH|tJHRR=BH~La1O!CLt02Ia@#ELm*8`(biqg{1Yzt~=;Fe^tnk&^> zEz)V!A)=tHudi2H&exbvmyWsl@Q;>hx6-%Xk1sDTPft6qwE5`wgy}v=0dDd*tf*)Y z=gH8-M0`(5Qj*PLh99XoH+M2qDCnr=?yx_GV&NSrIk`+4SG7ne`cc!_@It-4?IZKA z9L@yQhd&bV6Bifv3<$_Wl!P;Ui>0s<9z7D4br0~D*BF02;?Y{W?Y{NF0oVbWJtIpt z&GDnR#s|aCfNocgM1apxV2<2?KY#$eM)=_y5y@76L0t(638G`ji_iw8Cod78*J6-7 zBYP>**!*x3e#n4YilzzGp|>0cCjxa`j?S`KErogSy!4a$R$9DKAuX&Js?AY zt*)-h%F3#$s)B=q7aKbgV(g*87*_8^GfcfJ#pqJHzzy6m3pBEq}XJ=;@>xMyv zf6}K7beo$=gHHJ0;r7l6rd zwl(6lS5m81W5KD{^|q~z->SKwprEDYakVq35#aLg1wbX)Ps$G69`9Y_4C@*i#!J|( z7PhC$GUDUWHPN8J9JH$dlRNqRaPbb{9a-Uietr}(sp3~sx$t;gEL>a-O>3H(DQuSG z6B83tQ+Xg(OHKWjFR#Siog5tQPe0M`D04XNtEj5ZhM-Za0bDpwI%Tp*83z-S&(T8(wusz#JD`l;REi4o{Gxs?(*On4jUW-LjHx3kr8Sy0zUWK z@Nh?GXJ;Fm6;GSK7EL*IOUUa4M&e@^rDP5RptkTCinm@3UyvgMGRQ#IT%XlPxs3d2_ zYPxjM2NZJqbUar|ECTmA(k5ybs*{L_NEYj2qw`kYU~Fsb8^E~59SOqFdC_Y&bZO@D zu$xZ}PE5#G0fTRbVKHxaG&t@py}4Q(ctrw;xKUq@vWgz=uC$w6Y;X4NtE;L|7e50g zzGkD7ZGx1P)Ct1~tw*g-o^j4Z;0diPwVS07kdPCKClB&@2$&4sR>=&yzCJzzalJ_? zg!b|D+PnadJDt9{J6;vC;u-4QDNIR8G5PddKJV+$gK9m2BYE;XH5rfKkGZ{h^F~r` z%zAZuyH2Ow_p5t9JzP~8^+w>ixw*+c#l^=fJ>Fg{Q+>OCW@hI4qNSxJjr5QsK3?8* zt7I-mGul&jLPBr#cYvF+=6J#aG#q&cS?F&y03I}dp82um4 z-UOP;_WK*xpn*zdDnb((LJ=i1$vn?^}JJiqUM{nq=gzxAy3sFMb){}vDs@YxA44tNaoh$L4O?MTyL(;Kyh|e zl_$8W_;}QCmHP}=wxXh9+Ug)y^X=QWVeRmLH4jj;Cvggzi0xHP|K;58%MnaytNy~L zc6Nz|0p{PZnnbfl;}OK>A;{w5V(?OC!TVD!lk?_DJ=ZcS8#29XTAhQf7?1{T6!!YAtCQk9j`^t z>qPrspC7iy39{w7?3|H*v%0eKWUCP^d=}i+a!0NlGAJi!p)s6o34evC=w&OS#}+J; z(v@jCqF|ie(}={Hk_*_T+x3P#FNO~+)|W_Xva)(Ky+wMwz=eOd9jTcNZ*9g zKl+99cqEJ7@2Il4PwpGS)G6cWeB&l3u%grLN%i&hU=q#D%={IOA>b22d6$j_2k}Hy9pgK;Uk!AAh5A5z&3Z?dTWMWxCtS_#9g<&EGgsA%r+@myyjAq_<>B$%yP{|!HAAO|1`NwHVMxWZNfc$ea^2z-n0Dp4H_S`=GN;8>zcl zuUg{|E77)_9jBpy!ZsQ%u`%qh z(AMUnH%#}!v#LK`LYd-wZy|id9-5h@zmv(p)%t(~EK*j{=ts0(XhaR1874vTVKk*n z(Wo<$-|Sp#f6Fa>wGyY!7`#u?-DJ;c_fZiC%n<>XXMR0yA?Ba$j5ACVuCJtHTYwHQl?FXC|9 z?&a4`Ge3GeH7E=_v+ZM_rw{MlfI=4jMW)SwOL?RJNN=h0UJ-@%cc=P&osp$#kt&Hn0 znhYEJbW5z2<2rJRE&DJdehhc{`GwurUWOA|@x-3^99|eeVpb<1>1(SJgWa*5-qyH|PDl#v!b9 zV79ZjXPmtU!ApMRwO&XJN=Pbc5d&6NpTufmf{@ou*?D0gcJo5fzqawl$6-J zj-!~~*4E(SWWVz&yJO8-sl2`&z^VO8CQ$PS9-^|ETpVS}*^lYW>oW#nGPh8F+LMkF z=LH6mI%mFlb5cH}7WwT}PDfTjdKY8j@YUb!xnjFK82Sh`+9@ZQ_ zbm#?ZF!ycI$?JyI9^YS`naEvU2b~;riwf>kzkU05`+Lc@G)aYpg_z#l9Sv7%6>e|{QM$KbqX$c{m3Uc`CJ2@E< zWd=$rHorcPbSesaf*X5eWOQ}m7?w04YFZfm%JWAUaxFNAb%rB^Ae-gfj3&b~rlzKw zj$B+^)GsrP~Y!JpwOU85?Q)l)?G;;!CT-dMXCAE(dk+Mk?w5%$SROaxc` z*RPkZU%!6&vJvcX2oR~&nzQ^)(a8*ymX<1gadmOQtqs@&GYE6!vLZn7nNON=M_nY% zaFx-!jA+GoF$Xm7&fSmDbs9 zh}c#i#j(MTY;cG8HYO%!IwGhR(p9Ps5xu2U zs9-@%@i%TL#FUFbUO+RRo1JYHFXS0@+eTrA*Sw3lU6Z4O!Vx0$TXV_DNi5@8+6ARk zer!{m#On#7FQRy@SeLgYN3pVJY|PC13QQIIcLr>bg7A%{?V&$JMMWRg1zGiEotK#U z{P0_xpu2_vxZo(7&gAgoT->f-=i}UNT$!7moz2lJQ(3`ZF((-!9io=665jazf)%MJ zp5k_tC?>IEwAHCK5x43>|EbblbT@(F>^kOlG~qc1F)D45&WK0zVwh)#S@tCamKd99 z(#B6jd8^x+aspjE;3QK;4GMS>!FXM-^s_5t;X6ltOvm`}flsLseP&f`!)wtY+O^a* ztfzM~rL!t3Dv7M=7>h9VP^R@$B0P~p{GuaU^X-(4)mL_(LvWx8Du>0swpA@NBU*`v zmDfD~d2jeAIknu#fX#aI^LLl~bbCP!_VX_#7SdMhk2rm|r>25~)c;(jbFC%zY&KQG zAE`W+>sKL;$B^#1@{F-UlspNF(~7EoS$o~l4>v(Qo*PB*$aTGbh>y4;JNr-Zg!>_% z%M~zGNLFD*#3f5jkmae}0n_cxYc4vLz$ZM60V*`g2*8;c{b7kQqveQ9f3Jb6>y zYv&Ag`sI}?g_y~fXhV-B3CJD?3eC8mj((q>ezNqYHHMGdW$^)Px@NAyIvO=){jT27 z*?Apu1zxj`WYshU*$9r7rlv73!=!=?>!SUSxn;WAd zP679(;sZ%sBTri+q+4yz0$#mJu$q>9GJ##5GGn9^SJf|1g5V%*YvBP0fYZB)^b_$7V16$Sgzo(&?H3a9x~7w(8em`&cX8<+C$++um9TV$@T zwt_zT(*Zpk8_lJPH#aj&Nln$LCS^$$c8q!d{(gy&=Vl=|BKZ3BvG^C7Ix?>1_EQS} zv2BBcAdt!jZuh>@*$eEP_+pWZDOhFuSxKVkpWV780oseiIQQo0C$3hxuMZcRk?Sum zFDJP^4W<`lexyS@@D1C}80=KMg@r|6qXk%&p?iK+7qFyX?28SkSv=}4;L76A)Bru; z-0<20;VY}FEYcE4pQNO*=ftFt&Tnt8qdIA#yk=)+q&?o8X;Eo1MB;TP^re*f5bkS# z_?-Uy;&)zX%Oe4Ys2dv-(>U=HMJ9|3p}!%eRv$~|izEJBqk` z4unKZZ0t;LLw$XzeQ)+4<7=c2cU@!s=7+#;%O3}|D<-OSp*UPBeR3-I<4i&^X6D_^*#uk zXl^}uU}F;>6%`d7EgM~AHQ==Nr|*^-EE>ml={>yDOvl7%ZJ=6sUf$C{D)!R!5*Pdt zVqzYveh6W&Uc3nCGa>tTh^*jr6S(1ud0Z~JkY;`l>~+F34a2--9FM~3rRm!RN%5(Ld z^Z`IkMDa3G($fAJ|GHzXG&XfH)@6fQgBW6ieHX>_Qf%bL95xJTiqqHX_WsWsKP<`~ zOIn<_5W0f=(6=K5gOqAOJ%4^sLtQjmxii{Ub`dVgI*6Sa( z?WTeUf|YtdIjegGk`pl>Z*kpZ6NHT-)^i&aOmG~Hc?)1IxC;d=V|0JmjkXAi;JL#WX($i7KTq{QFnQ|8&6 zriwp;d~KrNgt`&O)&MzPPp%vm4S zy7LeYJ~htc)jq74RN>cCjZBOPK+ifeH96b6%{o)zK?$Y9NkO$Ph7zEeRq_dRZGwB2MLN~K{yxS8c*^_@`g)4g zNXPh)1O?_g55t{6b1Il*k-j~$f3ahNVq*PfyeO9T!?~~JRAzslJ;Z{Vqo_9QJ9pei z4Ceh}e~L3qzc?V)d+PjH|J8}VgBu0uFIXYXTqCnA-X7S0unO+!GVG!i@;NQ)%e4DL z%TQ%yrY)`W#`N+HhB~t6?@K@7uJaX7W{)l1W)>DUWBowO{U?9=`9~EA32=o8?Ao$@ z2_?v!$M$Vfni@!?{>aOb;P`uQ2k1UU^&>J46a80}`_oX0RARnRgt#<;z8TL3gQMOb z2P>(x+x?M&IuAFeha7V{<34-S^KR5IC{Dm_&otlf@#!MkzxgUfI2FR=W+0|l@JGBO zJI~+cKCbzKL22VuKG${fV_Ll`hyIFVaXYUY^m+Jhb9qSA*L{U49glHXAf+DV4uxB} z_isIII^y=OW_e^2vm{|WVD8>dN7)sx)Ifu!2K z|J;tn;+z^$wNoVp9Lc=<^ZxRY&&F{1d>GQ}_(RZ)ll$6idtqCj*#lV^$4Nl~kD%Ru z<8QgU`L8j~!2>KX>$Cf_mim(!0eTo}&jkaP-M{lvlXvb-Zpf2M7B@ecAc_mHyK9@X!Q$mhF8OX*&7dsJwlfSnIoQ zM=M}y->tlMWOsbNw-{}U^mcW9%B=LecSff zB3D}(|C4W(e@={oXsqnrox69!HA5l- zc3&&c$Y*6J(U2%1Po_}@)HfC9_yz+CeDHyQ=Gmy_s1F}(BZv=*LR3*=6M^%+-v3~{ z{%v9=n`RDfG>|hHO$7$|jU#v0iyG&I6w&kqm_CX3lHU1%z(86ab4ZP@>O6YzfDq95 zw>+5~D0j42NS}eShv&wKAAnKWl_iOZiGO;}o;^#Lhg@e+ZVHaaQK-KBbgc-URouwv zGMzdA0ak)KfDE zb_y~dJQ}e>t}h6K?o5>@KKLw5FbO2|4B`vhXyPzrnx{>Ej>JRogU4H(BCc!K=%-3` zcXnoa;MDFssE`v{5483n>_y>G27G^ayxWN(RPr>B1n z4EXu_($Lb*&CW7iyVki0ZX!#+;{CvnuC7AkruU{lWBmR7%OLQA2o<6-$(afXB$3D= z_NvlQjPpnzdlsoOnEJ*?R#rnPveZ^qR#Bwx?(X(%eq;>RPoC84bFi}m)On?rP@})= zyin<~G}_!OH?wsQp3+J2*WB~3vB0p7?`eL5+0UcH9~bG$o#UYA*UGu!uPz+H0I@*5 z`VK$;78XlMNqIBtFhS(Y^X=hb$chCzQ~g)Z9|}Z_f@VSB2>^#I_-@+D)TAVCx0PwA ztjP!~YfBT>m>D2{f_pGY1KaoYMx3T8+?}mcv;+y=b!%5RS-H8DhnYFm;eXhtI}_i%vuGIdJs1zHf-jG9%W71?tLA8^h9crp0@i8yibR z4ghquz(x$kG?eQU-QIAHCw89Q&300zj6vSoH{zP0X3WRVo(;!?N z7Wu`kRnIUaw<7*W`Dw-)Soh@QtIz?b{ip$UV*@H*H`590UZkm_arePKa1Wd9^1dPL zuOOh?0|4oh7{N@=z)VO;NuB5Wc^=lhY!%wd%00I?tTmH3JwuSK%dItw_0Cr@}66W3_ zCx9cJ$PJG^G$%H@AG?Xf3baa%13n3E0;GNtr0(S8bc@tvU+C9pW66{^@Gdyb9-kY8 z)rFwF$gKSv<-)T`PI{1>k$qFedax( zup^4yn(N;5x{?;~#l_$X6uN)>_yGkjC~sH*u(u74LMNV>a5Fs@sohFTsw&<$?R$QX z55!2Agvi{;$i6xT#2{2hK^h>V7K%k!WZ z@=>>>Wo0t~0R+$nK$p`<7DmPt(HBQnwF!zg`>^YoL>N-CGDeHK<^=3%K+UFRX0#{d z#XjEPEjEbfBZ%hYOQt%djoE1VR@QoBebT=XBG2c^491DvkKc~;_grJoASA4;tnAa z>36iZ`v(M^H3Wh}N;5-YUfxW95t|hs@WmJy;#o@?nw#~20s(0)D3$xl^rdC~aM)nK zD;VYxDY&6=JBZ9)6J7^%@9F6owO9k9OS>e4^bQM@Edtc|`71&~P6M|@Uwq1wC!n_3BfcZ0tm$43w}Mpj+cdDIzM z%N{5{(9y-ZE>B`NH$nf3%{onhdl$a0p{5qLts^FO5L828BH}cpA-x{=4e~NP(%Hlb zK@>LvB;8(SZ`vM1z|~-Kxs|v76Q&7qm3@AJac(cO0_T0a-Z1iAXeb1PLlAe}hf*oU zl?lml4?Msy$O}B?Vbil?s;a88a7gZN z-?~L%H8wNDXZu@3W)_y8Y)bf$cX>do+$dP8u-G5vRO-+6902Hv5CR|LcnKknB=Qa} z9=t0yvIUtMi189(CvO3x^$@D8x2y+C!8n300W~c~(7m{sEI{ongk~ExjDvwS&cEqjs2qqspjr!tMb*Ot zw>sCmvpJVrUoYir40ihqHMc?*aCOEe55UBjVPZh;VG$NK^pF=7J&^r)ceIru?;{#K zM`{XIs6ow@VOHk9K3`hTqrD6jjly@*Hwof@{$|S%48$qOPhZUvf}*~;h~?Z z6TVB4poAv5?E)~yHreSn;$$D%*dYG=x*4^jqpj^7F^@} zs#|e46k;VfWh@p8rqKqu?euMDZw9Q^0Yfs4s95LVJdS(aAXPI+(hin6Cv*xCz z>r?Rvr`fKVu5{JC;3u5XB*o5V%kypcWp|4f!nhz@r~rN=@xpTaOpQPJH72%K1P+5Sw`; zOC$P`& z2=7BV-Dd!8At0M8e`@r4iWbTCAMKb`Ug?KfPvfSAnf}FnD3#T8aFMmw8x7abA>ihH zkVr&A@1&Q=2!DO!XSs_H^hr7QQ69DLJ9N78*oujsGcaffIClq4d37q;9>=!Ahq zH;&KVw|o&8c#VVCz#}ya29bRv6e_rprQneWACkU6M+cG1{GUH!Vq&oT4vvnhDk>R+ z7|?tO1;E;i;|~&X;yk?gC(xtI12AI(u>bPEqKnK8U3NA$TCT_SZ?8xKK^aJm37b!T zg5N$ek!$0@466k@kBfqungHH6G)Ncz`10ieX1oDN8$dM(V^N)c9!6l~H+r#Ox5@nY+8>wyCY9L8y@ zdJ+!mzX}R^pKl5#_gw!UBiWIy7uz&oOAo!Ck`ep2^N;(E)dXv!Slc%447ioUvwYn~ zLRsQLirmF>kIkg8?(E-V9oc91A+!H-`TxRWiZN@zDkV~j(Jd7AK~GT?1j@>SKRpE) zP;gO^BOGKXEGjbN_%jb3YA*x-Fcta5K=m|PrC45e`5ttU9XM3>VgUgv0!Cl>* zu#xKE?kW0od>`8+-$M)gkr0#49@=-t-yuqe^wmutqKVBfdq8Rz@>Q4CZUH10b8~}v ze@i9cv#U%bu>4b9Xov{d_BM&Pn+8zqP)58HxfWrZb2?old#aoeH*{h(VUg~MnG!2A zR10+W_gYthSzWIRKI$$5ys!N4#k8(LO$citeR`}P_|MfUvY$%OwXGt|@sjzmz40p9 z{7;bVpTA4=sxVc-yVVH+ z7WvP0Qc-6X55I-jYo|#-`f-0BGB%LJ1|ioFKkUGweVp~v(SPGiR)5Fwb&cN%$`JD! z;7MZlFNVoqq&SfmC5v^RNoNBY?U&I+`UK*Ss%&@_yK6j@zWML#ll<1HIQ@mk@H!s9 zy+u{Z_)}9UG}+05h`)LtfR>iO&z{{Fvw$+hJU10#qbS?&8?O`^#FOI_=xRSxh(_@H z6KN!meJ?VSX~WAd$O*-T*?lBBK>&&RC5h!<9=FLNZ9lgE1V*Sd(0w*NHG$4PX46yj zm>G5_bf{wXJTA%S;9@i|ALU>}g6u$ax; z*~dXnzuB+gC?))dXA}t$#eXheEO5WZ>~W1j|7-ba`Iq~vLh(%Lh67rl5oQ0(88pU! zf6xK{W);CW{^D1O*YB2uW1Jg&VnNVKe`iw9#xcF?Y=2AK0f|!lu%F1=O*Auuf_{1* zIOO5s!D{os!h+vnT4{)cz*exMJr2PS^LI03G^~C9bs!ReXyAe2-`m@jp?d%GC&$&R z-|OpNo#kbez^vdQu~>iu55NPse%*3mundkYc`c3ZL-VI01r)G0iGUZbbT<`Ma&F~53l=nW+yn$_|4=~F7lKzvu=x1+ z{Cm!wJ0}+>pxqb@06nl?$7j{g8{z?36&bQ}5V|+AHMV33YS|9f?Y|Ltt;S#+Zn+go zkp@7Pn1~Jt2*@{-m6C#pIf0|`@bhQykAxv_i!%T~o&=2LkEz%SfVP0F%FWFDsZm#6 zULLi<33l6j-YblA*OCH<2-K+^Y`jv^RD4TwGl5qECpTu-e8CeihkTt8W=0^Y%xhs; z{c!4MqvkoZ^Iuk6KYa``g$#imb71oTe2l?h-q{lpur3J`(V*%+hep(5m=>(eMvH;RI>u5TDCpf7FS%uI{(cqxoF2N?MK_?&$|Sp%TVU?Zdpv@|q!5s>|{F4g3~`HU4$sH7;7{yniI zNvCxW>;An-dac#_-M&3A4={>wFX1eiCg3C?OKP-T;Is&ZT9G$WFFD!APC@aH0(Ww6 zBVI%{jx@0s#yOfn#m*EUfe=;4k-%dbXZAJIRf^2;-e=Z*w@`moapUsy$o&XJ>KX!m z>)SV}Qp%l+5{J3>x5X!g`5Njo&HKJUM9k~yNM}Slf_N~)aYMs{x$agE((lKf@%Q#+ z<6!rfdQ)}51Cg}+)$Cf2SKfMB`FD;<B0S30_fvo9pL7}+_juyAn#M?090fs26w2mL#c7AzxA;;& zCu^mvk8B02?Ry(F(Ui`2Z&q3|?kH#Mpwbv~H&Ee%r@U?-BEJHO*c`H}@yzQ*_5GEX z7dh}TSLWs=3KA%zlu2x93*IUCo!ep;^Zt(-w(zm<_bXbCLHkwuF8bxq35D_z=)&=v zN4YmOC5pq%qRsoub7xl~3 z?%`He=p6W}o8~)-mo)4%JvvG!JBQ7(5RbgeceiZBtkRZZF$CAxTAv2K87L12kBKkb z+r&}YHuZ1kzWM3*UjG)i!;S5q*4-ao1VT)tIk7(7pqC+_Df3gp>J--#u3i02KZf@z z(0ytqtz$3=SOT821}(XDSFp^vei_#@AgQ5W`~h7$b99SmjEo)IVe%C=ZHC8G&`L@! z_BGgY5JQ~HMg*jSH1R|ElNsH>;&2j*$n`BP6J92BJC7B(a`TFCwEJ+WQ|?X%W`sC| zVK=l;dzRr@z_)H^4mEg1gZqN7kC#$myfN0jLt{vTA=%@1w!fE4`$Z@-oyxzJ?2(1# zuIk)EM~eH)mC4Nrv_2(gTzx+vIZa);F&<}8m}@Ae<)9;GzL1&N(eDv%Ab;iD2&wtr zax`~uwq)>J#@l6-oHbC`ZZ_%x8u5<{8(1g~`lj86^GLn-r^I^}f`SfkIA8XpuO;?N z`_5#XHbG6@^DWwWb}HoHCz@SJ<*7$BM15~ccfP{FvNoYcGWu1+UUI?k7Pg**WE#i` zs#>a#<5#M@xVyfwtw~FD6ufL6|5GDC;_O@ZStesG?4XF?o_>lKx#wX5tAx7;n$jzO zpdz{sm>=D>=W=ab-Hk0DsYY~N(=iiW*(JfOvlD6ts#~g!qJnMSN@}e2Y%D2=In2S6 zyFv`}!!sCDjlWF$J{-Izh~MaEqShTNKqv^68+};C>BJOY&Fh+icleg5y(*ETnQmP1VkzJ>}I^WlR8PVVrgL%&D7k%YkB>DQoeXa+jjt#?wVzu;;|I0~3YT znmz{fhL)tSYWcC(r1*}Y{e6ZF*G>PTrr757L1E9C^tq(c-y6-zi5*6j+C{^kw&R%> zPu0%VX1voZY|G|(^8g5RT~&tW++|RtopFr>R_4Nep}Vu5Gr`eYQ?Y%wW)|}~*YH=l zA0Pb_$vyd{6>NvDYhO*r{K`byy62cUIajE0^?1PT%!5x7M!7^CxefibZQsPbA{+sx z+p4Xt6UlV_W=YkK%wRZ8kq^|KuhQ+#mpy`9__L9DXg~+9(c_KlhvQd_{jv`D{DHGg z+2xgWvtJ`Kzmnn3GCx)gkd>WPQJFYKB^-AQRj%6Az<%+$xQ?W9F6OZ>XGz<844Mj1 zYR8%0OPtq|mbXrA3A+Afi1i!@#iukC`u4C@{-pUBBH!Y#>iCrIm|M_0~rIe;3p)z7ysg#7U>y*bxWt%VovIPM$ z9i#!On1HkPB#*e4FLT?8s}vl1S3u8Ljq!N3sGC4f`HPPiCO8_3RYN<6jY zSg9@hOubSvvcMpL;2ji;Fgux@rb~JDJVid(J5m3)KOe^3I-uv?-T!-qf!s3UL@`%a z#Hz~7McHple(#(4R=1)uHMZ#Es?N-w`Ec&-_gjxMzs34LtsdRcpBR&#vv|tn>q{l=0n%yw$j``ZY8=W zZ>6}W(R_OMWjw1f6a^YJiDa$$pNWW+rsi!%MhPQYGO}RE5}?Y#cI(#4IttO-(c!ka zlD;z3Q)qbWIL}=q8aF3Qw&Z7ZmTdS*G%9uz|FOYV zic%rnZw0+_ot&alp|ubo{HK`yo zNW0eZoTbI=zFdPs!6O;hD3(r-NY=EKwDW}mx!p3Ac(!eq(N#lr5qkr2a`J_Ik&Dy7 z!3Xv;V=)%WMsS*)x%{r}?=Jwc%Al;?Y}UpyIs8I5U}Zv4n2gjfg^X6h-^~|9WDjXy z;*aIsf=EN}XeTOX;Fp^|Y@_XQV>OwasF#+G_+??`*`=(RoqKP5#4~Jp?k4vpy)&Go zxcYd?eg=D$aR42^A~)61$;dSEV{XMkMaNC${O$OsGm-aaX0W62D<`B|f|~2!v^2|7 zq?js88_0L4Uc!3{T$ytj#hFe*-O0U8XmQ59f-HHD|MN`wajS_#^`(4 zpvW9o-4-Tk=N71UZe0AxBrEWOQAxVVKKNpLUg8+jvP;L>68$rEj;Cjv#JxE4iu8>H z4p!kVmoXMbiObAM3<$WNTZy5$)O&W(4Qnbd$J100#o4~YA=(ka98AOc){gUxI{QO< z(R{M>I&x0bG3zDQ3k%zucHx1+HXBKj537S~aGqj^s>GjHipRMLo?P>wnZ;hMOgxdp z@|5h**`e*w!EIIgjTGUsp^5d{tTZi9Tp}LiRf(1_x^=bHyf+-SS># zwOda&ihjH3q|)oH7QOMG?+)dBaoJEv`PaLw4A}sIrcOizwc?esLlTm5{Yxt+kyK|D zn*xyt){JsS^*mYIB3T_CS+{Q4!kUQJvk~JV)0vl!7q(HzHC{^5{uLf_SVu)Xkvr2c zKbgHX!$53DJKv)4WrLQTdG$EH;=5YKOIZ%r@b}H1&n;-VHaJTKCXO}5H&lJE*E>6| zWl*mb*Q8@anSZs>U=*)!Am|@vCtz56t@joSn6ZRkQ}MOk3#*0;f*CLm;#^ckV--G- zEGT3&Ub81zDDtA4;4w~(#zTH;BeqiE&x79i#ea?(!>+rLAu%-c(r{+E&C(f;Vh{@0 z32AAX6Ie~)mz~w86L9%#)QV(9c;X8x;tN3m#Rgu*@0{rNcMHF^-S83-l!l;C=m{r3 zm0km;%)s2Y8J^0^^9&MuD7e$n(Yd>CwY4dMorQ|~_&72?_5)CZ`im^etl(@t&24K- zYioKcDid?_jMwW7Z^h#jW}GXNkr>&M4&FlJY=mKpvYyV`Y|d-Vjv0-9-{Qym*M)zF zuwFQo{#;$o%XrG>WZIW{!->5AtrTkyr#8rhHoS{xx-%o*2_eLD{H%)H7E?dk3Q(Tf zl?J6OUmZC(ex8Mh7_tHL)!*{uBQAs&5GM4#Bj_3&MKd4Fkv*@h**SmD`Q`Pp z<&8-P-r!E#PhO5F-ub-A`J)x5<|R{ z|IA+TI6(A449*V$Cz?W;j;01OGulhTl*+!z0VvqH03$E z_lv~E(@F)?ODaPQ4iC>}GyiL9A!E{4_~xJ8ckKCkaP=B3=UrxspfrM5KsrVvE@Jb) zIVJP{5hQ6Hx%p89Ux3e8I!J~fAgw!bO8n6G0%`>-oO5DbhyVR?=nM4UKV1btEFGMU8q5{PyGy9F{tD;zV*@CJ=U9U0ny|i|)L>dGlsV6pwD1 z9dz^g1O*2G8R3LfAI>O?WxQ48QLt&%wl;7yRG9yZ^4qn8CbgWHoLrl3C%8Ny97y6D zb1_e05FH&Izz4lhBC4fzu0^!6vT~YhJJ<5p=a16|mZ2F59Q;<-(`(LfQ4fuZlBsKK zY00iE_InDW04nC$dE5R%vs)oO>$x8fQmmT#k7?(O3(Ni&Ul?Uzh&=y^1kOHBG(~h0 zkK4Ra6S7|U@&PXkty}_%KOSwRqM~vbfo4i=y}i`gX_B>tDR6eZN;4Zc!HLt}0&rxG z@J?t(F^Z_Vm7Q?&Gv4b!_{UGevKLzIjPcqkcRTfdLAA<(oW~l9RgF8bB0e!dpbb?N zVu5qQlK7r`;dS%Sk^l}*j7G1bQStOdoy1qJB*B6P^h`}nb?zv+{nA6KXEM7j3d4y= z&gzZl6*?8)q(ZAfG5oE|y|(WTslj1-2BdeR((ic2pfr`8>kvlFJWoqYn@-&&C2OT4 z&wL7lU=a8=&~50c=3As)#zN^OgoSB)q6Cn*DLtoHFo{kSTOgPEPKw}+M)U+3?Of-+4lz&1j|}#zI|i-*>*Y>`170IRy z&A0@1^!P{XtY8)^pEf|Pfsplr&33NLnfWyxKktnjZGC-M*iS#Ug1zwADPY;4kO<)! zp7zdYP}xCRL5*AkIx4DS8%Y#+>s0gdICQk|1dgaiwvJCL$|dP+dm4Gy z!j1Cs^0k>xNg$g5)uS_}HSm+d5XfuUrDrNWrKpI9`0mg>dtfl2H?hRfTZoT8!)s44+Fr;PWB4hvJ8Q|txm zmL(8Gt*tqn9pU`$AX;L*#xp!xi8*U1u2y;YX$25OW}usd9sIEzT|mWSi-q&6d@rv^ z24(HgKp(UqW(4rT6u+*I){+Vf3r7hTKWR4tiE-I~cEakasB{1y1So6$O-*dPylVhl z!y&1uYSPr8$<}y6Lx*2ea#a1t&MmN z6E`^(Y+i^99vTzK=;}f<94%KK=xD~JgeSDU8MP?QWut8Q1AHEN@+u&qIRYgEm>H8y zAHbfD#&g@4o6E2%#@t!zGmTgFKra8}hp+GS%#14a_9p6&)lzEoiH2LTsL$~1ILIAIh^cg-NDnSYt zZ!%HnHQSXAteT13YvB~n2g%3aSRED)aFoVV8Z*et0*?^|JS^yW5ME*SPfxA%t8O78 z%FtXybZ$oZKK?NXXs0;2AHZ&G#awAvv2YU3J8GNVOgJ%Qjwhgw7I$2;nrvY zZ4(YoM}#BCKsiY=nhgV31AH54J6A%Cd@8PQV@(4tk=$#~%o_zx1oO!<=}};mvgDSn zs>dN5M{03Ga3);-e|6cijnH`ppEq{ED$*GU?}tfY`U zfLlj#L`t))>8hY$?C2k`iVm*ea=}X_l0sdc=8o+}y7z~Uo(j`EJO`wrA6AN3*><@K ztKEJjlSt?iH$iFtxczpTeYrE*3+!gO2$=-vF5}bF$zh^L-&>!RkB5dR)3d;EF3nsC z@y-dD$_)>vYzfS?I1DSE%DTJ`gj?LkSa4ZWi4BUL&+ako7I6NeEcagsugh6Z;8Obf z2;GXD7vywRYC7ISe5F2Y28JBYOfq)~ZLg^IPeI_&nAvC;)!pG0bb+r%KgIv5Rh!-k zpNru#xB2eeX?s8FEQ%$ZY$lPE;fN9jC5<24gf1+divF$DTPrgKW}Qssrzt4zE%yO= z9rU{``5jjfyDeeAi)khj4Ss%p z|0@?$PTc)Wv6NVMcIAP0F$IEB3)(IUAmCWZ0Kgs-Pmd50g{vFmRj$KHjl9asfhZbiEfD(LfAR?&HNsRzzEXj z6tWW<7hdlF)!zP=sf^ID&!}`Ng@s|pG%zqwf;JF|m+f419(MJkmkN_TDa7jQMI1G@ zKG%x|Wl@ucU2PU1!~JA)zVuD4q5GTQ;Iu1W1b={|^8?an7Xo^`K*Ol}dYw2*;m=&l z5ere##n7NJSPhzdP@kV_jZa%Sa}s|mkYWN2JZZBywoR5OT!%b`^k6q+*Ns?{VIV4d zt@W9L#Xvz&33$(I;4}(+EHyP^L9wA}GcBUym}VMIsA*4+cK>O?`7qTmZTh0Hf`;&9ELGg-hw0gN{ZJMNVJ8 zZfz|q3SPTpuY(;#FiIH#KV4I$Gl6n69R$r=u3QnPuw8K(8w(b8a&}Hb1$jBQ`zyZm zQVnQ_5YbN4Otu^-O*-vfFn+JVBPVGD@HQSjOx9rFBuTuy5SUm|r z=J#19GOOsCj0AK2j0w}V8ordTUnq^kEv- zUnK`3tU%!@jFPJUA=NkI86WB=SyfRqG%gNO(zbw0UE zmEN=bicOJ0?#{RO(L~-zIiCF41;zDI&+?oB^g0EcQ2yV47Bg(Vd(yZ6f4^CP=l|(D zCU5fa{*SNJo7Yjcp}h^?4W8S!?9FzU*(t$_3cD^>_ z;WW*kq`*a1^z2J@8-;}DRbkA}%M*Cxm`c>I*xZ{*Wjp1Yro>;~S47;v;l(x&-F;BLjz%{xjx06J&eBD4 zqBLTkPq(`ybY(BPu8IyXo7^;&{p!QOJvX}@50R*w$BpRV`LXSi%=L>@o`X1Ej}51t z8#=O)Lu93?v^OGjBavsLmNS z!gUXB4+UZ``#v~S@le$n5n1wiUcwrE#M9MKmxz=@^+b}!(a`u;#72YF#K(`2e$u*# zWLL3_t*rMkI`Hs}XwSVxHx1cOm!+cWCyQSl)1Z8tUzEw7PMYnhUvF_)NRwTZ{D7v! zJM)E9jxcrTDe#unZho>#ml~5XM-!rjYA-f#-{z{NsS&c>l=5!7a!pM*)Jvz^R^_B( zGvY0I{F*7rh#f%m+Gg&N)nHeo+ws6bc^JjbJ|Ngr(XLirbIbBB;2^EE(-ebNs?fB;>~TZ{4u=HMe7xJ494t6sMXYs$f!bNzN?CCPn?n)T7&ED4>ow z6mp1Ynb>L#@Q?H_g{v38O<)s5D@Kb%hLZ37&=rAi7uryyk)uKhM2dKgDZ?yRc;J1?A` zVgE6IA_3@bQhFT6Rk5Xu$OQS(`lFjmj1V&;>V*h4IHJRQRT8wGhebQ1`HKQl&uN`o zUUzVdDb2k1S;9%6r|?wgG8w&qPM;@psg;Zu)e*!tpF`An@=d&Vpr?1x2Cc6^4QG9m zu=8|`fa!`9VxuD+MP3+7Y@?6bK?1l&{)DLndAi$MEp{0$)lrT8_Z)cXaTWPd&JN%* zBZCD#_i#T7_9VfxJtS@U#kK-Ye`d>nz!=t8&k*@;+IcK4SyX+bh$dcFh36+e7Wno7 zyq=U7pF_hz^7B`$)@)6uEuzkXUQF^u=L__LsjeDXBz$F4TBwil+#x4S3B!^I0Vq+% zF-Gj+b-CZjHL|YSA;`a5o~Hxf5x6SqlNEt&SS3Plqr$lgnHLr&sbPOKn`u-iKMR>s zr|yXjZ#wGY&NN(UQ$4Nz@|i}&zlzfQBDuX^luqw6pk9ebcK(_2?U3zTzKsISu~r)!Q%;Nk zy!bQ2i4TJJ@=&0Xo?1<{3&CxAePNUbAnhY>EQ6 zEGyM|-4Ne;{61?QuYOi8_>zztc`8&Ny1snk{doG+J3Pv}a-c(4$soETYS$_ z!tpgaS$-)oJT5F-SF6dhG3!G)hpy-4D>JhPI!rx*o#a)y3%W! zBZPAKuB(-6E=o*DV3lv%b$7b|Id*iLxR!-JmiEo%U1=T&Ik@$9k3JO<36IKkj}ldB zFmUYNLq_G30q%2Cy2Sx2bM&&RyWMC!;?Smx=}Bg#5xwt|V$^_>tffLClC@mN)s3m8 zIFZ=sjou88=R4)=p%+90FiWDGk}$ci#)v&vWwK8V%SRobM;OZg{_(={#|Z60)-D>q zkdYwdAu))G@UQ4m7A6L1JqJ5e7YzXY?^I5}Z+KErRz_kv05OPe%Ff23#UQ6=YUS_? zp-2n>tvfgv+FAX}mV%+ZwWFQBp*;@|gQ$yxxT1regCS^LoSFDHwi6#8gPfhUzM`Rn z27{c47=x0bi^K0oMxoyq!oM#hwf;tD1RbmfU;$BrK;QoqC5Vp?&fdY!P|p(17Vg&t z|8^~)s|Kz7O7$(_e$~#{9`5&YM6BWD;r@aA{!2*$po0Gv;r@@PN|yf|P2ex^&!6jC zfBo{81pbo1e^Uwk8TjY7aqzzm)%SM8n{!e!MzYhCL0)I*1f0_jTOx^iy z9Q+RqwtsOB|EIP5e^q_|Ox<4SBgovr!c5N$;#~p$We+hE zfQ6ogo#l5U4`}DV8iH6k|7Hkcq-SSkWMgOMVE%Q`@5YmVx9@kW&@Y1#6U(nmpwIt* z6A>HnZ_wobD~R;Jmji>kqJyCgF$;i^2_z0?kQ2@CpFdiTeyJ)T8yF}L;I}-)fM22n zFtaeR{%PHAu8iS4jY)}` zkUz)P9Ny{K7~mLpR0;0eI*>)Osu^z;3|UbS1bnh-978Qkgkp#Xk0u(-cwbrN-q7Cv zE!x^5h9IKqk;_@qSqf&IgG97QWZI{XWYuAMQ&|?KMmKnlV!iJsI=Q2F4;SSyC#u8p zOCtxgWi)HV2PI|JtcrOt;zjQ@v1|WkbF31+{GEdzmr6CurUjPp#f_bj1tjo)85RFrOaLb4KZ;2?QV^+!5eD+Ct(&N*H#JZD zwXnoa;>8;=I=Tegybd8eyF?oA$unlD0HUP<8Iqk)VKXy+jsCvhynPV&VrtV|*SUw3 zQtckbG>zsvNB8Vi7fypdvdi~Pu~ismypi2i?o0T2#&6VI2ClWY@)`H5i#s%+7tR3O ze^CEFpu+#W{><$EhFqzvAQ=lmg3x*e=j}t?R^3LasL1K?;!O}LB3`ZMV;R;W1ZCEA2s=e(7f)%B zI8*17BcIETj+Yfxuyy#RG`HJfN-{?xTPZlDsG-(}0&SEqKUX;Dqnz^m?N{7uLzX5o zZk12d&FuY%yCq;bY?S-JA#MqtFgr*cUsSohViUL)ZgR><3&ew>+8Dp|DmJ$FVHgM+ zj&uhL)3><-aFjDrP4O_ z@=hKEoJ&Gki-1L4!m;AYjh}G#X;r;67BH{kgLT|nHy7gu>JC3DT`a*n2d|OO!2Pwb z+H`bfoh^LvR?x<~$5mRX0@(3OIEdKVi93GCKkNm!Z%V?A1=H(FjjYJs%_jO?&p zV_m%Rvan~BygQfz6JXCpzw^3Z+g@+lGb8h^u(+)~!sdMFa(&<**lX8a$Q72tz%Edb z7FfaJrAC?wx6^r2F;|T#fdj#TX1Qk0nsWY#mdTdh2Tu{uL$p(*UBFmKNmMWHOF` zKfdW*!6!BM2o*{T&bOGjB$O@+@O|6trkv@$Y{hero?XlSYwst7FvhI;bxhnM!s}eA z2!t%Hsf-LGR5^kXt-|tZM}09vcKI|e!698Gk9*m_CTX`mBl>HDKMmG@v>%ae_OPHb z@Uv9l9Pr{YT48rKtUftkjYR_I*rnfAndI7r5m5;pqn!YD$HDp}9@!+qsd^B~Vd?Yi zvZq#7+e5!Z%BJuqJN<(e{e$WL&s+4r@j&v2S2urNe^Fx9g0Pk zE^T>!gJ6zbtUZBC^mO;uEMEbc7?By-D5mkW`8~E^do??+*gFFC?|qdPC{XG6p$`ai zDNUs{Y3k4<=quJzz0J9k@cD0c-0hME@bKy9kX;Rs?K&n)h=Hf5k)CEYK8cQ@}pG)7!tC1oMj6u<_Slt3vhvw;u3TsZ;X zjV2joAF`2ut(cb@JS|KaisL;@PT*vv+D?M|X)AtzpS>YmaQOg+=w!w7_pJ>0g9`K? zkdmNzFEL8s*-IFw6>_*_7O!NMg)>R;YGT1Nm>6a8#1|$&@Y7=nqQ<`9=Fhc4>-fUc z{C^~+7OM4Gz`Si@%dyur=D@U z*~cVMsV5tBZ9lPVIW`^qlG4I2DG{LmCM6+7hv((*F5yxWQ0mhGLdweUhjylKW1sg< zdKpt0Muk|TsD3)|&6Br&HKLYvs?=B6oyq&6L%q{au=yP9hnzBW1Pys^h=BR zAN)`S{L;hzkM(C|W%@Vwf}&K-4l%;=9!9%B3FCdg>)K4Iy2H9RHyYVlOTIcWX8>h$+I$<<5Tn%;P3pXBeW8XD+eXd2wZ5R=C}Y3b zqsX^!>I-YvK7E8aXNdjEzCNeLec;-)v|Mf7q?Vy^?^EhkDkVSM+PQy1F95R)KJo&! z*BK;n>6h2N()uoyk2UBEET5%$PZ&quq6Dt!NbI4DV!gj6P6R4g&7 zW*EOL;4a=HwWsMz%WP7k256k7V<2>9*ixH>B+2cWNAMNC!lj< z;N%<#_$;F0(mys1KtlAM=N>t%X-nc+yDYMuFxg!yTYl}Jm3n<4e0}rD>*qhvKmq^U zB}>fI&K^XOXXp5v%Fe;c&d4A`%*ny<>uorLEYM8R!SatC@z~QnYNerOPxa?>^JBkc zoO0hhP&Z3wX!LYY{r%XgyHBUur{i{lGYaOeCd8fNLY;V#A?Dj6@k7%a{T0*<67qVH z#IQafFD%rT9dtk8Fw`x*h<7NW(df{j#Ak^3f)*_2Nc4~pQs*RG3n-`@umi*#=v@IQ z5WWzkp}}_&K-#j-&-%P|3!P9SRb>oUkTiT;FkLOgP-wc}!l7hzh0l>P_0XX`Nd}UW z1+WYhFrpz)xqWZbGNfP#$$GzZ5@UM=G-e4#;N!x31? zj3O(Ubq7sEsu@7`o=clUAKd@#7z`>$cZ@9A0wuhe(w zd&s0%Mn7M6K2*QJ#xVP?PdkSYlk4crh8oZU%C@Qi zYoNf7243#9>Z=xfq;LpcsZULAubXa8kMj&rP-|#HIgN23ig;<7^t05rgTmSVWm)Gl z6{5-tis25n^^QeNYZX=1xHBBh^>a@fE?-11P^?&m)isNX3W@~QFh#fK8rF6;<*DLj zCC8T^CAS=^88Q(CpJnF?a2>W-XNx%2mEuTEwa9ZZvWh=vq)FFjYD*_z`lpuc8<>{J z6k03Zgt1Dq?n9cE$nPmCN^^-Gl_*3#u{DIXNhicVuqdlsPAQ2}$|*XAMM=*dt(cYw zhAJyYaP_B}O>ru#CJ_H<44rMBSCTwXRy52wl2(p4V^J=wEiQJ;FOz2d;AmbVKWGj* zZQ5Z8^GA%-66K+3B}qveP~IJBEXq2v0|g~Y zB&w33c8Z4i-#}+AVo@eXZ~i=eUw|9m4Z5t}tYQjsK}XhiS-7YL`z?RAnkc16(f<$SM3FFjj(%V*wdPcF}U zJHdCQX`{iT9TZpV6=!u{xz^`f_*nFHYIVklak|Zsf=F-%mZr>$>-^{`3+f8M2Pftd zbBGOnXsy>)+h1*J+gnm;`JVQ?D^69|L4Cv<5O<>&hGeD_1sBxHaB@VqE+LP>d^KMn9+G5n)fcFur~XCx?TZtlwS8pf8Dm`FQ5DB)zO~zRMq_Q+|zn6`f!Ii zvNLLQ)Bmc_e#5-x@qKZS{|Y|c=9QH^QMs3%MuN5!=HNS7qH=)RBAVjop}xGDFgcrO z5lb2Yv?LX#XtMnLBWb(Bs=NW8o}3d-TygM-WaiV^5mDX#(Xb+mzYd=z4qhedC7i4I-jQe z-R32Q_X(#dO*(jfd%Tou-3RcqJx&19i)0ut_M1(JW9IY|%{Q7@lM(gfP59eH+;p(K zRyb8=@t(e=1%wsH@S3bzoe7`~BLvmkw-u?%HikMICC%E~Q=dO=4z+hGOIbEIu=)>M z3@<6q;?w`&4V$-Z##mMfkTMNc{un%I>vb_OsGh`f5WZXjJ?i>Z=f>q2$aPOSYzi@; zrL8)8rpTqw6`BS37OK1J2N5L>Sso)px*u^M3fYm$F018zJ*75XzwY1YY_L$*D9S-R z{88h=kU4;B$alEqsM7>5GioxE8+FMD&cm(rVGO*INcD{0<6+y@6}$P{VCw+Zq7o>s z>LQ}88p;5l6kEQmMJ9_J)XB7qgn=|AS_}axo(Ywl_hnb+nPAehu^RjWzbaA@G9Bgt z`~{EYHzHe-L#&5dB8rG+O7VSUM?i`*oRED8tfe^^pt?@&Y$edSB|b?BLlSrA-XqAp z(vPpwk7>){a@8Zlpfzz?18V%$Wxy8cz2F+gj|q$H@*MnBI)XN;@NP}gU#Ulh^Qkyz zUZv++-9!bUyIH2xB(m!Fz*<+sZNhzy$M;_}2dd8qV8xPTmt_fECeY{MSoDV}&igYj=;%rnU?7vU*%hHS%u zK%GRtOQ%X2 zSSLGE2tjQ%4Qw^++nHCY|A1_6R7LB;q(P7Ewkq1u6KR zhF%m`U-WuC^Y5*2+&H`oE+)iZ>F&@4@ZW43dqfg=b4}!tZ%=+M7>1*7O(-|~Ox`4S zy~fNOJZv%g*$9|DJU;vx#H*2Ak-I5O)_HL<+U+OYP~?qoud6IVb`>$VqFKe&NFu!X!4GA+dIm0!Q5W-!0^1|M-SfjTn-wvCby zEetsa^;mVcTRBJn5Krf%DFOwt&Fade%CB%nf+WNGKV8jq8nRa$k!{e_0y% znqtdQ0nVA625J;c-uo|TAz_3b-?2ni8m^rUKaP|64Pk{C*&>-W2)L(!4nh<6x#t_tT8}h(#aSeRR(Qt5m-72WF?`gnn_aNA>UxQq-Itt@|07hurG|6<5?5I9F2wmqZq@dcoKXsI7 zNtngX# z!3SeKGN#z1>uGv2@4^Na4;MCjvj6aaH?j|Rr-jw);8X#c^ zM~y0Bh;-TaY!625dSd`f4S>l5Pk@0O^ZED$W-Lhl;G-{R67eDs_-c!!w1vchOwGqg z?-K_7CCyI=?+5;jTZfO`>5wBh=Hx3zyuE6LaaPTGrax%c4O+bGz2n<0?Y!K2SrfFP z`WGV8noOCw+QF8To8iG0g*rtCMHaX617Ru$(``4sF&T^ zXUOoJp*R||7vZoEVZ>qY!cf9sPNYXm4JvfBJDR*qpSvFnkE9}R^bf^nq6&%1pXNL# zrRSa93#aR3q_}gy^beinbF1i}MfBkfHV!3I%}WT;3B&` zpPLgr@UUd=bBsKKK>}NYY~ne+WEVCNIFA)lJ<3mqHzZe8-Vo9_3e3pY+O-77e)yP) zwUO9O{jMp$TASKN%J5mKQhpg|lU=t{s942~NwDcTCn#8*;l2Q}B=Pk}iRiujz#%lK zVcXHNqo>*vd-oWR`{|^Ki@*eB_xl$2 zU+~M*u}EgJiSUyvG_Gg@=es8%&SojHQE1WZDQA12ok%6XnKB#ir0=V_QonC$5FJ`r z(NVy+cappx;1YZ<&jHd#jl^ZOduAV)mFAVyQbZljc|K)0QzhA@icU6L`&^gFC8AOx zPGXJX@t4cDY zmk0U@IaTIuLuV(s0jK9d0RtZ%mXtW7IWaXNnCam9G9ig~SHBWWIvJ!f&8C|ju0qKA zsFD6~mCA~xO8sUiCy712CI(7%YUz}w`f9Pk6C5s%4Z)}nwiX}bF?$?oMg)otopZqQ zt&>*eeb{|o4xhlfMJ)E*uXFjHA#r*HHEfOgiGmiBjJGDzIdX%LB34arKV%?tU)G;m zwxPId%pyE`Orkd;zAw={es=lHX#@DVodVFciYrNl++`~+QTGYYcsFkGmc9VUlS|d4 z7Jl(%cLT`yo!Ppp&*+Qs+UzY~Gv>`_GY#;>28KbO{1d5E|M7`URj{WWUgp|oGq;76 zh>`wL z!R*|?-_kztUq91bJNJE0NnD~<8MA=MOLpOQf}~1ZjVvVGLTa>Eky|P4hkB#4T04@^ z*K-w4Cn5$m^#*8@l-L@0xsEKbaLOLFAoy@B#x%hbo)c$eqI&{JP_5~!>N$~BxQuq< zYY27;6XUnKXAc2C^TM}ecJgcOwA3Qdl~!~Tb_@ZkItgP?!~aSng16Z`s#CfXR#8N2 z187=F!c@NEEMay1+6Mi*V=3BHgO~Fz$)<+=s5X-%#xZ$3_dQ%{@aRF$E|aPSr~YG{ zR-oEleiFv;HKS;CnKgA9i&t5#<>d#;R<)~>@2J+_ejb^1Wc0jG8V?D%<%Ig|iz%8! zyDQ}~{hdgSv5jghS&BKhv7k=P%(-+0j`{w53b$Ed2T!fb4D1hlWf8ATxXQ7X^Z#I$67a=nkWyi;GmFa_{Y!6iZ*y99VJ*BXeD1GSQo$5 zo1!+2su&$3tU%K6>jB!3&a^#^>9YKClp1XELAO@U3M24MMU`l*)G|+9zu>qYx-s4r zi_M;j8ceH1{n4%I_Hn-E&@&L*^BER-OHH(4S$)wk=n3Bfg1&#cU%>n#mN}(FsVgyk zP)QnxP5X(Q;fGQf>AwGN{9}#f#hdRNa~1$7e%19^>&JT`4h|nz%iPoR*o~zk?zXbS zb7ARHq-Qy$4W+$EdTJZALRpY<4b>P22bx1@#d@+*G~FovF33MN&X_ECZhU$>a}7LC zSS?t=S<`r4@oj6Vjn}yao+sCt%eKJs9qB;@1VP*?1T!nykgcS#u>S7#aRWz#@O+zZ zcNH3D%ywJJb}egpFBU#%GrT+qNjl0De0ECQ~ivbE}|nZ#=&@dcVV6UCD3M*pob%f!k9m? zYWv#U$JSy}npqhP2vVAe8=4fV^g`&Cup1s)b3FCtxQB)Mw28@0neAtc69dB({o?aR zN0=c@W7)n|or`u|RxKtJtNG4crC3Dq)1Ri{jk`+qxH(gpbRZp6*+|`w9e?4NZIe`|wtV(3O2t~_#7yc3GSLdpZ2LEgIl5px> zcqZdF?_yE@nTAr%nOd(}edqez;P%F9Z#HGP_lLMASnyCWJ!q4P+zrj&2%_1EK*%f_ z;$qTX3__P7EFc^*52D*%a}eEJHbE;ggd4Y~5YTQ*G$!Brg^0ObFCTH$jT_L9SpTGO zOdss5`^MKSf)x9^;OE?dz|d$Qh9rD#07kCF=jfNQM!Ijzb>&n6VY1_-`)6T+y`)Te zA{tqJ9!Q(^_0e)RtEJx3Z!nFx`I?u@jbm2bFh=@=I^}(d5_K{|jd!dWJ=(6;CecPn zAp12|A+tbJ`K@xnWtl^^I+`akOPZQf+c(vu{wzl4 zXn~yeQjvGzce)JOTFvzZQftuz!^}N%sh3W~-nwrND6)&6?&piOtVOJRRr)$=)2-&G z82+`VFV=jTVI#FE27Ai6lhjKaqT}o|{rjCpRbs2DAQHvHrHSBp3j2g`t4SuWYPL*> zYl;p;xR6!WzS+pktZACmxfDD<56Yqjp?fONlQE(D=?4GR!qr=kn0G%@V9#fyLds=% z*_ikQMh@C&2)`g*F0A6QC91z7$ntmvQJS|#jPO{-Artjv{*;(@-`}CdlAjgQ$hJJ# zp~ba(kDwz`2`qqI57EABF*3z&=VBK7FlAl4ugc>@B-8vs8`%+vXM6OGcW~ykn$3$zczzfc)kWh0+Aye`CJ@RNAk5LHcVxs?ZRhNSH79buY9%a&A-EaAN z&z>A1X=XU7rvAg!m&=7UjM5u*T;=BKKwySt*wGbFCJv#s1l9wseyphjig!g&Y|=p(62f2uMD8C^vmjPgw#a3LuCOGS0VsLXTa}&nin<^d`^vE}F}##} zfqqB-IRs!kqQkCQuVVhX_=FiL)6o{7DIaC%=paqTbQ)V8KYADQJWAovU6FqS*V z6`}fut+q77z3#W~vQym*Ao#P?wS3)Ce^bPI5qy6 zE~?zEo-Uow+N(InYJlo9;i+mSI%nsD%mJTWWt{>wyAKnnDZp4OY(qlUOgrbS(Z}|b z)_YT@w}%`CBD<(_yV+xT(7MQkK2Dun@0Mqc4!WwfEEC~vEL78|ee~5W9r8Dmm*x;O z;|23VhKkEPM&NDCrrjmq6taCwqU{3hIEGBuT)y1cSx)53uRki5hF)sl=St2@I9Cy0 zv-NsJ6G0Y!h?1yVC{Xyxg&WuH5ud~tb1Btf-2b!E6a5+@X=r=G$eD58y)RpyFzo^A z^u4>!#FU1RwuFkzjfQMH*P`I~t;jB6RM*`n=m5S#B5(cm$+L1DPj9YXp{8U^`dy@o zkf2rI>1LS80^KgEjE5;*y`vCe$H5(Ww5!<#N_Xeq5=3m z#iU}9?MgAk!A@lZB>l6+1MmC8ia+=a^^guF6$Idu768NXvvYt#ky{!7|0^1`&Yzga zzrHc(4NCaYwe?E)F^cs{>CsnpO2C*aRVAV5Cpf*G`XV$z?GS3)fl@hgLRZ)lGU6jY z>d*m>xuKNSNFU!SWk#=p zQ;!d5gDIDDj4B5o!^pWJ>kwi^Qz>F1TtXK4iL%{Rf|D#is0v1pK9+98OxvrF5aao% z0*DjMMAqDu0VLLKB>@V6f#phS^__332{5kP%H(2ej>?kJjhf1K5^tq+bU-3*O)D)O zG+&PX`H(q3$FV?*=Sjf3#1Z!~ZT>UQ&W{s;I`N9!1i~klpQEY+gOk{>mSZ=ssOzz4 zK6ZtjB}Krt4|?(Q^^`mxy6;`01zR|CERQX0QfgxmJyLI-+%Ib}X<%HW^tiv=ZY|h7 z_7I5^%n0Os*3{?xl+fI6-~t*v=)$@^4cP-*BKP-%>jGPXl2SRgmidCv)^px5>LIN& z9Cm_~+al4JYKFMaE9BG3pAHj4_B8xCH6s;ypkfEmD84hGceQG_P=0eJem`O8)PO9e zE2aH~7WXW2f&Y!d3s~MqHT(`urSpiQHsqB^X-_0Y3~I{wTpkDU&1=0htu4vv=Ijx< z?>ZF&-AN`anlvFFS#T>HMJ~|bHk(C#J&yT~O^Gw{+V+QQF}Py^tVmwrcUm5y07Aa; z`&?&Wql1AZOiQy)XQSZ$ZoA)IQp95ZaruX!gdsT!gHM(|5v#sd-#RSnWcHej$v6VK z>(}hWs8)RAa~`Rej@sGYnz~a=cpe`ZENd<%?OI^BnV|vUpQ`1S2x$yXyq~2tDQD7r0X*JIy&?@Xp}xJm~Dnx*PbJd7Xly-SjW??-9xj} zT_@ai7q+-P#X00P%WxhiJFC4|Wn6B7Nh1i+(ZJKQG)3uYfIW7uugKLZI|>s{d{1(} z75&2m7i1lL=#ip-7>rsCzM|%$lc9Q>op&0@rv+5zxpR@v!X1ciL~6WJ>ME3ix|ZU! zlmB!~BQ^>k7%jRD)#xoc$j^`WKIj)XRGWgkUxNP;tFoccp1%d%G?91FBZ+3M=g)ux z*FLHLL6m`hH!I*=$R$7@#$o>AM{4; zCH?8)@uV`2zk+||)7pCbBgfAhowV7?uNX_OkFU?St3+q7N2RK9izlm(v#SiQx|jx+ z(}%0O*wwqOAC5Vr@OPe^WqNC!2Hc-5Dl7!ivm?K>ZeQ$3zyv7G<+seGD4KC=Y5dvMS;~s}vE8u~HNv#;P zSB|8DZ&9EXMTdzz_eO6)=(!BWBHLTVBO}S_KF6j-F#9{{^v4OPFHsO=}~JP@`>y z5Y;V@(kEAo;6U)}O6rj0eM;cvWT!Zp7kI98@R;&ssGdaDY{c6Q#6Zd+t z`P{E_sG2M9-pN*r*02e#oA%@G#Q5Xu#cb&-(VI7~uT&n(Yk%hl^#?B^VNhrQ2UBY+ z5s(M=2N5nNMv!|v3llRVCleDRCk-P9B_ksx6~k}2tnEGso7h=fnmSriF-Th*{PROV zaSjX|^$qPl*cce;+c*+CG14>BGZ7mYI#GdqLO@me<;KJg_~%~Ek|G*B0DWd48wZ;q zBg?Oafe{CQnMn_HP9P&EfR%}pgOB+CoJEU4(#pW_SJVekiN7|Ctcic0efP=G%Gkk# z7<9EP3<}oP4xpKbzZ{np7!*z23_-bBe|Kh4Q!q4QP}Kl{!ZsHFyXYg#-+RidkFvPUT4hd(R|eIIyY z`aGA|Rg*|d+G9YDL-~!C+J1U(lS*9Wkc+yaN<5vRIu2R*a0^o-Epd+_ zv%2hD5~2a7x>!4H1}$CMXT@uKC+d50+9~W|nZ7V@-IO^KH1NlTp%zPXi0wHh`Gyz* z1NTK0ia~?Lu@(aCh-xcYniXz{yZX)(I@_N9rp1jpiYDo8$0%EMw~cR9bB_a^9Li3K zS_a~agAbb4IQpLL_G(piGaTYvPzgO~%+)ghgt?}P-p;tz&q+VPx2@(V?>n1XZ;EA` zYfUj4G$TWks_VZ;U<2)-3hH`ft^ms0WbHHJmGC?#tVhU^NMGECv}=NoEuRzNS32S_ zuhNn>t?Wk6DuY{D_7H7-DX*))V*tx>cRHKwapOYigJx~&3-q4Izi9c^L+g$r;ToHc zTxn(S1MC>s$a1x`c*`@L=rV5{Zt!$x*uHq_SdT=Z;`sjDsdtjD1I$&BBpxpfHk~?J zoTKPB0(-0(Gd%&kiq)#H$EbtTXs>6y770m5-j&4a_RN>CYo}q(e&hfntHAAKj-UAb z1sh`~#S1Tyo&athYioRJ?|#Ufu~U}-?w?$(&t%TGyI}`CnA7ZFkEVRB>NHnh&uoxo z8P{I}O~Wq+1XkQJ@4S7XgSWF8SL(T{R5;59A5v(d78Ny)5kAkY?{aqDK=X{YxVHp{ zu*yEzl7|>CwVe%GR2Wlk)oN&7nB%+-qFbPri``m&=X3(RNI5=gQ>en(bTrE%EF@ji zd8Y$4>nO0=1{2B*JowURI3KeHgPX4-WGevl?XdQ7^9{X8Y8;L2Iq!DyMl+(WMUi#( zD|O5%n$M{wt)!f$;ucxcypwmc)G>>Cd7T%{lR7gh063eeSY1Y=RX-Ix5>}lf-Yv5! zVJ_z&HIzk$K3CIS=*E@kGI0Z!>-&v_tA%+E2X_}>d0tR6)j}zaHxG!;M+kX_Dw&9o&x=UXN!|dF z4HkDTcZ0d!u~=UfL0lD379rCoKMhEJSW?adJuF9gGJG6UUcv$UlQOYzX+iF}9;5kq zNI9-IxwML)6vek<3$qO0U%9_(%-W#`Y=($Ax`^@Fe1oHJ)`dDYMF5cnUDyWg$dn?g zm+H}`q@>@$u9t8Mf68g2!h6%Iyfag>DQV0E`AZLxQf}lYJ&L&DZH|+JPqUrHy$xw% zPEFPRHsG~(xx0s6v&#pEp6F5ACbQ#II~nde7f)cy0}%#RY>MvjlB`wp{^vnXx43s{ zg8ZAhEnje^gcPJkHAioUptzPu$}G`iBd zW%FEL(-S{l6?N%g=2NQUA%#EIHw*XVLakL&w&K&J;CC;c<$I)=XE5z&h?Bkz`>vW0 ziW3$Vp5J7jd1>ha8L9FmVzMGaxd8bnaC>D;QHPM^@`We*-JGQsB@(K($C|J4G3&` zYpGmi4WX0xW~I2|RD_3XogBdLj$8qQcmQRB4rXQtEhWj8$i9ZK1tcQiqbg${WfPg` zl9^lebJ%`;>73q|2N%#^#zR{vr(*AkA-+&esTb3?TB4b7_+t_;T@x!bLZzAQZ<&l z8fDEuVd9KSF6D|CSK1l*>{II+nbI?s+C0)fA}3-wyQsS?R!(Q_+$^SRb=&=eOi>eQ z%$hVlQ)%Y%&s8UOo|D_<2Z>pxtUkWz-l4-uD5rgRWpJ> zc{>7=;T@zPIkLQz`*X#VfA_=*tkoKuI+ve3@fhtPORMDcmi;jKX!J@;hpT?Lr+N6t zEGIL2%mEzL7g*I_NqJ?`!_9JZ2nzPdeDhSvcSBGVMAX-Y_AzS5 z8^@$s@rt4-&8g4}3f8U_xe*M+KgQk sPJ>_?pt+W>uf Date: Sat, 24 Apr 2021 18:23:29 +0800 Subject: [PATCH 084/214] add SessionPool --- client/Session.cs | 102 ++---- client/SessionPool.cs | 449 +++++++++++++++++++++++++++ client/Test.cs | 13 +- client/tests/SessioonPoolTest.cs | 55 ++++ client/tests/UnitTest.cs | 1 + client/utils/Client.cs | 9 + client/utils/ConcurentClientQueue.cs | 40 +++ client/utils/Tablet.cs | 14 +- client/utils/Utils.cs | 65 ++++ 9 files changed, 655 insertions(+), 93 deletions(-) create mode 100644 client/SessionPool.cs create mode 100644 client/tests/SessioonPoolTest.cs create mode 100644 client/utils/Client.cs create mode 100644 client/utils/ConcurentClientQueue.cs create mode 100644 client/utils/Utils.cs diff --git a/client/Session.cs b/client/Session.cs index 3f06209..1e00dbe 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -29,6 +29,7 @@ public int SUCCESS_CODE{ private TSIService.Client client; private TFramedTransport transport; private NLog.Logger _logger; + private Utils util_functions = new Utils(); private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -178,7 +179,7 @@ public int set_storage_group(string group_name){ if(debug_mode){ _logger.Info("set storage group {0} successfully, server message is {1}", group_name, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int delete_storage_group(string group_name){ @@ -196,7 +197,7 @@ public int delete_storage_group(string group_name){ var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, status.Message); _logger.Info(message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int delete_storage_groups(List group_names){ TSStatus status; @@ -212,7 +213,7 @@ public int delete_storage_groups(List group_names){ if(debug_mode){ _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int create_time_series(string ts_path, TSDataType data_type, TSEncoding encoding, Compressor compressor){ @@ -230,7 +231,7 @@ public int create_time_series(string ts_path, TSDataType data_type, TSEncoding e if(debug_mode){ _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int create_multi_time_series(List ts_path_lst, List data_type_lst, List encoding_lst, List compressor_lst){ @@ -251,7 +252,7 @@ public int create_multi_time_series(List ts_path_lst, List d if(debug_mode){ _logger.Info("creating multiple time series {0}, server message is {1}", ts_path_lst, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int delete_time_series(List path_list){ TSStatus status; @@ -267,7 +268,7 @@ public int delete_time_series(List path_list){ if(debug_mode){ _logger.Info("deleting multiple time series {0}, server message is {1}", path_list, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int delete_time_series(string ts_path){ return delete_time_series(new List{ts_path}); @@ -298,7 +299,7 @@ public int delete_data(List ts_path_lst, long start_time, long end_time) if(debug_mode){ _logger.Info("delete data from {0}, server message is {1}", ts_path_lst, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp){ if(values.Count() != measurements.Count()){ @@ -323,14 +324,14 @@ public int insert_record(string device_id, List measurements, List measurements, List values, List data_types, long timestamp){ if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ var err_msg = "length of data types does not equal to length of values!"; throw new TException(err_msg, null); } - var values_in_bytes = value_to_bytes(data_types, values); + var values_in_bytes = util_functions.value_to_bytes(data_types, values); return new TSInsertRecordReq(sessionId, device_id, measurements, values_in_bytes, timestamp); } public int insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ @@ -349,7 +350,7 @@ public int insert_record(string device_id, List measurements, List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ //TODO @@ -368,7 +369,7 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • device_id, List> measurement if(debug_mode){ _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ // TBD by Luzhan @@ -409,7 +410,7 @@ public int test_insert_record(string device_id, List measurements, List< _logger.Info("testing! insert one record to device {0}, server message: {1}", device_id, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int test_insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ // TBD by Luzhan @@ -427,7 +428,7 @@ public int test_insert_records(List device_id, List> measur if(debug_mode){ _logger.Info("testing! insert multiple records, server message: {0}", status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet){ List data_type_values = new List(){}; @@ -454,7 +455,7 @@ public int insert_tablet(Tablet tablet){ _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst){ List device_id_lst = new List(){}; @@ -495,7 +496,7 @@ public int insert_tablets(List tablet_lst){ if(debug_mode){ _logger.Info("insert multiple tablets, message: {0}", status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int insert_records_of_one_device(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); @@ -525,7 +526,7 @@ public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(st var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; throw new TException(err_msg, null); } - var value_in_bytes = value_to_bytes(data_type_values, values_lst[i]); + var value_in_bytes = util_functions.value_to_bytes(data_type_values, values_lst[i]); binary_value_lst.Add(value_in_bytes); } return new TSInsertRecordsOfOneDeviceReq(sessionId, device_id, measurements_lst, binary_value_lst, timestamp_lst); @@ -555,7 +556,7 @@ public int insert_records_of_one_device_sorted(string device_id, List time if(debug_mode){ _logger.Info("insert records of one device, message: {0}", status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int test_insert_tablet(Tablet tablet){ @@ -574,7 +575,7 @@ public int test_insert_tablet(Tablet tablet){ if(debug_mode){ _logger.Info("testing! insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } public int test_insert_tablets(List tablet_lst){ // TBD by Luzhan @@ -592,31 +593,8 @@ public int test_insert_tablets(List tablet_lst){ if(debug_mode){ _logger.Info("testing! insert multiple tablets, message: {0}", status.Message); } - return verify_success(status); + return util_functions.verify_success(status, SUCCESS_CODE); } - - private int verify_success(TSStatus status){ - if(status.__isset.subStatus){ - foreach(var sub_status in status.SubStatus){ - if(verify_success(sub_status) != 0){ - if(debug_mode){ - _logger.Error("error status is {0}, server message is {1}", status.Code, status); - } - return -1; - } - } - return 0; - } - if (status.Code == SUCCESS_CODE){ - return 0; - } - if(debug_mode){ - _logger.Error("error status is {0}, server message is {1}", status.Code, status); - } - return -1; - } - - public void set_time_zone(string zoneId){ var req = new TSSetTimeZoneReq(sessionId, zoneId); try{ @@ -663,7 +641,7 @@ public SessionDataSet execute_query_statement(string sql){ var err_msg = String.Format("could not execute query statement"); throw new TException(err_msg, e); } - if(verify_success(status) == -1){ + if(util_functions.verify_success(status, SUCCESS_CODE) == -1){ throw new TException("execute query failed", null); } var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); @@ -688,41 +666,7 @@ public int execute_non_query_statement(string sql){ if(debug_mode){ _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); } - return verify_success(status); - } - - - public byte[] value_to_bytes(List data_types, List values){ - - ByteBuffer buffer = new ByteBuffer(values.Count); - for(int i = 0;i < data_types.Count(); i++){ - buffer.add_char((char)data_types[i]); - switch(data_types[i]){ - case TSDataType.BOOLEAN: - buffer.add_bool(bool.Parse(values[i])); - break; - case TSDataType.INT32: - buffer.add_int(int.Parse(values[i])); - break; - case TSDataType.INT64: - buffer.add_long(long.Parse(values[i])); - break; - case TSDataType.FLOAT: - buffer.add_float(float.Parse(values[i])); - break; - case TSDataType.DOUBLE: - buffer.add_double(double.Parse(values[i])); - break; - case TSDataType.TEXT: - buffer.add_str(values[i]); - break; - default: - var message = String.Format("Unsupported data type:{0}",data_types[i]); - throw new TException(message, null); - } - } - var buf = buffer.get_buffer(); - return buf; + return util_functions.verify_success(status, SUCCESS_CODE); } } } diff --git a/client/SessionPool.cs b/client/SessionPool.cs new file mode 100644 index 0000000..98718d0 --- /dev/null +++ b/client/SessionPool.cs @@ -0,0 +1,449 @@ +using Thrift; +using Thrift.Transport; +using Thrift.Protocol; +using System; +using System.Linq; +using System.Collections.Generic; +using System.Threading; +using Thrift.Transport.Client; +using iotdb_client_csharp.client.utils; +using NLog; +using System.Net.Sockets; +using System.Threading.Tasks; +using System.Collections.Concurrent; +namespace iotdb_client_csharp.client{ + public class SessionPool{ + private string username, password, zoneId, host; + public int SUCCESS_CODE{ + get{return 200;} + } + private int port, fetch_size; + private int pool_size = 4; + private bool debug_mode = false; + private bool is_close = true; + private ConcurentClientQueue client_lst; + private TFramedTransport transport; + private NLog.Logger _logger; + public Utils util_functions = new Utils(); + private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; + + public SessionPool(string host, int port, int pool_size){ + // init success code + this.host = host; + this.port = port; + this.username = "root"; + this.password = "root"; + this.zoneId = "UTC+08:00"; + this.fetch_size = 1024; + this.pool_size = pool_size; + } + public SessionPool(string host, int port, string username, string password, int pool_size=8){ + this.host = host; + this.port = port; + this.password = password; + this.username = username; + this.zoneId = "UTC+08:00"; + this.fetch_size = 1024; + this.debug_mode = false; + this.pool_size = pool_size; + } + public SessionPool(string host, int port, string username, string password, int fetch_size, int pool_size=8){ + this.host = host; + this.port = port; + this.username = username; + this.password = password; + this.fetch_size = fetch_size; + this.zoneId = "UTC+08:00"; + this.debug_mode = false; + this.pool_size = pool_size; + + } + public SessionPool(string host, int port, string username="root", string password="root", int fetch_size=10000, string zoneId = "UTC+08:00", int pool_size=8){ + this.host = host; + this.port = port; + this.username = username; + this.password = password; + this.zoneId = zoneId; + this.fetch_size = fetch_size; + this.debug_mode = false; + this.pool_size = pool_size; + } + public void open_debug_mode(NLog.Config.LoggingConfiguration config=null){ + this.debug_mode = true; + if(config == null){ + config = new NLog.Config.LoggingConfiguration(); + var logconsole = new NLog.Targets.ConsoleTarget("logconsole"); + config.AddRule(LogLevel.Debug, LogLevel.Fatal, logconsole); + NLog.LogManager.Configuration = config; + _logger = NLog.LogManager.GetCurrentClassLogger(); + }else{ + NLog.LogManager.Configuration = config; + _logger = NLog.LogManager.GetCurrentClassLogger(); + } + } + public void close_debug_mode(){ + this.debug_mode = false; + } + + public void open(bool enableRPCCompression){ + client_lst = new ConcurentClientQueue(); + for(int index = 0; index < pool_size; index++){ + client_lst.Add(create_and_open(enableRPCCompression)); + } + } + public bool is_open(){ + return !is_close; + } + public void close(){ + if(is_close){ + return; + } + foreach(var client in client_lst.client_queue.AsEnumerable()){ + var req = new TSCloseSessionReq(client.sessionId); + try{ + var task = client.client.closeSessionAsync(req); + task.Wait(); + } + catch(TException e){ + var message = String.Format("Error occurs when closing session at server. Maybe server is down"); + throw new TException(message, e); + } + finally{ + is_close = true; + if (transport != null){ + transport.Close(); + } + } + } + } + public void set_time_zone(string zoneId){ + this.zoneId = zoneId; + foreach(var client in client_lst.client_queue.AsEnumerable()){ + var req = new TSSetTimeZoneReq(client.sessionId, zoneId); + try{ + var task = client.client.setTimeZoneAsync(req); + task.Wait(); + if(debug_mode){ + _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, task.Result.Message); + } + } + catch(TException e ){ + var message = String.Format("could not set time zone"); + throw new TException(message, e); + } + } + } + public string get_time_zone(){ + TSGetTimeZoneResp resp; + if(zoneId != ""){ + return zoneId; + } + var client = client_lst.Take(); + try{ + var task = client.client.getTimeZoneAsync(client.sessionId); + task.Wait(); + resp = task.Result; + } + catch(TException e){ + client_lst.Add(client); + var message = String.Format("counld not get time zone"); + throw new TException(message, e); + } + client_lst.Add(client); + return resp.TimeZone; + } + + public Client create_and_open(bool enableRPCCompression){ + TcpClient tcp_client = new TcpClient(this.host, this.port); + TSIService.Client client; + long sessionId, statementId; + this.transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); + // this will fail remote server access + //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); + if(!transport.IsOpen){ + try{ + var task = transport.OpenAsync(new CancellationToken()); + task.Wait(); + } + catch(TTransportException){ + throw; + } + } + if(enableRPCCompression){ + client = new TSIService.Client(new TCompactProtocol(transport)); + }else{ + client = new TSIService.Client(new TBinaryProtocol(transport)); + } + var open_req = new TSOpenSessionReq(protocol_version, zoneId); + open_req.Username = username; + open_req.Password = password; + try{ + var task = client.openSessionAsync(open_req); + task.Wait(); + var open_resp = task.Result; + if(open_resp.ServerProtocolVersion != protocol_version){ + var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); + throw new TException(message, null); + } + if (open_resp.ServerProtocolVersion == 0){ + throw new TException("Protocol not supported", null); + } + sessionId = open_resp.SessionId; + var statement_task = client.requestStatementIdAsync(sessionId); + statement_task.Wait(); + statementId = statement_task.Result; + } + catch(Exception){ + transport.Close(); + throw; + } + is_close = false; + var return_client = new Client(); + return_client.client = client; + return_client.sessionId = sessionId; + return_client.statementId = statementId; + return return_client; + } + public async Task set_storage_group_async(string group_name){ + TSStatus status; + var client = client_lst.Take(); + try{ + status = await client.client.setStorageGroupAsync(client.sessionId, group_name); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("set storage group {0} failed", group_name); + throw new TException(err_msg, e); + } + + if(debug_mode){ + _logger.Info("set storage group {0} successfully, server message is {1}", group_name, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + + public async Task create_time_series_async(string ts_path, TSDataType data_type, TSEncoding encoding, Compressor compressor){ + TSStatus status; + var client = client_lst.Take(); + var req = new TSCreateTimeseriesReq(client.sessionId, ts_path, (int)data_type, (int)encoding, (int)compressor); + try{ + status = await client.client.createTimeseriesAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("create time series {0} failed", ts_path); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); + } + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task delete_storage_group_async(string group_name){ + TSStatus status; + var client = client_lst.Take(); + try{ + status = await client.client.deleteStorageGroupsAsync(client.sessionId, new List{group_name}); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("delete storage group {0} failed", group_name); + throw new TException(err_msg, e); + } + if(debug_mode){ + var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, status.Message); + _logger.Info(message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, List data_types, long timestamp, long session_id){ + if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + var err_msg = "length of data types does not equal to length of values!"; + throw new TException(err_msg, null); + } + var values_in_bytes = util_functions.value_to_bytes(data_types, values); + return new TSInsertRecordReq(session_id, device_id, measurements, values_in_bytes, timestamp); + } + public async Task insert_record_async(string device_id, List measurements, List values, List data_types, long timestamp){ + // TBD by Luzhan + var client = client_lst.Take(); + var req = gen_insert_record_req(device_id, measurements, values, data_types, timestamp, client.sessionId); + TSStatus status; + try{ + status = await client.client.insertRecordAsync(req); + } + catch(TException e){ + client_lst.Add(client); + Console.WriteLine(e); + var err_msg = String.Format("Record insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); + } + client_lst.Add(client); + + return util_functions.verify_success(status, SUCCESS_CODE); + } + public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst, long session_id){ + //TODO + if(device_id.Count() != measurements_lst.Count() || timestamp_lst.Count() != data_types_lst.Count() || + device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ + var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); + throw new TException(err_msg,null); + } + + List values_lst_in_bytes = new List(); + for(int i = 0;i < values_lst.Count(); i++){ + var values = values_lst[i]; + var data_types = data_types_lst[i]; + var measurements = measurements_lst[i]; + if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); + throw new TException(err_msg, null); + } + var values_in_bytes = util_functions.value_to_bytes(data_types, values); + values_lst_in_bytes.Add(values_in_bytes); + } + + return new TSInsertRecordsReq(session_id, device_id, measurements_lst, values_lst_in_bytes, timestamp_lst); + } + public async Task insert_records_async(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ + + var client = client_lst.Take(); + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst, timestamp_lst, client.sessionId); + TSStatus status; + try{ + status = await client.client.insertRecordsAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("Multiple records insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet, long session_id){ + List data_type_values = new List(){}; + for(int i = 0; i < tablet.data_type_lst.Count(); i++){ + var data_type_value = (int)tablet.data_type_lst[i]; + data_type_values.Add(data_type_value); + } + return new TSInsertTabletReq(session_id, tablet.device_id, tablet.measurement_lst, tablet.get_binary_values(), tablet.get_binary_timestamps(), data_type_values, tablet.row_number); + } + public async Task insert_tablet_async(Tablet tablet){ + var client = client_lst.Take(); + var req = gen_insert_tablet_req(tablet, client.sessionId); + TSStatus status; + try{ + status = await client.client.insertTabletAsync(req); + + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("Tablet insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); + } + client_lst.Add(client); + + return util_functions.verify_success(status, SUCCESS_CODE); + } + public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst, long session_id){ + List device_id_lst = new List(){}; + List> measurements_lst = new List>(){}; + List values_lst = new List(){}; + List timestamps_lst = new List(){}; + List> type_lst = new List>(){}; + List size_lst = new List(){}; + for(int i = 0; i < tablet_lst.Count(); i++){ + List data_type_values = new List(){}; + for(int j = 0;j < tablet_lst[i].data_type_lst.Count(); j++){ + var data_type_value = (int)tablet_lst[i].data_type_lst[j]; + data_type_values.Add(data_type_value); + } + device_id_lst.Add(tablet_lst[i].device_id); + measurements_lst.Add(tablet_lst[i].measurement_lst); + values_lst.Add(tablet_lst[i].get_binary_values()); + timestamps_lst.Add(tablet_lst[i].get_binary_timestamps()); + type_lst.Add(data_type_values); + size_lst.Add(tablet_lst[i].row_number); + } + return new TSInsertTabletsReq(session_id, device_id_lst, measurements_lst, values_lst, timestamps_lst, type_lst, size_lst); + } + public async Task insert_tablets_async(List tablet_lst){ + var client = client_lst.Take(); + var req = gen_insert_tablets_req(tablet_lst, client.sessionId); + TSStatus status; + try{ + status = await client.client.insertTabletsAsync(req); + + } + catch(TException e){ + var err_msg = String.Format("Multiple tablets insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task execute_query_statement_async(string sql){ + TSExecuteStatementResp resp; + TSStatus status; + var client = client_lst.Take(); + var req = new TSExecuteStatementReq(client.sessionId, sql, client.statementId); + req.FetchSize = this.fetch_size; + try{ + resp= await client.client.executeQueryStatementAsync(req); + status = resp.Status; + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("could not execute query statement"); + throw new TException(err_msg, e); + } + if(util_functions.verify_success(status, SUCCESS_CODE) == -1){ + client_lst.Add(client); + throw new TException("execute query failed", null); + } + client_lst.Add(client); + var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client.client, client.sessionId, resp.QueryDataSet); + session_dataset.fetch_size = fetch_size; + return session_dataset; + } + public async Task execute_non_query_statement_async(string sql){ + TSExecuteStatementResp resp; + TSStatus status; + var client = client_lst.Take(); + var req = new TSExecuteStatementReq(client.sessionId, sql, client.statementId); + try{ + resp = await client.client.executeUpdateStatementAsync(req); + status = resp.Status; + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("execution of non-query statement failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + + + + } + + +} diff --git a/client/Test.cs b/client/Test.cs index 9053673..27fb05e 100644 --- a/client/Test.cs +++ b/client/Test.cs @@ -6,12 +6,17 @@ public class Test { static void Main(){ // Unit Test - UnitTest unit_test = new UnitTest(); - unit_test.Test(); + //UnitTest unit_test = new UnitTest(); + //unit_test.Test(); // Session Test - SessionTest session_test = new SessionTest(); - session_test.Test(); + //SessionTest session_test = new SessionTest(); + //session_test.Test(); + // Session Async Test + SessionPoolTest session_pool_test = new SessionPoolTest(); + session_pool_test.Test(); + + Console.WriteLine("TEST PASSED"); } diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs new file mode 100644 index 0000000..7efd347 --- /dev/null +++ b/client/tests/SessioonPoolTest.cs @@ -0,0 +1,55 @@ +using System.Collections.Generic; +using System; +using iotdb_client_csharp.client.utils; +using Thrift; +using System.Threading.Tasks; +using System.Threading; + +namespace iotdb_client_csharp.client.test +{ + public class SessionPoolTest + { + public string host = "localhost"; + public int port = 6667; + public string user = "root"; + public string passwd = "root"; + public int fetch_size = 5000; + public bool debug = false; + + public void Test(){ + TestInsertRecordAsync(); + } + + void TestInsertRecordAsync(){ + var session_pool = new SessionPool(host, port, 100); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + var task = session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + task.Wait(); + + task = session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + task.Wait(); + System.Diagnostics.Debug.Assert(task.Result== 0); + task = session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + task.Wait(); + System.Diagnostics.Debug.Assert(task.Result== 0); + task = session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + task.Wait(); + System.Diagnostics.Debug.Assert(task.Result == 0); + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List{"test_text", true.ToString(), 123.ToString()}; + var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + List> tasks = new List>(); + for(int timestamp = 1; timestamp <= fetch_size * 4; timestamp++){ + task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); + tasks.Add(task); + } + Task.WaitAll(tasks.ToArray()); + Console.WriteLine("TestInsertRecordAsync Passed"); + } + + } +} \ No newline at end of file diff --git a/client/tests/UnitTest.cs b/client/tests/UnitTest.cs index 8650ee7..11034fa 100644 --- a/client/tests/UnitTest.cs +++ b/client/tests/UnitTest.cs @@ -100,6 +100,7 @@ public void TestRowRecord(){ public void TestSessionDataSet(){ } + } diff --git a/client/utils/Client.cs b/client/utils/Client.cs new file mode 100644 index 0000000..01096f5 --- /dev/null +++ b/client/utils/Client.cs @@ -0,0 +1,9 @@ +using Thrift; +namespace iotdb_client_csharp.client.utils +{ + public class Client + { + public TSIService.Client client; + public long sessionId, statementId; + } +} \ No newline at end of file diff --git a/client/utils/ConcurentClientQueue.cs b/client/utils/ConcurentClientQueue.cs new file mode 100644 index 0000000..fa9e35d --- /dev/null +++ b/client/utils/ConcurentClientQueue.cs @@ -0,0 +1,40 @@ +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.Threading; +using System; +using iotdb_client_csharp.client.utils; + +namespace iotdb_client_csharp.client.utils +{ + public class ConcurentClientQueue + { + public ConcurrentQueue client_queue; + public ConcurentClientQueue(List clients){ + client_queue = new ConcurrentQueue(clients); + } + public ConcurentClientQueue(){ + client_queue = new ConcurrentQueue(); + } + public void Add(Client client){ + Monitor.Enter(client_queue); + client_queue.Enqueue(client); + Monitor.Pulse(client_queue); + Monitor.Exit(client_queue); + } + public Client Take(){ + Client client; + Monitor.Enter(client_queue); + if(client_queue.IsEmpty){ + Monitor.Wait(client_queue); + } + client_queue.TryDequeue(out client); + Monitor.Exit(client_queue); + return client; + } + + + + + + } +} \ No newline at end of file diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 55cab1c..2e93070 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -29,6 +29,8 @@ public class Tablet public int row_number{get;} private int col_number; + private Utils util_functions = new Utils(); + public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ if(timestamp_lst.Count != value_lst.Count){ var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); @@ -38,7 +40,7 @@ public Tablet(string device_id, List measurement_lst, List d var err_msg = string.Format("Input Error, len(measurement_lst) does not equal to len(data_type_lst)"); throw new TException(err_msg, null); } - if(!check_timestamp_lst_sorted(timestamp_lst)){ + if(!util_functions.check_sorted(timestamp_lst)){ var sorted = timestamp_lst.Select((x, index) => (timestamp:x, values:value_lst[index])).OrderBy(x => x.timestamp).ToList(); this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); this.value_lst = sorted.Select(x => x.values).ToList(); @@ -53,15 +55,7 @@ public Tablet(string device_id, List measurement_lst, List d this.row_number = timestamp_lst.Count; this.col_number = measurement_lst.Count; } - - private bool check_timestamp_lst_sorted(List timestamp_lst){ - for(int index = 1; index < timestamp_lst.Count; index++){ - if(timestamp_lst[index] < timestamp_lst[index-1]){ - return false; - } - } - return true ; - } + public byte[] get_binary_timestamps(){ ByteBuffer buffer = new ByteBuffer(new byte[]{}); foreach(var timestamp in timestamp_lst){ diff --git a/client/utils/Utils.cs b/client/utils/Utils.cs new file mode 100644 index 0000000..80f4ef7 --- /dev/null +++ b/client/utils/Utils.cs @@ -0,0 +1,65 @@ +using System.Collections.Generic; +using System; +using Thrift; +namespace iotdb_client_csharp.client.utils +{ + public class Utils + { + public bool check_sorted(List timestamp_lst){ + for(int i = 1; i < timestamp_lst.Count; i++){ + if(timestamp_lst[i] < timestamp_lst[i-1]){ + return false; + } + } + return true; + } + public int verify_success(TSStatus status, int SUCCESS_CODE){ + if(status.__isset.subStatus){ + foreach(var sub_status in status.SubStatus){ + if(verify_success(sub_status, SUCCESS_CODE) != 0){ + return -1; + } + } + return 0; + } + if (status.Code == SUCCESS_CODE){ + return 0; + } + Console.WriteLine(status.Message); + + return -1; + } + public byte[] value_to_bytes(List data_types, List values){ + + ByteBuffer buffer = new ByteBuffer(values.Count); + for(int i = 0;i < data_types.Count; i++){ + buffer.add_char((char)data_types[i]); + switch(data_types[i]){ + case TSDataType.BOOLEAN: + buffer.add_bool(bool.Parse(values[i])); + break; + case TSDataType.INT32: + buffer.add_int(int.Parse(values[i])); + break; + case TSDataType.INT64: + buffer.add_long(long.Parse(values[i])); + break; + case TSDataType.FLOAT: + buffer.add_float(float.Parse(values[i])); + break; + case TSDataType.DOUBLE: + buffer.add_double(double.Parse(values[i])); + break; + case TSDataType.TEXT: + buffer.add_str(values[i]); + break; + default: + var message = String.Format("Unsupported data type:{0}",data_types[i]); + throw new TException(message, null); + } + } + var buf = buffer.get_buffer(); + return buf; + } + } +} \ No newline at end of file From 27773433ae612febafce7863356f5bb8c1be1d0b Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 24 Apr 2021 19:19:34 +0800 Subject: [PATCH 085/214] add some test code --- client/SessionPool.cs | 183 ++++++++++++++++++++++++++++++- client/tests/SessioonPoolTest.cs | 139 ++++++++++++++++++++--- client/utils/Client.cs | 5 + client/utils/Utils.cs | 4 +- 4 files changed, 306 insertions(+), 25 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index 98718d0..d1dbbcd 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -22,7 +22,6 @@ public int SUCCESS_CODE{ private bool debug_mode = false; private bool is_close = true; private ConcurentClientQueue client_lst; - private TFramedTransport transport; private NLog.Logger _logger; public Utils util_functions = new Utils(); private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -58,7 +57,7 @@ public SessionPool(string host, int port, string username, string password, int this.pool_size = pool_size; } - public SessionPool(string host, int port, string username="root", string password="root", int fetch_size=10000, string zoneId = "UTC+08:00", int pool_size=8){ + public SessionPool(string host, int port, string username="root", string password="root", int fetch_size=1000, string zoneId = "UTC+08:00", int pool_size=8){ this.host = host; this.port = port; this.username = username; @@ -110,8 +109,8 @@ public void close(){ } finally{ is_close = true; - if (transport != null){ - transport.Close(); + if (client.transport != null){ + client.transport.Close(); } } } @@ -157,7 +156,7 @@ public Client create_and_open(bool enableRPCCompression){ TcpClient tcp_client = new TcpClient(this.host, this.port); TSIService.Client client; long sessionId, statementId; - this.transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); + var transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); // this will fail remote server access //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ @@ -202,6 +201,7 @@ public Client create_and_open(bool enableRPCCompression){ return_client.client = client; return_client.sessionId = sessionId; return_client.statementId = statementId; + return_client.transport = transport; return return_client; } public async Task set_storage_group_async(string group_name){ @@ -258,6 +258,98 @@ public async Task delete_storage_group_async(string group_name){ client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } + public async Task delete_storage_groups_async(List group_names){ + var client = client_lst.Take(); + + TSStatus status; + try{ + status = await client.client.deleteStorageGroupsAsync(client.sessionId, group_names); + + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("delete storage group(s) {0} failed", group_names); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task create_multi_time_series_async(List ts_path_lst, List data_type_lst, List encoding_lst, List compressor_lst){ + var client = client_lst.Take(); + var data_types = data_type_lst.ConvertAll(x => (int)x); + var encodings = encoding_lst.ConvertAll(x => (int)x); + var compressors = compressor_lst.ConvertAll(x => (int)x); + TSStatus status; + var req = new TSCreateMultiTimeseriesReq(client.sessionId, ts_path_lst, data_types, encodings, compressors); + try{ + status = await client.client.createMultiTimeseriesAsync(req); + + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("create multiple time series {0} failed", ts_path_lst); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("creating multiple time series {0}, server message is {1}", ts_path_lst, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task delete_time_series_async(List path_list){ + TSStatus status; + var client = client_lst.Take(); + try{ + status = await client.client.deleteTimeseriesAsync(client.sessionId, path_list); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("delete time series {0} failed", path_list); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("deleting multiple time series {0}, server message is {1}", path_list, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task delete_time_series_async(string ts_path){ + return await delete_time_series_async(new List{ts_path}); + } + public async Task check_time_series_exists_async(string ts_path){ + // TBD by dalong + try{ + string sql = "SHOW TIMESERIES " + ts_path; + var session_dataset = await execute_query_statement_async(sql); + return session_dataset.has_next(); + } + catch(TException e){ + var err_msg = String.Format("could not check if certain time series exists"); + throw new TException(err_msg, e); + } + } + public async Task delete_data_async(List ts_path_lst, long start_time, long end_time){ + var client = client_lst.Take(); + var req = new TSDeleteDataReq(client.sessionId, ts_path_lst, start_time, end_time); + TSStatus status; + try{ + status = await client.client.deleteDataAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("data deletion fails because"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("delete data from {0}, server message is {1}", ts_path_lst, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, List data_types, long timestamp, long session_id){ if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ var err_msg = "length of data types does not equal to length of values!"; @@ -287,6 +379,32 @@ public async Task insert_record_async(string device_id, List measur return util_functions.verify_success(status, SUCCESS_CODE); } + public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp, long session_id){ + if(values.Count() != measurements.Count()){ + var err_msg = "length of data types does not equal to length of values!"; + throw new TException(err_msg, null); + } + return new TSInsertStringRecordReq(session_id, device_id, measurements, values, timestamp); + } + public async Task insert_record_async(string device_id, List measurements, List values, long timestamp){ + + var client = client_lst.Take(); + var req = gen_insert_str_record_req(device_id, measurements, values, timestamp, client.sessionId); + TSStatus status; + try{ + status = await client.client.insertStringRecordAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("record insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert one record to device {0} successfully, server message is {1}", device_id, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst, long session_id){ //TODO if(device_id.Count() != measurements_lst.Count() || timestamp_lst.Count() != data_types_lst.Count() || @@ -396,6 +514,61 @@ public async Task insert_tablets_async(List tablet_lst){ } return util_functions.verify_success(status, SUCCESS_CODE); } + public async Task insert_records_of_one_device_async(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); + List sorted_timestamp_lst = sorted.Select(x => x.timestamp).ToList(); + List> sorted_measurements_lst = sorted.Select(x => x.measurements).ToList(); + List> sorted_datatye_lst = sorted.Select(x => x.data_types).ToList(); + List> sorted_value_lst = sorted.Select(x => x.values).ToList(); + return await insert_records_of_one_device_sorted_async(device_id, sorted_timestamp_lst, sorted_measurements_lst, sorted_datatye_lst, sorted_value_lst); + + } + + public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst, long session_id){ + List binary_value_lst = new List(){}; + for(int i = 0; i < values_lst.Count(); i++){ + List data_type_values = data_types_lst[i]; + for(int j = 0;j < data_types_lst[i].Count(); j++){ + var data_type_value = (int)data_types_lst[i][j]; + } + if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ + var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; + throw new TException(err_msg, null); + } + var value_in_bytes = util_functions.value_to_bytes(data_type_values, values_lst[i]); + binary_value_lst.Add(value_in_bytes); + } + return new TSInsertRecordsOfOneDeviceReq(session_id, device_id, measurements_lst, binary_value_lst, timestamp_lst); + } + public async Task insert_records_of_one_device_sorted_async(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + var client = client_lst.Take(); + var size = timestamp_lst.Count(); + if(size != measurements_lst.Count() || size != data_types_lst.Count() || size != values_lst.Count()){ + var err_msg = "insert records of one device error: types, times, measurementsList and valuesList's size should be equal"; + throw new TException(err_msg, null); + } + if( util_functions.check_sorted(timestamp_lst)){ + var err_msg = "insert records of one device error: timestamp not sorted"; + throw new TException(err_msg, null); + } + var req = gen_insert_records_of_one_device_request(device_id, timestamp_lst, measurements_lst, values_lst, data_types_lst, client.sessionId); + TSStatus status; + try{ + status = await client.client.insertRecordsOfOneDeviceAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("Sorted records of one device insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert records of one device, message: {0}", status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + + public async Task execute_query_statement_async(string sql){ TSExecuteStatementResp resp; TSStatus status; diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 7efd347..a10d247 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -9,47 +9,152 @@ namespace iotdb_client_csharp.client.test { public class SessionPoolTest { - public string host = "localhost"; - public int port = 6667; + public string host = "81.69.18.71"; + public int port = 8888; public string user = "root"; public string passwd = "root"; public int fetch_size = 5000; public bool debug = false; + int pool_size = 50; public void Test(){ - TestInsertRecordAsync(); + var task = TestInsertRecord(); + task.Wait(); + task = TestCreateMultiTimeSeries(); + task.Wait(); + task = TestGetTimeZone(); + task.Wait(); + task = TestInsertStrRecord(); + task.Wait(); } - void TestInsertRecordAsync(){ - var session_pool = new SessionPool(host, port, 100); + public async Task TestInsertRecord(){ + var session_pool = new SessionPool(host, port, pool_size); + int status; session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } System.Diagnostics.Debug.Assert(session_pool.is_open()); - var task = session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - task.Wait(); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - task = session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - task.Wait(); - System.Diagnostics.Debug.Assert(task.Result== 0); - task = session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - task.Wait(); - System.Diagnostics.Debug.Assert(task.Result== 0); - task = session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - task.Wait(); - System.Diagnostics.Debug.Assert(task.Result == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status== 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var values = new List{"test_text", true.ToString(), 123.ToString()}; var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; List> tasks = new List>(); for(int timestamp = 1; timestamp <= fetch_size * 4; timestamp++){ - task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); + var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session_pool.close(); Console.WriteLine("TestInsertRecordAsync Passed"); } + public async Task TestCreateMultiTimeSeries(){ + // by Luzhan + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + session_pool.open(false); + int status = 0; + if(debug){ + session_pool.open_debug_mode(); + } + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; + List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; + List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; + List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; + status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestCreateMultiTimeSeries Passed!"); + } + public async Task TestDeleteTimeSeries(){ + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + session_pool.open(false); + int status = 0; + if(debug){ + session_pool.open_debug_mode(); + } + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; + List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; + List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; + List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; + status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); + System.Diagnostics.Debug.Assert(status==0); + status = await session_pool.delete_storage_groups_async(ts_path_lst); + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestDeleteTimeSeries Passed!"); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session_pool.close(); + } + public async Task TestGetTimeZone(){ + var session_pool = new SessionPool(host, port, pool_size); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session_pool.is_open()); + var time_zone = session_pool.get_time_zone(); + System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); + session_pool.close(); + Console.WriteLine("TestGetTimeZone Passed!"); + } + public async Task TestInsertStrRecord(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; + var values = new List{"test_record", "test_record"}; + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, 1); + System.Diagnostics.Debug.Assert(status == 0); + + var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + + var tasks = new List>(); + // large data test + for(int timestamp = 2; timestamp <=fetch_size * 4; timestamp++){ + var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); + tasks.Add(task); + } + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session_pool.close(); + Console.WriteLine("TestInsertStrRecord Passed!"); + } + } } \ No newline at end of file diff --git a/client/utils/Client.cs b/client/utils/Client.cs index 01096f5..c8ad7f2 100644 --- a/client/utils/Client.cs +++ b/client/utils/Client.cs @@ -1,9 +1,14 @@ using Thrift; +using Thrift.Protocol; +using Thrift.Transport; + + namespace iotdb_client_csharp.client.utils { public class Client { public TSIService.Client client; public long sessionId, statementId; + public TFramedTransport transport; } } \ No newline at end of file diff --git a/client/utils/Utils.cs b/client/utils/Utils.cs index 80f4ef7..7bb2e48 100644 --- a/client/utils/Utils.cs +++ b/client/utils/Utils.cs @@ -24,9 +24,7 @@ public int verify_success(TSStatus status, int SUCCESS_CODE){ } if (status.Code == SUCCESS_CODE){ return 0; - } - Console.WriteLine(status.Message); - + } return -1; } public byte[] value_to_bytes(List data_types, List values){ From 623d95c4f004129b746a05252c3861f26015283b Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 24 Apr 2021 20:22:07 +0800 Subject: [PATCH 086/214] fix session dataset thread safe problem --- client/SessionPool.cs | 2 +- client/Test.cs | 4 +-- client/tests/SessioonPoolTest.cs | 6 ++-- client/utils/SessionDataSet.cs | 54 +++++++++++++++++++------------- 4 files changed, 40 insertions(+), 26 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index d1dbbcd..402a393 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -589,7 +589,7 @@ public async Task execute_query_statement_async(string sql){ throw new TException("execute query failed", null); } client_lst.Add(client); - var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client.client, client.sessionId, resp.QueryDataSet); + var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client_lst, resp.QueryDataSet); session_dataset.fetch_size = fetch_size; return session_dataset; } diff --git a/client/Test.cs b/client/Test.cs index 27fb05e..e482f74 100644 --- a/client/Test.cs +++ b/client/Test.cs @@ -9,8 +9,8 @@ static void Main(){ //UnitTest unit_test = new UnitTest(); //unit_test.Test(); // Session Test - //SessionTest session_test = new SessionTest(); - //session_test.Test(); + SessionTest session_test = new SessionTest(); + session_test.Test(); // Session Async Test SessionPoolTest session_pool_test = new SessionPoolTest(); diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index a10d247..a293eaa 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -9,8 +9,10 @@ namespace iotdb_client_csharp.client.test { public class SessionPoolTest { - public string host = "81.69.18.71"; - public int port = 8888; + //public string host = "81.69.18.71"; + public string host = "localhost"; + //public int port = 8888; + public int port = 6667; public string user = "root"; public string passwd = "root"; public int fetch_size = 5000; diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index b784d24..565418d 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -7,7 +7,8 @@ namespace iotdb_client_csharp.client.utils { public class SessionDataSet { - private long session_id, query_id; + private long query_id, session_id; + private string sql; private NLog.Logger _logger; List column_name_lst; @@ -19,6 +20,7 @@ public class SessionDataSet int column_size; List value_buffer_lst, bitmap_buffer_lst; ByteBuffer time_buffer; + ConcurentClientQueue clientQueue; TSIService.Client client; private string TIMESTAMP_STR{ @@ -41,7 +43,18 @@ private int default_timeout{ + public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, ConcurentClientQueue clientQueue, TSQueryDataSet query_data_set){ + this.clientQueue = clientQueue; + init(sql, column_name_lst, column_type_lst, column_name_index, query_id, clientQueue, query_data_set); + + } public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set){ + this.client = client; + this.session_id = session_id; + this.clientQueue = null; + init(sql, column_name_lst, column_type_lst, column_name_index, query_id, clientQueue, query_data_set); + } + public void init(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, ConcurentClientQueue clientQueue, TSQueryDataSet query_data_set){ this.sql = sql; this.query_dataset = query_data_set; this.query_id = query_id; @@ -51,8 +64,6 @@ public SessionDataSet(string sql, List column_name_lst, List col this.column_name_lst = new List{}; this.column_size = column_name_lst.Count; this.time_buffer = new ByteBuffer(query_data_set.Time); - this.client = client; - this.session_id = session_id; this.column_name_index_map = new Dictionary{}; this.column_type_lst = new List{}; this.duplicate_location = new Dictionary{}; @@ -90,7 +101,6 @@ public SessionDataSet(string sql, List column_name_lst, List col this.bitmap_buffer_lst.Add(new ByteBuffer(query_data_set.BitmapList[index])); } - } public List get_column_names(){ @@ -214,10 +224,21 @@ private bool is_null(int loc, int row_index){ } private bool fetch_results(){ row_index = 0; - var req = new TSFetchResultsReq(session_id, sql, fetch_size, query_id, true); + TSIService.Client local_client; + long local_session_id; + Client my_client = new Client(); + if(clientQueue == null){ + local_client = client; + local_session_id = session_id; + }else{ + my_client = clientQueue.Take(); + local_client = my_client.client; + local_session_id = my_client.sessionId; + } + var req = new TSFetchResultsReq(local_session_id, sql, fetch_size, query_id, true); req.Timeout = default_timeout; try{ - var task = client.fetchResultsAsync(req); + var task = local_client.fetchResultsAsync(req); task.Wait(); var resp = task.Result; if(resp.HasResultSet){ @@ -233,28 +254,19 @@ private bool fetch_results(){ // reset row index row_index = 0; } + if(clientQueue!=null){ + clientQueue.Add(my_client); + } return resp.HasResultSet; } catch(TException e){ + if(clientQueue!=null){ + clientQueue.Add(my_client); + } var message = string.Format("Cannot fetch result from server, because of network connection"); throw new TException(message, e); } } - public void close_operation_handle(){ - var req = new TSCloseOperationReq(session_id); - req.QueryId = query_id; - try{ - var task = client.closeOperationAsync(req); - task.Wait(); - var status = task.Result; - } - catch(TException e){ - var message = string.Format("close session {0} failed because:{1} ", session_id, e); - throw new TException(message, e); - } - - - } } } From 088ad88eb09cd1b52d9bab722d628033c916b4bc Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Sun, 25 Apr 2021 16:02:06 +0800 Subject: [PATCH 087/214] add parallel serialization & records_of_one_divice slice --- client/Session.cs | 100 +++++++++++++++++++++++++++++----------------- 1 file changed, 64 insertions(+), 36 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index 7154970..32be615 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -33,6 +33,7 @@ public int SUCCESS_CODE{ private NLog.Logger _logger; private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; public int SLICE_SIZE{get;set;} = 4000; + public int num_parallel{get;set;} = 8; public Session(string host, int port){ // init success code this.host = host; @@ -362,19 +363,19 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • values_lst_in_bytes = new List(new byte[count][]); ParallelOptions opts = new ParallelOptions(){}; - opts.MaxDegreeOfParallelism = 100; + opts.MaxDegreeOfParallelism = num_parallel; if(count >= 1000){ - Parallel.For(0, count,opts, i =>{ - var values = values_lst[i]; - var data_types = data_types_lst[i]; - var measurements = measurements_lst[i]; - if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ - var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); - throw new TException(err_msg, null); - } - var values_in_bytes = value_to_bytes(data_types, values); - values_lst_in_bytes[i] = values_in_bytes; - }); + Parallel.For(0, count,opts, i =>{ + var values = values_lst[i]; + var data_types = data_types_lst[i]; + var measurements = measurements_lst[i]; + if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); + throw new TException(err_msg, null); + } + var values_in_bytes = value_to_bytes(data_types, values); + values_lst_in_bytes[i] = values_in_bytes; + }); } else { for(int i = 0;i < values_lst.Count(); i++){ @@ -549,18 +550,31 @@ public bool check_sorted(List timestamp_lst){ return true; } public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst){ - List binary_value_lst = new List(){}; - for(int i = 0; i < values_lst.Count(); i++){ - List data_type_values = data_types_lst[i]; - for(int j = 0;j < data_types_lst[i].Count(); j++){ - var data_type_value = (int)data_types_lst[i][j]; - } - if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ - var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; - throw new TException(err_msg, null); + var count = values_lst.Count; + List binary_value_lst = new List(new byte[count][]); + ParallelOptions opts = new ParallelOptions(){}; + opts.MaxDegreeOfParallelism = num_parallel; + if(count >= 1000){ + Parallel.For(0 ,count, opts, i =>{ + List data_type_values = data_types_lst[i]; + if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ + var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; + throw new TException(err_msg, null); + } + var value_in_bytes = value_to_bytes(data_type_values, values_lst[i]); + binary_value_lst[i] = value_in_bytes; + }); + } + else{ + for(int i = 0; i < count; i++){ + List data_type_values = data_types_lst[i]; + if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ + var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; + throw new TException(err_msg, null); + } + var value_in_bytes = value_to_bytes(data_type_values, values_lst[i]); + binary_value_lst[i] = value_in_bytes; } - var value_in_bytes = value_to_bytes(data_type_values, values_lst[i]); - binary_value_lst.Add(value_in_bytes); } return new TSInsertRecordsOfOneDeviceReq(sessionId, device_id, measurements_lst, binary_value_lst, timestamp_lst); } @@ -575,21 +589,35 @@ public int insert_records_of_one_device_sorted(string device_id, List time var err_msg = "insert records of one device error: timestamp not sorted"; throw new TException(err_msg, null); } - var req = gen_insert_records_of_one_device_request(device_id, timestamp_lst, measurements_lst, values_lst, data_types_lst); TSStatus status; - try{ - var task = client.insertRecordsOfOneDeviceAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Sorted records of one device insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert records of one device, message: {0}", status.Message); + var measurements_lst_slice = new List>(){}; + var values_lst_slice = new List>(){}; + var data_types_lst_slice = new List>(){}; + var timestamp_lst_slice = new List(){}; + for(var i = 0; i < size; i+= SLICE_SIZE){ + int items_num = (size - i) < SLICE_SIZE? (size - i) : SLICE_SIZE; + measurements_lst_slice = measurements_lst.GetRange(i ,items_num); + values_lst_slice = values_lst.GetRange(i, items_num); + data_types_lst_slice = data_types_lst.GetRange(i, items_num); + timestamp_lst_slice = timestamp_lst.GetRange(i, items_num); + var req = gen_insert_records_of_one_device_request(device_id, timestamp_lst_slice, measurements_lst_slice, values_lst_slice, data_types_lst_slice); + try{ + var task = client.insertRecordsOfOneDeviceAsync(req); + task.Wait(); + status = task.Result; + } + catch(TException e){ + var err_msg = String.Format("Sorted records of one device insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert records of one device, message: {0}", status.Message); + } + if(verify_success(status) == -1){ + return -1; + } } - return verify_success(status); + return 0; } public int test_insert_tablet(Tablet tablet){ From 1a1b0dc47a895f25ee6bf62fbe9ca8f417c6b29e Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Sun, 25 Apr 2021 18:11:40 +0800 Subject: [PATCH 088/214] add SessionPool tests --- client/SessionPool.cs | 2 +- client/Test.cs | 6 +- client/tests/SessioonPoolTest.cs | 484 ++++++++++++++++++++++++++++++- 3 files changed, 484 insertions(+), 8 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index 402a393..f91ab5a 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -547,7 +547,7 @@ public async Task insert_records_of_one_device_sorted_async(string device_i var err_msg = "insert records of one device error: types, times, measurementsList and valuesList's size should be equal"; throw new TException(err_msg, null); } - if( util_functions.check_sorted(timestamp_lst)){ + if(!util_functions.check_sorted(timestamp_lst)){ var err_msg = "insert records of one device error: timestamp not sorted"; throw new TException(err_msg, null); } diff --git a/client/Test.cs b/client/Test.cs index e482f74..fe24db2 100644 --- a/client/Test.cs +++ b/client/Test.cs @@ -6,9 +6,9 @@ public class Test { static void Main(){ // Unit Test - //UnitTest unit_test = new UnitTest(); - //unit_test.Test(); - // Session Test + UnitTest unit_test = new UnitTest(); + unit_test.Test(); + Session Test SessionTest session_test = new SessionTest(); session_test.Test(); diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index a293eaa..2f84a5f 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -9,9 +9,7 @@ namespace iotdb_client_csharp.client.test { public class SessionPoolTest { - //public string host = "81.69.18.71"; public string host = "localhost"; - //public int port = 8888; public int port = 6667; public string user = "root"; public string passwd = "root"; @@ -28,6 +26,31 @@ public void Test(){ task.Wait(); task = TestInsertStrRecord(); task.Wait(); + task = TestInsertRecords(); + task.Wait(); + task = TestInsertRecordsOfOneDevice(); + task.Wait(); + task = TestInsertTablet(); + task.Wait(); + task = TestInsertTablets(); + task.Wait(); + task = TestSetAndDeleteStorageGroup(); + task.Wait(); + task = TestCreateTimeSeries(); + task.Wait(); + task = TestDeleteStorageGroups(); + task.Wait(); + task = TestCheckTimeSeriesExists(); + task.Wait(); + task = TestSetTimeZone(); + task.Wait(); + task = TestDeleteData(); + task.Wait(); + task = TestNonSql(); + task.Wait(); + task = TestSqlQuery(); + task.Wait(); + } public async Task TestInsertRecord(){ @@ -156,7 +179,460 @@ public async Task TestInsertStrRecord(){ session_pool.close(); Console.WriteLine("TestInsertStrRecord Passed!"); } - - + public async Task TestInsertRecords(){ + var session_pool = new SessionPool(host, port, pool_size); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + int status = 0; + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + List device_id = new List(){}; + for(int i = 0; i < 3; i++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + } + List> measurements_lst = new List>(){}; + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){"true", 123.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + List> datatype_lst = new List>(){}; + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List timestamp_lst = new List(){1, 2, 3}; + status = await session_pool.insert_records_async(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + // System.Diagnostics.Debug.Assert(status == 0); + var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine(status); + + // large data test + device_id = new List(){}; + values_lst = new List>(){}; + measurements_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + values_lst.Add(new List(){"true", 123.ToString()}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + timestamp_lst.Add(timestamp); + } + status = await session_pool.insert_records_async(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int record_count = fetch_size * 4; + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestInsertRecords Passed!"); + } + public async Task TestInsertRecordsOfOneDevice(){ + var session_pool = new SessionPool(host, port, pool_size); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + int status = 0; + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + List> measurements_lst = new List>(){}; + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){"true", 123.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + List> datatype_lst = new List>(){}; + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List timestamp_lst = new List(){1, 2, 3}; + status = await session_pool.insert_records_of_one_device_async(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + System.Diagnostics.Debug.Assert(status == 0); + var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + + // large data test + measurements_lst = new List>(){}; + values_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + for(int timestamp = 4; timestamp <= fetch_size * 4;timestamp++){ + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); + datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + timestamp_lst.Add(timestamp); + } + await session_pool.insert_records_of_one_device_async(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); + } + public async Task TestInsertTablet(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + List measurement_lst = new List{"TS1", "TS2", "TS3"}; + List datatype_lst = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + List> value_lst = new List>{new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}; + List timestamp_lst = new List{2, 1, 3}; + var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + status = await session_pool.insert_tablet_async(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + // large data test + value_lst = new List>(){}; + timestamp_lst = new List(){}; + + for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ + timestamp_lst.Add(timestamp); + value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); + } + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + long start_ms= (DateTime.Now.Ticks / 10000); + status = await session_pool.insert_tablet_async(tablet); + long end_ms = (DateTime.Now.Ticks / 10000); + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestInsertTablet Passed!"); + } + public async Task TestInsertTablets(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; + List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; + List> datatypes_lst = new List>(){new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }, new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }}; + List>> values_lst = new List>>(){new List>(){new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}, new List>(){new List{"iotdb_2", true.ToString(), 1.ToString()}, new List{"c#_2", false.ToString(), 2.ToString()}, new List{"client_2", true.ToString(), 3.ToString()}}}; + List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; + List tablets = new List(){}; + for(int i = 0;i < device_id.Count; i++){ + var tablet = new Tablet(device_id[i], measurements_lst[i], datatypes_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + status = await session_pool.insert_tablets_async(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res=await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + + // large data test + device_id = new List(){}; + measurements_lst = new List>(){}; + values_lst = new List>>(){}; + datatypes_lst = new List>(){}; + timestamp_lst = new List>(){}; + tablets = new List(){}; + for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); + values_lst.Add(new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}); + datatypes_lst.Add(new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}); + timestamp_lst.Add(new List(){timestamp}); + Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); + tablets.Add(tablet); + } + await session_pool.insert_tablets_async(tablets); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestInsertTablets Passed!"); + } + public async Task TestSetAndDeleteStorageGroup(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); + System.Diagnostics.Debug.Assert(await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); + session_pool.close(); + Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); + } + public async Task TestCreateTimeSeries(){ + var session_pool = new SessionPool(host, port, pool_size); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3"), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4"), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + session_pool.close(); + Console.WriteLine("TestCreateTimeSeries Passed!"); + } + public async Task TestDeleteStorageGroups(){ + var session_pool = new SessionPool(host, port, pool_size); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + List group_names = new List(){}; + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + System.Diagnostics.Debug.Assert(await session_pool.delete_storage_groups_async(group_names)==0); + session_pool.close(); + Console.WriteLine("TestDeleteStorageGroups Passed!"); + } + public async Task TestCheckTimeSeriesExists(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + var ifExist_1 = await session_pool.check_time_series_exists_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); + var ifExist_2 = await session_pool.check_time_series_exists_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); + System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestCheckTimeSeriesExists Passed!"); + } + public async Task TestSetTimeZone(){ + var session_pool = new SessionPool(host, port, pool_size); + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session_pool.is_open()); + session_pool.set_time_zone("GMT+8:00"); + System.Diagnostics.Debug.Assert(session_pool.get_time_zone() == "GMT+8:00"); + session_pool.close(); + Console.WriteLine("TestSetTimeZone Passed!"); + } + public async Task TestDeleteData(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List{"test_text", true.ToString(), 123.ToString()}; + var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"}; + await session_pool.delete_data_async(ts_path_lst, 2 ,3); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestDeleteData Passed!"); + } + public async Task TestNonSql(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("TestNonSql Passed"); + } + public async Task TestSqlQuery(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + + var res =await session_pool.execute_query_statement_async("show timeseries root"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); + res =await session_pool.execute_query_statement_async("show devices"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SHOW DEVICES sql passed!"); + res = await session_pool.execute_query_statement_async("COUNT TIMESERIES root"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("COUNT TIMESERIES root sql Passed"); + res= await session_pool.execute_query_statement_async("select * from root.ln.wf01 where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine("SELECT sql Passed"); + res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + session_pool.close(); + Console.WriteLine("SELECT sql Passed"); + } + } } \ No newline at end of file From 3e474ade4865bda7be67483b7625e3248a76a663 Mon Sep 17 00:00:00 2001 From: eedalong Date: Sun, 25 Apr 2021 19:17:08 +0800 Subject: [PATCH 089/214] add parallel test --- client/tests/SessioonPoolTest.cs | 52 +++++++++++++++++++++++++++----- 1 file changed, 44 insertions(+), 8 deletions(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 2f84a5f..9061cf7 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -13,9 +13,9 @@ public class SessionPoolTest public int port = 6667; public string user = "root"; public string passwd = "root"; - public int fetch_size = 5000; + public int fetch_size = 40000; public bool debug = false; - int pool_size = 50; + int pool_size = 20; public void Test(){ var task = TestInsertRecord(); @@ -233,14 +233,23 @@ public async Task TestInsertRecords(){ measurements_lst = new List>(){}; datatype_lst = new List>(){}; timestamp_lst = new List(){}; + var tasks = new List>(); for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); values_lst.Add(new List(){"true", 123.ToString()}); measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); timestamp_lst.Add(timestamp); + if(timestamp % fetch_size == 0){ + tasks.Add(session_pool.insert_records_async(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst)); + device_id = new List(){}; + values_lst = new List>(){}; + measurements_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + } } - status = await session_pool.insert_records_async(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + Task.WaitAll(tasks.ToArray()); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); int record_count = fetch_size * 4; @@ -298,13 +307,23 @@ public async Task TestInsertRecordsOfOneDevice(){ values_lst = new List>(){}; datatype_lst = new List>(){}; timestamp_lst = new List(){}; + var tasks = new List>(); for(int timestamp = 4; timestamp <= fetch_size * 4;timestamp++){ measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); timestamp_lst.Add(timestamp); + if(timestamp % fetch_size == 0){ + tasks.Add(session_pool.insert_records_of_one_device_async(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst)); + measurements_lst = new List>(){}; + values_lst = new List>(){}; + datatype_lst = new List>(){}; + timestamp_lst = new List(){}; + + } + } - await session_pool.insert_records_of_one_device_async(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + Task.WaitAll(tasks.ToArray()); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); int res_count = 0; while(res.has_next()){ @@ -342,14 +361,20 @@ public async Task TestInsertTablet(){ // large data test value_lst = new List>(){}; timestamp_lst = new List(){}; - + var tasks = new List>(); for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ timestamp_lst.Add(timestamp); value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); + if(timestamp % fetch_size == 0){ + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.insert_tablet_async(tablet)); + value_lst = new List>(){}; + timestamp_lst = new List(){}; + + } } - tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); long start_ms= (DateTime.Now.Ticks / 10000); - status = await session_pool.insert_tablet_async(tablet); + Task.WaitAll(tasks.ToArray()); long end_ms = (DateTime.Now.Ticks / 10000); Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); @@ -405,6 +430,7 @@ public async Task TestInsertTablets(){ datatypes_lst = new List>(){}; timestamp_lst = new List>(){}; tablets = new List(){}; + var tasks = new List>(); for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); @@ -413,8 +439,18 @@ public async Task TestInsertTablets(){ timestamp_lst.Add(new List(){timestamp}); Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); tablets.Add(tablet); + if(timestamp % fetch_size == 0){ + tasks.Add(session_pool.insert_tablets_async(tablets)); + device_id = new List(){}; + measurements_lst = new List>(){}; + values_lst = new List>>(){}; + datatypes_lst = new List>(){}; + timestamp_lst = new List>(){}; + tablets = new List(){}; + + } } - await session_pool.insert_tablets_async(tablets); + Task.WaitAll(tasks.ToArray()s); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); res.show_table_names(); int res_count = 0; From 5e53bde34988c5d8f045af5db43d72ff14e31c02 Mon Sep 17 00:00:00 2001 From: eedalong Date: Sun, 25 Apr 2021 19:18:45 +0800 Subject: [PATCH 090/214] fix typo --- client/tests/SessioonPoolTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 9061cf7..90abcd5 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -450,7 +450,7 @@ public async Task TestInsertTablets(){ } } - Task.WaitAll(tasks.ToArray()s); + Task.WaitAll(tasks.ToArray()); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); res.show_table_names(); int res_count = 0; From 9115af1930abf5d4efec7c07a10adbef48caf9ea Mon Sep 17 00:00:00 2001 From: eedalong Date: Sun, 25 Apr 2021 19:54:18 +0800 Subject: [PATCH 091/214] add test --- client/Test.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/client/Test.cs b/client/Test.cs index fe24db2..547488a 100644 --- a/client/Test.cs +++ b/client/Test.cs @@ -8,7 +8,6 @@ static void Main(){ // Unit Test UnitTest unit_test = new UnitTest(); unit_test.Test(); - Session Test SessionTest session_test = new SessionTest(); session_test.Test(); From 3d9ae8de4671e92bd224840d6adc94a28868b6ce Mon Sep 17 00:00:00 2001 From: eedalong Date: Sun, 25 Apr 2021 20:03:45 +0800 Subject: [PATCH 092/214] fix teblets insert bug --- client/tests/SessioonPoolTest.cs | 81 +++++++++++++++----------------- 1 file changed, 39 insertions(+), 42 deletions(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 90abcd5..8ae0b83 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -14,24 +14,29 @@ public class SessionPoolTest public string user = "root"; public string passwd = "root"; public int fetch_size = 40000; + public int processed_size = 4; public bool debug = false; - int pool_size = 20; + int pool_size = 32; public void Test(){ + var task = TestInsertRecord(); task.Wait(); - task = TestCreateMultiTimeSeries(); - task.Wait(); - task = TestGetTimeZone(); - task.Wait(); - task = TestInsertStrRecord(); - task.Wait(); - task = TestInsertRecords(); - task.Wait(); - task = TestInsertRecordsOfOneDevice(); - task.Wait(); + + //task = TestCreateMultiTimeSeries(); + //task.Wait(); + //task = TestGetTimeZone(); + //task.Wait(); + //task = TestInsertStrRecord(); + //task.Wait(); + //task = TestInsertRecords(); + //task.Wait(); + //task = TestInsertRecordsOfOneDevice(); + //task.Wait(); + task = TestInsertTablet(); task.Wait(); + /* task = TestInsertTablets(); task.Wait(); task = TestSetAndDeleteStorageGroup(); @@ -50,6 +55,7 @@ public void Test(){ task.Wait(); task = TestSqlQuery(); task.Wait(); + */ } @@ -74,11 +80,14 @@ public async Task TestInsertRecord(){ var values = new List{"test_text", true.ToString(), 123.ToString()}; var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; List> tasks = new List>(); - for(int timestamp = 1; timestamp <= fetch_size * 4; timestamp++){ + long start_ms= (DateTime.Now.Ticks / 10000); + for(int timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++){ var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); + long end_ms = (DateTime.Now.Ticks / 10000); + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); session_pool.close(); Console.WriteLine("TestInsertRecordAsync Passed"); @@ -163,7 +172,7 @@ public async Task TestInsertStrRecord(){ var tasks = new List>(); // large data test - for(int timestamp = 2; timestamp <=fetch_size * 4; timestamp++){ + for(int timestamp = 2; timestamp <=fetch_size * processed_size; timestamp++){ var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); tasks.Add(task); } @@ -174,7 +183,7 @@ public async Task TestInsertStrRecord(){ res.next(); res_count += 1; } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); session_pool.close(); Console.WriteLine("TestInsertStrRecord Passed!"); @@ -234,7 +243,7 @@ public async Task TestInsertRecords(){ datatype_lst = new List>(){}; timestamp_lst = new List(){}; var tasks = new List>(); - for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ + for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); values_lst.Add(new List(){"true", 123.ToString()}); measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); @@ -252,7 +261,7 @@ public async Task TestInsertRecords(){ Task.WaitAll(tasks.ToArray()); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); - int record_count = fetch_size * 4; + int record_count = fetch_size * processed_size; int res_count = 0; while(res.has_next()){ res.next(); @@ -308,7 +317,7 @@ public async Task TestInsertRecordsOfOneDevice(){ datatype_lst = new List>(){}; timestamp_lst = new List(){}; var tasks = new List>(); - for(int timestamp = 4; timestamp <= fetch_size * 4;timestamp++){ + for(int timestamp = 4; timestamp <= fetch_size * processed_size;timestamp++){ measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); @@ -330,7 +339,7 @@ public async Task TestInsertRecordsOfOneDevice(){ res.next(); res_count += 1; } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session_pool.close(); @@ -362,10 +371,11 @@ public async Task TestInsertTablet(){ value_lst = new List>(){}; timestamp_lst = new List(){}; var tasks = new List>(); - for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ + long start_ms= (DateTime.Now.Ticks / 10000); + for (int timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++){ timestamp_lst.Add(timestamp); value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); - if(timestamp % fetch_size == 0){ + if(timestamp % (fetch_size / 32) == 0){ tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); tasks.Add(session_pool.insert_tablet_async(tablet)); value_lst = new List>(){}; @@ -373,7 +383,6 @@ public async Task TestInsertTablet(){ } } - long start_ms= (DateTime.Now.Ticks / 10000); Task.WaitAll(tasks.ToArray()); long end_ms = (DateTime.Now.Ticks / 10000); Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); @@ -385,7 +394,7 @@ public async Task TestInsertTablet(){ res_count += 1; } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session_pool.close(); @@ -424,30 +433,18 @@ public async Task TestInsertTablets(){ } // large data test - device_id = new List(){}; - measurements_lst = new List>(){}; - values_lst = new List>>(){}; - datatypes_lst = new List>(){}; - timestamp_lst = new List>(){}; - tablets = new List(){}; + var tasks = new List>(); for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); - values_lst.Add(new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}); - datatypes_lst.Add(new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}); - timestamp_lst.Add(new List(){timestamp}); - Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); + var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; + var local_measurements = new List(){"TS1", "TS2", "TS3"}; + var local_value = new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}; + var local_datatypes = new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + var local_timestamp = new List{timestamp}; + Tablet tablet = new Tablet(local_device_id, local_measurements, local_datatypes, local_value, local_timestamp); tablets.Add(tablet); if(timestamp % fetch_size == 0){ tasks.Add(session_pool.insert_tablets_async(tablets)); - device_id = new List(){}; - measurements_lst = new List>(){}; - values_lst = new List>>(){}; - datatypes_lst = new List>(){}; - timestamp_lst = new List>(){}; - tablets = new List(){}; - } } Task.WaitAll(tasks.ToArray()); @@ -458,7 +455,7 @@ public async Task TestInsertTablets(){ res.next(); res_count += 1; } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); session_pool.close(); From 5429ecaae0f1128ddea691a2f05a0f74ce8e8b2c Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 09:52:34 +0800 Subject: [PATCH 093/214] fix some conflict --- client/Session.cs | 6 +++--- client/Test.cs | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/client/Session.cs b/client/Session.cs index efef7b8..30b0212 100644 --- a/client/Session.cs +++ b/client/Session.cs @@ -374,7 +374,7 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • Date: Mon, 26 Apr 2021 10:37:57 +0800 Subject: [PATCH 094/214] add test --- .gitignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 47d245f..70f6b0a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,6 @@ obj/ *.csproj .vscode/ -bin/ \ No newline at end of file +bin/ +nuget.config +release-script.sh \ No newline at end of file From 6dd94e59db46cad0768aa5667811ae6f921c0ae3 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 21:46:41 +0800 Subject: [PATCH 095/214] add initial code --- client/SessionPool.cs | 45 +++--------- client/utils/Field.cs | 139 -------------------------------------- client/utils/RowRecord.cs | 27 ++++---- client/utils/Tablet.cs | 2 +- client/utils/Utils.cs | 31 +++++++++ 5 files changed, 54 insertions(+), 190 deletions(-) delete mode 100644 client/utils/Field.cs diff --git a/client/SessionPool.cs b/client/SessionPool.cs index f91ab5a..d58e41d 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -350,18 +350,14 @@ public async Task delete_data_async(List ts_path_lst, long start_ti return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, List data_types, long timestamp, long session_id){ - if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ - var err_msg = "length of data types does not equal to length of values!"; - throw new TException(err_msg, null); - } - var values_in_bytes = util_functions.value_to_bytes(data_types, values); + public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, long timestamp, long session_id){ + var values_in_bytes = util_functions.value_to_bytes(values); return new TSInsertRecordReq(session_id, device_id, measurements, values_in_bytes, timestamp); } - public async Task insert_record_async(string device_id, List measurements, List values, List data_types, long timestamp){ + public async Task insert_record_async(string device_id, List measurements, List values, long timestamp){ // TBD by Luzhan var client = client_lst.Take(); - var req = gen_insert_record_req(device_id, measurements, values, data_types, timestamp, client.sessionId); + var req = gen_insert_record_req(device_id, measurements, values, timestamp, client.sessionId); TSStatus status; try{ status = await client.client.insertRecordAsync(req); @@ -386,29 +382,9 @@ public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List< } return new TSInsertStringRecordReq(session_id, device_id, measurements, values, timestamp); } - public async Task insert_record_async(string device_id, List measurements, List values, long timestamp){ - - var client = client_lst.Take(); - var req = gen_insert_str_record_req(device_id, measurements, values, timestamp, client.sessionId); - TSStatus status; - try{ - status = await client.client.insertStringRecordAsync(req); - } - catch(TException e){ - client_lst.Add(client); - var err_msg = String.Format("record insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert one record to device {0} successfully, server message is {1}", device_id, status.Message); - } - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); - } - public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst, long session_id){ + public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List timestamp_lst, long session_id){ //TODO - if(device_id.Count() != measurements_lst.Count() || timestamp_lst.Count() != data_types_lst.Count() || - device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ + if(device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); throw new TException(err_msg,null); } @@ -416,22 +392,21 @@ public TSInsertRecordsReq gen_insert_records_req(List device_id, List
  • values_lst_in_bytes = new List(); for(int i = 0;i < values_lst.Count(); i++){ var values = values_lst[i]; - var data_types = data_types_lst[i]; var measurements = measurements_lst[i]; - if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ + if(values.Count() != measurements.Count()){ var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); throw new TException(err_msg, null); } - var values_in_bytes = util_functions.value_to_bytes(data_types, values); + var values_in_bytes = util_functions.value_to_bytes(values); values_lst_in_bytes.Add(values_in_bytes); } return new TSInsertRecordsReq(session_id, device_id, measurements_lst, values_lst_in_bytes, timestamp_lst); } - public async Task insert_records_async(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ + public async Task insert_records_async(List device_id, List> measurements_lst, List> values_lst, List timestamp_lst){ var client = client_lst.Take(); - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst, timestamp_lst, client.sessionId); + var req = gen_insert_records_req(device_id, measurements_lst, values_lst, timestamp_lst, client.sessionId); TSStatus status; try{ status = await client.client.insertRecordsAsync(req); diff --git a/client/utils/Field.cs b/client/utils/Field.cs deleted file mode 100644 index 5b802c9..0000000 --- a/client/utils/Field.cs +++ /dev/null @@ -1,139 +0,0 @@ -using System; -using System.Collections.Generic; -using Thrift; -namespace iotdb_client_csharp.client.utils -{ - public class Field - { - // TBD By Zengz - public object val; - public TSDataType type{get;set;} - public Field(TSDataType data_type){ - this.type = data_type; - } - public Field(TSDataType data_type, object val){ - this.type = data_type; - this.val = val; - } - public void set(T value){ - val = value; - } - public double get_double(){ - switch(type){ - case TSDataType.TEXT: - return double.Parse((string)val); - case TSDataType.BOOLEAN: - return (bool)val?1.0:0; - case TSDataType.NONE: - return 0.0; - default: - return Convert.ToDouble(val); - - } - } - public Int32 get_int(){ - switch(type){ - case TSDataType.TEXT: - return Int32.Parse((string)val); - case TSDataType.BOOLEAN: - return (bool)val?1:0; - case TSDataType.NONE: - return 0; - default: - return Convert.ToInt32(val); - } - } - public Int64 get_long(){ - switch(type){ - case TSDataType.TEXT: - return Int64.Parse((string)val); - case TSDataType.BOOLEAN: - return (bool)val?1:0; - case TSDataType.NONE: - return 0; - default: - return Convert.ToInt64(val); - } - } - - public float get_float(){ - switch(type){ - case TSDataType.TEXT: - return float.Parse((string)val); - case TSDataType.BOOLEAN: - return (bool)val?1:0; - case TSDataType.NONE: - return 0; - default: - return Convert.ToSingle(val); - } - } - public bool get_bool(){ - switch(type){ - case TSDataType.TEXT: - try{ - return Convert.ToBoolean((string)val); - } - catch(System.FormatException){ - return ((string)val).Length > 0; - } - case TSDataType.NONE: - return false; - default: - return Convert.ToBoolean(val); - } - - } - public string get_str(){ - return val.ToString(); - } - public object get(){ - switch(type){ - case TSDataType.NONE : - return null; - default: - return val; - } - } - - public byte[] get_bytes(){ - ByteBuffer buffer = new ByteBuffer(new byte[]{}); - buffer.add_int((int)type); - switch(type){ - case TSDataType.BOOLEAN: - buffer.add_bool((bool)val); - break; - case TSDataType.INT32: - buffer.add_int((Int32)val); - break; - case TSDataType.INT64: - buffer.add_long((Int64)val); - break; - case TSDataType.FLOAT: - buffer.add_float((float)val); - break; - case TSDataType.DOUBLE: - buffer.add_double((double)val); - break; - case TSDataType.TEXT: - buffer.add_str((string)val); - break; - case TSDataType.NONE: - var err_msg = string.Format("NONE type does not support get bytes"); - throw new TException(err_msg, null); - } - return buffer.get_buffer(); - } - - public override string ToString() - { - switch(type){ - case TSDataType.NONE: - return "NULL"; - default: - return val.ToString(); - } - } - - } -} \ No newline at end of file diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index c2b156d..6a9d4e8 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -6,24 +6,21 @@ namespace iotdb_client_csharp.client.utils public class RowRecord { public long timestamp{get;set;} - public List field_lst{get;set;} - public RowRecord(long timestamp, List field_lst){ + public List row {get;set;} + public RowRecord(long timestamp, List row){ this.timestamp = timestamp; - this.field_lst = field_lst; + this.row = row; } - public void add_field(Field field){ - field_lst.Add(field); - } - public void append(Field field){ - field_lst.Add(field); + public void append(Object value){ + row.Add(value); } - public void set_filed(int index, Field filed){ - field_lst[index] = filed; + public void set_filed(int index, Object value){ + row[index] = value; } - public Field this[int index]{ - get => field_lst[index]; - set => field_lst[index] = value; + public Object this[int index]{ + get => row[index]; + set => row[index] = value; } public DateTime get_date_time(){ return DateTimeOffset.FromUnixTimeMilliseconds(timestamp).DateTime.ToLocalTime();; @@ -31,9 +28,9 @@ public DateTime get_date_time(){ public override string ToString() { var str = timestamp.ToString(); - foreach(var field in field_lst){ + foreach(var row_value in row){ str += "\t\t"; - str += field.ToString(); + str += row_value.ToString(); } return str; } diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 2e93070..041af63 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -31,7 +31,7 @@ public class Tablet private Utils util_functions = new Utils(); - public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ + public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ if(timestamp_lst.Count != value_lst.Count){ var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); throw new TException(err_msg, null); diff --git a/client/utils/Utils.cs b/client/utils/Utils.cs index 7bb2e48..bb77513 100644 --- a/client/utils/Utils.cs +++ b/client/utils/Utils.cs @@ -59,5 +59,36 @@ public byte[] value_to_bytes(List data_types, List values){ var buf = buffer.get_buffer(); return buf; } + public byte[] value_to_bytes(List values){ + // todo by Luzhan + + ByteBuffer buffer = new ByteBuffer(values.Count); + foreach(var value in values){ + if(value.GetType().Equals(typeof(bool))){ + buffer.add_bool((bool)value); + } + else if((value.GetType().Equals(typeof(Int32)))){ + + } + else if((value.GetType().Equals(typeof(Int64)))){ + + } + else if((value.GetType().Equals(typeof(double)))){ + + } + else if((value.GetType().Equals(typeof(float)))){ + + } + else if((value.GetType().Equals(typeof(string)))){ + + } + else{ + var message = String.Format("Unsupported data type:{0}",value.GetType().ToString()); + throw new TException(message, null); + } + } + var buf = buffer.get_buffer(); + return buf; + } } } \ No newline at end of file From 0bb70e8a2750ebb9dd7bace8d0b7bc4fd9aa1418 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 22:20:21 +0800 Subject: [PATCH 096/214] add Tablet and SessionDataset --- client/SessionPool.cs | 10 +-- client/utils/RowRecord.cs | 33 ++++----- client/utils/SessionDataSet.cs | 30 +++------ client/utils/Tablet.cs | 120 +++++++++++++++------------------ 4 files changed, 89 insertions(+), 104 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index d58e41d..59665d7 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -350,14 +350,14 @@ public async Task delete_data_async(List ts_path_lst, long start_ti return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, long timestamp, long session_id){ - var values_in_bytes = util_functions.value_to_bytes(values); - return new TSInsertRecordReq(session_id, device_id, measurements, values_in_bytes, timestamp); + public TSInsertRecordReq gen_insert_record_req(string device_id, RowRecord record, long session_id){ + var values_in_bytes = util_functions.value_to_bytes(record.values); + return new TSInsertRecordReq(session_id, device_id, record.measurements, values_in_bytes, record.timestamp); } - public async Task insert_record_async(string device_id, List measurements, List values, long timestamp){ + public async Task insert_record_async(string device_id, RowRecord record){ // TBD by Luzhan var client = client_lst.Take(); - var req = gen_insert_record_req(device_id, measurements, values, timestamp, client.sessionId); + var req = gen_insert_record_req(device_id, record,client.sessionId); TSStatus status; try{ status = await client.client.insertRecordAsync(req); diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index 6a9d4e8..8f21368 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -6,29 +6,32 @@ namespace iotdb_client_csharp.client.utils public class RowRecord { public long timestamp{get;set;} - public List row {get;set;} - public RowRecord(long timestamp, List row){ + public List values {get;set;} + public List measurements{get;set;} + public RowRecord(long timestamp, List values, List measurements){ this.timestamp = timestamp; - this.row = row; + this.values = values; + this.measurements = measurements; } - public void append(Object value){ - row.Add(value); - } - - public void set_filed(int index, Object value){ - row[index] = value; - } - public Object this[int index]{ - get => row[index]; - set => row[index] = value; + public void append(string measurement, Object value){ + values.Add(value); + measurements.Add(measurement); } public DateTime get_date_time(){ return DateTimeOffset.FromUnixTimeMilliseconds(timestamp).DateTime.ToLocalTime();; } + public override string ToString() { - var str = timestamp.ToString(); - foreach(var row_value in row){ + var str = "TimeStamp"; + foreach(var measurement in measurements){ + str += "\t\t"; + str += measurement.ToString(); + } + str += "\n"; + + str += timestamp.ToString(); + foreach(var row_value in values){ str += "\t\t"; str += row_value.ToString(); } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 565418d..8d437cb 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -41,8 +41,6 @@ private int default_timeout{ private bool has_catched_result; private RowRecord cached_row_record; - - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, ConcurentClientQueue clientQueue, TSQueryDataSet query_data_set){ this.clientQueue = clientQueue; init(sql, column_name_lst, column_type_lst, column_name_index, query_id, clientQueue, query_data_set); @@ -69,8 +67,6 @@ public void init(string sql, List column_name_lst, List column_t this.duplicate_location = new Dictionary{}; this.value_buffer_lst = new List{}; this.bitmap_buffer_lst = new List{}; - - // some internal variable this.has_catched_result = false; this.row_index = 0; @@ -160,7 +156,7 @@ private TSDataType get_data_type_from_str(string str){ } } public void construct_one_row(){ - List field_lst = new List{}; + List field_lst = new List{}; for(int i = 0; i < this.column_size; i++){ if(duplicate_location.ContainsKey(i)){ var field = field_lst[duplicate_location[i]]; @@ -171,33 +167,27 @@ public void construct_one_row(){ if(row_index % 8 == 0){ current_bitmap[i] = column_bitmap_buffer.get_byte(); } + object local_field; if(!is_null(i, row_index)){ TSDataType column_data_type = get_data_type_from_str(column_type_lst[i]); - var local_field = new Field(column_data_type); switch(column_data_type){ case TSDataType.BOOLEAN: - var bool_val = column_value_buffer.get_bool(); - local_field.set(bool_val); + local_field = column_value_buffer.get_bool(); break; case TSDataType.INT32: - var int_val = column_value_buffer.get_int(); - local_field.set(int_val); + local_field = column_value_buffer.get_int(); break; case TSDataType.INT64: - var long_val = column_value_buffer.get_long(); - local_field.set(long_val); + local_field = column_value_buffer.get_long(); break; case TSDataType.FLOAT: - float float_val = column_value_buffer.get_float(); - local_field.set(float_val); + local_field = column_value_buffer.get_float(); break; case TSDataType.DOUBLE: - double double_val = column_value_buffer.get_double(); - local_field.set(double_val); + local_field = column_value_buffer.get_double(); break; case TSDataType.TEXT: - string str_val = column_value_buffer.get_str(); - local_field.set(str_val); + local_field = column_value_buffer.get_str(); break; default: string err_msg = string.Format("value format not supported"); @@ -207,14 +197,14 @@ public void construct_one_row(){ } else{ - var local_field = new Field(TSDataType.NONE); + local_field = null; field_lst.Add(local_field); } } } long timestamp = time_buffer.get_long(); row_index += 1; - this.cached_row_record = new RowRecord(timestamp, field_lst); + this.cached_row_record = new RowRecord(timestamp, field_lst,column_name_lst); } private bool is_null(int loc, int row_index){ byte bitmap = current_bitmap[loc]; diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 041af63..729807d 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -22,24 +22,19 @@ public class Tablet { public string device_id{get;} public List measurement_lst{get;} - public List data_type_lst{get;} private List timestamp_lst; - private List> value_lst; + private List> value_lst; public int row_number{get;} private int col_number; private Utils util_functions = new Utils(); - public Tablet(string device_id, List measurement_lst, List data_type_lst, List> value_lst, List timestamp_lst){ + public Tablet(string device_id, List measurement_lst, List> value_lst, List timestamp_lst){ if(timestamp_lst.Count != value_lst.Count){ var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); throw new TException(err_msg, null); } - if(measurement_lst.Count != data_type_lst.Count){ - var err_msg = string.Format("Input Error, len(measurement_lst) does not equal to len(data_type_lst)"); - throw new TException(err_msg, null); - } if(!util_functions.check_sorted(timestamp_lst)){ var sorted = timestamp_lst.Select((x, index) => (timestamp:x, values:value_lst[index])).OrderBy(x => x.timestamp).ToList(); this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); @@ -51,7 +46,6 @@ public Tablet(string device_id, List measurement_lst, List d this.device_id = device_id; this.measurement_lst = measurement_lst; - this.data_type_lst = data_type_lst; this.row_number = timestamp_lst.Count; this.col_number = measurement_lst.Count; } @@ -66,26 +60,25 @@ public byte[] get_binary_timestamps(){ public int estimate_buffer_size(){ var estimate_size = 0; // estimate one row size - foreach(var data_type in data_type_lst){ - switch(data_type){ - case TSDataType.BOOLEAN: - estimate_size += 1; - break; - case TSDataType.INT32: - estimate_size += 4; - break; - case TSDataType.INT64: - estimate_size += 8; - break; - case TSDataType.FLOAT: - estimate_size += 4; - break; - case TSDataType.DOUBLE: - estimate_size += 8; - break; - case TSDataType.TEXT: - estimate_size += 1; - break; + foreach(var value in value_lst[0]){ + var value_type = value.GetType(); + if(value_type.Equals(typeof(bool))){ + estimate_size += 1; + } + else if(value_type.Equals(typeof(Int32))){ + estimate_size += 4; + } + else if(value_type.Equals(typeof(Int64))){ + estimate_size += 8; + } + else if(value_type.Equals(typeof(float))){ + estimate_size += 4; + } + else if(value_type.Equals(typeof(double))){ + estimate_size += 8; + } + else if(value_type.Equals(typeof(string))){ + estimate_size += ((string)value).Length; } } estimate_size *= timestamp_lst.Count; @@ -96,42 +89,41 @@ public byte[] get_binary_values(){ var estimate_size = estimate_buffer_size(); ByteBuffer buffer = new ByteBuffer(estimate_size); for(int i = 0; i < col_number; i++){ - switch(data_type_lst[i]){ - case TSDataType.BOOLEAN: - for(int j=0; j< row_number; j++){ - buffer.add_bool(bool.Parse(value_lst[j][i])); - } - break; - case TSDataType.INT32: - for(int j=0; j Date: Mon, 26 Apr 2021 22:49:32 +0800 Subject: [PATCH 097/214] remove Session.cs and accordingly test --- client/Session.cs | 737 ----------------------------- client/SessionPool.cs | 63 +-- client/Test.cs | 8 - client/tests/SessionTest.cs | 901 ------------------------------------ client/tests/UnitTest.cs | 107 ----- client/utils/RowRecord.cs | 57 ++- client/utils/Tablet.cs | 34 +- client/utils/Utils.cs | 3 +- 8 files changed, 106 insertions(+), 1804 deletions(-) delete mode 100644 client/Session.cs delete mode 100644 client/tests/SessionTest.cs delete mode 100644 client/tests/UnitTest.cs diff --git a/client/Session.cs b/client/Session.cs deleted file mode 100644 index 30b0212..0000000 --- a/client/Session.cs +++ /dev/null @@ -1,737 +0,0 @@ -using System.Diagnostics; -using Thrift; -using Thrift.Transport; -using Thrift.Protocol; -using System; -using System.Linq; -using System.Collections.Generic; -using System.Threading; -using Thrift.Transport.Client; -using iotdb_client_csharp.client.utils; -using NLog; -using System.Net.Sockets; -using System.Threading.Tasks; - -namespace iotdb_client_csharp.client -{ - //public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; - //public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA, NONE}; - //public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; - - public class Session - { - private string username, password, zoneId, host; - public int SUCCESS_CODE{ - get{return 200;} - } - private int port, fetch_size; - private bool debug_mode = false; - private long sessionId, statementId; - private bool is_close = true; - private TSIService.Client client; - private TFramedTransport transport; - private NLog.Logger _logger; - private Utils util_functions = new Utils(); - private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - public int SLICE_SIZE{get;set;} = 4000; - public int num_parallel{get;set;} = 8; - public Session(string host, int port){ - // init success code - this.host = host; - this.port = port; - this.username = "root"; - this.password = "root"; - this.zoneId = "UTC+08:00"; - this.fetch_size = 1024; - } - public Session(string host, int port, string username, string password){ - this.host = host; - this.port = port; - this.password = password; - this.username = username; - this.zoneId = "UTC+08:00"; - this.fetch_size = 1024; - this.debug_mode = false; - } - public Session(string host, int port, string username, string password, int fetch_size){ - this.host = host; - this.port = port; - this.username = username; - this.password = password; - this.fetch_size = fetch_size; - this.zoneId = "UTC+08:00"; - this.debug_mode = false; - - } - public Session(string host, int port, string username="root", string password="root", int fetch_size=10000, string zoneId = "UTC+08:00"){ - this.host = host; - this.port = port; - this.username = username; - this.password = password; - this.zoneId = zoneId; - this.fetch_size = fetch_size; - this.debug_mode = false; - } - public void open_debug_mode(NLog.Config.LoggingConfiguration config=null){ - this.debug_mode = true; - if(config == null){ - config = new NLog.Config.LoggingConfiguration(); - var logconsole = new NLog.Targets.ConsoleTarget("logconsole"); - config.AddRule(LogLevel.Debug, LogLevel.Fatal, logconsole); - NLog.LogManager.Configuration = config; - _logger = NLog.LogManager.GetCurrentClassLogger(); - }else{ - NLog.LogManager.Configuration = config; - _logger = NLog.LogManager.GetCurrentClassLogger(); - } - } - public void close_debug_mode(){ - this.debug_mode = false; - } - public void open(bool enableRPCCompression){ - if(!is_close){ - return ; - } - - TcpClient tcp_client = new TcpClient(this.host, this.port); - this.transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); - // this will fail remote server access - //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); - if(!transport.IsOpen){ - try{ - var task = transport.OpenAsync(new CancellationToken()); - task.Wait(); - } - catch(TTransportException){ - throw; - } - } - if(enableRPCCompression){ - client = new TSIService.Client(new TCompactProtocol(transport)); - }else{ - client = new TSIService.Client(new TBinaryProtocol(transport)); - } - // init open request - var open_req = new TSOpenSessionReq(protocol_version, zoneId); - open_req.Username = username; - open_req.Password = password; - try{ - var task = client.openSessionAsync(open_req); - task.Wait(); - var open_resp = task.Result; - if(open_resp.ServerProtocolVersion != protocol_version){ - var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); - throw new TException(message, null); - } - if (open_resp.ServerProtocolVersion == 0){ - throw new TException("Protocol not supported", null); - } - sessionId = open_resp.SessionId; - var statement_task = client.requestStatementIdAsync(sessionId); - statement_task.Wait(); - statementId = statement_task.Result; - } - catch(Exception){ - transport.Close(); - throw; - } - if(zoneId != ""){ - set_time_zone(zoneId); - }else{ - zoneId = get_time_zone(); - } - is_close = false; - - } - public bool is_open(){ - return !is_close; - } - public void close(){ - if(is_close){ - return; - } - var req = new TSCloseSessionReq(sessionId); - try{ - var task = client.closeSessionAsync(req); - task.Wait(); - } - catch(TException e){ - var message = String.Format("Error occurs when closing session at server. Maybe server is down"); - throw new TException(message, e); - } - finally{ - is_close = true; - if (transport != null){ - transport.Close(); - } - } - - } - public int set_storage_group(string group_name){ - TSStatus status; - try{ - var task = client.setStorageGroupAsync(sessionId, group_name); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("set storage group {0} failed", group_name); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("set storage group {0} successfully, server message is {1}", group_name, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - - public int delete_storage_group(string group_name){ - TSStatus status; - try{ - var task = client.deleteStorageGroupsAsync(sessionId, new List{group_name}); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("delete storage group {0} failed", group_name); - throw new TException(err_msg, e); - } - if(debug_mode){ - var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, status.Message); - _logger.Info(message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public int delete_storage_groups(List group_names){ - TSStatus status; - try{ - var task = client.deleteStorageGroupsAsync(sessionId, group_names); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("delete storage group(s) {0} failed", group_names); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - - public int create_time_series(string ts_path, TSDataType data_type, TSEncoding encoding, Compressor compressor){ - TSStatus status; - var req = new TSCreateTimeseriesReq(sessionId, ts_path, (int)data_type, (int)encoding, (int)compressor); - try{ - var task = client.createTimeseriesAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("create time series {0} failed", ts_path); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - - public int create_multi_time_series(List ts_path_lst, List data_type_lst, List encoding_lst, List compressor_lst){ - var data_types = data_type_lst.ConvertAll(x => (int)x); - var encodings = encoding_lst.ConvertAll(x => (int)x); - var compressors = compressor_lst.ConvertAll(x => (int)x); - TSStatus status; - var req = new TSCreateMultiTimeseriesReq(sessionId, ts_path_lst, data_types, encodings, compressors); - try{ - var task = client.createMultiTimeseriesAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("create multiple time series {0} failed", ts_path_lst); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("creating multiple time series {0}, server message is {1}", ts_path_lst, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public int delete_time_series(List path_list){ - TSStatus status; - try{ - var task = client.deleteTimeseriesAsync(sessionId, path_list); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("delete time series {0} failed", path_list); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("deleting multiple time series {0}, server message is {1}", path_list, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public int delete_time_series(string ts_path){ - return delete_time_series(new List{ts_path}); - } - public bool check_time_series_exists(string ts_path){ - // TBD by dalong - try{ - string sql = "SHOW TIMESERIES " + ts_path; - return execute_query_statement(sql).has_next(); - } - catch(TException e){ - var err_msg = String.Format("could not check if certain time series exists"); - throw new TException(err_msg, e); - } - } - public int delete_data(List ts_path_lst, long start_time, long end_time){ - var req = new TSDeleteDataReq(sessionId, ts_path_lst, start_time, end_time); - TSStatus status; - try{ - var task = client.deleteDataAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("data deletion fails because"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("delete data from {0}, server message is {1}", ts_path_lst, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp){ - if(values.Count() != measurements.Count()){ - var err_msg = "length of data types does not equal to length of values!"; - throw new TException(err_msg, null); - } - return new TSInsertStringRecordReq(sessionId, device_id, measurements, values, timestamp); - } - public int insert_record(string device_id, List measurements, List values, long timestamp){ - // TBD by Luzhan - var req = gen_insert_str_record_req(device_id, measurements, values, timestamp); - TSStatus status; - try{ - var task = client.insertStringRecordAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("record insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert one record to device {0} successfully, server message is {1}", device_id, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public TSInsertRecordReq gen_insert_record_req(string device_id, List measurements, List values, List data_types, long timestamp){ - if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ - var err_msg = "length of data types does not equal to length of values!"; - throw new TException(err_msg, null); - } - var values_in_bytes = util_functions.value_to_bytes(data_types, values); - return new TSInsertRecordReq(sessionId, device_id, measurements, values_in_bytes, timestamp); - } - public int insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ - // TBD by Luzhan - var req = gen_insert_record_req(device_id, measurements, values, data_types, timestamp); - TSStatus status; - try{ - var task = client.insertRecordAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Record insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ - //TODO - if(device_id.Count() != measurements_lst.Count() || timestamp_lst.Count() != data_types_lst.Count() || - device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ - var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); - throw new TException(err_msg,null); - } - var count = values_lst.Count; - List values_lst_in_bytes = new List(new byte[count][]); - ParallelOptions opts = new ParallelOptions(){}; - opts.MaxDegreeOfParallelism = num_parallel; - if(count >= 1000){ - Parallel.For(0, count,opts, i =>{ - var values = values_lst[i]; - var data_types = data_types_lst[i]; - var measurements = measurements_lst[i]; - if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ - var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); - throw new TException(err_msg, null); - } - var values_in_bytes = util_functions.value_to_bytes(data_types, values); - values_lst_in_bytes[i] = values_in_bytes; - }); - } - else { - for(int i = 0;i < values_lst.Count(); i++){ - var values = values_lst[i]; - var data_types = data_types_lst[i]; - var measurements = measurements_lst[i]; - if(values.Count() != data_types.Count() || values.Count() != measurements.Count()){ - var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); - throw new TException(err_msg, null); - } - var values_in_bytes = util_functions.value_to_bytes(data_types, values); - values_lst_in_bytes[i] = values_in_bytes; - } - - } - return new TSInsertRecordsReq(sessionId, device_id, measurements_lst, values_lst_in_bytes, timestamp_lst); - } - public int insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ - // TBD by Luzhan - TSStatus status; - var device_id_slice = new List(){}; - var measurements_lst_slice = new List>(){}; - var values_lst_slice = new List>(){}; - var data_types_lst_slice = new List>(){}; - var timestamp_lst_slice = new List(){}; - for(var i = 0; i < device_id.Count; i+= SLICE_SIZE){ - int items_num = (device_id.Count - i) < SLICE_SIZE? (device_id.Count - i) : SLICE_SIZE; - device_id_slice = device_id.GetRange(i, items_num); - measurements_lst_slice = measurements_lst.GetRange(i ,items_num); - values_lst_slice = values_lst.GetRange(i, items_num); - data_types_lst_slice = data_types_lst.GetRange(i, items_num); - timestamp_lst_slice = timestamp_lst.GetRange(i, items_num); - var req = gen_insert_records_req(device_id_slice, measurements_lst_slice, values_lst_slice, data_types_lst_slice, timestamp_lst_slice); - try{ - var task = client.insertRecordsAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Multiple records insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); - } - if(util_functions.verify_success(status, SUCCESS_CODE) == -1){ - return -1; - } - } - - return 0; - - } - public int test_insert_record(string device_id, List measurements, List values, List data_types, long timestamp){ - // TBD by Luzhan - var req = gen_insert_record_req(device_id, measurements, values, data_types, timestamp); - TSStatus status; - try{ - var task = client.testInsertRecordAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Testing record insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("testing! insert one record to device {0}, server message: {1}", device_id, status.Message); - } - - return util_functions.verify_success(status, SUCCESS_CODE); - } - public int test_insert_records(List device_id, List> measurements_lst, List> values_lst, List> data_types_lst, List timestamp_lst){ - // TBD by Luzhan - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, data_types_lst, timestamp_lst); - TSStatus status; - try{ - var task = client.testInsertRecordsAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Testing multiple records insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("testing! insert multiple records, server message: {0}", status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet){ - List data_type_values = new List(){}; - for(int i = 0; i < tablet.data_type_lst.Count(); i++){ - var data_type_value = (int)tablet.data_type_lst[i]; - data_type_values.Add(data_type_value); - } - return new TSInsertTabletReq(sessionId, tablet.device_id, tablet.measurement_lst, tablet.get_binary_values(), tablet.get_binary_timestamps(), data_type_values, tablet.row_number); - } - public int insert_tablet(Tablet tablet){ - // TBD by Luzhan - var req = gen_insert_tablet_req(tablet); - TSStatus status; - try{ - var task = client.insertTabletAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Tablet insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); - } - - return util_functions.verify_success(status, SUCCESS_CODE); - } - public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst){ - List device_id_lst = new List(){}; - List> measurements_lst = new List>(){}; - List values_lst = new List(){}; - List timestamps_lst = new List(){}; - List> type_lst = new List>(){}; - List size_lst = new List(){}; - for(int i = 0; i < tablet_lst.Count(); i++){ - List data_type_values = new List(){}; - for(int j = 0;j < tablet_lst[i].data_type_lst.Count(); j++){ - var data_type_value = (int)tablet_lst[i].data_type_lst[j]; - data_type_values.Add(data_type_value); - } - device_id_lst.Add(tablet_lst[i].device_id); - measurements_lst.Add(tablet_lst[i].measurement_lst); - values_lst.Add(tablet_lst[i].get_binary_values()); - timestamps_lst.Add(tablet_lst[i].get_binary_timestamps()); - type_lst.Add(data_type_values); - size_lst.Add(tablet_lst[i].row_number); - } - return new TSInsertTabletsReq(sessionId, device_id_lst, measurements_lst, values_lst, timestamps_lst, type_lst, size_lst); - } - - public int insert_tablets(List tablet_lst){ - // TBD by Luzhan - var req = gen_insert_tablets_req(tablet_lst); - TSStatus status; - try{ - var task = client.insertTabletsAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Multiple tablets insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert multiple tablets, message: {0}", status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public int insert_records_of_one_device(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ - var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); - List sorted_timestamp_lst = sorted.Select(x => x.timestamp).ToList(); - List> sorted_measurements_lst = sorted.Select(x => x.measurements).ToList(); - List> sorted_datatye_lst = sorted.Select(x => x.data_types).ToList(); - List> sorted_value_lst = sorted.Select(x => x.values).ToList(); - return insert_records_of_one_device_sorted(device_id, sorted_timestamp_lst, sorted_measurements_lst, sorted_datatye_lst, sorted_value_lst); - - } - public bool check_sorted(List timestamp_lst){ - for(int i = 1; i < timestamp_lst.Count(); i++){ - if(timestamp_lst[i] < timestamp_lst[i-1]){ - return false; - } - } - return true; - } - public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst){ - var count = values_lst.Count; - List binary_value_lst = new List(new byte[count][]); - ParallelOptions opts = new ParallelOptions(){}; - opts.MaxDegreeOfParallelism = num_parallel; - if(count >= 1000){ - Parallel.For(0 ,count, opts, i =>{ - List data_type_values = data_types_lst[i]; - if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ - var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; - throw new TException(err_msg, null); - } - var value_in_bytes = util_functions.value_to_bytes(data_type_values, values_lst[i]); - binary_value_lst[i] = value_in_bytes; - }); - } - else{ - for(int i = 0; i < count; i++){ - List data_type_values = data_types_lst[i]; - if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ - var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; - throw new TException(err_msg, null); - } - var value_in_bytes = util_functions.value_to_bytes(data_type_values, values_lst[i]); - binary_value_lst[i] = value_in_bytes; - } - } - return new TSInsertRecordsOfOneDeviceReq(sessionId, device_id, measurements_lst, binary_value_lst, timestamp_lst); - } - public int insert_records_of_one_device_sorted(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ - // TBD by Luzhan - var size = timestamp_lst.Count(); - if(size != measurements_lst.Count() || size != data_types_lst.Count() || size != values_lst.Count()){ - var err_msg = "insert records of one device error: types, times, measurementsList and valuesList's size should be equal"; - throw new TException(err_msg, null); - } - if(!check_sorted(timestamp_lst)){ - var err_msg = "insert records of one device error: timestamp not sorted"; - throw new TException(err_msg, null); - } - TSStatus status; - var measurements_lst_slice = new List>(){}; - var values_lst_slice = new List>(){}; - var data_types_lst_slice = new List>(){}; - var timestamp_lst_slice = new List(){}; - for(var i = 0; i < size; i+= SLICE_SIZE){ - int items_num = (size - i) < SLICE_SIZE? (size - i) : SLICE_SIZE; - measurements_lst_slice = measurements_lst.GetRange(i ,items_num); - values_lst_slice = values_lst.GetRange(i, items_num); - data_types_lst_slice = data_types_lst.GetRange(i, items_num); - timestamp_lst_slice = timestamp_lst.GetRange(i, items_num); - var req = gen_insert_records_of_one_device_request(device_id, timestamp_lst_slice, measurements_lst_slice, values_lst_slice, data_types_lst_slice); - try{ - var task = client.insertRecordsOfOneDeviceAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Sorted records of one device insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("insert records of one device, message: {0}", status.Message); - } - if(util_functions.verify_success(status,SUCCESS_CODE) == -1){ - return -1; - } - } - return 0; - - } - - public int test_insert_tablet(Tablet tablet){ - // TBD by Luzhan - var req = gen_insert_tablet_req(tablet); - TSStatus status; - try{ - var task = client.testInsertTabletAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Testing tablet insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("testing! insert one tablet to device {0} message: {1}", tablet.device_id, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public int test_insert_tablets(List tablet_lst){ - // TBD by Luzhan - var req = gen_insert_tablets_req(tablet_lst); - TSStatus status; - try{ - var task = client.testInsertTabletsAsync(req); - task.Wait(); - status = task.Result; - } - catch(TException e){ - var err_msg = String.Format("Testing multiple tablets insertion failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("testing! insert multiple tablets, message: {0}", status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - public void set_time_zone(string zoneId){ - var req = new TSSetTimeZoneReq(sessionId, zoneId); - try{ - var task = client.setTimeZoneAsync(req); - task.Wait(); - if(debug_mode){ - _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, task.Result.Message); - } - } - catch(TException e ){ - var message = String.Format("could not set time zone"); - throw new TException(message, e); - } - this.zoneId = zoneId; - } - public string get_time_zone(){ - TSGetTimeZoneResp resp; - if(zoneId != ""){ - return zoneId; - } - try{ - var task = client.getTimeZoneAsync(sessionId); - task.Wait(); - resp = task.Result; - } - catch(TException e){ - var message = String.Format("counld not get time zone"); - throw new TException(message, e); - } - return resp.TimeZone; - } - public SessionDataSet execute_query_statement(string sql){ - TSExecuteStatementResp resp; - TSStatus status; - var req = new TSExecuteStatementReq(sessionId, sql, statementId); - req.FetchSize = this.fetch_size; - try{ - var task = client.executeQueryStatementAsync(req); - task.Wait(); - resp = task.Result; - status = resp.Status; - } - catch(TException e){ - var err_msg = String.Format("could not execute query statement"); - throw new TException(err_msg, e); - } - if(util_functions.verify_success(status, SUCCESS_CODE) == -1){ - throw new TException("execute query failed", null); - } - var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client, sessionId, resp.QueryDataSet); - session_dataset.fetch_size = fetch_size; - return session_dataset; - - } - public int execute_non_query_statement(string sql){ - TSExecuteStatementResp resp; - TSStatus status; - var req = new TSExecuteStatementReq(sessionId, sql, statementId); - try{ - var task = client.executeUpdateStatementAsync(req); - task.Wait(); - resp = task.Result; - status = resp.Status; - } - catch(TException e){ - var err_msg = String.Format("execution of non-query statement failed"); - throw new TException(err_msg, e); - } - if(debug_mode){ - _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); - } - return util_functions.verify_success(status, SUCCESS_CODE); - } - } -} diff --git a/client/SessionPool.cs b/client/SessionPool.cs index 59665d7..bd77a5f 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -423,12 +423,7 @@ public async Task insert_records_async(List device_id, List data_type_values = new List(){}; - for(int i = 0; i < tablet.data_type_lst.Count(); i++){ - var data_type_value = (int)tablet.data_type_lst[i]; - data_type_values.Add(data_type_value); - } - return new TSInsertTabletReq(session_id, tablet.device_id, tablet.measurement_lst, tablet.get_binary_values(), tablet.get_binary_timestamps(), data_type_values, tablet.row_number); + return new TSInsertTabletReq(session_id, tablet.device_id, tablet.measurement_lst, tablet.get_binary_values(), tablet.get_binary_timestamps(), tablet.get_data_types(), tablet.row_number); } public async Task insert_tablet_async(Tablet tablet){ var client = client_lst.Take(); @@ -457,18 +452,14 @@ public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst, long s List timestamps_lst = new List(){}; List> type_lst = new List>(){}; List size_lst = new List(){}; - for(int i = 0; i < tablet_lst.Count(); i++){ - List data_type_values = new List(){}; - for(int j = 0;j < tablet_lst[i].data_type_lst.Count(); j++){ - var data_type_value = (int)tablet_lst[i].data_type_lst[j]; - data_type_values.Add(data_type_value); - } - device_id_lst.Add(tablet_lst[i].device_id); - measurements_lst.Add(tablet_lst[i].measurement_lst); - values_lst.Add(tablet_lst[i].get_binary_values()); - timestamps_lst.Add(tablet_lst[i].get_binary_timestamps()); + foreach(var tablet in tablet_lst){ + List data_type_values = tablet.get_data_types(); + device_id_lst.Add(tablet.device_id); + measurements_lst.Add(tablet.measurement_lst); + values_lst.Add(tablet.get_binary_values()); + timestamps_lst.Add(tablet.get_binary_timestamps()); type_lst.Add(data_type_values); - size_lst.Add(tablet_lst[i].row_number); + size_lst.Add(tablet.row_number); } return new TSInsertTabletsReq(session_id, device_id_lst, measurements_lst, values_lst, timestamps_lst, type_lst, size_lst); } @@ -489,44 +480,30 @@ public async Task insert_tablets_async(List tablet_lst){ } return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task insert_records_of_one_device_async(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ - var sorted = timestamp_lst.Select((x, index) => (timestamp: x, measurements:measurements_lst[index], data_types:data_types_lst[index], values:values_lst[index])).OrderBy(x => x.timestamp).ToList(); - List sorted_timestamp_lst = sorted.Select(x => x.timestamp).ToList(); - List> sorted_measurements_lst = sorted.Select(x => x.measurements).ToList(); - List> sorted_datatye_lst = sorted.Select(x => x.data_types).ToList(); - List> sorted_value_lst = sorted.Select(x => x.values).ToList(); - return await insert_records_of_one_device_sorted_async(device_id, sorted_timestamp_lst, sorted_measurements_lst, sorted_datatye_lst, sorted_value_lst); + public async Task insert_records_of_one_device_async(string device_id, List rowRecords){ + + var sorted_row_records = rowRecords.OrderBy(x => x.timestamp).ToList(); + return await insert_records_of_one_device_sorted_async(device_id, sorted_row_records); } - public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List timestamp_lst, List> measurements_lst, List> values_lst, List> data_types_lst, long session_id){ + public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List rowRecords, long session_id){ List binary_value_lst = new List(){}; - for(int i = 0; i < values_lst.Count(); i++){ - List data_type_values = data_types_lst[i]; - for(int j = 0;j < data_types_lst[i].Count(); j++){ - var data_type_value = (int)data_types_lst[i][j]; - } - if(values_lst[i].Count() != data_type_values.Count() || values_lst[i].Count() != measurements_lst[i].Count()){ - var err_msg = "insert records of one device error: deviceIds, times, measurementsList and valuesList's size should be equal"; - throw new TException(err_msg, null); - } - var value_in_bytes = util_functions.value_to_bytes(data_type_values, values_lst[i]); - binary_value_lst.Add(value_in_bytes); + foreach(var row in rowRecords){ + binary_value_lst.Add(row.ToBytes()); } + var measurements_lst = rowRecords.Select(x => x.measurements).ToList(); + var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); return new TSInsertRecordsOfOneDeviceReq(session_id, device_id, measurements_lst, binary_value_lst, timestamp_lst); } - public async Task insert_records_of_one_device_sorted_async(string device_id, List timestamp_lst, List> measurements_lst, List> data_types_lst, List> values_lst){ + public async Task insert_records_of_one_device_sorted_async(string device_id, List rowRecords){ var client = client_lst.Take(); - var size = timestamp_lst.Count(); - if(size != measurements_lst.Count() || size != data_types_lst.Count() || size != values_lst.Count()){ - var err_msg = "insert records of one device error: types, times, measurementsList and valuesList's size should be equal"; - throw new TException(err_msg, null); - } + var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); if(!util_functions.check_sorted(timestamp_lst)){ var err_msg = "insert records of one device error: timestamp not sorted"; throw new TException(err_msg, null); } - var req = gen_insert_records_of_one_device_request(device_id, timestamp_lst, measurements_lst, values_lst, data_types_lst, client.sessionId); + var req = gen_insert_records_of_one_device_request(device_id,rowRecords, client.sessionId); TSStatus status; try{ status = await client.client.insertRecordsOfOneDeviceAsync(req); diff --git a/client/Test.cs b/client/Test.cs index 597cd90..4f8f0db 100644 --- a/client/Test.cs +++ b/client/Test.cs @@ -5,14 +5,6 @@ namespace iotdb_client_csharp.client public class Test { static void Main(){ - // Unit Test - UnitTest unit_test = new UnitTest(); - unit_test.Test(); - - // session test - SessionTest session_test = new SessionTest(); - session_test.Test(); - // Session Async Test SessionPoolTest session_pool_test = new SessionPoolTest(); session_pool_test.Test(); diff --git a/client/tests/SessionTest.cs b/client/tests/SessionTest.cs deleted file mode 100644 index 677aa60..0000000 --- a/client/tests/SessionTest.cs +++ /dev/null @@ -1,901 +0,0 @@ -using System.ComponentModel.DataAnnotations; -using System.Collections.Generic; -using System; -using iotdb_client_csharp.client.utils; - -/* -group: root.97209_TEST_CSHARP_CLIENT_GROUP -timeseries: root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TSX; -*/ -namespace iotdb_client_csharp.client.test -{ - public class SessionTest - { - public string host = "localhost"; - public int port = 6667; - public string user = "root"; - public string passwd = "root"; - public int fetch_size = 5000; - public bool debug = false; - public void TestOpen(){ - Session session = new Session(host, port, user, passwd); - if(debug){ - session.open_debug_mode(); - } - session.open(false); - System.Diagnostics.Debug.Assert(session.is_open()); - session.close(); - Console.WriteLine("TestOpen Passed!"); - } - - public void TestClose(){ - var session = new Session(host, port, user, passwd); - session.open(false); - session.close(); - System.Diagnostics.Debug.Assert(!session.is_open()); - Console.WriteLine("TestClose Passed!"); - - } - public void TestSetAndDeleteStorageGroup(){ - // by Luzhan - var session = new Session(host, port, user, passwd); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); - System.Diagnostics.Debug.Assert(session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); - session.close(); - Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); - } - public void TestCreateTimeSeries(){ - // by Luzhan - var session = new Session(host, port, user, passwd); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3"), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4"), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(session.create_time_series(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.close(); - Console.WriteLine("TestCreateTimeSeries Passed!"); - } - public void TestCreateMultiTimeSeries(){ - // by Luzhan - var session = new Session(host, port, user, passwd); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; - List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; - List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; - List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; - System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.close(); - Console.WriteLine("TestCreateMultiTimeSeries Passed!"); - - } - public void TestDeleteTimeSeries(){ - // by Luzhan - var session = new Session(host, port, user, passwd); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; - List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; - List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; - List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; - System.Diagnostics.Debug.Assert(session.create_multi_time_series(ts_path_lst, data_type_lst, encoding_lst, compressor_lst)==0); - System.Diagnostics.Debug.Assert(session.delete_time_series(ts_path_lst)==0); - Console.WriteLine("TestDeleteTimeSeries Passed!"); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.close(); - } - public void TestDeleteStorageGroups(){ - // by Luzhan - var session = new Session(host, port, user, passwd); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - session.set_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); - List group_names = new List(){}; - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); - System.Diagnostics.Debug.Assert(session.delete_storage_groups(group_names)==0); - session.close(); - Console.WriteLine("TestDeleteStorageGroups Passed!"); - } - public void TestGetTimeZone(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session.is_open()); - var time_zone = session.get_time_zone(); - session.close(); - Console.WriteLine("TestGetTimeZone Passed!"); - } - public void TestInsertStrRecord(){ - var session = new Session(host, port); - int status = 0; - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List{"test_record", "test_record"}; - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, 1); - System.Diagnostics.Debug.Assert(status == 0); - - var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - for(int timestamp = 2; timestamp <=fetch_size * 4; timestamp++){ - session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); - } - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.close(); - Console.WriteLine("TestInsertStrRecord Passed!"); - } - public void TestInsertRecord(){ - var session = new Session(host, port); - int status = 0; - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true.ToString(), 123.ToString()}; - var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); - System.Diagnostics.Debug.Assert(status == 0); - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); - System.Diagnostics.Debug.Assert(status == 0); - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); - System.Diagnostics.Debug.Assert(status == 0); - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); - System.Diagnostics.Debug.Assert(status == 0); - var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - for(int timestamp = 5; timestamp <= fetch_size * 4; timestamp++){ - session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); - } - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.close(); - Console.WriteLine("TestInsertRecord Passed!"); - } - public void TestInsertRecords(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - List device_id = new List(){}; - for(int i = 0; i < 3; i++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - } - List> measurements_lst = new List>(){}; - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){"true", 123.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - List> datatype_lst = new List>(){}; - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); - List timestamp_lst = new List(){1, 2, 3}; - status = session.insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); - // System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine(status); - - // large data test - device_id = new List(){}; - values_lst = new List>(){}; - measurements_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; - for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - values_lst.Add(new List(){"true", 123.ToString()}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - timestamp_lst.Add(timestamp); - } - status = session.insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int record_count = fetch_size * 4; - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == record_count); - System.Diagnostics.Debug.Assert(status == 0); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestInsertRecords Passed!"); - } - public void TestTestInsertRecord(){ - var session = new Session(host, port); - int status = 0; - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true.ToString(), 123.ToString()}; - var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); - status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); - status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); - status = session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); - var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - // large data test - for(int timestamp = 5; timestamp <= fetch_size * 4; timestamp++){ - session.test_insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); - } - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == 0); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestTestInsertRecord Passed!"); - } - - public void TestTestInsertRecords(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - List device_id = new List(){}; - for(int i = 0; i < 3; i++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - } - List> measurements_lst = new List>(){}; - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){"true", 123.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - List> datatype_lst = new List>(){}; - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); - List timestamp_lst = new List(){1, 2, 3}; - - status = session.test_insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); - // System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - device_id = new List(){}; - values_lst = new List>(){}; - measurements_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; - for(int timestamp = 4;timestamp <= fetch_size * 4;timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - values_lst.Add(new List(){"true", 123.ToString()}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - timestamp_lst.Add(timestamp); - } - status = session.test_insert_records(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == 0); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestTestInsertRecords Passed!"); - } - public void TestInsertRecordsOfOneDevice(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List> measurements_lst = new List>(){}; - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){"true", 123.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - List> datatype_lst = new List>(){}; - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); - List timestamp_lst = new List(){1, 2, 3}; - - status = session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); - System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - measurements_lst = new List>(){}; - values_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; - for(int timestamp = 4; timestamp <= fetch_size * 4;timestamp++){ - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); - timestamp_lst.Add(timestamp); - } - session.insert_records_of_one_device(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); - } - public void TestCheckTimeSeriesExists(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - var ifExist_1 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); - var ifExist_2 = session.check_time_series_exists("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); - System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestCheckTimeSeriesExists Passed!"); - } - public void TestSetTimeZone(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - session.set_time_zone("GMT+8:00"); - System.Diagnostics.Debug.Assert(session.get_time_zone() == "GMT+8:00"); - session.close(); - Console.WriteLine("TestSetTimeZone Passed!"); - } - public void TestDeleteData(){ - var session = new Session(host, port); - int status = 0; - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = session.create_time_series("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true.ToString(), 123.ToString()}; - var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); - System.Diagnostics.Debug.Assert(status == 0); - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); - System.Diagnostics.Debug.Assert(status == 0); - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); - System.Diagnostics.Debug.Assert(status == 0); - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); - System.Diagnostics.Debug.Assert(status == 0); - var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"}; - session.delete_data(ts_path_lst, 2 ,3); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestDeleteData Passed!"); - } - public void TestNonSql(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - var res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestNonSql Passed"); - } - public void TestSqlQuery(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - session.execute_non_query_statement("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - session.execute_non_query_statement("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - - var res = session.execute_query_statement("show timeseries root"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); - res = session.execute_query_statement("show devices"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SHOW DEVICES sql passed!"); - res = session.execute_query_statement("COUNT TIMESERIES root"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("COUNT TIMESERIES root sql Passed"); - res=session.execute_query_statement("select * from root.ln.wf01 where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - Console.WriteLine("SELECT sql Passed"); - res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("SELECT sql Passed"); - - - } - public void TestInsertTablet(){ - var session = new Session(host, port); - session.open(false); - if(debug){ - session.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List measurement_lst = new List{"TS1", "TS2", "TS3"}; - List datatype_lst = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - List> value_lst = new List>{new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}; - List timestamp_lst = new List{2, 1, 3}; - var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); - status = session.insert_tablet(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - // large data test - value_lst = new List>(){}; - timestamp_lst = new List(){}; - - for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ - timestamp_lst.Add(timestamp); - value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); - } - tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); - long start_ms= (DateTime.Now.Ticks / 10000); - status = session.insert_tablet(tablet); - long end_ms = (DateTime.Now.Ticks / 10000); - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestInsertTablet Passed!"); - } - public void TestTestInsertTablet(){ - var session = new Session(host, port); - session.open(false); - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List measurement_lst = new List{"TS1", "TS2", "TS3"}; - List datatype_lst = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - List> value_lst = new List>{new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}; - List timestamp_lst = new List{2, 1, 3}; - var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); - status = session.test_insert_tablet(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - value_lst = new List>(){}; - timestamp_lst = new List(){}; - for (int timestamp = 4; timestamp <= fetch_size * 4; timestamp++){ - timestamp_lst.Add(timestamp); - value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); - } - tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); - status = session.test_insert_tablet(tablet); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == 0); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestTestInsertTablet Passed!"); - } - public void TestInsertTablets(){ - var session = new Session(host, port); - session.open(false); - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; - List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; - List> datatypes_lst = new List>(){new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }, new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }}; - List>> values_lst = new List>>(){new List>(){new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}, new List>(){new List{"iotdb_2", true.ToString(), 1.ToString()}, new List{"c#_2", false.ToString(), 2.ToString()}, new List{"client_2", true.ToString(), 3.ToString()}}}; - List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; - List tablets = new List(){}; - for(int i = 0;i < device_id.Count; i++){ - var tablet = new Tablet(device_id[i], measurements_lst[i], datatypes_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - status = session.insert_tablets(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - device_id = new List(){}; - measurements_lst = new List>(){}; - values_lst = new List>>(){}; - datatypes_lst = new List>(){}; - timestamp_lst = new List>(){}; - tablets = new List(){}; - for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); - values_lst.Add(new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}); - datatypes_lst.Add(new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}); - timestamp_lst.Add(new List(){timestamp}); - Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); - tablets.Add(tablet); - } - session.insert_tablets(tablets); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == fetch_size * 4); - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - session.close(); - Console.WriteLine("TestInsertTablets Passed!"); - } - public void TestTestInsertTablets(){ - var session = new Session(host, port); - session.open(false); - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; - List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; - List> datatypes_lst = new List>(){new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }, new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }}; - List>> values_lst = new List>>(){new List>(){new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}, new List>(){new List{"iotdb_2", true.ToString(), 1.ToString()}, new List{"c#_2", false.ToString(), 2.ToString()}, new List{"client_2", true.ToString(), 3.ToString()}}}; - List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; - List tablets = new List(){}; - for(int i = 0;i < device_id.Count; i++){ - var tablet = new Tablet(device_id[i], measurements_lst[i], datatypes_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - status = session.test_insert_tablets(tablets); - System.Diagnostics.Debug.Assert(status == 0); - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - - // large data test - device_id = new List(){}; - measurements_lst = new List>(){}; - values_lst = new List>>(){}; - datatypes_lst = new List>(){}; - timestamp_lst = new List>(){}; - tablets = new List(){}; - for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - measurements_lst.Add(new List(){"TS1", "TS2", "TS3"}); - values_lst.Add(new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}); - datatypes_lst.Add(new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}); - timestamp_lst.Add(new List(){timestamp}); - Tablet tablet = new Tablet(device_id[timestamp-4], measurements_lst[timestamp-4], datatypes_lst[timestamp-4], values_lst[timestamp-4], timestamp_lst[timestamp-4]); - tablets.Add(tablet); - } - session.test_insert_tablets(tablets); - res = session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - System.Diagnostics.Debug.Assert(res_count == 0); - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session.close(); - Console.WriteLine("TestTestInsertTablets Passed!"); - } - - void TestLargeData(){ - var session = new Session(host, port, user, passwd, fetch_size); - session.open(false); - System.Diagnostics.Debug.Assert(session.is_open()); - int status = 0; - status = session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - int record_inserted_count = fetch_size * 4; - for(var timestamp = 0; timestamp < record_inserted_count; timestamp++){ - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List{"test_record", "test_record"}; - status = session.insert_record("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); - System.Diagnostics.Debug.Assert(status == 0); - } - var res=session.execute_query_statement("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - - session.delete_storage_group("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - System.Diagnostics.Debug.Assert(record_inserted_count == res_count); - session.close(); - Console.WriteLine("TestTestInsertTablet Passed!"); - } - public void Test(){ - TestOpen(); - TestClose(); - TestSetAndDeleteStorageGroup(); - TestCreateTimeSeries(); - TestDeleteTimeSeries(); - TestCreateMultiTimeSeries(); - TestDeleteStorageGroups(); - TestGetTimeZone(); - TestInsertStrRecord(); - TestInsertRecord(); - TestTestInsertRecord(); - TestTestInsertRecords(); - TestInsertRecordsOfOneDevice(); - TestCheckTimeSeriesExists(); - TestSetTimeZone(); - TestDeleteData(); - TestNonSql(); - TestSqlQuery(); - TestInsertRecords(); - TestInsertTablet(); - TestTestInsertTablet(); - TestInsertTablets(); - TestTestInsertTablets(); - TestLargeData(); - } - } - -} \ No newline at end of file diff --git a/client/tests/UnitTest.cs b/client/tests/UnitTest.cs deleted file mode 100644 index 11034fa..0000000 --- a/client/tests/UnitTest.cs +++ /dev/null @@ -1,107 +0,0 @@ -using System.Collections.Generic; -using iotdb_client_csharp.client.utils; -using System; - - -namespace iotdb_client_csharp.client.test -{ - public class UnitTest - { - public string host = "81.69.18.71"; - public int port = 8888; - public string user = "root"; - public string passwd = "root"; - public int fetch_size = 5000; - public bool debug = false; - - public UnitTest(){} - public void Test(){ - TestField(); - TestRowRecord(); - TestSessionDataSet(); - } - public void TestField(){ - double double_val_set = 12.3, double_val_get; - int int_val_get; - string str_val_set = "12", str_val_get; - bool bool_val_get, bool_val_set; - float float_val_get; - Int64 long_val_get; - - - // set double - Field field = new Field(TSDataType.DOUBLE); - field.set(double_val_set); - double_val_get = (double)field.get(); - System.Diagnostics.Debug.Assert(double_val_get == double_val_set); - int_val_get = field.get_int(); - System.Diagnostics.Debug.Assert(int_val_get == Convert.ToInt32(double_val_set)); - str_val_get = field.get_str(); - System.Diagnostics.Debug.Assert(str_val_get == double_val_set.ToString()); - bool_val_get = field.get_bool(); - System.Diagnostics.Debug.Assert(bool_val_get == Convert.ToBoolean(double_val_set)); - float_val_get = field.get_float(); - System.Diagnostics.Debug.Assert(float_val_get == Convert.ToSingle(double_val_set)); - long_val_get = field.get_long(); - System.Diagnostics.Debug.Assert(long_val_get == Convert.ToInt64(double_val_set)); - - // Set Str value - field = new Field(TSDataType.TEXT); - field.set(str_val_set); - double_val_get = field.get_double(); - System.Diagnostics.Debug.Assert(double_val_get == double.Parse(str_val_set)); - int_val_get = field.get_int(); - System.Diagnostics.Debug.Assert(int_val_get == Int32.Parse(str_val_set)); - bool_val_get = field.get_bool(); - System.Diagnostics.Debug.Assert(bool_val_get); - float_val_get = field.get_float(); - System.Diagnostics.Debug.Assert(float_val_get == float.Parse(str_val_set)); - long_val_get = field.get_long(); - System.Diagnostics.Debug.Assert(long_val_get == Int64.Parse(str_val_set)); - - // set true - field = new Field(TSDataType.BOOLEAN); - bool_val_set = true; - field.set(bool_val_set); - double_val_get = field.get_double(); - System.Diagnostics.Debug.Assert(double_val_get == Convert.ToDouble(bool_val_set)); - - System.Console.WriteLine("Field Test Passed!"); - } - public void TestRowRecord(){ - var save_datetime = DateTime.Now.ToLocalTime(); - TimeSpan ts = save_datetime - DateTime.UnixEpoch.ToLocalTime(); - var row_reord = new RowRecord(Convert.ToInt64(ts.TotalMilliseconds), new List{}); - - // test append - row_reord.append(new Field(TSDataType.DOUBLE, 12.3)); - row_reord.append(new Field(TSDataType.BOOLEAN, false)); - row_reord.append(new Field(TSDataType.FLOAT, 12.3)); - row_reord.append(new Field(TSDataType.INT64, 1234)); - row_reord.append(new Field(TSDataType.TEXT, "TEST")); - - // test indexing - var field_get = row_reord[0]; - System.Diagnostics.Debug.Assert(field_get.type == TSDataType.DOUBLE); - System.Diagnostics.Debug.Assert((double)field_get.val == 12.3); - - // test indexing - row_reord[0] = new Field(TSDataType.BOOLEAN, true); - field_get = row_reord[0]; - System.Diagnostics.Debug.Assert(field_get.type == TSDataType.BOOLEAN); - System.Diagnostics.Debug.Assert((bool)field_get.val == true); - - // test datetime - var datetime = row_reord.get_date_time(); - Console.WriteLine(datetime.ToString() == save_datetime.ToString()); - System.Console.WriteLine("RowRecord Test Passed!"); - } - - public void TestSessionDataSet(){ - - } - - - - } -} \ No newline at end of file diff --git a/client/utils/RowRecord.cs b/client/utils/RowRecord.cs index 8f21368..e55801f 100644 --- a/client/utils/RowRecord.cs +++ b/client/utils/RowRecord.cs @@ -29,7 +29,7 @@ public override string ToString() str += measurement.ToString(); } str += "\n"; - + str += timestamp.ToString(); foreach(var row_value in values){ str += "\t\t"; @@ -37,6 +37,61 @@ public override string ToString() } return str; } + public List get_datatypes(){ + List data_type_values = new List(){}; + foreach(var value in values){ + var value_type = value.GetType(); + if(value_type.Equals(typeof(bool))){ + data_type_values.Add((int)TSDataType.BOOLEAN); + } + else if(value_type.Equals(typeof(Int32))){ + data_type_values.Add((int)TSDataType.INT32); + } + else if(value_type.Equals(typeof(Int64))){ + data_type_values.Add((int)TSDataType.INT64); + } + else if(value_type.Equals(typeof(float))){ + data_type_values.Add((int)TSDataType.FLOAT); + } + else if(value_type.Equals(typeof(double))){ + data_type_values.Add((int)TSDataType.DOUBLE); + } + else if(value_type.Equals(typeof(string))){ + data_type_values.Add((int)TSDataType.TEXT); + } + } + return data_type_values; + + } + public byte[] ToBytes(){ + ByteBuffer buffer = new ByteBuffer(values.Count * 8); + foreach(var value in values){ + if(value.GetType().Equals(typeof(bool))){ + buffer.add_bool((bool)value); + } + else if((value.GetType().Equals(typeof(Int32)))){ + buffer.add_int((int)value); + } + else if((value.GetType().Equals(typeof(Int64)))){ + buffer.add_long((long)value); + } + else if((value.GetType().Equals(typeof(double)))){ + buffer.add_double((double)value); + } + else if((value.GetType().Equals(typeof(float)))){ + buffer.add_float((float)value); + } + else if((value.GetType().Equals(typeof(string)))){ + buffer.add_str((string)value); + } + else{ + var message = String.Format("Unsupported data type:{0}",value.GetType().ToString()); + throw new TException(message, null); + } + } + var buf = buffer.get_buffer(); + return buf; + } diff --git a/client/utils/Tablet.cs b/client/utils/Tablet.cs index 729807d..de6d768 100644 --- a/client/utils/Tablet.cs +++ b/client/utils/Tablet.cs @@ -22,13 +22,12 @@ public class Tablet { public string device_id{get;} public List measurement_lst{get;} - private List timestamp_lst; - private List> value_lst; - + public List timestamp_lst; + public List> value_lst; public int row_number{get;} - private int col_number; + public int col_number; - private Utils util_functions = new Utils(); + public Utils util_functions = new Utils(); public Tablet(string device_id, List measurement_lst, List> value_lst, List timestamp_lst){ if(timestamp_lst.Count != value_lst.Count){ @@ -57,6 +56,31 @@ public byte[] get_binary_timestamps(){ } return buffer.get_buffer(); } + public List get_data_types(){ + List data_type_values = new List(){}; + foreach(var value in value_lst[0]){ + var value_type = value.GetType(); + if(value_type.Equals(typeof(bool))){ + data_type_values.Add((int)TSDataType.BOOLEAN); + } + else if(value_type.Equals(typeof(Int32))){ + data_type_values.Add((int)TSDataType.INT32); + } + else if(value_type.Equals(typeof(Int64))){ + data_type_values.Add((int)TSDataType.INT64); + } + else if(value_type.Equals(typeof(float))){ + data_type_values.Add((int)TSDataType.FLOAT); + } + else if(value_type.Equals(typeof(double))){ + data_type_values.Add((int)TSDataType.DOUBLE); + } + else if(value_type.Equals(typeof(string))){ + data_type_values.Add((int)TSDataType.TEXT); + } + } + return data_type_values; + } public int estimate_buffer_size(){ var estimate_size = 0; // estimate one row size diff --git a/client/utils/Utils.cs b/client/utils/Utils.cs index bb77513..c50cf07 100644 --- a/client/utils/Utils.cs +++ b/client/utils/Utils.cs @@ -61,8 +61,7 @@ public byte[] value_to_bytes(List data_types, List values){ } public byte[] value_to_bytes(List values){ // todo by Luzhan - - ByteBuffer buffer = new ByteBuffer(values.Count); + ByteBuffer buffer = new ByteBuffer(values.Count * 8); foreach(var value in values){ if(value.GetType().Equals(typeof(bool))){ buffer.add_bool((bool)value); From 4c206d837fb37695aba0d49ff3a439c0c8dc1d87 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 22:50:21 +0800 Subject: [PATCH 098/214] remove one init method --- client/utils/SessionDataSet.cs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index 8d437cb..da78743 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -46,12 +46,6 @@ public SessionDataSet(string sql, List column_name_lst, List col init(sql, column_name_lst, column_type_lst, column_name_index, query_id, clientQueue, query_data_set); } - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, TSIService.Client client, long session_id, TSQueryDataSet query_data_set){ - this.client = client; - this.session_id = session_id; - this.clientQueue = null; - init(sql, column_name_lst, column_type_lst, column_name_index, query_id, clientQueue, query_data_set); - } public void init(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, ConcurentClientQueue clientQueue, TSQueryDataSet query_data_set){ this.sql = sql; this.query_dataset = query_data_set; From a9f1b17a99519b794a177e9986581dd58d4124b1 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 22:55:48 +0800 Subject: [PATCH 099/214] use async method for all --- client/SessionPool.cs | 35 +++++++++++++---------------------- 1 file changed, 13 insertions(+), 22 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index bd77a5f..e95fd17 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -84,24 +84,23 @@ public void close_debug_mode(){ this.debug_mode = false; } - public void open(bool enableRPCCompression){ + public async Task open(bool enableRPCCompression){ client_lst = new ConcurentClientQueue(); for(int index = 0; index < pool_size; index++){ - client_lst.Add(create_and_open(enableRPCCompression)); + client_lst.Add(await create_and_open(enableRPCCompression)); } } public bool is_open(){ return !is_close; } - public void close(){ + public async Task close(){ if(is_close){ return; } foreach(var client in client_lst.client_queue.AsEnumerable()){ var req = new TSCloseSessionReq(client.sessionId); try{ - var task = client.client.closeSessionAsync(req); - task.Wait(); + await client.client.closeSessionAsync(req); } catch(TException e){ var message = String.Format("Error occurs when closing session at server. Maybe server is down"); @@ -115,15 +114,14 @@ public void close(){ } } } - public void set_time_zone(string zoneId){ + public async Task set_time_zone(string zoneId){ this.zoneId = zoneId; foreach(var client in client_lst.client_queue.AsEnumerable()){ var req = new TSSetTimeZoneReq(client.sessionId, zoneId); try{ - var task = client.client.setTimeZoneAsync(req); - task.Wait(); + var resp = await client.client.setTimeZoneAsync(req); if(debug_mode){ - _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, task.Result.Message); + _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, resp.Message); } } catch(TException e ){ @@ -132,16 +130,14 @@ public void set_time_zone(string zoneId){ } } } - public string get_time_zone(){ + public async Task get_time_zone(){ TSGetTimeZoneResp resp; if(zoneId != ""){ return zoneId; } var client = client_lst.Take(); try{ - var task = client.client.getTimeZoneAsync(client.sessionId); - task.Wait(); - resp = task.Result; + resp = await client.client.getTimeZoneAsync(client.sessionId); } catch(TException e){ client_lst.Add(client); @@ -152,7 +148,7 @@ public string get_time_zone(){ return resp.TimeZone; } - public Client create_and_open(bool enableRPCCompression){ + public async Task create_and_open(bool enableRPCCompression){ TcpClient tcp_client = new TcpClient(this.host, this.port); TSIService.Client client; long sessionId, statementId; @@ -161,8 +157,7 @@ public Client create_and_open(bool enableRPCCompression){ //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ - var task = transport.OpenAsync(new CancellationToken()); - task.Wait(); + await transport.OpenAsync(new CancellationToken()); } catch(TTransportException){ throw; @@ -177,9 +172,7 @@ public Client create_and_open(bool enableRPCCompression){ open_req.Username = username; open_req.Password = password; try{ - var task = client.openSessionAsync(open_req); - task.Wait(); - var open_resp = task.Result; + var open_resp = await client.openSessionAsync(open_req); if(open_resp.ServerProtocolVersion != protocol_version){ var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); throw new TException(message, null); @@ -188,9 +181,7 @@ public Client create_and_open(bool enableRPCCompression){ throw new TException("Protocol not supported", null); } sessionId = open_resp.SessionId; - var statement_task = client.requestStatementIdAsync(sessionId); - statement_task.Wait(); - statementId = statement_task.Result; + statementId = await client.requestStatementIdAsync(sessionId); } catch(Exception){ transport.Close(); From d11f12fbace6e15f1a5f6ba5c15a1b64ce5b0f5a Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 23:05:10 +0800 Subject: [PATCH 100/214] change init function --- client/SessionPool.cs | 4 +--- client/utils/SessionDataSet.cs | 35 ++++++++++++++-------------------- 2 files changed, 15 insertions(+), 24 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index e95fd17..9ba001e 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -510,8 +510,6 @@ public async Task insert_records_of_one_device_sorted_async(string device_i client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - - public async Task execute_query_statement_async(string sql){ TSExecuteStatementResp resp; TSStatus status; @@ -532,7 +530,7 @@ public async Task execute_query_statement_async(string sql){ throw new TException("execute query failed", null); } client_lst.Add(client); - var session_dataset = new SessionDataSet(sql, resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, resp.QueryId, client_lst, resp.QueryDataSet); + var session_dataset = new SessionDataSet(sql, resp, client_lst); session_dataset.fetch_size = fetch_size; return session_dataset; } diff --git a/client/utils/SessionDataSet.cs b/client/utils/SessionDataSet.cs index da78743..dab176c 100644 --- a/client/utils/SessionDataSet.cs +++ b/client/utils/SessionDataSet.cs @@ -10,7 +10,6 @@ public class SessionDataSet private long query_id, session_id; private string sql; - private NLog.Logger _logger; List column_name_lst; Dictionary column_name_index_map; Dictionary duplicate_location; @@ -41,21 +40,15 @@ private int default_timeout{ private bool has_catched_result; private RowRecord cached_row_record; - public SessionDataSet(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, ConcurentClientQueue clientQueue, TSQueryDataSet query_data_set){ + public SessionDataSet(string sql, TSExecuteStatementResp resp,ConcurentClientQueue clientQueue){ this.clientQueue = clientQueue; - init(sql, column_name_lst, column_type_lst, column_name_index, query_id, clientQueue, query_data_set); - - } - public void init(string sql, List column_name_lst, List column_type_lst, Dictionary column_name_index, long query_id, ConcurentClientQueue clientQueue, TSQueryDataSet query_data_set){ this.sql = sql; - this.query_dataset = query_data_set; - this.query_id = query_id; - this._logger = NLog.LogManager.GetCurrentClassLogger(); - this.current_bitmap = new byte[column_name_lst.Count]; - this.column_size = column_name_lst.Count; + this.query_dataset = resp.QueryDataSet; + this.query_id = resp.QueryId; + this.column_size = resp.Columns.Count; + this.current_bitmap = new byte[this.column_size]; this.column_name_lst = new List{}; - this.column_size = column_name_lst.Count; - this.time_buffer = new ByteBuffer(query_data_set.Time); + this.time_buffer = new ByteBuffer(query_dataset.Time); this.column_name_index_map = new Dictionary{}; this.column_type_lst = new List{}; this.duplicate_location = new Dictionary{}; @@ -64,20 +57,20 @@ public void init(string sql, List column_name_lst, List column_t // some internal variable this.has_catched_result = false; this.row_index = 0; - if(column_name_index != null){ - for(var index = 0; index < column_name_lst.Count; index++){ + if(resp.ColumnNameIndexMap != null){ + for(var index = 0; index < resp.Columns.Count; index++){ this.column_name_lst.Add(""); this.column_type_lst.Add(""); } for(var index = 0; index < column_name_lst.Count; index++){ var name = column_name_lst[index]; - this.column_name_lst[column_name_index[name]] = name; - this.column_type_lst[column_name_index[name]] = column_type_lst[index]; + this.column_name_lst[resp.ColumnNameIndexMap[name]] = name; + this.column_type_lst[resp.ColumnNameIndexMap[name]] = column_type_lst[index]; } }else{ - this.column_name_lst = column_name_lst; - this.column_type_lst = column_type_lst; + this.column_name_lst = resp.Columns; + this.column_type_lst = resp.DataTypeList; } for(int index = 0; index < this.column_name_lst.Count; index++){ @@ -87,8 +80,8 @@ public void init(string sql, List column_name_lst, List column_t }else{ this.column_name_index_map[column_name] = index; } - this.value_buffer_lst.Add(new ByteBuffer(query_data_set.ValueList[index])); - this.bitmap_buffer_lst.Add(new ByteBuffer(query_data_set.BitmapList[index])); + this.value_buffer_lst.Add(new ByteBuffer(this.query_dataset.ValueList[index])); + this.bitmap_buffer_lst.Add(new ByteBuffer(this.query_dataset.BitmapList[index])); } } From d73ee21d632a8cf42d518ce9ecbe17aa37767f34 Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 23:07:48 +0800 Subject: [PATCH 101/214] reorder all codes --- client/utils/{ => Concurent}/Client.cs | 0 client/utils/{ => Concurent}/ConcurentClientQueue.cs | 0 client/utils/{ => DataStructure}/RowRecord.cs | 0 client/utils/{ => DataStructure}/SessionDataSet.cs | 0 client/utils/{ => DataStructure}/Tablet.cs | 0 client/utils/{ => Utils}/ByteBuffer.cs | 0 client/utils/{ => Utils}/IoTDBConstants.cs | 0 client/utils/{ => Utils}/Utils.cs | 0 8 files changed, 0 insertions(+), 0 deletions(-) rename client/utils/{ => Concurent}/Client.cs (100%) rename client/utils/{ => Concurent}/ConcurentClientQueue.cs (100%) rename client/utils/{ => DataStructure}/RowRecord.cs (100%) rename client/utils/{ => DataStructure}/SessionDataSet.cs (100%) rename client/utils/{ => DataStructure}/Tablet.cs (100%) rename client/utils/{ => Utils}/ByteBuffer.cs (100%) rename client/utils/{ => Utils}/IoTDBConstants.cs (100%) rename client/utils/{ => Utils}/Utils.cs (100%) diff --git a/client/utils/Client.cs b/client/utils/Concurent/Client.cs similarity index 100% rename from client/utils/Client.cs rename to client/utils/Concurent/Client.cs diff --git a/client/utils/ConcurentClientQueue.cs b/client/utils/Concurent/ConcurentClientQueue.cs similarity index 100% rename from client/utils/ConcurentClientQueue.cs rename to client/utils/Concurent/ConcurentClientQueue.cs diff --git a/client/utils/RowRecord.cs b/client/utils/DataStructure/RowRecord.cs similarity index 100% rename from client/utils/RowRecord.cs rename to client/utils/DataStructure/RowRecord.cs diff --git a/client/utils/SessionDataSet.cs b/client/utils/DataStructure/SessionDataSet.cs similarity index 100% rename from client/utils/SessionDataSet.cs rename to client/utils/DataStructure/SessionDataSet.cs diff --git a/client/utils/Tablet.cs b/client/utils/DataStructure/Tablet.cs similarity index 100% rename from client/utils/Tablet.cs rename to client/utils/DataStructure/Tablet.cs diff --git a/client/utils/ByteBuffer.cs b/client/utils/Utils/ByteBuffer.cs similarity index 100% rename from client/utils/ByteBuffer.cs rename to client/utils/Utils/ByteBuffer.cs diff --git a/client/utils/IoTDBConstants.cs b/client/utils/Utils/IoTDBConstants.cs similarity index 100% rename from client/utils/IoTDBConstants.cs rename to client/utils/Utils/IoTDBConstants.cs diff --git a/client/utils/Utils.cs b/client/utils/Utils/Utils.cs similarity index 100% rename from client/utils/Utils.cs rename to client/utils/Utils/Utils.cs From 48bf3b1f2d2b7e70557311e43411384fccaf25ab Mon Sep 17 00:00:00 2001 From: eedalong Date: Mon, 26 Apr 2021 23:11:25 +0800 Subject: [PATCH 102/214] change insert record --- client/SessionPool.cs | 27 ++++++++------------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index 9ba001e..319d07d 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -373,31 +373,20 @@ public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List< } return new TSInsertStringRecordReq(session_id, device_id, measurements, values, timestamp); } - public TSInsertRecordsReq gen_insert_records_req(List device_id, List> measurements_lst, List> values_lst, List timestamp_lst, long session_id){ + public TSInsertRecordsReq gen_insert_records_req(List device_id, List rowRecords,long session_id){ //TODO - if(device_id.Count() != timestamp_lst.Count() || timestamp_lst.Count() != values_lst.Count()){ - var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); - throw new TException(err_msg,null); - } - + var measurement_lst = rowRecords.Select(x => x.measurements).ToList(); + var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); List values_lst_in_bytes = new List(); - for(int i = 0;i < values_lst.Count(); i++){ - var values = values_lst[i]; - var measurements = measurements_lst[i]; - if(values.Count() != measurements.Count()){ - var err_msg = String.Format("deviceIds, times, measurementsList and valueList's size should be equal"); - throw new TException(err_msg, null); - } - var values_in_bytes = util_functions.value_to_bytes(values); - values_lst_in_bytes.Add(values_in_bytes); + foreach(var row in rowRecords){ + values_lst_in_bytes.Add(row.ToBytes()); } - - return new TSInsertRecordsReq(session_id, device_id, measurements_lst, values_lst_in_bytes, timestamp_lst); + return new TSInsertRecordsReq(session_id, device_id, measurement_lst, values_lst_in_bytes, timestamp_lst); } - public async Task insert_records_async(List device_id, List> measurements_lst, List> values_lst, List timestamp_lst){ + public async Task insert_records_async(List device_id,List rowRecords){ var client = client_lst.Take(); - var req = gen_insert_records_req(device_id, measurements_lst, values_lst, timestamp_lst, client.sessionId); + var req = gen_insert_records_req(device_id, rowRecords, client.sessionId); TSStatus status; try{ status = await client.client.insertRecordsAsync(req); From da869a6046057d1e0066d8fc5ceeb71136ecb316 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Tue, 27 Apr 2021 19:42:01 +0800 Subject: [PATCH 103/214] add interfaces and tests --- client/SessionPool.cs | 73 +++++ client/tests/SessioonPoolTest.cs | 464 ++++++++++++++++++++++--------- 2 files changed, 411 insertions(+), 126 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index 319d07d..a123b6b 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -499,6 +499,79 @@ public async Task insert_records_of_one_device_sorted_async(string device_i client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } + public async Task test_insert_record_async(string device_id, RowRecord record){ + var client = client_lst.Take(); + var req = gen_insert_record_req(device_id, record,client.sessionId); + TSStatus status; + try{ + status = await client.client.testInsertRecordAsync(req); + } + catch(TException e){ + client_lst.Add(client); + Console.WriteLine(e); + var err_msg = String.Format("Record insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); + } + client_lst.Add(client); + + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task test_insert_records_async(List device_id,List rowRecords){ + var client = client_lst.Take(); + var req = gen_insert_records_req(device_id, rowRecords, client.sessionId); + TSStatus status; + try{ + status = await client.client.testInsertRecordsAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("Multiple records insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task test_insert_tablet_async(Tablet tablet){ + var client = client_lst.Take(); + var req = gen_insert_tablet_req(tablet, client.sessionId); + TSStatus status; + try{ + status = await client.client.testInsertTabletAsync(req); + } + catch(TException e){ + client_lst.Add(client); + var err_msg = String.Format("Tablet insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); + } + client_lst.Add(client); + + return util_functions.verify_success(status, SUCCESS_CODE); + } + public async Task test_insert_tablets_async(List tablet_lst){ + var client = client_lst.Take(); + var req = gen_insert_tablets_req(tablet_lst, client.sessionId); + TSStatus status; + try{ + status = await client.client.testInsertTabletsAsync(req); + } + catch(TException e){ + var err_msg = String.Format("Multiple tablets insertion failed"); + throw new TException(err_msg, e); + } + if(debug_mode){ + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } + return util_functions.verify_success(status, SUCCESS_CODE); + } public async Task execute_query_statement_async(string sql){ TSExecuteStatementResp resp; TSStatus status; diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 8ae0b83..6167604 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -10,6 +10,8 @@ namespace iotdb_client_csharp.client.test public class SessionPoolTest { public string host = "localhost"; + // public string host = "81.69.18.71"; + // public int port = 8888; public int port = 6667; public string user = "root"; public string passwd = "root"; @@ -20,25 +22,25 @@ public class SessionPoolTest public void Test(){ - var task = TestInsertRecord(); - task.Wait(); + // var task = TestInsertRecord(); + // task.Wait(); - //task = TestCreateMultiTimeSeries(); - //task.Wait(); - //task = TestGetTimeZone(); - //task.Wait(); - //task = TestInsertStrRecord(); - //task.Wait(); + var task = TestCreateMultiTimeSeries(); + task.Wait(); + task = TestGetTimeZone(); + task.Wait(); + task = TestInsertStrRecord(); + task.Wait(); //task = TestInsertRecords(); //task.Wait(); //task = TestInsertRecordsOfOneDevice(); //task.Wait(); - task = TestInsertTablet(); - task.Wait(); - /* - task = TestInsertTablets(); - task.Wait(); + // task = TestInsertTablet(); + // task.Wait(); + + // task = TestInsertTablets(); + // task.Wait(); task = TestSetAndDeleteStorageGroup(); task.Wait(); task = TestCreateTimeSeries(); @@ -49,20 +51,20 @@ public void Test(){ task.Wait(); task = TestSetTimeZone(); task.Wait(); - task = TestDeleteData(); - task.Wait(); + // task = TestDeleteData(); + // task.Wait(); task = TestNonSql(); task.Wait(); task = TestSqlQuery(); task.Wait(); - */ + } public async Task TestInsertRecord(){ var session_pool = new SessionPool(host, port, pool_size); int status; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -77,25 +79,25 @@ public async Task TestInsertRecord(){ status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true.ToString(), 123.ToString()}; - var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + var values = new List{"test_text", true, (Int32)123}; List> tasks = new List>(); long start_ms= (DateTime.Now.Ticks / 10000); for(int timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++){ - var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, timestamp); + RowRecord rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); long end_ms = (DateTime.Now.Ticks / 10000); Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestInsertRecordAsync Passed"); } public async Task TestCreateMultiTimeSeries(){ // by Luzhan var session_pool = new SessionPool(host, port, user, passwd, pool_size); - session_pool.open(false); + await session_pool.open(false); int status = 0; if(debug){ session_pool.open_debug_mode(); @@ -109,12 +111,12 @@ public async Task TestCreateMultiTimeSeries(){ System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestCreateMultiTimeSeries Passed!"); } public async Task TestDeleteTimeSeries(){ var session_pool = new SessionPool(host, port, user, passwd, pool_size); - session_pool.open(false); + await session_pool.open(false); int status = 0; if(debug){ session_pool.open_debug_mode(); @@ -130,25 +132,25 @@ public async Task TestDeleteTimeSeries(){ System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestDeleteTimeSeries Passed!"); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session_pool.close(); + await session_pool.close(); } public async Task TestGetTimeZone(){ var session_pool = new SessionPool(host, port, pool_size); - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session_pool.is_open()); - var time_zone = session_pool.get_time_zone(); + var time_zone = await session_pool.get_time_zone(); System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestGetTimeZone Passed!"); } public async Task TestInsertStrRecord(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -160,8 +162,9 @@ public async Task TestInsertStrRecord(){ System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List{"test_record", "test_record"}; - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, 1); + var values = new List{"test_record", "test_record"}; + RowRecord rowRecord = new RowRecord(1, values, measures); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); @@ -169,11 +172,16 @@ public async Task TestInsertStrRecord(){ while(res.has_next()){ Console.WriteLine(res.next()); } + Console.WriteLine("小规模执行完毕"); var tasks = new List>(); // large data test + List rowRecords = new List(){}; + for(int timestamp = 2; timestamp <=fetch_size * processed_size; timestamp++){ + rowRecords.Add(new RowRecord(timestamp, values, measures)); + } for(int timestamp = 2; timestamp <=fetch_size * processed_size; timestamp++){ - var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, timestamp); + var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp-2]); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); @@ -185,12 +193,12 @@ public async Task TestInsertStrRecord(){ } System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestInsertStrRecord Passed!"); } public async Task TestInsertRecords(){ var session_pool = new SessionPool(host, port, pool_size); - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -218,16 +226,17 @@ public async Task TestInsertRecords(){ measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){"true", 123.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - List> datatype_lst = new List>(){}; - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){true, (Int32)123}); + values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1}); + values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1, (float)10001.1, "test_record"}); List timestamp_lst = new List(){1, 2, 3}; - status = await session_pool.insert_records_async(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst); + List rowRecords = new List(){}; + for(int i = 0; i < 3;i++){ + RowRecord rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + status = await session_pool.insert_records_async(device_id, rowRecords); // System.Diagnostics.Debug.Assert(status == 0); var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); @@ -238,24 +247,15 @@ public async Task TestInsertRecords(){ // large data test device_id = new List(){}; - values_lst = new List>(){}; - measurements_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; + rowRecords = new List(){}; var tasks = new List>(); for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - values_lst.Add(new List(){"true", 123.ToString()}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - timestamp_lst.Add(timestamp); + rowRecords.Add(new RowRecord(timestamp, new List(){true, (Int32)123}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.insert_records_async(device_id, measurements_lst, values_lst, datatype_lst, timestamp_lst)); + tasks.Add(session_pool.insert_records_async(device_id, rowRecords)); device_id = new List(){}; - values_lst = new List>(){}; - measurements_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; + rowRecords = new List(){}; } } Task.WaitAll(tasks.ToArray()); @@ -271,12 +271,12 @@ public async Task TestInsertRecords(){ System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestInsertRecords Passed!"); } public async Task TestInsertRecordsOfOneDevice(){ var session_pool = new SessionPool(host, port, pool_size); - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -294,16 +294,17 @@ public async Task TestInsertRecordsOfOneDevice(){ measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){"true", 123.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString()}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - List> datatype_lst = new List>(){}; - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){true, (Int32)123}); + values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1}); + values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1, (float)10001.1, "test_record"}); List timestamp_lst = new List(){1, 2, 3}; - status = await session_pool.insert_records_of_one_device_async(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst); + List rowRecords = new List(){}; + for(int i = 0; i < 3;i++){ + RowRecord rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + status = await session_pool.insert_records_of_one_device_async(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); @@ -312,25 +313,14 @@ public async Task TestInsertRecordsOfOneDevice(){ } // large data test - measurements_lst = new List>(){}; - values_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; + rowRecords = new List(){}; var tasks = new List>(); - for(int timestamp = 4; timestamp <= fetch_size * processed_size;timestamp++){ - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - values_lst.Add(new List(){"true", 123.ToString(), 456.ToString(), 1.1.ToString(), 10001.1.ToString(), "test_record"}); - datatype_lst.Add(new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, TSDataType.TEXT}); - timestamp_lst.Add(timestamp); + for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ + rowRecords.Add(new RowRecord(timestamp, new List(){true, (Int32)123}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.insert_records_of_one_device_async(device_id, timestamp_lst, measurements_lst, datatype_lst, values_lst)); - measurements_lst = new List>(){}; - values_lst = new List>(){}; - datatype_lst = new List>(){}; - timestamp_lst = new List(){}; - + tasks.Add(session_pool.insert_records_of_one_device_async(device_id, rowRecords)); + rowRecords = new List(){}; } - } Task.WaitAll(tasks.ToArray()); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); @@ -342,13 +332,13 @@ public async Task TestInsertRecordsOfOneDevice(){ System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); } public async Task TestInsertTablet(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -356,10 +346,9 @@ public async Task TestInsertTablet(){ await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; List measurement_lst = new List{"TS1", "TS2", "TS3"}; - List datatype_lst = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - List> value_lst = new List>{new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}; + List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; List timestamp_lst = new List{2, 1, 3}; - var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); status = await session_pool.insert_tablet_async(tablet); System.Diagnostics.Debug.Assert(status == 0); var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); @@ -368,17 +357,17 @@ public async Task TestInsertTablet(){ Console.WriteLine(res.next()); } // large data test - value_lst = new List>(){}; + value_lst = new List>(){}; timestamp_lst = new List(){}; var tasks = new List>(); long start_ms= (DateTime.Now.Ticks / 10000); for (int timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++){ timestamp_lst.Add(timestamp); - value_lst.Add(new List(){"iotdb", true.ToString(), timestamp.ToString()}); + value_lst.Add(new List(){"iotdb", true, (Int32)timestamp}); if(timestamp % (fetch_size / 32) == 0){ - tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); tasks.Add(session_pool.insert_tablet_async(tablet)); - value_lst = new List>(){}; + value_lst = new List>(){}; timestamp_lst = new List(){}; } @@ -397,13 +386,13 @@ public async Task TestInsertTablet(){ System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestInsertTablet Passed!"); } public async Task TestInsertTablets(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -411,12 +400,11 @@ public async Task TestInsertTablets(){ await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; - List> datatypes_lst = new List>(){new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }, new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }}; - List>> values_lst = new List>>(){new List>(){new List{"iotdb", true.ToString(), 12.ToString()}, new List{"c#", false.ToString(), 13.ToString()}, new List{"client", true.ToString(), 14.ToString()}}, new List>(){new List{"iotdb_2", true.ToString(), 1.ToString()}, new List{"c#_2", false.ToString(), 2.ToString()}, new List{"client_2", true.ToString(), 3.ToString()}}}; + List>> values_lst = new List>>(){new List>(){new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}, new List>(){new List{"iotdb_2", true, (Int32)1}, new List{"c#_2", false, (Int32)2}, new List{"client_2", true, (Int32)3}}}; List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; List tablets = new List(){}; for(int i = 0;i < device_id.Count; i++){ - var tablet = new Tablet(device_id[i], measurements_lst[i], datatypes_lst[i], values_lst[i], timestamp_lst[i]); + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); tablets.Add(tablet); } status = await session_pool.insert_tablets_async(tablets); @@ -438,10 +426,9 @@ public async Task TestInsertTablets(){ for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; var local_measurements = new List(){"TS1", "TS2", "TS3"}; - var local_value = new List>(){new List(){"iotdb", true.ToString(), timestamp.ToString()}}; - var local_datatypes = new List(){TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; + var local_value = new List>(){new List(){"iotdb", true, (Int32)timestamp}}; var local_timestamp = new List{timestamp}; - Tablet tablet = new Tablet(local_device_id, local_measurements, local_datatypes, local_value, local_timestamp); + Tablet tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); tablets.Add(tablet); if(timestamp % fetch_size == 0){ tasks.Add(session_pool.insert_tablets_async(tablets)); @@ -458,25 +445,25 @@ public async Task TestInsertTablets(){ System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestInsertTablets Passed!"); } public async Task TestSetAndDeleteStorageGroup(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); System.Diagnostics.Debug.Assert(await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } public async Task TestCreateTimeSeries(){ var session_pool = new SessionPool(host, port, pool_size); - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -488,12 +475,12 @@ public async Task TestCreateTimeSeries(){ System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestCreateTimeSeries Passed!"); } public async Task TestDeleteStorageGroups(){ var session_pool = new SessionPool(host, port, pool_size); - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -508,13 +495,13 @@ public async Task TestDeleteStorageGroups(){ group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); System.Diagnostics.Debug.Assert(await session_pool.delete_storage_groups_async(group_names)==0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestDeleteStorageGroups Passed!"); } public async Task TestCheckTimeSeriesExists(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -526,26 +513,26 @@ public async Task TestCheckTimeSeriesExists(){ System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestCheckTimeSeriesExists Passed!"); } public async Task TestSetTimeZone(){ var session_pool = new SessionPool(host, port, pool_size); - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session_pool.is_open()); - session_pool.set_time_zone("GMT+8:00"); - System.Diagnostics.Debug.Assert(session_pool.get_time_zone() == "GMT+8:00"); - session_pool.close(); + await session_pool.set_time_zone("GMT+8:00"); + System.Diagnostics.Debug.Assert(await session_pool.get_time_zone() == "GMT+8:00"); + await session_pool.close(); Console.WriteLine("TestSetTimeZone Passed!"); } public async Task TestDeleteData(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -560,15 +547,14 @@ public async Task TestDeleteData(){ System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true.ToString(), 123.ToString()}; - var types = new List{TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}; - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 1); + var values = new List{"test_text", true, (Int32)123}; + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 2); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 3); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", measures, values, types, 4); + status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); @@ -584,13 +570,238 @@ public async Task TestDeleteData(){ } status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestDeleteData Passed!"); } + public async Task TestTestInsertRecord(){ + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status== 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List{"test_text", true, (Int32)123}; + List> tasks = new List>(); + long start_ms= (DateTime.Now.Ticks / 10000); + for(int timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++){ + RowRecord rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.test_insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + tasks.Add(task); + } + Task.WaitAll(tasks.ToArray()); + long end_ms = (DateTime.Now.Ticks / 10000); + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.close(); + Console.WriteLine("TestTestInsertRecordAsync Passed"); + } + public async Task TestTestInsertRecords(){ + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + int status = 0; + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + List device_id = new List(){}; + for(int i = 0; i < 3; i++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + } + List> measurements_lst = new List>(){}; + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); + measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); + List> values_lst = new List>(){}; + values_lst.Add(new List(){true, (Int32)123}); + values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1}); + values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1, (float)10001.1, "test_record"}); + List timestamp_lst = new List(){1, 2, 3}; + List rowRecords = new List(){}; + for(int i = 0; i < 3;i++){ + RowRecord rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + status = await session_pool.test_insert_records_async(device_id, rowRecords); + // System.Diagnostics.Debug.Assert(status == 0); + var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + Console.WriteLine(status); + + // large data test + device_id = new List(){}; + rowRecords = new List(){}; + var tasks = new List>(); + for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + rowRecords.Add(new RowRecord(timestamp, new List(){true, (Int32)123}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + if(timestamp % fetch_size == 0){ + tasks.Add(session_pool.test_insert_records_async(device_id, rowRecords)); + device_id = new List(){}; + rowRecords = new List(){}; + } + } + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int record_count = fetch_size * processed_size; + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == 0); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestTestInsertRecords Passed!"); + } + public async Task TestTestInsertTablet(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + await session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + List measurement_lst = new List{"TS1", "TS2", "TS3"}; + List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; + List timestamp_lst = new List{2, 1, 3}; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.test_insert_tablet_async(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + // large data test + value_lst = new List>(){}; + timestamp_lst = new List(){}; + var tasks = new List>(); + long start_ms= (DateTime.Now.Ticks / 10000); + for (int timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++){ + timestamp_lst.Add(timestamp); + value_lst.Add(new List(){"iotdb", true, (Int32)timestamp}); + if(timestamp % (fetch_size / 32) == 0){ + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.test_insert_tablet_async(tablet)); + value_lst = new List>(){}; + timestamp_lst = new List(){}; + + } + } + Task.WaitAll(tasks.ToArray()); + long end_ms = (DateTime.Now.Ticks / 10000); + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestTestInsertTablet Passed!"); + } + public async Task TestTestInsertTablets(){ + var session_pool = new SessionPool(host, port, pool_size); + int status = 0; + await session_pool.open(false); + if(debug){ + session_pool.open_debug_mode(); + } + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; + List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; + List>> values_lst = new List>>(){new List>(){new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}, new List>(){new List{"iotdb_2", true, (Int32)1}, new List{"c#_2", false, (Int32)2}, new List{"client_2", true, (Int32)3}}}; + List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; + List tablets = new List(){}; + for(int i = 0;i < device_id.Count; i++){ + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + status = await session_pool.test_insert_tablets_async(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res=await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + res.show_table_names(); + while(res.has_next()){ + Console.WriteLine(res.next()); + } + + // large data test + + var tasks = new List>(); + for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ + var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; + var local_measurements = new List(){"TS1", "TS2", "TS3"}; + var local_value = new List>(){new List(){"iotdb", true, (Int32)timestamp}}; + var local_timestamp = new List{timestamp}; + Tablet tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if(timestamp % fetch_size == 0){ + tasks.Add(session_pool.test_insert_tablets_async(tablets)); + } + } + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + res.show_table_names(); + int res_count = 0; + while(res.has_next()){ + res.next(); + res_count += 1; + } + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestTestInsertTablets Passed!"); + } + public async Task TestNonSql(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -599,7 +810,8 @@ public async Task TestNonSql(){ await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + status = await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + System.Diagnostics.Debug.Assert(status == 0); await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); @@ -611,13 +823,13 @@ public async Task TestNonSql(){ } status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("TestNonSql Passed"); } public async Task TestSqlQuery(){ var session_pool = new SessionPool(host, port, pool_size); int status = 0; - session_pool.open(false); + await session_pool.open(false); if(debug){ session_pool.open_debug_mode(); } @@ -663,7 +875,7 @@ public async Task TestSqlQuery(){ } status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - session_pool.close(); + await session_pool.close(); Console.WriteLine("SELECT sql Passed"); } From 2bf58141da76bc52734bcc595972b205de7e9fc4 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 27 Apr 2021 22:07:23 +0800 Subject: [PATCH 104/214] fix test code --- client/SessionPool.cs | 12 ++-- client/tests/SessioonPoolTest.cs | 25 ++++---- client/utils/DataStructure/RowRecord.cs | 1 + client/utils/DataStructure/SessionDataSet.cs | 20 ++---- client/utils/Utils/Utils.cs | 65 +------------------- 5 files changed, 26 insertions(+), 97 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index a123b6b..aac48db 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -229,6 +229,8 @@ public async Task create_time_series_async(string ts_path, TSDataType data_ if(debug_mode){ _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); } + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); } public async Task delete_storage_group_async(string group_name){ @@ -340,15 +342,11 @@ public async Task delete_data_async(List ts_path_lst, long start_ti client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - - public TSInsertRecordReq gen_insert_record_req(string device_id, RowRecord record, long session_id){ - var values_in_bytes = util_functions.value_to_bytes(record.values); - return new TSInsertRecordReq(session_id, device_id, record.measurements, values_in_bytes, record.timestamp); - } public async Task insert_record_async(string device_id, RowRecord record){ // TBD by Luzhan var client = client_lst.Take(); - var req = gen_insert_record_req(device_id, record,client.sessionId); + var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), record.timestamp); + Console.WriteLine(req); TSStatus status; try{ status = await client.client.insertRecordAsync(req); @@ -501,7 +499,7 @@ public async Task insert_records_of_one_device_sorted_async(string device_i } public async Task test_insert_record_async(string device_id, RowRecord record){ var client = client_lst.Take(); - var req = gen_insert_record_req(device_id, record,client.sessionId); + var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), record.timestamp); TSStatus status; try{ status = await client.client.testInsertRecordAsync(req); diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 6167604..a523f26 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -17,19 +17,19 @@ public class SessionPoolTest public string passwd = "root"; public int fetch_size = 40000; public int processed_size = 4; - public bool debug = false; - int pool_size = 32; + public bool debug = true; + int pool_size = 1; public void Test(){ // var task = TestInsertRecord(); // task.Wait(); - var task = TestCreateMultiTimeSeries(); - task.Wait(); - task = TestGetTimeZone(); - task.Wait(); - task = TestInsertStrRecord(); + //var task = TestCreateMultiTimeSeries(); + //task.Wait(); + //task = TestGetTimeZone(); + //task.Wait(); + var task = TestInsertStrRecord(); task.Wait(); //task = TestInsertRecords(); //task.Wait(); @@ -41,6 +41,7 @@ public void Test(){ // task = TestInsertTablets(); // task.Wait(); + /* task = TestSetAndDeleteStorageGroup(); task.Wait(); task = TestCreateTimeSeries(); @@ -57,6 +58,7 @@ public void Test(){ task.Wait(); task = TestSqlQuery(); task.Wait(); + */ } @@ -157,16 +159,17 @@ public async Task TestInsertStrRecord(){ System.Diagnostics.Debug.Assert(session_pool.is_open()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List{"test_record", "test_record"}; + var values = new List{(Int32)1, (Int32)2}; RowRecord rowRecord = new RowRecord(1, values, measures); status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); System.Diagnostics.Debug.Assert(status == 0); - + return; var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); res.show_table_names(); while(res.has_next()){ diff --git a/client/utils/DataStructure/RowRecord.cs b/client/utils/DataStructure/RowRecord.cs index e55801f..7f074ac 100644 --- a/client/utils/DataStructure/RowRecord.cs +++ b/client/utils/DataStructure/RowRecord.cs @@ -90,6 +90,7 @@ public byte[] ToBytes(){ } } var buf = buffer.get_buffer(); + Console.WriteLine(buf.Length); return buf; } diff --git a/client/utils/DataStructure/SessionDataSet.cs b/client/utils/DataStructure/SessionDataSet.cs index dab176c..cf10163 100644 --- a/client/utils/DataStructure/SessionDataSet.cs +++ b/client/utils/DataStructure/SessionDataSet.cs @@ -7,7 +7,7 @@ namespace iotdb_client_csharp.client.utils { public class SessionDataSet { - private long query_id, session_id; + private long query_id; private string sql; List column_name_lst; @@ -20,8 +20,6 @@ public class SessionDataSet List value_buffer_lst, bitmap_buffer_lst; ByteBuffer time_buffer; ConcurentClientQueue clientQueue; - TSIService.Client client; - private string TIMESTAMP_STR{ get{return "Time";} } @@ -201,21 +199,11 @@ private bool is_null(int loc, int row_index){ } private bool fetch_results(){ row_index = 0; - TSIService.Client local_client; - long local_session_id; - Client my_client = new Client(); - if(clientQueue == null){ - local_client = client; - local_session_id = session_id; - }else{ - my_client = clientQueue.Take(); - local_client = my_client.client; - local_session_id = my_client.sessionId; - } - var req = new TSFetchResultsReq(local_session_id, sql, fetch_size, query_id, true); + var my_client = clientQueue.Take(); + var req = new TSFetchResultsReq(my_client.sessionId, sql, fetch_size, query_id, true); req.Timeout = default_timeout; try{ - var task = local_client.fetchResultsAsync(req); + var task = my_client.client.fetchResultsAsync(req); task.Wait(); var resp = task.Result; if(resp.HasResultSet){ diff --git a/client/utils/Utils/Utils.cs b/client/utils/Utils/Utils.cs index c50cf07..fbf10fc 100644 --- a/client/utils/Utils/Utils.cs +++ b/client/utils/Utils/Utils.cs @@ -24,70 +24,9 @@ public int verify_success(TSStatus status, int SUCCESS_CODE){ } if (status.Code == SUCCESS_CODE){ return 0; - } - return -1; - } - public byte[] value_to_bytes(List data_types, List values){ - - ByteBuffer buffer = new ByteBuffer(values.Count); - for(int i = 0;i < data_types.Count; i++){ - buffer.add_char((char)data_types[i]); - switch(data_types[i]){ - case TSDataType.BOOLEAN: - buffer.add_bool(bool.Parse(values[i])); - break; - case TSDataType.INT32: - buffer.add_int(int.Parse(values[i])); - break; - case TSDataType.INT64: - buffer.add_long(long.Parse(values[i])); - break; - case TSDataType.FLOAT: - buffer.add_float(float.Parse(values[i])); - break; - case TSDataType.DOUBLE: - buffer.add_double(double.Parse(values[i])); - break; - case TSDataType.TEXT: - buffer.add_str(values[i]); - break; - default: - var message = String.Format("Unsupported data type:{0}",data_types[i]); - throw new TException(message, null); - } } - var buf = buffer.get_buffer(); - return buf; - } - public byte[] value_to_bytes(List values){ - // todo by Luzhan - ByteBuffer buffer = new ByteBuffer(values.Count * 8); - foreach(var value in values){ - if(value.GetType().Equals(typeof(bool))){ - buffer.add_bool((bool)value); - } - else if((value.GetType().Equals(typeof(Int32)))){ - - } - else if((value.GetType().Equals(typeof(Int64)))){ - - } - else if((value.GetType().Equals(typeof(double)))){ - - } - else if((value.GetType().Equals(typeof(float)))){ - - } - else if((value.GetType().Equals(typeof(string)))){ - - } - else{ - var message = String.Format("Unsupported data type:{0}",value.GetType().ToString()); - throw new TException(message, null); - } - } - var buf = buffer.get_buffer(); - return buf; + Console.WriteLine(status); + return -1; } } } \ No newline at end of file From d341e049e8a7d86359879cf9f2f85acc5305d546 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 27 Apr 2021 22:40:33 +0800 Subject: [PATCH 105/214] fix test code --- client/SessionPool.cs | 2 +- client/tests/SessioonPoolTest.cs | 19 +++++++++---------- client/utils/DataStructure/RowRecord.cs | 7 ++++++- client/utils/DataStructure/SessionDataSet.cs | 11 +++++++---- client/utils/Utils/Utils.cs | 1 - 5 files changed, 23 insertions(+), 17 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index aac48db..a783104 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -346,7 +346,6 @@ public async Task insert_record_async(string device_id, RowRecord record){ // TBD by Luzhan var client = client_lst.Take(); var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), record.timestamp); - Console.WriteLine(req); TSStatus status; try{ status = await client.client.insertRecordAsync(req); @@ -590,6 +589,7 @@ public async Task execute_query_statement_async(string sql){ throw new TException("execute query failed", null); } client_lst.Add(client); + var session_dataset = new SessionDataSet(sql, resp, client_lst); session_dataset.fetch_size = fetch_size; return session_dataset; diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index a523f26..0a962e5 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -15,9 +15,9 @@ public class SessionPoolTest public int port = 6667; public string user = "root"; public string passwd = "root"; - public int fetch_size = 40000; + public int fetch_size = 500; public int processed_size = 4; - public bool debug = true; + public bool debug = false; int pool_size = 1; public void Test(){ @@ -31,13 +31,13 @@ public void Test(){ //task.Wait(); var task = TestInsertStrRecord(); task.Wait(); - //task = TestInsertRecords(); - //task.Wait(); - //task = TestInsertRecordsOfOneDevice(); - //task.Wait(); + task = TestInsertRecords(); + task.Wait(); + task = TestInsertRecordsOfOneDevice(); + task.Wait(); - // task = TestInsertTablet(); - // task.Wait(); + task = TestInsertTablet(); + task.Wait(); // task = TestInsertTablets(); // task.Wait(); @@ -169,7 +169,6 @@ public async Task TestInsertStrRecord(){ RowRecord rowRecord = new RowRecord(1, values, measures); status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); System.Diagnostics.Debug.Assert(status == 0); - return; var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); res.show_table_names(); while(res.has_next()){ @@ -240,7 +239,7 @@ public async Task TestInsertRecords(){ rowRecords.Add(rowRecord); } status = await session_pool.insert_records_async(device_id, rowRecords); - // System.Diagnostics.Debug.Assert(status == 0); + System.Diagnostics.Debug.Assert(status == 0); var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ diff --git a/client/utils/DataStructure/RowRecord.cs b/client/utils/DataStructure/RowRecord.cs index 7f074ac..4d2b043 100644 --- a/client/utils/DataStructure/RowRecord.cs +++ b/client/utils/DataStructure/RowRecord.cs @@ -67,21 +67,27 @@ public byte[] ToBytes(){ ByteBuffer buffer = new ByteBuffer(values.Count * 8); foreach(var value in values){ if(value.GetType().Equals(typeof(bool))){ + buffer.add_char((char)TSDataType.BOOLEAN); buffer.add_bool((bool)value); } else if((value.GetType().Equals(typeof(Int32)))){ + buffer.add_char((char)TSDataType.INT32); buffer.add_int((int)value); } else if((value.GetType().Equals(typeof(Int64)))){ + buffer.add_char((char)TSDataType.INT64); buffer.add_long((long)value); } else if((value.GetType().Equals(typeof(double)))){ + buffer.add_char((char)TSDataType.DOUBLE); buffer.add_double((double)value); } else if((value.GetType().Equals(typeof(float)))){ + buffer.add_char((char)TSDataType.FLOAT); buffer.add_float((float)value); } else if((value.GetType().Equals(typeof(string)))){ + buffer.add_char((char)TSDataType.TEXT); buffer.add_str((string)value); } else{ @@ -90,7 +96,6 @@ public byte[] ToBytes(){ } } var buf = buffer.get_buffer(); - Console.WriteLine(buf.Length); return buf; } diff --git a/client/utils/DataStructure/SessionDataSet.cs b/client/utils/DataStructure/SessionDataSet.cs index cf10163..fe293be 100644 --- a/client/utils/DataStructure/SessionDataSet.cs +++ b/client/utils/DataStructure/SessionDataSet.cs @@ -60,10 +60,10 @@ public SessionDataSet(string sql, TSExecuteStatementResp resp,ConcurentClientQue this.column_name_lst.Add(""); this.column_type_lst.Add(""); } - for(var index = 0; index < column_name_lst.Count; index++){ - var name = column_name_lst[index]; + for(var index = 0; index < resp.Columns.Count; index++){ + var name = resp.Columns[index]; this.column_name_lst[resp.ColumnNameIndexMap[name]] = name; - this.column_type_lst[resp.ColumnNameIndexMap[name]] = column_type_lst[index]; + this.column_type_lst[resp.ColumnNameIndexMap[name]] = resp.DataTypeList[index]; } }else{ @@ -155,6 +155,9 @@ public void construct_one_row(){ object local_field; if(!is_null(i, row_index)){ TSDataType column_data_type = get_data_type_from_str(column_type_lst[i]); + + + switch(column_data_type){ case TSDataType.BOOLEAN: local_field = column_value_buffer.get_bool(); @@ -183,7 +186,7 @@ public void construct_one_row(){ } else{ local_field = null; - field_lst.Add(local_field); + field_lst.Add("NULL"); } } } diff --git a/client/utils/Utils/Utils.cs b/client/utils/Utils/Utils.cs index fbf10fc..e32e8e3 100644 --- a/client/utils/Utils/Utils.cs +++ b/client/utils/Utils/Utils.cs @@ -25,7 +25,6 @@ public int verify_success(TSStatus status, int SUCCESS_CODE){ if (status.Code == SUCCESS_CODE){ return 0; } - Console.WriteLine(status); return -1; } } From 4765c03b78df9fdeab86e820a665bff3d9ad54f6 Mon Sep 17 00:00:00 2001 From: eedalong Date: Tue, 27 Apr 2021 22:44:29 +0800 Subject: [PATCH 106/214] fix code --- client/SessionPool.cs | 4 ++++ client/tests/SessioonPoolTest.cs | 30 +++++++++++++++--------------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index a783104..989c606 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -449,12 +449,14 @@ public async Task insert_tablets_async(List tablet_lst){ } catch(TException e){ + client_lst.Add(client); var err_msg = String.Format("Multiple tablets insertion failed"); throw new TException(err_msg, e); } if(debug_mode){ _logger.Info("insert multiple tablets, message: {0}", status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } public async Task insert_records_of_one_device_async(string device_id, List rowRecords){ @@ -561,12 +563,14 @@ public async Task test_insert_tablets_async(List tablet_lst){ status = await client.client.testInsertTabletsAsync(req); } catch(TException e){ + client_lst.Add(client); var err_msg = String.Format("Multiple tablets insertion failed"); throw new TException(err_msg, e); } if(debug_mode){ _logger.Info("insert multiple tablets, message: {0}", status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } public async Task execute_query_statement_async(string sql){ diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 0a962e5..7da86e7 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -22,26 +22,26 @@ public class SessionPoolTest public void Test(){ - // var task = TestInsertRecord(); - // task.Wait(); + var task = TestInsertRecord(); + task.Wait(); - //var task = TestCreateMultiTimeSeries(); - //task.Wait(); - //task = TestGetTimeZone(); - //task.Wait(); - var task = TestInsertStrRecord(); + task = TestCreateMultiTimeSeries(); + task.Wait(); + task = TestGetTimeZone(); + task.Wait(); + task = TestInsertStrRecord(); task.Wait(); task = TestInsertRecords(); task.Wait(); task = TestInsertRecordsOfOneDevice(); task.Wait(); - task = TestInsertTablet(); - task.Wait(); + //task = TestInsertTablet(); + //task.Wait(); + + task = TestInsertTablets(); + task.Wait(); - // task = TestInsertTablets(); - // task.Wait(); - /* task = TestSetAndDeleteStorageGroup(); task.Wait(); task = TestCreateTimeSeries(); @@ -52,13 +52,13 @@ public void Test(){ task.Wait(); task = TestSetTimeZone(); task.Wait(); - // task = TestDeleteData(); - // task.Wait(); + task = TestDeleteData(); + task.Wait(); task = TestNonSql(); task.Wait(); task = TestSqlQuery(); task.Wait(); - */ + } From 972aadd1928ca3cfcab45ac675dc8b137c8bd8a2 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 28 Apr 2021 08:14:30 +0800 Subject: [PATCH 107/214] finish all unittest --- client/SessionPool.cs | 1 - client/tests/SessioonPoolTest.cs | 71 ++++++++++++------- client/utils/Concurent/Client.cs | 2 - .../utils/Concurent/ConcurentClientQueue.cs | 2 - client/utils/DataStructure/SessionDataSet.cs | 18 ++++- client/utils/Utils/ByteBuffer.cs | 2 - client/utils/Utils/Utils.cs | 2 - 7 files changed, 61 insertions(+), 37 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index 989c606..c1eec3d 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -10,7 +10,6 @@ using NLog; using System.Net.Sockets; using System.Threading.Tasks; -using System.Collections.Concurrent; namespace iotdb_client_csharp.client{ public class SessionPool{ private string username, password, zoneId, host; diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 7da86e7..a0fb98c 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -1,31 +1,30 @@ using System.Collections.Generic; using System; using iotdb_client_csharp.client.utils; -using Thrift; using System.Threading.Tasks; -using System.Threading; namespace iotdb_client_csharp.client.test { public class SessionPoolTest { public string host = "localhost"; - // public string host = "81.69.18.71"; - // public int port = 8888; - public int port = 6667; + //public string host = "81.69.18.71"; + public int port = 8888; + //public int port = 6667; public string user = "root"; public string passwd = "root"; - public int fetch_size = 500; + public int fetch_size = 5000; public int processed_size = 4; public bool debug = false; - int pool_size = 1; + int pool_size = 4; public void Test(){ + Task task; + /* + task = TestInsertRecord(); + task.Wait(); - var task = TestInsertRecord(); - task.Wait(); - - task = TestCreateMultiTimeSeries(); + task = TestCreateMultiTimeSeries(); task.Wait(); task = TestGetTimeZone(); task.Wait(); @@ -35,13 +34,12 @@ public void Test(){ task.Wait(); task = TestInsertRecordsOfOneDevice(); task.Wait(); - - //task = TestInsertTablet(); - //task.Wait(); - - task = TestInsertTablets(); - task.Wait(); - + */ + task = TestInsertTablet(); + task.Wait(); + /* + task = TestInsertTablets(); + task.Wait(); task = TestSetAndDeleteStorageGroup(); task.Wait(); task = TestCreateTimeSeries(); @@ -58,8 +56,7 @@ public void Test(){ task.Wait(); task = TestSqlQuery(); task.Wait(); - - + */ } @@ -174,6 +171,7 @@ public async Task TestInsertStrRecord(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); Console.WriteLine("小规模执行完毕"); var tasks = new List>(); @@ -193,6 +191,7 @@ public async Task TestInsertStrRecord(){ res.next(); res_count += 1; } + await res.close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.close(); @@ -245,6 +244,7 @@ public async Task TestInsertRecords(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); Console.WriteLine(status); // large data test @@ -269,6 +269,7 @@ public async Task TestInsertRecords(){ res.next(); res_count += 1; } + await res.close(); System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -313,7 +314,7 @@ public async Task TestInsertRecordsOfOneDevice(){ while(res.has_next()){ Console.WriteLine(res.next()); } - + await res.close(); // large data test rowRecords = new List(){}; var tasks = new List>(); @@ -331,6 +332,7 @@ public async Task TestInsertRecordsOfOneDevice(){ res.next(); res_count += 1; } + await res.close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -349,7 +351,7 @@ public async Task TestInsertTablet(){ string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; List measurement_lst = new List{"TS1", "TS2", "TS3"}; List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; - List timestamp_lst = new List{2, 1, 3}; + List timestamp_lst = new List{1, 2, 3}; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); status = await session_pool.insert_tablet_async(tablet); System.Diagnostics.Debug.Assert(status == 0); @@ -358,6 +360,7 @@ public async Task TestInsertTablet(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); // large data test value_lst = new List>(){}; timestamp_lst = new List(){}; @@ -366,7 +369,7 @@ public async Task TestInsertTablet(){ for (int timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++){ timestamp_lst.Add(timestamp); value_lst.Add(new List(){"iotdb", true, (Int32)timestamp}); - if(timestamp % (fetch_size / 32) == 0){ + if(timestamp % fetch_size == 0){ tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); tasks.Add(session_pool.insert_tablet_async(tablet)); value_lst = new List>(){}; @@ -384,7 +387,7 @@ public async Task TestInsertTablet(){ res.next(); res_count += 1; } - + await res.close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -416,11 +419,13 @@ public async Task TestInsertTablets(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); // large data test @@ -444,6 +449,7 @@ public async Task TestInsertTablets(){ res.next(); res_count += 1; } + await res.close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -563,6 +569,7 @@ public async Task TestDeleteData(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"}; await session_pool.delete_data_async(ts_path_lst, 2 ,3); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); @@ -570,6 +577,7 @@ public async Task TestDeleteData(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.close(); @@ -655,7 +663,7 @@ public async Task TestTestInsertRecords(){ while(res.has_next()){ Console.WriteLine(res.next()); } - Console.WriteLine(status); + await res.close(); // large data test device_id = new List(){}; @@ -679,6 +687,7 @@ public async Task TestTestInsertRecords(){ res.next(); res_count += 1; } + await res.close(); System.Diagnostics.Debug.Assert(res_count == 0); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -707,6 +716,7 @@ public async Task TestTestInsertTablet(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); // large data test value_lst = new List>(){}; timestamp_lst = new List(){}; @@ -733,7 +743,7 @@ public async Task TestTestInsertTablet(){ res.next(); res_count += 1; } - + await res.close(); System.Diagnostics.Debug.Assert(res_count == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -765,11 +775,13 @@ public async Task TestTestInsertTablets(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); // large data test @@ -793,6 +805,7 @@ public async Task TestTestInsertTablets(){ res.next(); res_count += 1; } + await res.close(); System.Diagnostics.Debug.Assert(res_count == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -823,6 +836,7 @@ public async Task TestNonSql(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.close(); @@ -851,30 +865,35 @@ public async Task TestSqlQuery(){ while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); res =await session_pool.execute_query_statement_async("show devices"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); Console.WriteLine("SHOW DEVICES sql passed!"); res = await session_pool.execute_query_statement_async("COUNT TIMESERIES root"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); Console.WriteLine("COUNT TIMESERIES root sql Passed"); res= await session_pool.execute_query_statement_async("select * from root.ln.wf01 where time<10"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); Console.WriteLine("SELECT sql Passed"); res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while(res.has_next()){ Console.WriteLine(res.next()); } + await res.close(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.close(); diff --git a/client/utils/Concurent/Client.cs b/client/utils/Concurent/Client.cs index c8ad7f2..5273394 100644 --- a/client/utils/Concurent/Client.cs +++ b/client/utils/Concurent/Client.cs @@ -1,5 +1,3 @@ -using Thrift; -using Thrift.Protocol; using Thrift.Transport; diff --git a/client/utils/Concurent/ConcurentClientQueue.cs b/client/utils/Concurent/ConcurentClientQueue.cs index fa9e35d..281fb16 100644 --- a/client/utils/Concurent/ConcurentClientQueue.cs +++ b/client/utils/Concurent/ConcurentClientQueue.cs @@ -1,8 +1,6 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Threading; -using System; -using iotdb_client_csharp.client.utils; namespace iotdb_client_csharp.client.utils { diff --git a/client/utils/DataStructure/SessionDataSet.cs b/client/utils/DataStructure/SessionDataSet.cs index fe293be..5616254 100644 --- a/client/utils/DataStructure/SessionDataSet.cs +++ b/client/utils/DataStructure/SessionDataSet.cs @@ -1,8 +1,7 @@ using System; using System.Collections.Generic; using Thrift; -using System.Linq; -using NLog; +using System.Threading.Tasks; namespace iotdb_client_csharp.client.utils { public class SessionDataSet @@ -37,6 +36,7 @@ private int default_timeout{ private bool has_catched_result; private RowRecord cached_row_record; + private bool is_closed = false; public SessionDataSet(string sql, TSExecuteStatementResp resp,ConcurentClientQueue clientQueue){ this.clientQueue = clientQueue; @@ -235,6 +235,20 @@ private bool fetch_results(){ throw new TException(message, e); } } + public async Task close(){ + if(!is_closed){ + var my_client = clientQueue.Take(); + var req = new TSCloseOperationReq(sessionId:my_client.sessionId){QueryId=query_id}; + try{ + await my_client.client.closeOperationAsync(req); + }catch(TException e){ + clientQueue.Add(my_client); + throw new TException("Operation Handle Close Failed", e); + } + clientQueue.Add(my_client); + + } + } } } diff --git a/client/utils/Utils/ByteBuffer.cs b/client/utils/Utils/ByteBuffer.cs index 178b9fc..ededc13 100644 --- a/client/utils/Utils/ByteBuffer.cs +++ b/client/utils/Utils/ByteBuffer.cs @@ -1,7 +1,5 @@ using System; using System.Linq; -using System.Collections.Generic; -using System.Net; namespace iotdb_client_csharp.client.utils { public class ByteBuffer diff --git a/client/utils/Utils/Utils.cs b/client/utils/Utils/Utils.cs index e32e8e3..a521114 100644 --- a/client/utils/Utils/Utils.cs +++ b/client/utils/Utils/Utils.cs @@ -1,6 +1,4 @@ using System.Collections.Generic; -using System; -using Thrift; namespace iotdb_client_csharp.client.utils { public class Utils From cb92ec8ff191ebaf695bd904ca2b198f153a12f3 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 28 Apr 2021 08:19:49 +0800 Subject: [PATCH 108/214] remove notes --- client/SessionPool.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/client/SessionPool.cs b/client/SessionPool.cs index c1eec3d..8212276 100644 --- a/client/SessionPool.cs +++ b/client/SessionPool.cs @@ -152,8 +152,6 @@ public async Task create_and_open(bool enableRPCCompression){ TSIService.Client client; long sessionId, statementId; var transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); - // this will fail remote server access - //this.transport = new TFramedTransport(new TSocketTransport(this.host, this.port, new TConfiguration())); if(!transport.IsOpen){ try{ await transport.OpenAsync(new CancellationToken()); From 5e6ce89710f54857f13546378518de3b27eb67fd Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 28 Apr 2021 08:37:35 +0800 Subject: [PATCH 109/214] fix test --- client/tests/SessioonPoolTest.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index a0fb98c..8d851dc 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -8,9 +8,7 @@ namespace iotdb_client_csharp.client.test public class SessionPoolTest { public string host = "localhost"; - //public string host = "81.69.18.71"; public int port = 8888; - //public int port = 6667; public string user = "root"; public string passwd = "root"; public int fetch_size = 5000; From 82ca3ed1ebe9a756da967ce5487bb47f7af599d1 Mon Sep 17 00:00:00 2001 From: eedalong Date: Wed, 28 Apr 2021 09:04:38 +0800 Subject: [PATCH 110/214] fix test --- client/tests/SessioonPoolTest.cs | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 8d851dc..1aab3f3 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -8,7 +8,7 @@ namespace iotdb_client_csharp.client.test public class SessionPoolTest { public string host = "localhost"; - public int port = 8888; + public int port = 6667; public string user = "root"; public string passwd = "root"; public int fetch_size = 5000; @@ -18,7 +18,7 @@ public class SessionPoolTest public void Test(){ Task task; - /* + task = TestInsertRecord(); task.Wait(); @@ -32,10 +32,8 @@ public void Test(){ task.Wait(); task = TestInsertRecordsOfOneDevice(); task.Wait(); - */ task = TestInsertTablet(); task.Wait(); - /* task = TestInsertTablets(); task.Wait(); task = TestSetAndDeleteStorageGroup(); @@ -54,7 +52,6 @@ public void Test(){ task.Wait(); task = TestSqlQuery(); task.Wait(); - */ } From 11a9747a0557ca3e84f4f7448bc1c8ec54fa4247 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Wed, 28 Apr 2021 14:06:46 +0800 Subject: [PATCH 111/214] fix test --- client/tests/SessioonPoolTest.cs | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 1aab3f3..85ad7b0 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -46,8 +46,8 @@ public void Test(){ task.Wait(); task = TestSetTimeZone(); task.Wait(); - task = TestDeleteData(); - task.Wait(); + task = TestDeleteData(); + task.Wait(); task = TestNonSql(); task.Wait(); task = TestSqlQuery(); @@ -167,7 +167,6 @@ public async Task TestInsertStrRecord(){ Console.WriteLine(res.next()); } await res.close(); - Console.WriteLine("小规模执行完毕"); var tasks = new List>(); // large data test @@ -265,6 +264,7 @@ public async Task TestInsertRecords(){ res_count += 1; } await res.close(); + Console.WriteLine(res_count + " "+ fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -328,6 +328,7 @@ public async Task TestInsertRecordsOfOneDevice(){ res_count += 1; } await res.close(); + Console.WriteLine(res_count + " "+ fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -344,7 +345,7 @@ public async Task TestInsertTablet(){ System.Diagnostics.Debug.Assert(session_pool.is_open()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List measurement_lst = new List{"TS1", "TS2", "TS3"}; + List measurement_lst = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; List timestamp_lst = new List{1, 2, 3}; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); @@ -383,6 +384,7 @@ public async Task TestInsertTablet(){ res_count += 1; } await res.close(); + Console.WriteLine(res_count + " "+ fetch_size*processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); @@ -399,7 +401,7 @@ public async Task TestInsertTablets(){ System.Diagnostics.Debug.Assert(session_pool.is_open()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; - List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; + List> measurements_lst = new List>(){new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}}; List>> values_lst = new List>>(){new List>(){new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}, new List>(){new List{"iotdb_2", true, (Int32)1}, new List{"c#_2", false, (Int32)2}, new List{"client_2", true, (Int32)3}}}; List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; List tablets = new List(){}; @@ -425,15 +427,16 @@ public async Task TestInsertTablets(){ // large data test var tasks = new List>(); - for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ + for(int timestamp = 4;timestamp <= processed_size * fetch_size; timestamp++){ var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; - var local_measurements = new List(){"TS1", "TS2", "TS3"}; + var local_measurements = new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var local_value = new List>(){new List(){"iotdb", true, (Int32)timestamp}}; var local_timestamp = new List{timestamp}; Tablet tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); tablets.Add(tablet); if(timestamp % fetch_size == 0){ tasks.Add(session_pool.insert_tablets_async(tablets)); + tablets = new List(){}; } } Task.WaitAll(tasks.ToArray()); @@ -700,7 +703,7 @@ public async Task TestTestInsertTablet(){ System.Diagnostics.Debug.Assert(session_pool.is_open()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List measurement_lst = new List{"TS1", "TS2", "TS3"}; + List measurement_lst = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; List timestamp_lst = new List{2, 1, 3}; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); @@ -755,7 +758,7 @@ public async Task TestTestInsertTablets(){ System.Diagnostics.Debug.Assert(session_pool.is_open()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; - List> measurements_lst = new List>(){new List(){"TS1", "TS2", "TS3"}, new List(){"TS1", "TS2", "TS3"}}; + List> measurements_lst = new List>(){new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}}; List>> values_lst = new List>>(){new List>(){new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}, new List>(){new List{"iotdb_2", true, (Int32)1}, new List{"c#_2", false, (Int32)2}, new List{"client_2", true, (Int32)3}}}; List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; List tablets = new List(){}; @@ -781,15 +784,16 @@ public async Task TestTestInsertTablets(){ // large data test var tasks = new List>(); - for(int timestamp = 4;timestamp <= 4 * fetch_size; timestamp++){ + for(int timestamp = 4;timestamp <= processed_size* fetch_size; timestamp++){ var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; - var local_measurements = new List(){"TS1", "TS2", "TS3"}; + var local_measurements = new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var local_value = new List>(){new List(){"iotdb", true, (Int32)timestamp}}; var local_timestamp = new List{timestamp}; Tablet tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); tablets.Add(tablet); if(timestamp % fetch_size == 0){ tasks.Add(session_pool.test_insert_tablets_async(tablets)); + tablets = new List(){}; } } Task.WaitAll(tasks.ToArray()); From 7c7e3f2d7f55897afbf71081144e50e26323fb68 Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Sun, 2 May 2021 13:45:39 +0800 Subject: [PATCH 112/214] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9b4d6fb..cd35a5d 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ Apache IoTDB Github: https://github.com/apache/iotdb We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0). Run the following command in the command line to complete installation ```sh -dotnet add package iotdb_client_csharp --version 0.12.0 +dotnet add package iotdb_client_csharp ``` ## Prerequisites From b394504a167f5f7b18bb5d1ba8ad721473f45e1c Mon Sep 17 00:00:00 2001 From: eedalong Date: Sun, 9 May 2021 18:18:57 +0800 Subject: [PATCH 113/214] fix #45 --- client/tests/SessioonPoolTest.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs index 85ad7b0..e570357 100644 --- a/client/tests/SessioonPoolTest.cs +++ b/client/tests/SessioonPoolTest.cs @@ -11,10 +11,10 @@ public class SessionPoolTest public int port = 6667; public string user = "root"; public string passwd = "root"; - public int fetch_size = 5000; + public int fetch_size = 50000; public int processed_size = 4; public bool debug = false; - int pool_size = 4; + int pool_size = 2; public void Test(){ Task task; From e540d1221f305edb91d2dea6f87c61ddebee3cf8 Mon Sep 17 00:00:00 2001 From: "artyomt7777@gmail.com" Date: Sun, 9 May 2021 14:41:59 +0300 Subject: [PATCH 114/214] Adjust gitignior file: add microsoft and intellij ides spcific files, add build specific folders --- .gitignore | 71 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 64 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 70f6b0a..4244707 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,64 @@ -#dotnet project files -obj/ -*.csproj -.vscode/ -bin/ -nuget.config -release-script.sh \ No newline at end of file +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# StyleCop +StyleCopReport.xml + + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# DotCover is a Code Coverage Tool +*.dotCove + +# Click-Once directory +publish/ + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace \ No newline at end of file From ef9669f8df39d5ab0a50aa4d796810e77533d473 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Wed, 12 May 2021 09:52:53 +0800 Subject: [PATCH 115/214] add csproj file --- Apache-IoTDB-Client-CSharp.csproj | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 Apache-IoTDB-Client-CSharp.csproj diff --git a/Apache-IoTDB-Client-CSharp.csproj b/Apache-IoTDB-Client-CSharp.csproj new file mode 100644 index 0000000..94fc515 --- /dev/null +++ b/Apache-IoTDB-Client-CSharp.csproj @@ -0,0 +1,14 @@ + + + + Exe + net5.0 + Apache_IoTDB_Client_CSharp + + + + + + + + From 5c2b9798b65e559184dc07ceb474cf0bd5f58938 Mon Sep 17 00:00:00 2001 From: "artyomt7777@gmail.com" Date: Sun, 16 May 2021 17:04:14 +0300 Subject: [PATCH 116/214] introduce solution: rework folders structure, implement packages segregation, apply code auto-formatter --- .gitignore | 6 +- Apache-IoTDB-Client-CSharp.csproj | 14 - Apache.IoTDB.sln | 59 + client/Test.cs | 18 - client/tests/SessioonPoolTest.cs | 903 ------------- client/utils/DataStructure/RowRecord.cs | 106 -- client/utils/DataStructure/Tablet.cs | 156 --- client/utils/Utils/ByteBuffer.cs | 173 --- client/utils/Utils/IoTDBConstants.cs | 7 - client/utils/Utils/Utils.cs | 29 - .../Apache.IoTDB.Samples.csproj | 12 + samples/Apache.IoTDB.Samples/Program.cs | 11 + .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 1203 +++++++++++++++++ .../Apache.IoTDB.Rpc.Generated.csproj | 11 + .../Apache.IoTDB.Rpc.Generated}/EndPoint.cs | 0 .../ServerProperties.cs | 0 .../TSCancelOperationReq.cs | 0 .../TSCloseOperationReq.cs | 0 .../TSCloseSessionReq.cs | 0 .../TSCreateMultiTimeseriesReq.cs | 0 .../TSCreateTimeseriesReq.cs | 0 .../TSDeleteDataReq.cs | 0 .../TSExecuteBatchStatementReq.cs | 0 .../TSExecuteStatementReq.cs | 0 .../TSExecuteStatementResp.cs | 0 .../TSFetchMetadataReq.cs | 0 .../TSFetchMetadataResp.cs | 0 .../TSFetchResultsReq.cs | 0 .../TSFetchResultsResp.cs | 0 .../TSGetOperationStatusReq.cs | 0 .../TSGetTimeZoneResp.cs | 0 .../Apache.IoTDB.Rpc.Generated}/TSIService.cs | 0 .../TSInsertRecordReq.cs | 0 .../TSInsertRecordsOfOneDeviceReq.cs | 0 .../TSInsertRecordsReq.cs | 0 .../TSInsertStringRecordReq.cs | 0 .../TSInsertStringRecordsReq.cs | 0 .../TSInsertTabletReq.cs | 0 .../TSInsertTabletsReq.cs | 0 .../TSOpenSessionReq.cs | 0 .../TSOpenSessionResp.cs | 0 .../TSProtocolVersion.cs | 0 .../TSQueryDataSet.cs | 0 .../TSQueryNonAlignDataSet.cs | 0 .../TSRawDataQueryReq.cs | 0 .../TSSetTimeZoneReq.cs | 0 .../Apache.IoTDB.Rpc.Generated}/TSStatus.cs | 0 .../rpc.Extensions.cs | 0 src/Apache.IoTDB/Apache.IoTDB.csproj | 15 + .../Concurent => src/Apache.IoTDB}/Client.cs | 3 +- .../Apache.IoTDB/ConcurrentClientQueue.cs | 29 +- src/Apache.IoTDB/DataStructure/ByteBuffer.cs | 195 +++ src/Apache.IoTDB/DataStructure/RowRecord.cs | 134 ++ .../DataStructure/SessionDataSet.cs | 220 +-- src/Apache.IoTDB/DataStructure/Tablet.cs | 204 +++ src/Apache.IoTDB/IoTDBConstants.cs | 43 + {client => src/Apache.IoTDB}/SessionPool.cs | 661 ++++++--- src/Apache.IoTDB/Utils.cs | 43 + .../Apache.IoTDB.Integration.Tests.csproj | 19 + tests/Apache.IoTDB.Integration.Tests/Tests.cs | 18 + .../Apache.IoTDB.Tests.csproj | 19 + tests/Apache.IoTDB.Tests/Tests.cs | 18 + 62 files changed, 2609 insertions(+), 1720 deletions(-) delete mode 100644 Apache-IoTDB-Client-CSharp.csproj create mode 100644 Apache.IoTDB.sln delete mode 100644 client/Test.cs delete mode 100644 client/tests/SessioonPoolTest.cs delete mode 100644 client/utils/DataStructure/RowRecord.cs delete mode 100644 client/utils/DataStructure/Tablet.cs delete mode 100644 client/utils/Utils/ByteBuffer.cs delete mode 100644 client/utils/Utils/IoTDBConstants.cs delete mode 100644 client/utils/Utils/Utils.cs create mode 100644 samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj create mode 100644 samples/Apache.IoTDB.Samples/Program.cs create mode 100644 samples/Apache.IoTDB.Samples/SessioonPoolTest.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj rename {rpc => src/Apache.IoTDB.Rpc.Generated}/EndPoint.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/ServerProperties.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSCancelOperationReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSCloseOperationReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSCloseSessionReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSCreateMultiTimeseriesReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSCreateTimeseriesReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSDeleteDataReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSExecuteBatchStatementReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSExecuteStatementReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSExecuteStatementResp.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSFetchMetadataReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSFetchMetadataResp.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSFetchResultsReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSFetchResultsResp.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSGetOperationStatusReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSGetTimeZoneResp.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSIService.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertRecordReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertRecordsOfOneDeviceReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertRecordsReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertStringRecordReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertStringRecordsReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertTabletReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSInsertTabletsReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSOpenSessionReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSOpenSessionResp.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSProtocolVersion.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSQueryDataSet.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSQueryNonAlignDataSet.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSRawDataQueryReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSSetTimeZoneReq.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/TSStatus.cs (100%) rename {rpc => src/Apache.IoTDB.Rpc.Generated}/rpc.Extensions.cs (100%) create mode 100644 src/Apache.IoTDB/Apache.IoTDB.csproj rename {client/utils/Concurent => src/Apache.IoTDB}/Client.cs (81%) rename client/utils/Concurent/ConcurentClientQueue.cs => src/Apache.IoTDB/ConcurrentClientQueue.cs (69%) create mode 100644 src/Apache.IoTDB/DataStructure/ByteBuffer.cs create mode 100644 src/Apache.IoTDB/DataStructure/RowRecord.cs rename {client/utils => src/Apache.IoTDB}/DataStructure/SessionDataSet.cs (68%) create mode 100644 src/Apache.IoTDB/DataStructure/Tablet.cs create mode 100644 src/Apache.IoTDB/IoTDBConstants.cs rename {client => src/Apache.IoTDB}/SessionPool.cs (68%) create mode 100644 src/Apache.IoTDB/Utils.cs create mode 100644 tests/Apache.IoTDB.Integration.Tests/Apache.IoTDB.Integration.Tests.csproj create mode 100644 tests/Apache.IoTDB.Integration.Tests/Tests.cs create mode 100644 tests/Apache.IoTDB.Tests/Apache.IoTDB.Tests.csproj create mode 100644 tests/Apache.IoTDB.Tests/Tests.cs diff --git a/.gitignore b/.gitignore index 4244707..d3978e2 100644 --- a/.gitignore +++ b/.gitignore @@ -61,4 +61,8 @@ publish/ !.vscode/tasks.json !.vscode/launch.json !.vscode/extensions.json -*.code-workspace \ No newline at end of file +*.code-workspace + + +### Rider ### +.idea \ No newline at end of file diff --git a/Apache-IoTDB-Client-CSharp.csproj b/Apache-IoTDB-Client-CSharp.csproj deleted file mode 100644 index 94fc515..0000000 --- a/Apache-IoTDB-Client-CSharp.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - Exe - net5.0 - Apache_IoTDB_Client_CSharp - - - - - - - - diff --git a/Apache.IoTDB.sln b/Apache.IoTDB.sln new file mode 100644 index 0000000..e08531b --- /dev/null +++ b/Apache.IoTDB.sln @@ -0,0 +1,59 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{AE9EFF1C-CB25-4089-B764-D834AC132501}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{11051AD6-88B3-44B4-A066-C59ED2E35AFD}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{AF185F16-80A9-49A8-98B4-B761FD197FF7}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB", "src\Apache.IoTDB\Apache.IoTDB.csproj", "{60FE924D-19EC-41A9-A114-70DD21A30545}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Samples", "samples\Apache.IoTDB.Samples\Apache.IoTDB.Samples.csproj", "{5B88D865-EFFD-4A13-8489-2172777859F5}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Tests", "tests\Apache.IoTDB.Tests\Apache.IoTDB.Tests.csproj", "{414B31CD-57EB-478B-B734-542644CE48B0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Integration.Tests", "tests\Apache.IoTDB.Integration.Tests\Apache.IoTDB.Integration.Tests.csproj", "{133ECF70-6B6B-492B-A2A4-AA759CEE54BB}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Rpc.Generated", "src\Apache.IoTDB.Rpc.Generated\Apache.IoTDB.Rpc.Generated.csproj", "{1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{DEAC57D3-4B3A-4650-85E3-5A179CD1DBAD}" +ProjectSection(SolutionItems) = preProject + docs\bytebuffer_zh.md = docs\bytebuffer_zh.md + docs\time_profile_zh.pdf = docs\time_profile_zh.pdf +EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {60FE924D-19EC-41A9-A114-70DD21A30545} = {AE9EFF1C-CB25-4089-B764-D834AC132501} + {5B88D865-EFFD-4A13-8489-2172777859F5} = {AF185F16-80A9-49A8-98B4-B761FD197FF7} + {414B31CD-57EB-478B-B734-542644CE48B0} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} + {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7} = {AE9EFF1C-CB25-4089-B764-D834AC132501} + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.Build.0 = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.ActiveCfg = Release|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.Build.0 = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.Build.0 = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.Build.0 = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.Build.0 = Release|Any CPU + {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/client/Test.cs b/client/Test.cs deleted file mode 100644 index 4f8f0db..0000000 --- a/client/Test.cs +++ /dev/null @@ -1,18 +0,0 @@ -using iotdb_client_csharp.client.test; -using System; -namespace iotdb_client_csharp.client -{ - public class Test - { - static void Main(){ - // Session Async Test - SessionPoolTest session_pool_test = new SessionPoolTest(); - session_pool_test.Test(); - - - Console.WriteLine("TEST PASSED"); - - } - - } -} \ No newline at end of file diff --git a/client/tests/SessioonPoolTest.cs b/client/tests/SessioonPoolTest.cs deleted file mode 100644 index e570357..0000000 --- a/client/tests/SessioonPoolTest.cs +++ /dev/null @@ -1,903 +0,0 @@ -using System.Collections.Generic; -using System; -using iotdb_client_csharp.client.utils; -using System.Threading.Tasks; - -namespace iotdb_client_csharp.client.test -{ - public class SessionPoolTest - { - public string host = "localhost"; - public int port = 6667; - public string user = "root"; - public string passwd = "root"; - public int fetch_size = 50000; - public int processed_size = 4; - public bool debug = false; - int pool_size = 2; - - public void Test(){ - Task task; - - task = TestInsertRecord(); - task.Wait(); - - task = TestCreateMultiTimeSeries(); - task.Wait(); - task = TestGetTimeZone(); - task.Wait(); - task = TestInsertStrRecord(); - task.Wait(); - task = TestInsertRecords(); - task.Wait(); - task = TestInsertRecordsOfOneDevice(); - task.Wait(); - task = TestInsertTablet(); - task.Wait(); - task = TestInsertTablets(); - task.Wait(); - task = TestSetAndDeleteStorageGroup(); - task.Wait(); - task = TestCreateTimeSeries(); - task.Wait(); - task = TestDeleteStorageGroups(); - task.Wait(); - task = TestCheckTimeSeriesExists(); - task.Wait(); - task = TestSetTimeZone(); - task.Wait(); - task = TestDeleteData(); - task.Wait(); - task = TestNonSql(); - task.Wait(); - task = TestSqlQuery(); - task.Wait(); - - } - - public async Task TestInsertRecord(){ - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status== 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true, (Int32)123}; - List> tasks = new List>(); - long start_ms= (DateTime.Now.Ticks / 10000); - for(int timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++){ - RowRecord rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); - tasks.Add(task); - } - Task.WaitAll(tasks.ToArray()); - long end_ms = (DateTime.Now.Ticks / 10000); - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); - Console.WriteLine("TestInsertRecordAsync Passed"); - } - public async Task TestCreateMultiTimeSeries(){ - // by Luzhan - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.open(false); - int status = 0; - if(debug){ - session_pool.open_debug_mode(); - } - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; - List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; - List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; - List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; - status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestCreateMultiTimeSeries Passed!"); - } - public async Task TestDeleteTimeSeries(){ - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.open(false); - int status = 0; - if(debug){ - session_pool.open_debug_mode(); - } - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"}; - List data_type_lst = new List(){TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, TSDataType.TEXT}; - List encoding_lst = new List(){TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN,TSEncoding.PLAIN}; - List compressor_lst = new List(){Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY,Compressor.SNAPPY}; - status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); - System.Diagnostics.Debug.Assert(status==0); - status = await session_pool.delete_storage_groups_async(ts_path_lst); - System.Diagnostics.Debug.Assert(status == 0); - Console.WriteLine("TestDeleteTimeSeries Passed!"); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); - } - public async Task TestGetTimeZone(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session_pool.is_open()); - var time_zone = await session_pool.get_time_zone(); - System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); - await session_pool.close(); - Console.WriteLine("TestGetTimeZone Passed!"); - } - public async Task TestInsertStrRecord(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List{(Int32)1, (Int32)2}; - RowRecord rowRecord = new RowRecord(1, values, measures); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - - var tasks = new List>(); - // large data test - List rowRecords = new List(){}; - for(int timestamp = 2; timestamp <=fetch_size * processed_size; timestamp++){ - rowRecords.Add(new RowRecord(timestamp, values, measures)); - } - for(int timestamp = 2; timestamp <=fetch_size * processed_size; timestamp++){ - var task = session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp-2]); - tasks.Add(task); - } - Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); - Console.WriteLine("TestInsertStrRecord Passed!"); - } - public async Task TestInsertRecords(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - int status = 0; - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - List device_id = new List(){}; - for(int i = 0; i < 3; i++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - } - List> measurements_lst = new List>(){}; - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){true, (Int32)123}); - values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1}); - values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1, (float)10001.1, "test_record"}); - List timestamp_lst = new List(){1, 2, 3}; - List rowRecords = new List(){}; - for(int i = 0; i < 3;i++){ - RowRecord rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - status = await session_pool.insert_records_async(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - Console.WriteLine(status); - - // large data test - device_id = new List(){}; - rowRecords = new List(){}; - var tasks = new List>(); - for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - rowRecords.Add(new RowRecord(timestamp, new List(){true, (Int32)123}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); - if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.insert_records_async(device_id, rowRecords)); - device_id = new List(){}; - rowRecords = new List(){}; - } - } - Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int record_count = fetch_size * processed_size; - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - Console.WriteLine(res_count + " "+ fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == record_count); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestInsertRecords Passed!"); - } - public async Task TestInsertRecordsOfOneDevice(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - int status = 0; - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List> measurements_lst = new List>(){}; - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){true, (Int32)123}); - values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1}); - values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1, (float)10001.1, "test_record"}); - List timestamp_lst = new List(){1, 2, 3}; - List rowRecords = new List(){}; - for(int i = 0; i < 3;i++){ - RowRecord rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - status = await session_pool.insert_records_of_one_device_async(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - // large data test - rowRecords = new List(){}; - var tasks = new List>(); - for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ - rowRecords.Add(new RowRecord(timestamp, new List(){true, (Int32)123}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); - if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.insert_records_of_one_device_async(device_id, rowRecords)); - rowRecords = new List(){}; - } - } - Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - Console.WriteLine(res_count + " "+ fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); - } - public async Task TestInsertTablet(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List measurement_lst = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; - List timestamp_lst = new List{1, 2, 3}; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.insert_tablet_async(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - // large data test - value_lst = new List>(){}; - timestamp_lst = new List(){}; - var tasks = new List>(); - long start_ms= (DateTime.Now.Ticks / 10000); - for (int timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++){ - timestamp_lst.Add(timestamp); - value_lst.Add(new List(){"iotdb", true, (Int32)timestamp}); - if(timestamp % fetch_size == 0){ - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.insert_tablet_async(tablet)); - value_lst = new List>(){}; - timestamp_lst = new List(){}; - - } - } - Task.WaitAll(tasks.ToArray()); - long end_ms = (DateTime.Now.Ticks / 10000); - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - Console.WriteLine(res_count + " "+ fetch_size*processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestInsertTablet Passed!"); - } - public async Task TestInsertTablets(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; - List> measurements_lst = new List>(){new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}}; - List>> values_lst = new List>>(){new List>(){new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}, new List>(){new List{"iotdb_2", true, (Int32)1}, new List{"c#_2", false, (Int32)2}, new List{"client_2", true, (Int32)3}}}; - List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; - List tablets = new List(){}; - for(int i = 0;i < device_id.Count; i++){ - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - status = await session_pool.insert_tablets_async(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res=await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - - // large data test - - var tasks = new List>(); - for(int timestamp = 4;timestamp <= processed_size * fetch_size; timestamp++){ - var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; - var local_measurements = new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var local_value = new List>(){new List(){"iotdb", true, (Int32)timestamp}}; - var local_timestamp = new List{timestamp}; - Tablet tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); - tablets.Add(tablet); - if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.insert_tablets_async(tablets)); - tablets = new List(){}; - } - } - Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestInsertTablets Passed!"); - } - public async Task TestSetAndDeleteStorageGroup(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); - System.Diagnostics.Debug.Assert(await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP")==0); - await session_pool.close(); - Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); - } - public async Task TestCreateTimeSeries(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3"), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4"), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5"), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async(("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6"), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY)==0); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); - Console.WriteLine("TestCreateTimeSeries Passed!"); - } - public async Task TestDeleteStorageGroups(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); - List group_names = new List(){}; - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); - System.Diagnostics.Debug.Assert(await session_pool.delete_storage_groups_async(group_names)==0); - await session_pool.close(); - Console.WriteLine("TestDeleteStorageGroups Passed!"); - } - public async Task TestCheckTimeSeriesExists(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - var ifExist_1 = await session_pool.check_time_series_exists_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); - var ifExist_2 = await session_pool.check_time_series_exists_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); - System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestCheckTimeSeriesExists Passed!"); - } - public async Task TestSetTimeZone(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.set_time_zone("GMT+8:00"); - System.Diagnostics.Debug.Assert(await session_pool.get_time_zone() == "GMT+8:00"); - await session_pool.close(); - Console.WriteLine("TestSetTimeZone Passed!"); - } - public async Task TestDeleteData(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true, (Int32)123}; - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - List ts_path_lst = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"}; - await session_pool.delete_data_async(ts_path_lst, 2 ,3); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestDeleteData Passed!"); - } - public async Task TestTestInsertRecord(){ - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status== 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List{"test_text", true, (Int32)123}; - List> tasks = new List>(); - long start_ms= (DateTime.Now.Ticks / 10000); - for(int timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++){ - RowRecord rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.test_insert_record_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); - tasks.Add(task); - } - Task.WaitAll(tasks.ToArray()); - long end_ms = (DateTime.Now.Ticks / 10000); - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); - Console.WriteLine("TestTestInsertRecordAsync Passed"); - } - public async Task TestTestInsertRecords(){ - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - int status = 0; - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - List device_id = new List(){}; - for(int i = 0; i < 3; i++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - } - List> measurements_lst = new List>(){}; - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4"}); - measurements_lst.Add(new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6"}); - List> values_lst = new List>(){}; - values_lst.Add(new List(){true, (Int32)123}); - values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1}); - values_lst.Add(new List(){true, (Int32)123, (Int64)456, (Double)1.1, (float)10001.1, "test_record"}); - List timestamp_lst = new List(){1, 2, 3}; - List rowRecords = new List(){}; - for(int i = 0; i < 3;i++){ - RowRecord rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - status = await session_pool.test_insert_records_async(device_id, rowRecords); - // System.Diagnostics.Debug.Assert(status == 0); - var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - - // large data test - device_id = new List(){}; - rowRecords = new List(){}; - var tasks = new List>(); - for(int timestamp = 4;timestamp <= fetch_size * processed_size;timestamp++){ - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - rowRecords.Add(new RowRecord(timestamp, new List(){true, (Int32)123}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); - if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.test_insert_records_async(device_id, rowRecords)); - device_id = new List(){}; - rowRecords = new List(){}; - } - } - Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int record_count = fetch_size * processed_size; - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - System.Diagnostics.Debug.Assert(res_count == 0); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestTestInsertRecords Passed!"); - } - public async Task TestTestInsertTablet(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - string device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; - List measurement_lst = new List{"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - List> value_lst = new List>{new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}; - List timestamp_lst = new List{2, 1, 3}; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.test_insert_tablet_async(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - // large data test - value_lst = new List>(){}; - timestamp_lst = new List(){}; - var tasks = new List>(); - long start_ms= (DateTime.Now.Ticks / 10000); - for (int timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++){ - timestamp_lst.Add(timestamp); - value_lst.Add(new List(){"iotdb", true, (Int32)timestamp}); - if(timestamp % (fetch_size / 32) == 0){ - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.test_insert_tablet_async(tablet)); - value_lst = new List>(){}; - timestamp_lst = new List(){}; - - } - } - Task.WaitAll(tasks.ToArray()); - long end_ms = (DateTime.Now.Ticks / 10000); - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestTestInsertTablet Passed!"); - } - public async Task TestTestInsertTablets(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - List device_id = new List(){"root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2"}; - List> measurements_lst = new List>(){new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}}; - List>> values_lst = new List>>(){new List>(){new List{"iotdb", true, (Int32)12}, new List{"c#", false, (Int32)13}, new List{"client", true, (Int32)14}}, new List>(){new List{"iotdb_2", true, (Int32)1}, new List{"c#_2", false, (Int32)2}, new List{"client_2", true, (Int32)3}}}; - List> timestamp_lst = new List>(){new List(){2, 1, 3}, new List(){3, 1, 2}}; - List tablets = new List(){}; - for(int i = 0;i < device_id.Count; i++){ - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - status = await session_pool.test_insert_tablets_async(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res=await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - - // large data test - - var tasks = new List>(); - for(int timestamp = 4;timestamp <= processed_size* fetch_size; timestamp++){ - var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; - var local_measurements = new List(){"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var local_value = new List>(){new List(){"iotdb", true, (Int32)timestamp}}; - var local_timestamp = new List{timestamp}; - Tablet tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); - tablets.Add(tablet); - if(timestamp % fetch_size == 0){ - tasks.Add(session_pool.test_insert_tablets_async(tablets)); - tablets = new List(){}; - } - } - Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - res.show_table_names(); - int res_count = 0; - while(res.has_next()){ - res.next(); - res_count += 1; - } - await res.close(); - System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestTestInsertTablets Passed!"); - } - - public async Task TestNonSql(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - status = await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - var res = await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("TestNonSql Passed"); - } - public async Task TestSqlQuery(){ - var session_pool = new SessionPool(host, port, pool_size); - int status = 0; - await session_pool.open(false); - if(debug){ - session_pool.open_debug_mode(); - } - System.Diagnostics.Debug.Assert(session_pool.is_open()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async("create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.execute_non_query_statement_async("insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - - var res =await session_pool.execute_query_statement_async("show timeseries root"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); - res =await session_pool.execute_query_statement_async("show devices"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - Console.WriteLine("SHOW DEVICES sql passed!"); - res = await session_pool.execute_query_statement_async("COUNT TIMESERIES root"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - Console.WriteLine("COUNT TIMESERIES root sql Passed"); - res= await session_pool.execute_query_statement_async("select * from root.ln.wf01 where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - Console.WriteLine("SELECT sql Passed"); - res= await session_pool.execute_query_statement_async("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while(res.has_next()){ - Console.WriteLine(res.next()); - } - await res.close(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); - Console.WriteLine("SELECT sql Passed"); - } - - } -} \ No newline at end of file diff --git a/client/utils/DataStructure/RowRecord.cs b/client/utils/DataStructure/RowRecord.cs deleted file mode 100644 index 4d2b043..0000000 --- a/client/utils/DataStructure/RowRecord.cs +++ /dev/null @@ -1,106 +0,0 @@ -using System.Collections.Generic; -using Thrift; -using System; -namespace iotdb_client_csharp.client.utils -{ - public class RowRecord - { - public long timestamp{get;set;} - public List values {get;set;} - public List measurements{get;set;} - public RowRecord(long timestamp, List values, List measurements){ - this.timestamp = timestamp; - this.values = values; - this.measurements = measurements; - } - public void append(string measurement, Object value){ - values.Add(value); - measurements.Add(measurement); - } - public DateTime get_date_time(){ - return DateTimeOffset.FromUnixTimeMilliseconds(timestamp).DateTime.ToLocalTime();; - } - - public override string ToString() - { - var str = "TimeStamp"; - foreach(var measurement in measurements){ - str += "\t\t"; - str += measurement.ToString(); - } - str += "\n"; - - str += timestamp.ToString(); - foreach(var row_value in values){ - str += "\t\t"; - str += row_value.ToString(); - } - return str; - } - public List get_datatypes(){ - List data_type_values = new List(){}; - foreach(var value in values){ - var value_type = value.GetType(); - if(value_type.Equals(typeof(bool))){ - data_type_values.Add((int)TSDataType.BOOLEAN); - } - else if(value_type.Equals(typeof(Int32))){ - data_type_values.Add((int)TSDataType.INT32); - } - else if(value_type.Equals(typeof(Int64))){ - data_type_values.Add((int)TSDataType.INT64); - } - else if(value_type.Equals(typeof(float))){ - data_type_values.Add((int)TSDataType.FLOAT); - } - else if(value_type.Equals(typeof(double))){ - data_type_values.Add((int)TSDataType.DOUBLE); - } - else if(value_type.Equals(typeof(string))){ - data_type_values.Add((int)TSDataType.TEXT); - } - } - return data_type_values; - - } - public byte[] ToBytes(){ - ByteBuffer buffer = new ByteBuffer(values.Count * 8); - foreach(var value in values){ - if(value.GetType().Equals(typeof(bool))){ - buffer.add_char((char)TSDataType.BOOLEAN); - buffer.add_bool((bool)value); - } - else if((value.GetType().Equals(typeof(Int32)))){ - buffer.add_char((char)TSDataType.INT32); - buffer.add_int((int)value); - } - else if((value.GetType().Equals(typeof(Int64)))){ - buffer.add_char((char)TSDataType.INT64); - buffer.add_long((long)value); - } - else if((value.GetType().Equals(typeof(double)))){ - buffer.add_char((char)TSDataType.DOUBLE); - buffer.add_double((double)value); - } - else if((value.GetType().Equals(typeof(float)))){ - buffer.add_char((char)TSDataType.FLOAT); - buffer.add_float((float)value); - } - else if((value.GetType().Equals(typeof(string)))){ - buffer.add_char((char)TSDataType.TEXT); - buffer.add_str((string)value); - } - else{ - var message = String.Format("Unsupported data type:{0}",value.GetType().ToString()); - throw new TException(message, null); - } - } - var buf = buffer.get_buffer(); - return buf; - } - - - - - } -} \ No newline at end of file diff --git a/client/utils/DataStructure/Tablet.cs b/client/utils/DataStructure/Tablet.cs deleted file mode 100644 index de6d768..0000000 --- a/client/utils/DataStructure/Tablet.cs +++ /dev/null @@ -1,156 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using Thrift; -namespace iotdb_client_csharp.client.utils -{ - /* - * A tablet data of one device, the tablet contains multiple measurements of this device that share - * the same time column. - * - * for example: device root.sg1.d1 - * - * time, m1, m2, m3 - * 1, 1, 2, 3 - * 2, 1, 2, 3 - * 3, 1, 2, 3 - * - * Notice: The tablet should not have empty cell - * - */ - public class Tablet - { - public string device_id{get;} - public List measurement_lst{get;} - public List timestamp_lst; - public List> value_lst; - public int row_number{get;} - public int col_number; - - public Utils util_functions = new Utils(); - - public Tablet(string device_id, List measurement_lst, List> value_lst, List timestamp_lst){ - if(timestamp_lst.Count != value_lst.Count){ - var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); - throw new TException(err_msg, null); - } - if(!util_functions.check_sorted(timestamp_lst)){ - var sorted = timestamp_lst.Select((x, index) => (timestamp:x, values:value_lst[index])).OrderBy(x => x.timestamp).ToList(); - this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); - this.value_lst = sorted.Select(x => x.values).ToList(); - }else{ - this.value_lst = value_lst; - this.timestamp_lst = timestamp_lst; - } - - this.device_id = device_id; - this.measurement_lst = measurement_lst; - this.row_number = timestamp_lst.Count; - this.col_number = measurement_lst.Count; - } - - public byte[] get_binary_timestamps(){ - ByteBuffer buffer = new ByteBuffer(new byte[]{}); - foreach(var timestamp in timestamp_lst){ - buffer.add_long(timestamp); - } - return buffer.get_buffer(); - } - public List get_data_types(){ - List data_type_values = new List(){}; - foreach(var value in value_lst[0]){ - var value_type = value.GetType(); - if(value_type.Equals(typeof(bool))){ - data_type_values.Add((int)TSDataType.BOOLEAN); - } - else if(value_type.Equals(typeof(Int32))){ - data_type_values.Add((int)TSDataType.INT32); - } - else if(value_type.Equals(typeof(Int64))){ - data_type_values.Add((int)TSDataType.INT64); - } - else if(value_type.Equals(typeof(float))){ - data_type_values.Add((int)TSDataType.FLOAT); - } - else if(value_type.Equals(typeof(double))){ - data_type_values.Add((int)TSDataType.DOUBLE); - } - else if(value_type.Equals(typeof(string))){ - data_type_values.Add((int)TSDataType.TEXT); - } - } - return data_type_values; - } - public int estimate_buffer_size(){ - var estimate_size = 0; - // estimate one row size - foreach(var value in value_lst[0]){ - var value_type = value.GetType(); - if(value_type.Equals(typeof(bool))){ - estimate_size += 1; - } - else if(value_type.Equals(typeof(Int32))){ - estimate_size += 4; - } - else if(value_type.Equals(typeof(Int64))){ - estimate_size += 8; - } - else if(value_type.Equals(typeof(float))){ - estimate_size += 4; - } - else if(value_type.Equals(typeof(double))){ - estimate_size += 8; - } - else if(value_type.Equals(typeof(string))){ - estimate_size += ((string)value).Length; - } - } - estimate_size *= timestamp_lst.Count; - return estimate_size; - } - - public byte[] get_binary_values(){ - var estimate_size = estimate_buffer_size(); - ByteBuffer buffer = new ByteBuffer(estimate_size); - for(int i = 0; i < col_number; i++){ - var value_type = value_lst[0][i].GetType(); - if(value_type.Equals(typeof(bool))){ - for(int j=0; j< row_number; j++){ - buffer.add_bool((bool)value_lst[j][i]); - } - } - else if(value_type.Equals(typeof(Int32))){ - for(int j=0; j< row_number; j++){ - buffer.add_int((Int32)value_lst[j][i]); - } - } - else if(value_type.Equals(typeof(Int64))){ - for(int j=0; j< row_number; j++){ - buffer.add_long((Int64)value_lst[j][i]); - } - } - else if(value_type.Equals(typeof(float))){ - for(int j=0; j< row_number; j++){ - buffer.add_float((float)value_lst[j][i]); - } - } - else if(value_type.Equals(typeof(double))){ - for(int j=0; j< row_number; j++){ - buffer.add_double((double)value_lst[j][i]); - } - } - else if(value_type.Equals(typeof(string))){ - for(int j=0; j< row_number; j++){ - buffer.add_str((string)value_lst[j][i]); - } - } - else{ - var message = String.Format("Unsupported data type {0}", value_type); - throw new TException(message, null); - } - } - var buf = buffer.get_buffer(); - return buf; - } - } -} \ No newline at end of file diff --git a/client/utils/Utils/ByteBuffer.cs b/client/utils/Utils/ByteBuffer.cs deleted file mode 100644 index ededc13..0000000 --- a/client/utils/Utils/ByteBuffer.cs +++ /dev/null @@ -1,173 +0,0 @@ -using System; -using System.Linq; -namespace iotdb_client_csharp.client.utils -{ - public class ByteBuffer - { - private byte[] buffer; - private int write_pos = 0, read_pos = 0; - private int total_length; - private bool is_little_endian; - - public ByteBuffer(byte[] buffer){ - this.buffer = buffer; - this.read_pos = 0; - this.write_pos = buffer.Length; - this.total_length = buffer.Length; - this.is_little_endian = BitConverter.IsLittleEndian; - } - public ByteBuffer(int reserve = 1){ - this.buffer = new byte[reserve]; - this.write_pos = 0; - this.read_pos = 0; - this.total_length = reserve; - this.is_little_endian = BitConverter.IsLittleEndian; - } - public bool has_remaining(){ - return read_pos < this.write_pos; - } - // these for read - public byte get_byte(){ - var byte_val = buffer[read_pos]; - read_pos += 1; - return byte_val; - } - public bool get_bool(){ - bool bool_value = BitConverter.ToBoolean(buffer, read_pos); - read_pos += 1; - return bool_value; - } - public int get_int(){ - - var int_buff = buffer[read_pos..(read_pos+4)]; - if(is_little_endian){ - int_buff = int_buff.Reverse().ToArray(); - } - int int_value = BitConverter.ToInt32(int_buff); - read_pos += 4; - return int_value; - } - public long get_long(){ - var long_buff = buffer[read_pos..(read_pos + 8)]; - if(is_little_endian){ - long_buff = long_buff.Reverse().ToArray(); - } - long long_value = BitConverter.ToInt64(long_buff); - read_pos += 8; - return long_value; - } - public float get_float(){ - var float_buff = buffer[read_pos..(read_pos +4)]; - if(is_little_endian){ - float_buff = float_buff.Reverse().ToArray(); - } - float float_value = BitConverter.ToSingle(float_buff); - read_pos += 4; - return float_value; - } - public double get_double(){ - var double_buff = buffer[read_pos..(read_pos+8)]; - if(is_little_endian){ - double_buff = double_buff.Reverse().ToArray(); - } - double double_value = BitConverter.ToDouble(double_buff); - read_pos += 8; - return double_value; - } - public string get_str(){ - int length = get_int(); - var str_buff = buffer[read_pos..(read_pos+length)]; - string str_value = System.Text.Encoding.UTF8.GetString(str_buff); - read_pos += length; - return str_value; - } - public byte[] get_buffer(){ - return buffer[0..this.write_pos]; - } - private int max(int a, int b){ - if(a <= b){ - return b; - } - return a; - } - private void extend_buffer(int space_need){ - if(write_pos + space_need >= total_length){ - total_length = max(space_need, total_length); - byte[] new_buffer = new byte[total_length * 2]; - buffer.CopyTo(new_buffer, 0); - buffer = new_buffer; - total_length = 2 * total_length; - } - } - // these for write - public void add_bool(bool value){ - var bool_buffer = BitConverter.GetBytes(value); - if(is_little_endian){ - bool_buffer = bool_buffer.Reverse().ToArray(); - } - - extend_buffer(bool_buffer.Length); - bool_buffer.CopyTo(buffer, write_pos); - write_pos += bool_buffer.Length; - - } - public void add_int(Int32 value){ - var int_buff = BitConverter.GetBytes(value); - if(is_little_endian){ - int_buff = int_buff.Reverse().ToArray(); - } - - extend_buffer(int_buff.Length); - int_buff.CopyTo(buffer, write_pos); - write_pos += int_buff.Length; - } - public void add_long(long value){ - var long_buff = BitConverter.GetBytes(value); - if(is_little_endian){ - long_buff = long_buff.Reverse().ToArray(); - } - - extend_buffer(long_buff.Length); - long_buff.CopyTo(buffer, write_pos); - write_pos += long_buff.Length; - - } - public void add_float(float value){ - var float_buff = BitConverter.GetBytes(value); - if(is_little_endian){ - float_buff = float_buff.Reverse().ToArray(); - } - extend_buffer(float_buff.Length); - float_buff.CopyTo(buffer, write_pos); - write_pos += float_buff.Length; - } - public void add_double(double value){ - var double_buff = BitConverter.GetBytes(value); - if(is_little_endian){ - double_buff = double_buff.Reverse().ToArray(); - } - extend_buffer(double_buff.Length); - double_buff.CopyTo(buffer, write_pos); - write_pos += double_buff.Length; - } - public void add_str(string value){ - add_int(value.Length); - var str_buf = System.Text.Encoding.UTF8.GetBytes(value); - - extend_buffer(str_buf.Length); - str_buf.CopyTo(buffer, write_pos); - write_pos += str_buf.Length; - } - public void add_char(char value){ - var char_buf = BitConverter.GetBytes(value); - if(is_little_endian){ - char_buf = char_buf.Reverse().ToArray(); - } - extend_buffer(char_buf.Length); - char_buf.CopyTo(buffer, write_pos); - write_pos += char_buf.Length; - } - - } - -} \ No newline at end of file diff --git a/client/utils/Utils/IoTDBConstants.cs b/client/utils/Utils/IoTDBConstants.cs deleted file mode 100644 index ad8cce7..0000000 --- a/client/utils/Utils/IoTDBConstants.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace iotdb_client_csharp.client.utils -{ - public enum TSDataType{BOOLEAN, INT32, INT64, FLOAT, DOUBLE, TEXT, NONE}; - public enum TSEncoding{PLAIN, PLAIN_DICTIONARY, RLE, DIFF, TS_2DIFF, BITMAP, GORILLA_V1, REGULAR, GORILLA, NONE}; - public enum Compressor{UNCOMPRESSED, SNAPPY, GZIP, LZO, SDT, PAA, PLA, LZ4}; - -} \ No newline at end of file diff --git a/client/utils/Utils/Utils.cs b/client/utils/Utils/Utils.cs deleted file mode 100644 index a521114..0000000 --- a/client/utils/Utils/Utils.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System.Collections.Generic; -namespace iotdb_client_csharp.client.utils -{ - public class Utils - { - public bool check_sorted(List timestamp_lst){ - for(int i = 1; i < timestamp_lst.Count; i++){ - if(timestamp_lst[i] < timestamp_lst[i-1]){ - return false; - } - } - return true; - } - public int verify_success(TSStatus status, int SUCCESS_CODE){ - if(status.__isset.subStatus){ - foreach(var sub_status in status.SubStatus){ - if(verify_success(sub_status, SUCCESS_CODE) != 0){ - return -1; - } - } - return 0; - } - if (status.Code == SUCCESS_CODE){ - return 0; - } - return -1; - } - } -} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj new file mode 100644 index 0000000..b0d4699 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj @@ -0,0 +1,12 @@ + + + + Exe + net5.0 + + + + + + + diff --git a/samples/Apache.IoTDB.Samples/Program.cs b/samples/Apache.IoTDB.Samples/Program.cs new file mode 100644 index 0000000..77fe181 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/Program.cs @@ -0,0 +1,11 @@ +namespace Apache.IoTDB.Samples +{ + public static class Program + { + public static void Main() + { + var sessionPoolTest = new SessionPoolTest(); + sessionPoolTest.Test(); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs new file mode 100644 index 0000000..45752ab --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -0,0 +1,1203 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public class SessionPoolTest + { + public string host = "localhost"; + public int port = 6667; + public string user = "root"; + public string passwd = "root"; + public int fetch_size = 50000; + public int processed_size = 4; + public bool debug = false; + private int pool_size = 2; + + public void Test() + { + Task task; + + task = TestInsertRecord(); + task.Wait(); + + task = TestCreateMultiTimeSeries(); + task.Wait(); + task = TestGetTimeZone(); + task.Wait(); + task = TestInsertStrRecord(); + task.Wait(); + task = TestInsertRecords(); + task.Wait(); + task = TestInsertRecordsOfOneDevice(); + task.Wait(); + task = TestInsertTablet(); + task.Wait(); + task = TestInsertTablets(); + task.Wait(); + task = TestSetAndDeleteStorageGroup(); + task.Wait(); + task = TestCreateTimeSeries(); + task.Wait(); + task = TestDeleteStorageGroups(); + task.Wait(); + task = TestCheckTimeSeriesExists(); + task.Wait(); + task = TestSetTimeZone(); + task.Wait(); + task = TestDeleteData(); + task.Wait(); + task = TestNonSql(); + task.Wait(); + task = TestSqlQuery(); + task.Wait(); + } + + public async Task TestInsertRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List {"test_text", true, (int) 123}; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.close(); + Console.WriteLine("TestInsertRecordAsync Passed"); + } + + public async Task TestCreateMultiTimeSeries() + { + // by Luzhan + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.open(false); + var status = 0; + if (debug) session_pool.open_debug_mode(); + + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + var ts_path_lst = new List() + { + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestCreateMultiTimeSeries Passed!"); + } + + public async Task TestDeleteTimeSeries() + { + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.open(false); + var status = 0; + if (debug) session_pool.open_debug_mode(); + + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + var ts_path_lst = new List() + { + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_groups_async(ts_path_lst); + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestDeleteTimeSeries Passed!"); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.close(); + } + + public async Task TestGetTimeZone() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session_pool.is_open()); + var time_zone = await session_pool.get_time_zone(); + System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); + await session_pool.close(); + Console.WriteLine("TestGetTimeZone Passed!"); + } + + public async Task TestInsertStrRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; + var values = new List {(int) 1, (int) 2}; + var rowRecord = new RowRecord(1, values, measures); + status = await session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + + var tasks = new List>(); + // large data test + var rowRecords = new List() { }; + for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) + rowRecords.Add(new RowRecord(timestamp, values, measures)); + + for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) + { + var task = session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp - 2]); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.close(); + Console.WriteLine("TestInsertStrRecord Passed!"); + } + + public async Task TestInsertRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + var status = 0; + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + }); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", + "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + }); + var values_lst = new List>() { }; + values_lst.Add(new List() {true, (int) 123}); + values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() {1, 2, 3}; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.insert_records_async(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + Console.WriteLine(status); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, + new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.insert_records_async(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestInsertRecords Passed!"); + } + + public async Task TestInsertRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + var status = 0; + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + }); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", + "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + }); + var values_lst = new List>() { }; + values_lst.Add(new List() {true, (int) 123}); + values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() {1, 2, 3}; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.insert_records_of_one_device_async(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + // large data test + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, + new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.insert_records_of_one_device_async(device_id, rowRecords)); + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); + } + + public async Task TestInsertTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + var measurement_lst = new List + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List {1, 2, 3}; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.insert_tablet_async(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() {"iotdb", true, (int) timestamp}); + if (timestamp % fetch_size == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.insert_tablet_async(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestInsertTablet Passed!"); + } + + public async Task TestInsertTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + var device_id = new List() + { + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2" + }; + var measurements_lst = new List>() + { + new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, + new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"} + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.insert_tablets_async(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + + // large data test + + var tasks = new List>(); + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; + var local_measurements = new List() + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; + var local_timestamp = new List {timestamp}; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.insert_tablets_async(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + res.show_table_names(); + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestInsertTablets Passed!"); + } + + public async Task TestSetAndDeleteStorageGroup() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert( + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); + System.Diagnostics.Debug.Assert( + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); + await session_pool.close(); + Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); + } + + public async Task TestCreateTimeSeries() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.close(); + Console.WriteLine("TestCreateTimeSeries Passed!"); + } + + public async Task TestDeleteStorageGroups() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + var group_names = new List() { }; + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + System.Diagnostics.Debug.Assert(await session_pool.delete_storage_groups_async(group_names) == 0); + await session_pool.close(); + Console.WriteLine("TestDeleteStorageGroups Passed!"); + } + + public async Task TestCheckTimeSeriesExists() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + var ifExist_1 = await session_pool.check_time_series_exists_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); + var ifExist_2 = await session_pool.check_time_series_exists_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); + System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestCheckTimeSeriesExists Passed!"); + } + + public async Task TestSetTimeZone() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.set_time_zone("GMT+8:00"); + System.Diagnostics.Debug.Assert(await session_pool.get_time_zone() == "GMT+8:00"); + await session_pool.close(); + Console.WriteLine("TestSetTimeZone Passed!"); + } + + public async Task TestDeleteData() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List {"test_text", true, (int) 123}; + status = await session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + var ts_path_lst = new List() + { + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2" + }; + await session_pool.delete_data_async(ts_path_lst, 2, 3); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestDeleteData Passed!"); + } + + public async Task TestTestInsertRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List {"test_text", true, (int) 123}; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.test_insert_record_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.close(); + Console.WriteLine("TestTestInsertRecordAsync Passed"); + } + + public async Task TestTestInsertRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + var status = 0; + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.create_time_series_async( + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + }); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", + "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + }); + var values_lst = new List>() { }; + values_lst.Add(new List() {true, (int) 123}); + values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() {1, 2, 3}; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.test_insert_records_async(device_id, rowRecords); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, + new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.test_insert_records_async(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + System.Diagnostics.Debug.Assert(res_count == 0); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestTestInsertRecords Passed!"); + } + + public async Task TestTestInsertTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + var measurement_lst = new List + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List {2, 1, 3}; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.test_insert_tablet_async(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() {"iotdb", true, (int) timestamp}); + if (timestamp % (fetch_size / 32) == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.test_insert_tablet_async(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + res.show_table_names(); + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestTestInsertTablet Passed!"); + } + + public async Task TestTestInsertTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + var device_id = new List() + { + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", + "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2" + }; + var measurements_lst = new List>() + { + new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, + new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"} + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.test_insert_tablets_async(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + + // large data test + + var tasks = new List>(); + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; + var local_measurements = new List() + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; + var local_timestamp = new List {timestamp}; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.test_insert_tablets_async(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + res.show_table_names(); + var res_count = 0; + while (res.has_next()) + { + res.next(); + res_count += 1; + } + + await res.close(); + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestTestInsertTablets Passed!"); + } + + public async Task TestNonSql() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.execute_non_query_statement_async( + "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async( + "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async( + "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + status = await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + var res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("TestNonSql Passed"); + } + + public async Task TestSqlQuery() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.open(false); + if (debug) session_pool.open_debug_mode(); + + System.Diagnostics.Debug.Assert(session_pool.is_open()); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.execute_non_query_statement_async( + "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async( + "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async( + "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.execute_non_query_statement_async( + "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + + var res = await session_pool.execute_query_statement_async("show timeseries root"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); + res = await session_pool.execute_query_statement_async("show devices"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + Console.WriteLine("SHOW DEVICES sql passed!"); + res = await session_pool.execute_query_statement_async("COUNT TIMESERIES root"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + Console.WriteLine("COUNT TIMESERIES root sql Passed"); + res = await session_pool.execute_query_statement_async("select * from root.ln.wf01 where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + Console.WriteLine("SELECT sql Passed"); + res = await session_pool.execute_query_statement_async( + "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.show_table_names(); + while (res.has_next()) Console.WriteLine(res.next()); + + await res.close(); + status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.close(); + Console.WriteLine("SELECT sql Passed"); + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj b/src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj new file mode 100644 index 0000000..407f838 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj @@ -0,0 +1,11 @@ + + + + netstandard2.1 + + + + + + + diff --git a/rpc/EndPoint.cs b/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs similarity index 100% rename from rpc/EndPoint.cs rename to src/Apache.IoTDB.Rpc.Generated/EndPoint.cs diff --git a/rpc/ServerProperties.cs b/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs similarity index 100% rename from rpc/ServerProperties.cs rename to src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs diff --git a/rpc/TSCancelOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs similarity index 100% rename from rpc/TSCancelOperationReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs diff --git a/rpc/TSCloseOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs similarity index 100% rename from rpc/TSCloseOperationReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs diff --git a/rpc/TSCloseSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs similarity index 100% rename from rpc/TSCloseSessionReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs diff --git a/rpc/TSCreateMultiTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs similarity index 100% rename from rpc/TSCreateMultiTimeseriesReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs diff --git a/rpc/TSCreateTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs similarity index 100% rename from rpc/TSCreateTimeseriesReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs diff --git a/rpc/TSDeleteDataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs similarity index 100% rename from rpc/TSDeleteDataReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs diff --git a/rpc/TSExecuteBatchStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs similarity index 100% rename from rpc/TSExecuteBatchStatementReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs diff --git a/rpc/TSExecuteStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs similarity index 100% rename from rpc/TSExecuteStatementReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs diff --git a/rpc/TSExecuteStatementResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs similarity index 100% rename from rpc/TSExecuteStatementResp.cs rename to src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs diff --git a/rpc/TSFetchMetadataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs similarity index 100% rename from rpc/TSFetchMetadataReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs diff --git a/rpc/TSFetchMetadataResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs similarity index 100% rename from rpc/TSFetchMetadataResp.cs rename to src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs diff --git a/rpc/TSFetchResultsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs similarity index 100% rename from rpc/TSFetchResultsReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs diff --git a/rpc/TSFetchResultsResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs similarity index 100% rename from rpc/TSFetchResultsResp.cs rename to src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs diff --git a/rpc/TSGetOperationStatusReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs similarity index 100% rename from rpc/TSGetOperationStatusReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs diff --git a/rpc/TSGetTimeZoneResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs similarity index 100% rename from rpc/TSGetTimeZoneResp.cs rename to src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs diff --git a/rpc/TSIService.cs b/src/Apache.IoTDB.Rpc.Generated/TSIService.cs similarity index 100% rename from rpc/TSIService.cs rename to src/Apache.IoTDB.Rpc.Generated/TSIService.cs diff --git a/rpc/TSInsertRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs similarity index 100% rename from rpc/TSInsertRecordReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs diff --git a/rpc/TSInsertRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs similarity index 100% rename from rpc/TSInsertRecordsOfOneDeviceReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs diff --git a/rpc/TSInsertRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs similarity index 100% rename from rpc/TSInsertRecordsReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs diff --git a/rpc/TSInsertStringRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs similarity index 100% rename from rpc/TSInsertStringRecordReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs diff --git a/rpc/TSInsertStringRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs similarity index 100% rename from rpc/TSInsertStringRecordsReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs diff --git a/rpc/TSInsertTabletReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs similarity index 100% rename from rpc/TSInsertTabletReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs diff --git a/rpc/TSInsertTabletsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs similarity index 100% rename from rpc/TSInsertTabletsReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs diff --git a/rpc/TSOpenSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs similarity index 100% rename from rpc/TSOpenSessionReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs diff --git a/rpc/TSOpenSessionResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs similarity index 100% rename from rpc/TSOpenSessionResp.cs rename to src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs diff --git a/rpc/TSProtocolVersion.cs b/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs similarity index 100% rename from rpc/TSProtocolVersion.cs rename to src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs diff --git a/rpc/TSQueryDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs similarity index 100% rename from rpc/TSQueryDataSet.cs rename to src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs diff --git a/rpc/TSQueryNonAlignDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs similarity index 100% rename from rpc/TSQueryNonAlignDataSet.cs rename to src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs diff --git a/rpc/TSRawDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs similarity index 100% rename from rpc/TSRawDataQueryReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs diff --git a/rpc/TSSetTimeZoneReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs similarity index 100% rename from rpc/TSSetTimeZoneReq.cs rename to src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs diff --git a/rpc/TSStatus.cs b/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs similarity index 100% rename from rpc/TSStatus.cs rename to src/Apache.IoTDB.Rpc.Generated/TSStatus.cs diff --git a/rpc/rpc.Extensions.cs b/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs similarity index 100% rename from rpc/rpc.Extensions.cs rename to src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs diff --git a/src/Apache.IoTDB/Apache.IoTDB.csproj b/src/Apache.IoTDB/Apache.IoTDB.csproj new file mode 100644 index 0000000..78e314e --- /dev/null +++ b/src/Apache.IoTDB/Apache.IoTDB.csproj @@ -0,0 +1,15 @@ + + + + netstandard2.1 + + + + + + + + + + + diff --git a/client/utils/Concurent/Client.cs b/src/Apache.IoTDB/Client.cs similarity index 81% rename from client/utils/Concurent/Client.cs rename to src/Apache.IoTDB/Client.cs index 5273394..7b5c36c 100644 --- a/client/utils/Concurent/Client.cs +++ b/src/Apache.IoTDB/Client.cs @@ -1,7 +1,6 @@ using Thrift.Transport; - -namespace iotdb_client_csharp.client.utils +namespace Apache.IoTDB { public class Client { diff --git a/client/utils/Concurent/ConcurentClientQueue.cs b/src/Apache.IoTDB/ConcurrentClientQueue.cs similarity index 69% rename from client/utils/Concurent/ConcurentClientQueue.cs rename to src/Apache.IoTDB/ConcurrentClientQueue.cs index 281fb16..3c79e8c 100644 --- a/client/utils/Concurent/ConcurentClientQueue.cs +++ b/src/Apache.IoTDB/ConcurrentClientQueue.cs @@ -2,37 +2,42 @@ using System.Collections.Generic; using System.Threading; -namespace iotdb_client_csharp.client.utils +namespace Apache.IoTDB { - public class ConcurentClientQueue + public class ConcurrentClientQueue { public ConcurrentQueue client_queue; - public ConcurentClientQueue(List clients){ + + public ConcurrentClientQueue(List clients) + { client_queue = new ConcurrentQueue(clients); } - public ConcurentClientQueue(){ + + public ConcurrentClientQueue() + { client_queue = new ConcurrentQueue(); } - public void Add(Client client){ + + public void Add(Client client) + { Monitor.Enter(client_queue); client_queue.Enqueue(client); Monitor.Pulse(client_queue); Monitor.Exit(client_queue); } - public Client Take(){ + + public Client Take() + { Client client; Monitor.Enter(client_queue); - if(client_queue.IsEmpty){ + if (client_queue.IsEmpty) + { Monitor.Wait(client_queue); } + client_queue.TryDequeue(out client); Monitor.Exit(client_queue); return client; } - - - - - } } \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs new file mode 100644 index 0000000..b3be01f --- /dev/null +++ b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs @@ -0,0 +1,195 @@ +using System; +using System.Linq; + +namespace Apache.IoTDB.DataStructure +{ + public class ByteBuffer + { + private byte[] buffer; + private int write_pos = 0, read_pos = 0; + private int total_length; + private bool is_little_endian; + + public ByteBuffer(byte[] buffer) + { + this.buffer = buffer; + read_pos = 0; + write_pos = buffer.Length; + total_length = buffer.Length; + is_little_endian = BitConverter.IsLittleEndian; + } + + public ByteBuffer(int reserve = 1) + { + buffer = new byte[reserve]; + write_pos = 0; + read_pos = 0; + total_length = reserve; + is_little_endian = BitConverter.IsLittleEndian; + } + + public bool has_remaining() + { + return read_pos < write_pos; + } + + // these for read + public byte get_byte() + { + var byte_val = buffer[read_pos]; + read_pos += 1; + return byte_val; + } + + public bool get_bool() + { + var bool_value = BitConverter.ToBoolean(buffer, read_pos); + read_pos += 1; + return bool_value; + } + + public int get_int() + { + var int_buff = buffer[read_pos..(read_pos + 4)]; + if (is_little_endian) int_buff = int_buff.Reverse().ToArray(); + + var int_value = BitConverter.ToInt32(int_buff); + read_pos += 4; + return int_value; + } + + public long get_long() + { + var long_buff = buffer[read_pos..(read_pos + 8)]; + if (is_little_endian) long_buff = long_buff.Reverse().ToArray(); + + var long_value = BitConverter.ToInt64(long_buff); + read_pos += 8; + return long_value; + } + + public float get_float() + { + var float_buff = buffer[read_pos..(read_pos + 4)]; + if (is_little_endian) float_buff = float_buff.Reverse().ToArray(); + + var float_value = BitConverter.ToSingle(float_buff); + read_pos += 4; + return float_value; + } + + public double get_double() + { + var double_buff = buffer[read_pos..(read_pos + 8)]; + if (is_little_endian) double_buff = double_buff.Reverse().ToArray(); + + var double_value = BitConverter.ToDouble(double_buff); + read_pos += 8; + return double_value; + } + + public string get_str() + { + var length = get_int(); + var str_buff = buffer[read_pos..(read_pos + length)]; + var str_value = System.Text.Encoding.UTF8.GetString(str_buff); + read_pos += length; + return str_value; + } + + public byte[] get_buffer() + { + return buffer[0..write_pos]; + } + + private int max(int a, int b) + { + if (a <= b) return b; + + return a; + } + + private void extend_buffer(int space_need) + { + if (write_pos + space_need >= total_length) + { + total_length = max(space_need, total_length); + var new_buffer = new byte[total_length * 2]; + buffer.CopyTo(new_buffer, 0); + buffer = new_buffer; + total_length = 2 * total_length; + } + } + + // these for write + public void add_bool(bool value) + { + var bool_buffer = BitConverter.GetBytes(value); + if (is_little_endian) bool_buffer = bool_buffer.Reverse().ToArray(); + + extend_buffer(bool_buffer.Length); + bool_buffer.CopyTo(buffer, write_pos); + write_pos += bool_buffer.Length; + } + + public void add_int(int value) + { + var int_buff = BitConverter.GetBytes(value); + if (is_little_endian) int_buff = int_buff.Reverse().ToArray(); + + extend_buffer(int_buff.Length); + int_buff.CopyTo(buffer, write_pos); + write_pos += int_buff.Length; + } + + public void add_long(long value) + { + var long_buff = BitConverter.GetBytes(value); + if (is_little_endian) long_buff = long_buff.Reverse().ToArray(); + + extend_buffer(long_buff.Length); + long_buff.CopyTo(buffer, write_pos); + write_pos += long_buff.Length; + } + + public void add_float(float value) + { + var float_buff = BitConverter.GetBytes(value); + if (is_little_endian) float_buff = float_buff.Reverse().ToArray(); + + extend_buffer(float_buff.Length); + float_buff.CopyTo(buffer, write_pos); + write_pos += float_buff.Length; + } + + public void add_double(double value) + { + var double_buff = BitConverter.GetBytes(value); + if (is_little_endian) double_buff = double_buff.Reverse().ToArray(); + + extend_buffer(double_buff.Length); + double_buff.CopyTo(buffer, write_pos); + write_pos += double_buff.Length; + } + + public void add_str(string value) + { + add_int(value.Length); + var str_buf = System.Text.Encoding.UTF8.GetBytes(value); + + extend_buffer(str_buf.Length); + str_buf.CopyTo(buffer, write_pos); + write_pos += str_buf.Length; + } + + public void add_char(char value) + { + var char_buf = BitConverter.GetBytes(value); + if (is_little_endian) char_buf = char_buf.Reverse().ToArray(); + + extend_buffer(char_buf.Length); + char_buf.CopyTo(buffer, write_pos); + write_pos += char_buf.Length; + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/RowRecord.cs b/src/Apache.IoTDB/DataStructure/RowRecord.cs new file mode 100644 index 0000000..348637d --- /dev/null +++ b/src/Apache.IoTDB/DataStructure/RowRecord.cs @@ -0,0 +1,134 @@ +using System; +using System.Collections.Generic; +using Thrift; + +namespace Apache.IoTDB.DataStructure +{ + public class RowRecord + { + public long timestamp { get; set; } + public List values { get; set; } + public List measurements { get; set; } + + public RowRecord(long timestamp, List values, List measurements) + { + this.timestamp = timestamp; + this.values = values; + this.measurements = measurements; + } + + public void append(string measurement, Object value) + { + values.Add(value); + measurements.Add(measurement); + } + + public DateTime get_date_time() + { + return DateTimeOffset.FromUnixTimeMilliseconds(timestamp).DateTime.ToLocalTime(); + ; + } + + public override string ToString() + { + var str = "TimeStamp"; + foreach (var measurement in measurements) + { + str += "\t\t"; + str += measurement.ToString(); + } + + str += "\n"; + + str += timestamp.ToString(); + foreach (var row_value in values) + { + str += "\t\t"; + str += row_value.ToString(); + } + + return str; + } + + public List get_datatypes() + { + List data_type_values = new List() { }; + foreach (var value in values) + { + var value_type = value.GetType(); + if (value_type.Equals(typeof(bool))) + { + data_type_values.Add((int) TSDataType.BOOLEAN); + } + else if (value_type.Equals(typeof(Int32))) + { + data_type_values.Add((int) TSDataType.INT32); + } + else if (value_type.Equals(typeof(Int64))) + { + data_type_values.Add((int) TSDataType.INT64); + } + else if (value_type.Equals(typeof(float))) + { + data_type_values.Add((int) TSDataType.FLOAT); + } + else if (value_type.Equals(typeof(double))) + { + data_type_values.Add((int) TSDataType.DOUBLE); + } + else if (value_type.Equals(typeof(string))) + { + data_type_values.Add((int) TSDataType.TEXT); + } + } + + return data_type_values; + } + + public byte[] ToBytes() + { + ByteBuffer buffer = new ByteBuffer(values.Count * 8); + foreach (var value in values) + { + if (value.GetType().Equals(typeof(bool))) + { + buffer.add_char((char) TSDataType.BOOLEAN); + buffer.add_bool((bool) value); + } + else if ((value.GetType().Equals(typeof(Int32)))) + { + buffer.add_char((char) TSDataType.INT32); + buffer.add_int((int) value); + } + else if ((value.GetType().Equals(typeof(Int64)))) + { + buffer.add_char((char) TSDataType.INT64); + buffer.add_long((long) value); + } + else if ((value.GetType().Equals(typeof(double)))) + { + buffer.add_char((char) TSDataType.DOUBLE); + buffer.add_double((double) value); + } + else if ((value.GetType().Equals(typeof(float)))) + { + buffer.add_char((char) TSDataType.FLOAT); + buffer.add_float((float) value); + } + else if ((value.GetType().Equals(typeof(string)))) + { + buffer.add_char((char) TSDataType.TEXT); + buffer.add_str((string) value); + } + else + { + var message = String.Format("Unsupported data type:{0}", value.GetType().ToString()); + throw new TException(message, null); + } + } + + var buf = buffer.get_buffer(); + return buf; + } + } +} \ No newline at end of file diff --git a/client/utils/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs similarity index 68% rename from client/utils/DataStructure/SessionDataSet.cs rename to src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 5616254..b9fb162 100644 --- a/client/utils/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -1,8 +1,9 @@ using System; using System.Collections.Generic; -using Thrift; using System.Threading.Tasks; -namespace iotdb_client_csharp.client.utils +using Thrift; + +namespace Apache.IoTDB.DataStructure { public class SessionDataSet { @@ -18,110 +19,149 @@ public class SessionDataSet int column_size; List value_buffer_lst, bitmap_buffer_lst; ByteBuffer time_buffer; - ConcurentClientQueue clientQueue; - private string TIMESTAMP_STR{ - get{return "Time";} + ConcurrentClientQueue clientQueue; + + private string TIMESTAMP_STR + { + get { return "Time"; } } - private int START_INDEX{ - get{return 2;} + + private int START_INDEX + { + get { return 2; } } - private int FLAG{ - get{return 0x80;} + + private int FLAG + { + get { return 0x80; } } - private int default_timeout{ - get{return 10000;} + + private int default_timeout + { + get { return 10000; } } - public int fetch_size{get;set;} + + public int fetch_size { get; set; } private int row_index; private bool has_catched_result; private RowRecord cached_row_record; private bool is_closed = false; - public SessionDataSet(string sql, TSExecuteStatementResp resp,ConcurentClientQueue clientQueue){ + public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQueue clientQueue) + { this.clientQueue = clientQueue; this.sql = sql; this.query_dataset = resp.QueryDataSet; this.query_id = resp.QueryId; this.column_size = resp.Columns.Count; this.current_bitmap = new byte[this.column_size]; - this.column_name_lst = new List{}; + this.column_name_lst = new List { }; this.time_buffer = new ByteBuffer(query_dataset.Time); - this.column_name_index_map = new Dictionary{}; - this.column_type_lst = new List{}; - this.duplicate_location = new Dictionary{}; - this.value_buffer_lst = new List{}; - this.bitmap_buffer_lst = new List{}; + this.column_name_index_map = new Dictionary { }; + this.column_type_lst = new List { }; + this.duplicate_location = new Dictionary { }; + this.value_buffer_lst = new List { }; + this.bitmap_buffer_lst = new List { }; // some internal variable this.has_catched_result = false; this.row_index = 0; - if(resp.ColumnNameIndexMap != null){ - for(var index = 0; index < resp.Columns.Count; index++){ + if (resp.ColumnNameIndexMap != null) + { + for (var index = 0; index < resp.Columns.Count; index++) + { this.column_name_lst.Add(""); this.column_type_lst.Add(""); } - for(var index = 0; index < resp.Columns.Count; index++){ + + for (var index = 0; index < resp.Columns.Count; index++) + { var name = resp.Columns[index]; this.column_name_lst[resp.ColumnNameIndexMap[name]] = name; this.column_type_lst[resp.ColumnNameIndexMap[name]] = resp.DataTypeList[index]; - } - }else{ + } + else + { this.column_name_lst = resp.Columns; this.column_type_lst = resp.DataTypeList; } - - for(int index = 0; index < this.column_name_lst.Count; index++){ + + for (int index = 0; index < this.column_name_lst.Count; index++) + { var column_name = this.column_name_lst[index]; - if(this.column_name_index_map.ContainsKey(column_name)){ + if (this.column_name_index_map.ContainsKey(column_name)) + { this.duplicate_location[index] = this.column_name_index_map[column_name]; - }else{ + } + else + { this.column_name_index_map[column_name] = index; } + this.value_buffer_lst.Add(new ByteBuffer(this.query_dataset.ValueList[index])); this.bitmap_buffer_lst.Add(new ByteBuffer(this.query_dataset.BitmapList[index])); } - } - - public List get_column_names(){ - var name_lst = new List{"timestamp"}; + + public List get_column_names() + { + var name_lst = new List {"timestamp"}; name_lst.AddRange(this.column_name_lst); return name_lst; } - public void show_table_names(){ + + public void show_table_names() + { var str = ""; var name_lst = get_column_names(); - foreach(var name in name_lst){ + foreach (var name in name_lst) + { str += name + "\t\t"; } + Console.WriteLine(str); } - public bool has_next(){ - if(has_catched_result){ + + public bool has_next() + { + if (has_catched_result) + { return true; } + // we have consumed all current data, fetch some more - if(!this.time_buffer.has_remaining()){ - if(!fetch_results()){ + if (!this.time_buffer.has_remaining()) + { + if (!fetch_results()) + { return false; } } + construct_one_row(); has_catched_result = true; return true; } - public RowRecord next(){ - if(!has_catched_result){ - if(!has_next()){ + + public RowRecord next() + { + if (!has_catched_result) + { + if (!has_next()) + { return null; } } + has_catched_result = false; return cached_row_record; } - private TSDataType get_data_type_from_str(string str){ - switch(str){ + + private TSDataType get_data_type_from_str(string str) + { + switch (str) + { case "BOOLEAN": return TSDataType.BOOLEAN; case "INT32": @@ -140,25 +180,34 @@ private TSDataType get_data_type_from_str(string str){ return TSDataType.TEXT; } } - public void construct_one_row(){ - List field_lst = new List{}; - for(int i = 0; i < this.column_size; i++){ - if(duplicate_location.ContainsKey(i)){ + + public void construct_one_row() + { + List field_lst = new List { }; + for (int i = 0; i < this.column_size; i++) + { + if (duplicate_location.ContainsKey(i)) + { var field = field_lst[duplicate_location[i]]; field_lst.Add(field); - }else{ + } + else + { ByteBuffer column_value_buffer = value_buffer_lst[i]; ByteBuffer column_bitmap_buffer = bitmap_buffer_lst[i]; - if(row_index % 8 == 0){ + if (row_index % 8 == 0) + { current_bitmap[i] = column_bitmap_buffer.get_byte(); } + object local_field; - if(!is_null(i, row_index)){ + if (!is_null(i, row_index)) + { TSDataType column_data_type = get_data_type_from_str(column_type_lst[i]); - - switch(column_data_type){ + switch (column_data_type) + { case TSDataType.BOOLEAN: local_field = column_value_buffer.get_bool(); break; @@ -181,75 +230,94 @@ public void construct_one_row(){ string err_msg = string.Format("value format not supported"); throw new TException(err_msg, null); } - field_lst.Add(local_field); + field_lst.Add(local_field); } - else{ + else + { local_field = null; field_lst.Add("NULL"); } } } + long timestamp = time_buffer.get_long(); row_index += 1; - this.cached_row_record = new RowRecord(timestamp, field_lst,column_name_lst); + this.cached_row_record = new RowRecord(timestamp, field_lst, column_name_lst); } - private bool is_null(int loc, int row_index){ + + private bool is_null(int loc, int row_index) + { byte bitmap = current_bitmap[loc]; int shift = row_index % 8; return ((FLAG >> shift) & bitmap) == 0; - } - private bool fetch_results(){ + + private bool fetch_results() + { row_index = 0; - var my_client = clientQueue.Take(); + var my_client = clientQueue.Take(); var req = new TSFetchResultsReq(my_client.sessionId, sql, fetch_size, query_id, true); req.Timeout = default_timeout; - try{ + try + { var task = my_client.client.fetchResultsAsync(req); task.Wait(); var resp = task.Result; - if(resp.HasResultSet){ + if (resp.HasResultSet) + { this.query_dataset = resp.QueryDataSet; // reset buffer this.time_buffer = new ByteBuffer(resp.QueryDataSet.Time); - this.value_buffer_lst = new List{}; - this.bitmap_buffer_lst = new List{}; - for(int index = 0; index < query_dataset.ValueList.Count; index++){ + this.value_buffer_lst = new List { }; + this.bitmap_buffer_lst = new List { }; + for (int index = 0; index < query_dataset.ValueList.Count; index++) + { this.value_buffer_lst.Add(new ByteBuffer(query_dataset.ValueList[index])); this.bitmap_buffer_lst.Add(new ByteBuffer(query_dataset.BitmapList[index])); } + // reset row index row_index = 0; } - if(clientQueue!=null){ + + if (clientQueue != null) + { clientQueue.Add(my_client); } + return resp.HasResultSet; } - catch(TException e){ - if(clientQueue!=null){ + catch (TException e) + { + if (clientQueue != null) + { clientQueue.Add(my_client); } + var message = string.Format("Cannot fetch result from server, because of network connection"); throw new TException(message, e); } } - public async Task close(){ - if(!is_closed){ + + public async Task close() + { + if (!is_closed) + { var my_client = clientQueue.Take(); - var req = new TSCloseOperationReq(sessionId:my_client.sessionId){QueryId=query_id}; - try{ + var req = new TSCloseOperationReq(sessionId: my_client.sessionId) {QueryId = query_id}; + try + { await my_client.client.closeOperationAsync(req); - }catch(TException e){ + } + catch (TException e) + { clientQueue.Add(my_client); throw new TException("Operation Handle Close Failed", e); } - clientQueue.Add(my_client); + clientQueue.Add(my_client); } } } -} - - \ No newline at end of file +} \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/Tablet.cs b/src/Apache.IoTDB/DataStructure/Tablet.cs new file mode 100644 index 0000000..6c923c4 --- /dev/null +++ b/src/Apache.IoTDB/DataStructure/Tablet.cs @@ -0,0 +1,204 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Thrift; + +namespace Apache.IoTDB.DataStructure +{ + /* + * A tablet data of one device, the tablet contains multiple measurements of this device that share + * the same time column. + * + * for example: device root.sg1.d1 + * + * time, m1, m2, m3 + * 1, 1, 2, 3 + * 2, 1, 2, 3 + * 3, 1, 2, 3 + * + * Notice: The tablet should not have empty cell + * + */ + public class Tablet + { + public string device_id { get; } + public List measurement_lst { get; } + public List timestamp_lst; + public List> value_lst; + public int row_number { get; } + public int col_number; + + public Utils util_functions = new Utils(); + + public Tablet(string device_id, List measurement_lst, List> value_lst, + List timestamp_lst) + { + if (timestamp_lst.Count != value_lst.Count) + { + var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); + throw new TException(err_msg, null); + } + + if (!util_functions.check_sorted(timestamp_lst)) + { + var sorted = timestamp_lst.Select((x, index) => (timestamp: x, values: value_lst[index])) + .OrderBy(x => x.timestamp).ToList(); + this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); + this.value_lst = sorted.Select(x => x.values).ToList(); + } + else + { + this.value_lst = value_lst; + this.timestamp_lst = timestamp_lst; + } + + this.device_id = device_id; + this.measurement_lst = measurement_lst; + this.row_number = timestamp_lst.Count; + this.col_number = measurement_lst.Count; + } + + public byte[] get_binary_timestamps() + { + ByteBuffer buffer = new ByteBuffer(new byte[] { }); + foreach (var timestamp in timestamp_lst) + { + buffer.add_long(timestamp); + } + + return buffer.get_buffer(); + } + + public List get_data_types() + { + List data_type_values = new List() { }; + foreach (var value in value_lst[0]) + { + var value_type = value.GetType(); + if (value_type.Equals(typeof(bool))) + { + data_type_values.Add((int) TSDataType.BOOLEAN); + } + else if (value_type.Equals(typeof(Int32))) + { + data_type_values.Add((int) TSDataType.INT32); + } + else if (value_type.Equals(typeof(Int64))) + { + data_type_values.Add((int) TSDataType.INT64); + } + else if (value_type.Equals(typeof(float))) + { + data_type_values.Add((int) TSDataType.FLOAT); + } + else if (value_type.Equals(typeof(double))) + { + data_type_values.Add((int) TSDataType.DOUBLE); + } + else if (value_type.Equals(typeof(string))) + { + data_type_values.Add((int) TSDataType.TEXT); + } + } + + return data_type_values; + } + + public int estimate_buffer_size() + { + var estimate_size = 0; + // estimate one row size + foreach (var value in value_lst[0]) + { + var value_type = value.GetType(); + if (value_type.Equals(typeof(bool))) + { + estimate_size += 1; + } + else if (value_type.Equals(typeof(Int32))) + { + estimate_size += 4; + } + else if (value_type.Equals(typeof(Int64))) + { + estimate_size += 8; + } + else if (value_type.Equals(typeof(float))) + { + estimate_size += 4; + } + else if (value_type.Equals(typeof(double))) + { + estimate_size += 8; + } + else if (value_type.Equals(typeof(string))) + { + estimate_size += ((string) value).Length; + } + } + + estimate_size *= timestamp_lst.Count; + return estimate_size; + } + + public byte[] get_binary_values() + { + var estimate_size = estimate_buffer_size(); + ByteBuffer buffer = new ByteBuffer(estimate_size); + for (int i = 0; i < col_number; i++) + { + var value_type = value_lst[0][i].GetType(); + if (value_type.Equals(typeof(bool))) + { + for (int j = 0; j < row_number; j++) + { + buffer.add_bool((bool) value_lst[j][i]); + } + } + else if (value_type.Equals(typeof(Int32))) + { + for (int j = 0; j < row_number; j++) + { + buffer.add_int((Int32) value_lst[j][i]); + } + } + else if (value_type.Equals(typeof(Int64))) + { + for (int j = 0; j < row_number; j++) + { + buffer.add_long((Int64) value_lst[j][i]); + } + } + else if (value_type.Equals(typeof(float))) + { + for (int j = 0; j < row_number; j++) + { + buffer.add_float((float) value_lst[j][i]); + } + } + else if (value_type.Equals(typeof(double))) + { + for (int j = 0; j < row_number; j++) + { + buffer.add_double((double) value_lst[j][i]); + } + } + else if (value_type.Equals(typeof(string))) + { + for (int j = 0; j < row_number; j++) + { + buffer.add_str((string) value_lst[j][i]); + } + } + else + { + var message = String.Format("Unsupported data type {0}", value_type); + throw new TException(message, null); + } + } + + var buf = buffer.get_buffer(); + return buf; + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/IoTDBConstants.cs b/src/Apache.IoTDB/IoTDBConstants.cs new file mode 100644 index 0000000..1f4eabc --- /dev/null +++ b/src/Apache.IoTDB/IoTDBConstants.cs @@ -0,0 +1,43 @@ +namespace Apache.IoTDB +{ + public enum TSDataType + { + BOOLEAN, + INT32, + INT64, + FLOAT, + DOUBLE, + TEXT, + + // default value must be 0 + NONE + }; + + public enum TSEncoding + { + PLAIN, + PLAIN_DICTIONARY, + RLE, + DIFF, + TS_2DIFF, + BITMAP, + GORILLA_V1, + REGULAR, + GORILLA, + + // default value must be 0 + NONE + }; + + public enum Compressor + { + UNCOMPRESSED, + SNAPPY, + GZIP, + LZO, + SDT, + PAA, + PLA, + LZ4 + }; +} \ No newline at end of file diff --git a/client/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs similarity index 68% rename from client/SessionPool.cs rename to src/Apache.IoTDB/SessionPool.cs index 8212276..a0cfb18 100644 --- a/client/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -1,62 +1,75 @@ -using Thrift; -using Thrift.Transport; -using Thrift.Protocol; using System; -using System.Linq; using System.Collections.Generic; -using System.Threading; -using Thrift.Transport.Client; -using iotdb_client_csharp.client.utils; -using NLog; +using System.Linq; using System.Net.Sockets; +using System.Threading; using System.Threading.Tasks; -namespace iotdb_client_csharp.client{ - public class SessionPool{ +using Apache.IoTDB.DataStructure; +using NLog; +using Thrift; +using Thrift.Protocol; +using Thrift.Transport; +using Thrift.Transport.Client; + +namespace Apache.IoTDB +{ + public class SessionPool + { private string username, password, zoneId, host; - public int SUCCESS_CODE{ - get{return 200;} + + public int SUCCESS_CODE + { + get { return 200; } } + private int port, fetch_size; private int pool_size = 4; private bool debug_mode = false; private bool is_close = true; - private ConcurentClientQueue client_lst; + private ConcurrentClientQueue client_lst; private NLog.Logger _logger; public Utils util_functions = new Utils(); private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - public SessionPool(string host, int port, int pool_size){ - // init success code - this.host = host; - this.port = port; - this.username = "root"; - this.password = "root"; - this.zoneId = "UTC+08:00"; - this.fetch_size = 1024; - this.pool_size = pool_size; - } - public SessionPool(string host, int port, string username, string password, int pool_size=8){ - this.host = host; - this.port = port; - this.password = password; - this.username = username; - this.zoneId = "UTC+08:00"; - this.fetch_size = 1024; - this.debug_mode = false; - this.pool_size = pool_size; - } - public SessionPool(string host, int port, string username, string password, int fetch_size, int pool_size=8){ - this.host = host; - this.port = port; - this.username = username; - this.password = password; - this.fetch_size = fetch_size; - this.zoneId = "UTC+08:00"; - this.debug_mode = false; - this.pool_size = pool_size; - - } - public SessionPool(string host, int port, string username="root", string password="root", int fetch_size=1000, string zoneId = "UTC+08:00", int pool_size=8){ + public SessionPool(string host, int port, int pool_size) + { + // init success code + this.host = host; + this.port = port; + this.username = "root"; + this.password = "root"; + this.zoneId = "UTC+08:00"; + this.fetch_size = 1024; + this.pool_size = pool_size; + } + + public SessionPool(string host, int port, string username, string password, int pool_size = 8) + { + this.host = host; + this.port = port; + this.password = password; + this.username = username; + this.zoneId = "UTC+08:00"; + this.fetch_size = 1024; + this.debug_mode = false; + this.pool_size = pool_size; + } + + public SessionPool(string host, int port, string username, string password, int fetch_size, int pool_size = 8) + { + this.host = host; + this.port = port; + this.username = username; + this.password = password; + this.fetch_size = fetch_size; + this.zoneId = "UTC+08:00"; + this.debug_mode = false; + this.pool_size = pool_size; + } + + public SessionPool(string host, int port, string username = "root", string password = "root", + int fetch_size = 1000, string zoneId = "UTC+08:00", int pool_size = 8) + { this.host = host; this.port = port; this.username = username; @@ -66,367 +79,509 @@ public SessionPool(string host, int port, string username="root", string passwor this.debug_mode = false; this.pool_size = pool_size; } - public void open_debug_mode(NLog.Config.LoggingConfiguration config=null){ + + public void open_debug_mode(NLog.Config.LoggingConfiguration config = null) + { this.debug_mode = true; - if(config == null){ + if (config == null) + { config = new NLog.Config.LoggingConfiguration(); var logconsole = new NLog.Targets.ConsoleTarget("logconsole"); config.AddRule(LogLevel.Debug, LogLevel.Fatal, logconsole); NLog.LogManager.Configuration = config; _logger = NLog.LogManager.GetCurrentClassLogger(); - }else{ + } + else + { NLog.LogManager.Configuration = config; _logger = NLog.LogManager.GetCurrentClassLogger(); } } - public void close_debug_mode(){ + + public void close_debug_mode() + { this.debug_mode = false; } - public async Task open(bool enableRPCCompression){ - client_lst = new ConcurentClientQueue(); - for(int index = 0; index < pool_size; index++){ + public async Task open(bool enableRPCCompression) + { + client_lst = new ConcurrentClientQueue(); + for (int index = 0; index < pool_size; index++) + { client_lst.Add(await create_and_open(enableRPCCompression)); } } - public bool is_open(){ + + public bool is_open() + { return !is_close; } - public async Task close(){ - if(is_close){ + + public async Task close() + { + if (is_close) + { return; } - foreach(var client in client_lst.client_queue.AsEnumerable()){ + + foreach (var client in client_lst.client_queue.AsEnumerable()) + { var req = new TSCloseSessionReq(client.sessionId); - try{ + try + { await client.client.closeSessionAsync(req); } - catch(TException e){ + catch (TException e) + { var message = String.Format("Error occurs when closing session at server. Maybe server is down"); throw new TException(message, e); } - finally{ + finally + { is_close = true; - if (client.transport != null){ + if (client.transport != null) + { client.transport.Close(); } } } } - public async Task set_time_zone(string zoneId){ + + public async Task set_time_zone(string zoneId) + { this.zoneId = zoneId; - foreach(var client in client_lst.client_queue.AsEnumerable()){ + foreach (var client in client_lst.client_queue.AsEnumerable()) + { var req = new TSSetTimeZoneReq(client.sessionId, zoneId); - try{ + try + { var resp = await client.client.setTimeZoneAsync(req); - if(debug_mode){ + if (debug_mode) + { _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, resp.Message); } } - catch(TException e ){ + catch (TException e) + { var message = String.Format("could not set time zone"); - throw new TException(message, e); + throw new TException(message, e); } } } - public async Task get_time_zone(){ + + public async Task get_time_zone() + { TSGetTimeZoneResp resp; - if(zoneId != ""){ + if (zoneId != "") + { return zoneId; } + var client = client_lst.Take(); - try{ + try + { resp = await client.client.getTimeZoneAsync(client.sessionId); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var message = String.Format("counld not get time zone"); - throw new TException(message, e); + throw new TException(message, e); } + client_lst.Add(client); return resp.TimeZone; } - public async Task create_and_open(bool enableRPCCompression){ + public async Task create_and_open(bool enableRPCCompression) + { TcpClient tcp_client = new TcpClient(this.host, this.port); TSIService.Client client; long sessionId, statementId; var transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); - if(!transport.IsOpen){ - try{ + if (!transport.IsOpen) + { + try + { await transport.OpenAsync(new CancellationToken()); } - catch(TTransportException){ + catch (TTransportException) + { throw; } } - if(enableRPCCompression){ + + if (enableRPCCompression) + { client = new TSIService.Client(new TCompactProtocol(transport)); - }else{ + } + else + { client = new TSIService.Client(new TBinaryProtocol(transport)); } + var open_req = new TSOpenSessionReq(protocol_version, zoneId); open_req.Username = username; open_req.Password = password; - try{ + try + { var open_resp = await client.openSessionAsync(open_req); - if(open_resp.ServerProtocolVersion != protocol_version){ - var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", protocol_version, open_resp.ServerProtocolVersion); + if (open_resp.ServerProtocolVersion != protocol_version) + { + var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", + protocol_version, open_resp.ServerProtocolVersion); throw new TException(message, null); } - if (open_resp.ServerProtocolVersion == 0){ + + if (open_resp.ServerProtocolVersion == 0) + { throw new TException("Protocol not supported", null); } + sessionId = open_resp.SessionId; statementId = await client.requestStatementIdAsync(sessionId); } - catch(Exception){ + catch (Exception) + { transport.Close(); throw; } - is_close = false; + + is_close = false; var return_client = new Client(); return_client.client = client; return_client.sessionId = sessionId; return_client.statementId = statementId; return_client.transport = transport; - return return_client; + return return_client; } - public async Task set_storage_group_async(string group_name){ + + public async Task set_storage_group_async(string group_name) + { TSStatus status; var client = client_lst.Take(); - try{ + try + { status = await client.client.setStorageGroupAsync(client.sessionId, group_name); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("set storage group {0} failed", group_name); throw new TException(err_msg, e); } - - if(debug_mode){ + + if (debug_mode) + { _logger.Info("set storage group {0} successfully, server message is {1}", group_name, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task create_time_series_async(string ts_path, TSDataType data_type, TSEncoding encoding, Compressor compressor){ + public async Task create_time_series_async(string ts_path, TSDataType data_type, TSEncoding encoding, + Compressor compressor) + { TSStatus status; var client = client_lst.Take(); - var req = new TSCreateTimeseriesReq(client.sessionId, ts_path, (int)data_type, (int)encoding, (int)compressor); - try{ + var req = new TSCreateTimeseriesReq(client.sessionId, ts_path, (int) data_type, (int) encoding, + (int) compressor); + try + { status = await client.client.createTimeseriesAsync(req); } - catch(TException e){ - client_lst.Add(client); - var err_msg = String.Format("create time series {0} failed", ts_path); + catch (TException e) + { + client_lst.Add(client); + var err_msg = String.Format("create time series {0} failed", ts_path); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); } - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); + client_lst.Add(client); + + return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_storage_group_async(string group_name){ + + public async Task delete_storage_group_async(string group_name) + { TSStatus status; var client = client_lst.Take(); - try{ - status = await client.client.deleteStorageGroupsAsync(client.sessionId, new List{group_name}); + try + { + status = await client.client.deleteStorageGroupsAsync(client.sessionId, new List {group_name}); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("delete storage group {0} failed", group_name); throw new TException(err_msg, e); } - if(debug_mode){ - var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, status.Message); + + if (debug_mode) + { + var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, + status.Message); _logger.Info(message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_storage_groups_async(List group_names){ + + public async Task delete_storage_groups_async(List group_names) + { var client = client_lst.Take(); TSStatus status; - try{ + try + { status = await client.client.deleteStorageGroupsAsync(client.sessionId, group_names); - } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("delete storage group(s) {0} failed", group_names); - throw new TException(err_msg, e); + throw new TException(err_msg, e); } - if(debug_mode){ - _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, status.Message); + + if (debug_mode) + { + _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, + status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task create_multi_time_series_async(List ts_path_lst, List data_type_lst, List encoding_lst, List compressor_lst){ + + public async Task create_multi_time_series_async(List ts_path_lst, List data_type_lst, + List encoding_lst, List compressor_lst) + { var client = client_lst.Take(); - var data_types = data_type_lst.ConvertAll(x => (int)x); - var encodings = encoding_lst.ConvertAll(x => (int)x); - var compressors = compressor_lst.ConvertAll(x => (int)x); + var data_types = data_type_lst.ConvertAll(x => (int) x); + var encodings = encoding_lst.ConvertAll(x => (int) x); + var compressors = compressor_lst.ConvertAll(x => (int) x); TSStatus status; var req = new TSCreateMultiTimeseriesReq(client.sessionId, ts_path_lst, data_types, encodings, compressors); - try{ + try + { status = await client.client.createMultiTimeseriesAsync(req); - } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("create multiple time series {0} failed", ts_path_lst); - throw new TException(err_msg, e); + throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("creating multiple time series {0}, server message is {1}", ts_path_lst, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_time_series_async(List path_list){ + + public async Task delete_time_series_async(List path_list) + { TSStatus status; var client = client_lst.Take(); - try{ + try + { status = await client.client.deleteTimeseriesAsync(client.sessionId, path_list); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("delete time series {0} failed", path_list); - throw new TException(err_msg, e); + throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("deleting multiple time series {0}, server message is {1}", path_list, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_time_series_async(string ts_path){ - return await delete_time_series_async(new List{ts_path}); + + public async Task delete_time_series_async(string ts_path) + { + return await delete_time_series_async(new List {ts_path}); } - public async Task check_time_series_exists_async(string ts_path){ + + public async Task check_time_series_exists_async(string ts_path) + { // TBD by dalong - try{ + try + { string sql = "SHOW TIMESERIES " + ts_path; var session_dataset = await execute_query_statement_async(sql); return session_dataset.has_next(); } - catch(TException e){ + catch (TException e) + { var err_msg = String.Format("could not check if certain time series exists"); throw new TException(err_msg, e); } } - public async Task delete_data_async(List ts_path_lst, long start_time, long end_time){ + + public async Task delete_data_async(List ts_path_lst, long start_time, long end_time) + { var client = client_lst.Take(); var req = new TSDeleteDataReq(client.sessionId, ts_path_lst, start_time, end_time); TSStatus status; - try{ + try + { status = await client.client.deleteDataAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("data deletion fails because"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("delete data from {0}, server message is {1}", ts_path_lst, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task insert_record_async(string device_id, RowRecord record){ + + public async Task insert_record_async(string device_id, RowRecord record) + { // TBD by Luzhan var client = client_lst.Take(); - var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), record.timestamp); + var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), + record.timestamp); TSStatus status; - try{ - status = await client.client.insertRecordAsync(req); + try + { + status = await client.client.insertRecordAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); Console.WriteLine(e); var err_msg = String.Format("Record insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, List values, long timestamp, long session_id){ - if(values.Count() != measurements.Count()){ + + public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, + List values, long timestamp, long session_id) + { + if (values.Count() != measurements.Count()) + { var err_msg = "length of data types does not equal to length of values!"; throw new TException(err_msg, null); } + return new TSInsertStringRecordReq(session_id, device_id, measurements, values, timestamp); } - public TSInsertRecordsReq gen_insert_records_req(List device_id, List rowRecords,long session_id){ + + public TSInsertRecordsReq gen_insert_records_req(List device_id, List rowRecords, + long session_id) + { //TODO var measurement_lst = rowRecords.Select(x => x.measurements).ToList(); var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); List values_lst_in_bytes = new List(); - foreach(var row in rowRecords){ + foreach (var row in rowRecords) + { values_lst_in_bytes.Add(row.ToBytes()); } + return new TSInsertRecordsReq(session_id, device_id, measurement_lst, values_lst_in_bytes, timestamp_lst); } - public async Task insert_records_async(List device_id,List rowRecords){ - + + public async Task insert_records_async(List device_id, List rowRecords) + { var client = client_lst.Take(); var req = gen_insert_records_req(device_id, rowRecords, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.insertRecordsAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Multiple records insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet, long session_id){ - return new TSInsertTabletReq(session_id, tablet.device_id, tablet.measurement_lst, tablet.get_binary_values(), tablet.get_binary_timestamps(), tablet.get_data_types(), tablet.row_number); + + public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet, long session_id) + { + return new TSInsertTabletReq(session_id, tablet.device_id, tablet.measurement_lst, + tablet.get_binary_values(), tablet.get_binary_timestamps(), tablet.get_data_types(), tablet.row_number); } - public async Task insert_tablet_async(Tablet tablet){ + + public async Task insert_tablet_async(Tablet tablet) + { var client = client_lst.Take(); var req = gen_insert_tablet_req(tablet, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.insertTabletAsync(req); - } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Tablet insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); - } - client_lst.Add(client); - + } + + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst, long session_id){ - List device_id_lst = new List(){}; - List> measurements_lst = new List>(){}; - List values_lst = new List(){}; - List timestamps_lst = new List(){}; - List> type_lst = new List>(){}; - List size_lst = new List(){}; - foreach(var tablet in tablet_lst){ + + public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst, long session_id) + { + List device_id_lst = new List() { }; + List> measurements_lst = new List>() { }; + List values_lst = new List() { }; + List timestamps_lst = new List() { }; + List> type_lst = new List>() { }; + List size_lst = new List() { }; + foreach (var tablet in tablet_lst) + { List data_type_values = tablet.get_data_types(); device_id_lst.Add(tablet.device_id); measurements_lst.Add(tablet.measurement_lst); @@ -435,190 +590,250 @@ public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst, long s type_lst.Add(data_type_values); size_lst.Add(tablet.row_number); } - return new TSInsertTabletsReq(session_id, device_id_lst, measurements_lst, values_lst, timestamps_lst, type_lst, size_lst); + + return new TSInsertTabletsReq(session_id, device_id_lst, measurements_lst, values_lst, timestamps_lst, + type_lst, size_lst); } - public async Task insert_tablets_async(List tablet_lst){ + + public async Task insert_tablets_async(List tablet_lst) + { var client = client_lst.Take(); var req = gen_insert_tablets_req(tablet_lst, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.insertTabletsAsync(req); - } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Multiple tablets insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert multiple tablets, message: {0}", status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task insert_records_of_one_device_async(string device_id, List rowRecords){ - + + public async Task insert_records_of_one_device_async(string device_id, List rowRecords) + { var sorted_row_records = rowRecords.OrderBy(x => x.timestamp).ToList(); return await insert_records_of_one_device_sorted_async(device_id, sorted_row_records); - } - public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, List rowRecords, long session_id){ - List binary_value_lst = new List(){}; - foreach(var row in rowRecords){ + public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, + List rowRecords, long session_id) + { + List binary_value_lst = new List() { }; + foreach (var row in rowRecords) + { binary_value_lst.Add(row.ToBytes()); } + var measurements_lst = rowRecords.Select(x => x.measurements).ToList(); var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); - return new TSInsertRecordsOfOneDeviceReq(session_id, device_id, measurements_lst, binary_value_lst, timestamp_lst); + return new TSInsertRecordsOfOneDeviceReq(session_id, device_id, measurements_lst, binary_value_lst, + timestamp_lst); } - public async Task insert_records_of_one_device_sorted_async(string device_id, List rowRecords){ + + public async Task insert_records_of_one_device_sorted_async(string device_id, List rowRecords) + { var client = client_lst.Take(); var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); - if(!util_functions.check_sorted(timestamp_lst)){ + if (!util_functions.check_sorted(timestamp_lst)) + { var err_msg = "insert records of one device error: timestamp not sorted"; throw new TException(err_msg, null); } - var req = gen_insert_records_of_one_device_request(device_id,rowRecords, client.sessionId); + + var req = gen_insert_records_of_one_device_request(device_id, rowRecords, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.insertRecordsOfOneDeviceAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Sorted records of one device insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert records of one device, message: {0}", status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_record_async(string device_id, RowRecord record){ + + public async Task test_insert_record_async(string device_id, RowRecord record) + { var client = client_lst.Take(); - var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), record.timestamp); + var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), + record.timestamp); TSStatus status; - try{ - status = await client.client.testInsertRecordAsync(req); + try + { + status = await client.client.testInsertRecordAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); Console.WriteLine(e); var err_msg = String.Format("Record insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_records_async(List device_id,List rowRecords){ + + public async Task test_insert_records_async(List device_id, List rowRecords) + { var client = client_lst.Take(); var req = gen_insert_records_req(device_id, rowRecords, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.testInsertRecordsAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Multiple records insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_tablet_async(Tablet tablet){ + + public async Task test_insert_tablet_async(Tablet tablet) + { var client = client_lst.Take(); var req = gen_insert_tablet_req(tablet, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.testInsertTabletAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Tablet insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); - } - client_lst.Add(client); - + } + + client_lst.Add(client); + return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_tablets_async(List tablet_lst){ + + public async Task test_insert_tablets_async(List tablet_lst) + { var client = client_lst.Take(); var req = gen_insert_tablets_req(tablet_lst, client.sessionId); TSStatus status; - try{ + try + { status = await client.client.testInsertTabletsAsync(req); } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("Multiple tablets insertion failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("insert multiple tablets, message: {0}", status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task execute_query_statement_async(string sql){ + + public async Task execute_query_statement_async(string sql) + { TSExecuteStatementResp resp; TSStatus status; var client = client_lst.Take(); var req = new TSExecuteStatementReq(client.sessionId, sql, client.statementId); req.FetchSize = this.fetch_size; - try{ - resp= await client.client.executeQueryStatementAsync(req); + try + { + resp = await client.client.executeQueryStatementAsync(req); status = resp.Status; } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("could not execute query statement"); throw new TException(err_msg, e); } - if(util_functions.verify_success(status, SUCCESS_CODE) == -1){ + + if (util_functions.verify_success(status, SUCCESS_CODE) == -1) + { client_lst.Add(client); throw new TException("execute query failed", null); } + client_lst.Add(client); - + var session_dataset = new SessionDataSet(sql, resp, client_lst); session_dataset.fetch_size = fetch_size; return session_dataset; } - public async Task execute_non_query_statement_async(string sql){ + + public async Task execute_non_query_statement_async(string sql) + { TSExecuteStatementResp resp; TSStatus status; var client = client_lst.Take(); var req = new TSExecuteStatementReq(client.sessionId, sql, client.statementId); - try{ + try + { resp = await client.client.executeUpdateStatementAsync(req); status = resp.Status; } - catch(TException e){ + catch (TException e) + { client_lst.Add(client); var err_msg = String.Format("execution of non-query statement failed"); throw new TException(err_msg, e); } - if(debug_mode){ + + if (debug_mode) + { _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); } + client_lst.Add(client); return util_functions.verify_success(status, SUCCESS_CODE); } - - - } - - -} +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Utils.cs b/src/Apache.IoTDB/Utils.cs new file mode 100644 index 0000000..14765bb --- /dev/null +++ b/src/Apache.IoTDB/Utils.cs @@ -0,0 +1,43 @@ +using System.Collections.Generic; + +namespace Apache.IoTDB +{ + public class Utils + { + public bool check_sorted(List timestamp_lst) + { + for (int i = 1; i < timestamp_lst.Count; i++) + { + if (timestamp_lst[i] < timestamp_lst[i - 1]) + { + return false; + } + } + + return true; + } + + public int verify_success(TSStatus status, int SUCCESS_CODE) + { + if (status.__isset.subStatus) + { + foreach (var sub_status in status.SubStatus) + { + if (verify_success(sub_status, SUCCESS_CODE) != 0) + { + return -1; + } + } + + return 0; + } + + if (status.Code == SUCCESS_CODE) + { + return 0; + } + + return -1; + } + } +} \ No newline at end of file diff --git a/tests/Apache.IoTDB.Integration.Tests/Apache.IoTDB.Integration.Tests.csproj b/tests/Apache.IoTDB.Integration.Tests/Apache.IoTDB.Integration.Tests.csproj new file mode 100644 index 0000000..3148e00 --- /dev/null +++ b/tests/Apache.IoTDB.Integration.Tests/Apache.IoTDB.Integration.Tests.csproj @@ -0,0 +1,19 @@ + + + + net5.0 + + false + + + + + + + + + + + + + diff --git a/tests/Apache.IoTDB.Integration.Tests/Tests.cs b/tests/Apache.IoTDB.Integration.Tests/Tests.cs new file mode 100644 index 0000000..6dec038 --- /dev/null +++ b/tests/Apache.IoTDB.Integration.Tests/Tests.cs @@ -0,0 +1,18 @@ +using NUnit.Framework; + +namespace Apache.IoTDB.Integration.Tests +{ + public class Tests + { + [SetUp] + public void Setup() + { + } + + [Test] + public void Test1() + { + Assert.Pass(); + } + } +} \ No newline at end of file diff --git a/tests/Apache.IoTDB.Tests/Apache.IoTDB.Tests.csproj b/tests/Apache.IoTDB.Tests/Apache.IoTDB.Tests.csproj new file mode 100644 index 0000000..3148e00 --- /dev/null +++ b/tests/Apache.IoTDB.Tests/Apache.IoTDB.Tests.csproj @@ -0,0 +1,19 @@ + + + + net5.0 + + false + + + + + + + + + + + + + diff --git a/tests/Apache.IoTDB.Tests/Tests.cs b/tests/Apache.IoTDB.Tests/Tests.cs new file mode 100644 index 0000000..e09bce5 --- /dev/null +++ b/tests/Apache.IoTDB.Tests/Tests.cs @@ -0,0 +1,18 @@ +using NUnit.Framework; + +namespace Apache.IoTDB.Tests +{ + public class Tests + { + [SetUp] + public void Setup() + { + } + + [Test] + public void Test1() + { + Assert.Pass(); + } + } +} \ No newline at end of file From 801ae170fc940ae0296893c521464aba31eff7f8 Mon Sep 17 00:00:00 2001 From: "artyomt7777@gmail.com" Date: Sun, 16 May 2021 20:28:05 +0300 Subject: [PATCH 117/214] refactor names and add finally section --- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 308 ++--- src/Apache.IoTDB/Client.cs | 15 +- src/Apache.IoTDB/ConcurrentClientQueue.cs | 26 +- src/Apache.IoTDB/DataStructure/ByteBuffer.cs | 192 ++-- src/Apache.IoTDB/DataStructure/RowRecord.cs | 151 ++- .../DataStructure/SessionDataSet.cs | 308 +++-- src/Apache.IoTDB/DataStructure/Tablet.cs | 257 +++-- src/Apache.IoTDB/IoTDBConstants.cs | 6 +- src/Apache.IoTDB/SessionPool.cs | 1014 +++++++++-------- src/Apache.IoTDB/Utils.cs | 18 +- 10 files changed, 1171 insertions(+), 1124 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index 45752ab..31ba6d3 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -59,22 +59,22 @@ public async Task TestInsertRecord() { var session_pool = new SessionPool(host, port, pool_size); int status; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -95,7 +95,7 @@ public async Task TestInsertRecord() var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestInsertRecordAsync Passed"); } @@ -103,7 +103,7 @@ public async Task TestCreateMultiTimeSeries() { // by Luzhan var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.open(false); + await session_pool.Open(false); var status = 0; if (debug) session_pool.open_debug_mode(); @@ -137,14 +137,14 @@ public async Task TestCreateMultiTimeSeries() System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestCreateMultiTimeSeries Passed!"); } public async Task TestDeleteTimeSeries() { var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.open(false); + await session_pool.Open(false); var status = 0; if (debug) session_pool.open_debug_mode(); @@ -180,20 +180,20 @@ public async Task TestDeleteTimeSeries() System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestDeleteTimeSeries Passed!"); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); + await session_pool.Close(); } public async Task TestGetTimeZone() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session_pool.is_open()); - var time_zone = await session_pool.get_time_zone(); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var time_zone = await session_pool.GetTimeZone(); System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestGetTimeZone Passed!"); } @@ -201,17 +201,17 @@ public async Task TestInsertStrRecord() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -225,9 +225,9 @@ public async Task TestInsertStrRecord() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); var tasks = new List>(); // large data test @@ -248,47 +248,47 @@ public async Task TestInsertStrRecord() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestInsertStrRecord Passed!"); } public async Task TestInsertRecords() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); @@ -325,9 +325,9 @@ public async Task TestInsertRecords() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); Console.WriteLine(status); // large data test @@ -355,45 +355,45 @@ public async Task TestInsertRecords() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestInsertRecords Passed!"); } public async Task TestInsertRecordsOfOneDevice() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; @@ -426,9 +426,9 @@ await session_pool.create_time_series_async( var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); // large data test rowRecords = new List() { }; var tasks = new List>(); @@ -449,16 +449,16 @@ await session_pool.create_time_series_async( var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); } @@ -466,10 +466,10 @@ public async Task TestInsertTablet() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; var measurement_lst = new List @@ -486,9 +486,9 @@ public async Task TestInsertTablet() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); // large data test value_lst = new List>() { }; timestamp_lst = new List() { }; @@ -516,16 +516,16 @@ public async Task TestInsertTablet() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestInsertTablet Passed!"); } @@ -533,10 +533,10 @@ public async Task TestInsertTablets() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = new List() { @@ -575,15 +575,15 @@ public async Task TestInsertTablets() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); // large data test @@ -611,15 +611,15 @@ public async Task TestInsertTablets() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestInsertTablets Passed!"); } @@ -627,65 +627,65 @@ public async Task TestSetAndDeleteStorageGroup() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert( - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); + await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); System.Diagnostics.Debug.Assert( await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } public async Task TestCreateTimeSeries() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.create_time_series_async( + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestCreateTimeSeries Passed!"); } public async Task TestDeleteStorageGroups() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - await session_pool.set_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); + await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); + await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); + await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); var group_names = new List() { }; group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); System.Diagnostics.Debug.Assert(await session_pool.delete_storage_groups_async(group_names) == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestDeleteStorageGroups Passed!"); } @@ -693,12 +693,12 @@ public async Task TestCheckTimeSeriesExists() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.create_time_series_async( + await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); var ifExist_1 = await session_pool.check_time_series_exists_async( @@ -708,21 +708,21 @@ await session_pool.create_time_series_async( System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestCheckTimeSeriesExists Passed!"); } public async Task TestSetTimeZone() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - System.Diagnostics.Debug.Assert(session_pool.is_open()); - await session_pool.set_time_zone("GMT+8:00"); - System.Diagnostics.Debug.Assert(await session_pool.get_time_zone() == "GMT+8:00"); - await session_pool.close(); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.SetTimeZone("GMT+8:00"); + System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); + await session_pool.Close(); Console.WriteLine("TestSetTimeZone Passed!"); } @@ -730,21 +730,21 @@ public async Task TestDeleteData() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -767,9 +767,9 @@ public async Task TestDeleteData() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); var ts_path_lst = new List() { "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", @@ -779,12 +779,12 @@ public async Task TestDeleteData() res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestDeleteData Passed!"); } @@ -792,22 +792,22 @@ public async Task TestTestInsertRecord() { var session_pool = new SessionPool(host, port, pool_size); int status; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -828,40 +828,40 @@ public async Task TestTestInsertRecord() var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestTestInsertRecordAsync Passed"); } public async Task TestTestInsertRecords() { var session_pool = new SessionPool(host, port, pool_size); - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.create_time_series_async( + status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); @@ -898,9 +898,9 @@ public async Task TestTestInsertRecords() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); // large data test device_id = new List() { }; @@ -927,16 +927,16 @@ public async Task TestTestInsertRecords() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestTestInsertRecords Passed!"); } @@ -944,10 +944,10 @@ public async Task TestTestInsertTablet() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; var measurement_lst = new List @@ -964,9 +964,9 @@ public async Task TestTestInsertTablet() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); // large data test value_lst = new List>() { }; timestamp_lst = new List() { }; @@ -994,15 +994,15 @@ public async Task TestTestInsertTablet() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestTestInsertTablet Passed!"); } @@ -1010,10 +1010,10 @@ public async Task TestTestInsertTablets() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = new List() { @@ -1052,15 +1052,15 @@ public async Task TestTestInsertTablets() var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); // large data test @@ -1088,15 +1088,15 @@ public async Task TestTestInsertTablets() var res_count = 0; while (res.has_next()) { - res.next(); + res.Next(); res_count += 1; } - await res.close(); + await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestTestInsertTablets Passed!"); } @@ -1104,10 +1104,10 @@ public async Task TestNonSql() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.execute_non_query_statement_async( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); @@ -1129,12 +1129,12 @@ await session_pool.execute_non_query_statement_async( var res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("TestNonSql Passed"); } @@ -1142,10 +1142,10 @@ public async Task TestSqlQuery() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; - await session_pool.open(false); + await session_pool.Open(false); if (debug) session_pool.open_debug_mode(); - System.Diagnostics.Debug.Assert(session_pool.is_open()); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.execute_non_query_statement_async( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); @@ -1166,37 +1166,37 @@ await session_pool.execute_non_query_statement_async( var res = await session_pool.execute_query_statement_async("show timeseries root"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); res = await session_pool.execute_query_statement_async("show devices"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); Console.WriteLine("SHOW DEVICES sql passed!"); res = await session_pool.execute_query_statement_async("COUNT TIMESERIES root"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); Console.WriteLine("COUNT TIMESERIES root sql Passed"); res = await session_pool.execute_query_statement_async("select * from root.ln.wf01 where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); Console.WriteLine("SELECT sql Passed"); res = await session_pool.execute_query_statement_async( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.next()); + while (res.has_next()) Console.WriteLine(res.Next()); - await res.close(); + await res.Close(); status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.close(); + await session_pool.Close(); Console.WriteLine("SELECT sql Passed"); } } diff --git a/src/Apache.IoTDB/Client.cs b/src/Apache.IoTDB/Client.cs index 7b5c36c..29d5106 100644 --- a/src/Apache.IoTDB/Client.cs +++ b/src/Apache.IoTDB/Client.cs @@ -4,8 +4,17 @@ namespace Apache.IoTDB { public class Client { - public TSIService.Client client; - public long sessionId, statementId; - public TFramedTransport transport; + public TSIService.Client ServiceClient { get; } + public long SessionId { get; } + public long StatementId { get; } + public TFramedTransport Transport { get; } + + public Client(TSIService.Client client, long sessionId, long statementId, TFramedTransport transport) + { + ServiceClient = client; + SessionId = sessionId; + StatementId = statementId; + Transport = transport; + } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/ConcurrentClientQueue.cs b/src/Apache.IoTDB/ConcurrentClientQueue.cs index 3c79e8c..6bdc8cd 100644 --- a/src/Apache.IoTDB/ConcurrentClientQueue.cs +++ b/src/Apache.IoTDB/ConcurrentClientQueue.cs @@ -6,37 +6,37 @@ namespace Apache.IoTDB { public class ConcurrentClientQueue { - public ConcurrentQueue client_queue; + public ConcurrentQueue ClientQueue { get; } public ConcurrentClientQueue(List clients) { - client_queue = new ConcurrentQueue(clients); + ClientQueue = new ConcurrentQueue(clients); } public ConcurrentClientQueue() { - client_queue = new ConcurrentQueue(); + ClientQueue = new ConcurrentQueue(); } public void Add(Client client) { - Monitor.Enter(client_queue); - client_queue.Enqueue(client); - Monitor.Pulse(client_queue); - Monitor.Exit(client_queue); + Monitor.Enter(ClientQueue); + ClientQueue.Enqueue(client); + Monitor.Pulse(ClientQueue); + Monitor.Exit(ClientQueue); } public Client Take() { - Client client; - Monitor.Enter(client_queue); - if (client_queue.IsEmpty) + Monitor.Enter(ClientQueue); + + if (ClientQueue.IsEmpty) { - Monitor.Wait(client_queue); + Monitor.Wait(ClientQueue); } - client_queue.TryDequeue(out client); - Monitor.Exit(client_queue); + ClientQueue.TryDequeue(out var client); + Monitor.Exit(ClientQueue); return client; } } diff --git a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs index b3be01f..5f720ee 100644 --- a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs +++ b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs @@ -1,195 +1,199 @@ using System; using System.Linq; +using System.Text; namespace Apache.IoTDB.DataStructure { public class ByteBuffer { - private byte[] buffer; - private int write_pos = 0, read_pos = 0; - private int total_length; - private bool is_little_endian; + private byte[] _buffer; + private int _writePos; + private int _readPos; + private int _totalLength; + private readonly bool _isLittleEndian = BitConverter.IsLittleEndian; public ByteBuffer(byte[] buffer) { - this.buffer = buffer; - read_pos = 0; - write_pos = buffer.Length; - total_length = buffer.Length; - is_little_endian = BitConverter.IsLittleEndian; + _buffer = buffer; + _readPos = 0; + _writePos = buffer.Length; + _totalLength = buffer.Length; } public ByteBuffer(int reserve = 1) { - buffer = new byte[reserve]; - write_pos = 0; - read_pos = 0; - total_length = reserve; - is_little_endian = BitConverter.IsLittleEndian; + _buffer = new byte[reserve]; + _writePos = 0; + _readPos = 0; + _totalLength = reserve; } public bool has_remaining() { - return read_pos < write_pos; + return _readPos < _writePos; } // these for read public byte get_byte() { - var byte_val = buffer[read_pos]; - read_pos += 1; - return byte_val; + var byteVal = _buffer[_readPos]; + _readPos += 1; + return byteVal; } public bool get_bool() { - var bool_value = BitConverter.ToBoolean(buffer, read_pos); - read_pos += 1; - return bool_value; + var boolValue = BitConverter.ToBoolean(_buffer, _readPos); + _readPos += 1; + return boolValue; } public int get_int() { - var int_buff = buffer[read_pos..(read_pos + 4)]; - if (is_little_endian) int_buff = int_buff.Reverse().ToArray(); + var intBuff = _buffer[_readPos..(_readPos + 4)]; + + if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); - var int_value = BitConverter.ToInt32(int_buff); - read_pos += 4; - return int_value; + var intValue = BitConverter.ToInt32(intBuff); + _readPos += 4; + return intValue; } public long get_long() { - var long_buff = buffer[read_pos..(read_pos + 8)]; - if (is_little_endian) long_buff = long_buff.Reverse().ToArray(); + var longBuff = _buffer[_readPos..(_readPos + 8)]; + + if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); - var long_value = BitConverter.ToInt64(long_buff); - read_pos += 8; - return long_value; + var longValue = BitConverter.ToInt64(longBuff); + _readPos += 8; + return longValue; } public float get_float() { - var float_buff = buffer[read_pos..(read_pos + 4)]; - if (is_little_endian) float_buff = float_buff.Reverse().ToArray(); + var floatBuff = _buffer[_readPos..(_readPos + 4)]; + + if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); - var float_value = BitConverter.ToSingle(float_buff); - read_pos += 4; - return float_value; + var floatValue = BitConverter.ToSingle(floatBuff); + _readPos += 4; + return floatValue; } public double get_double() { - var double_buff = buffer[read_pos..(read_pos + 8)]; - if (is_little_endian) double_buff = double_buff.Reverse().ToArray(); + var doubleBuff = _buffer[_readPos..(_readPos + 8)]; + + if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); - var double_value = BitConverter.ToDouble(double_buff); - read_pos += 8; - return double_value; + var doubleValue = BitConverter.ToDouble(doubleBuff); + _readPos += 8; + return doubleValue; } public string get_str() { var length = get_int(); - var str_buff = buffer[read_pos..(read_pos + length)]; - var str_value = System.Text.Encoding.UTF8.GetString(str_buff); - read_pos += length; - return str_value; + var strBuff = _buffer[_readPos..(_readPos + length)]; + var strValue = Encoding.UTF8.GetString(strBuff); + _readPos += length; + return strValue; } public byte[] get_buffer() { - return buffer[0..write_pos]; + return _buffer[.._writePos]; } - private int max(int a, int b) + private void extend_buffer(int spaceNeed) { - if (a <= b) return b; - - return a; - } - - private void extend_buffer(int space_need) - { - if (write_pos + space_need >= total_length) + if (_writePos + spaceNeed >= _totalLength) { - total_length = max(space_need, total_length); - var new_buffer = new byte[total_length * 2]; - buffer.CopyTo(new_buffer, 0); - buffer = new_buffer; - total_length = 2 * total_length; + _totalLength = Math.Max(spaceNeed, _totalLength); + var newBuffer = new byte[_totalLength * 2]; + _buffer.CopyTo(newBuffer, 0); + _buffer = newBuffer; + _totalLength = 2 * _totalLength; } } // these for write public void add_bool(bool value) { - var bool_buffer = BitConverter.GetBytes(value); - if (is_little_endian) bool_buffer = bool_buffer.Reverse().ToArray(); + var boolBuffer = BitConverter.GetBytes(value); + + if (_isLittleEndian) boolBuffer = boolBuffer.Reverse().ToArray(); - extend_buffer(bool_buffer.Length); - bool_buffer.CopyTo(buffer, write_pos); - write_pos += bool_buffer.Length; + extend_buffer(boolBuffer.Length); + boolBuffer.CopyTo(_buffer, _writePos); + _writePos += boolBuffer.Length; } public void add_int(int value) { - var int_buff = BitConverter.GetBytes(value); - if (is_little_endian) int_buff = int_buff.Reverse().ToArray(); + var intBuff = BitConverter.GetBytes(value); + + if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); - extend_buffer(int_buff.Length); - int_buff.CopyTo(buffer, write_pos); - write_pos += int_buff.Length; + extend_buffer(intBuff.Length); + intBuff.CopyTo(_buffer, _writePos); + _writePos += intBuff.Length; } public void add_long(long value) { - var long_buff = BitConverter.GetBytes(value); - if (is_little_endian) long_buff = long_buff.Reverse().ToArray(); + var longBuff = BitConverter.GetBytes(value); + + if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); - extend_buffer(long_buff.Length); - long_buff.CopyTo(buffer, write_pos); - write_pos += long_buff.Length; + extend_buffer(longBuff.Length); + longBuff.CopyTo(_buffer, _writePos); + _writePos += longBuff.Length; } public void add_float(float value) { - var float_buff = BitConverter.GetBytes(value); - if (is_little_endian) float_buff = float_buff.Reverse().ToArray(); + var floatBuff = BitConverter.GetBytes(value); + + if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); - extend_buffer(float_buff.Length); - float_buff.CopyTo(buffer, write_pos); - write_pos += float_buff.Length; + extend_buffer(floatBuff.Length); + floatBuff.CopyTo(_buffer, _writePos); + _writePos += floatBuff.Length; } public void add_double(double value) { - var double_buff = BitConverter.GetBytes(value); - if (is_little_endian) double_buff = double_buff.Reverse().ToArray(); + var doubleBuff = BitConverter.GetBytes(value); + + if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); - extend_buffer(double_buff.Length); - double_buff.CopyTo(buffer, write_pos); - write_pos += double_buff.Length; + extend_buffer(doubleBuff.Length); + doubleBuff.CopyTo(_buffer, _writePos); + _writePos += doubleBuff.Length; } public void add_str(string value) { add_int(value.Length); - var str_buf = System.Text.Encoding.UTF8.GetBytes(value); + + var strBuf = Encoding.UTF8.GetBytes(value); - extend_buffer(str_buf.Length); - str_buf.CopyTo(buffer, write_pos); - write_pos += str_buf.Length; + extend_buffer(strBuf.Length); + strBuf.CopyTo(_buffer, _writePos); + _writePos += strBuf.Length; } public void add_char(char value) { - var char_buf = BitConverter.GetBytes(value); - if (is_little_endian) char_buf = char_buf.Reverse().ToArray(); + var charBuf = BitConverter.GetBytes(value); + + if (_isLittleEndian) charBuf = charBuf.Reverse().ToArray(); - extend_buffer(char_buf.Length); - char_buf.CopyTo(buffer, write_pos); - write_pos += char_buf.Length; + extend_buffer(charBuf.Length); + charBuf.CopyTo(_buffer, _writePos); + _writePos += charBuf.Length; } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/RowRecord.cs b/src/Apache.IoTDB/DataStructure/RowRecord.cs index 348637d..6b3fea9 100644 --- a/src/Apache.IoTDB/DataStructure/RowRecord.cs +++ b/src/Apache.IoTDB/DataStructure/RowRecord.cs @@ -1,50 +1,50 @@ using System; using System.Collections.Generic; +using System.Linq; using Thrift; namespace Apache.IoTDB.DataStructure { public class RowRecord { - public long timestamp { get; set; } - public List values { get; set; } - public List measurements { get; set; } + public long Timestamps { get; } + public List Values { get; } + public List Measurements { get; } - public RowRecord(long timestamp, List values, List measurements) + public RowRecord(long timestamps, List values, List measurements) { - this.timestamp = timestamp; - this.values = values; - this.measurements = measurements; + Timestamps = timestamps; + Values = values; + Measurements = measurements; } - public void append(string measurement, Object value) + public void Append(string measurement, object value) { - values.Add(value); - measurements.Add(measurement); + Values.Add(value); + Measurements.Add(measurement); } public DateTime get_date_time() { - return DateTimeOffset.FromUnixTimeMilliseconds(timestamp).DateTime.ToLocalTime(); - ; + return DateTimeOffset.FromUnixTimeMilliseconds(Timestamps).DateTime.ToLocalTime(); } public override string ToString() { var str = "TimeStamp"; - foreach (var measurement in measurements) + foreach (var measurement in Measurements) { str += "\t\t"; - str += measurement.ToString(); + str += measurement; } str += "\n"; - str += timestamp.ToString(); - foreach (var row_value in values) + str += Timestamps.ToString(); + foreach (var rowValue in Values) { str += "\t\t"; - str += row_value.ToString(); + str += rowValue.ToString(); } return str; @@ -52,83 +52,74 @@ public override string ToString() public List get_datatypes() { - List data_type_values = new List() { }; - foreach (var value in values) + var dataTypeValues = new List(); + + foreach (var valueType in Values.Select(value => value)) { - var value_type = value.GetType(); - if (value_type.Equals(typeof(bool))) + switch (valueType) { - data_type_values.Add((int) TSDataType.BOOLEAN); - } - else if (value_type.Equals(typeof(Int32))) - { - data_type_values.Add((int) TSDataType.INT32); - } - else if (value_type.Equals(typeof(Int64))) - { - data_type_values.Add((int) TSDataType.INT64); - } - else if (value_type.Equals(typeof(float))) - { - data_type_values.Add((int) TSDataType.FLOAT); - } - else if (value_type.Equals(typeof(double))) - { - data_type_values.Add((int) TSDataType.DOUBLE); - } - else if (value_type.Equals(typeof(string))) - { - data_type_values.Add((int) TSDataType.TEXT); + case bool _: + dataTypeValues.Add((int) TSDataType.BOOLEAN); + break; + case int _: + dataTypeValues.Add((int) TSDataType.INT32); + break; + case long _: + dataTypeValues.Add((int) TSDataType.INT64); + break; + case float _: + dataTypeValues.Add((int) TSDataType.FLOAT); + break; + case double _: + dataTypeValues.Add((int) TSDataType.DOUBLE); + break; + case string _: + dataTypeValues.Add((int) TSDataType.TEXT); + break; } } - return data_type_values; + return dataTypeValues; } public byte[] ToBytes() { - ByteBuffer buffer = new ByteBuffer(values.Count * 8); - foreach (var value in values) + var buffer = new ByteBuffer(Values.Count * 8); + + foreach (var value in Values) { - if (value.GetType().Equals(typeof(bool))) - { - buffer.add_char((char) TSDataType.BOOLEAN); - buffer.add_bool((bool) value); - } - else if ((value.GetType().Equals(typeof(Int32)))) - { - buffer.add_char((char) TSDataType.INT32); - buffer.add_int((int) value); - } - else if ((value.GetType().Equals(typeof(Int64)))) - { - buffer.add_char((char) TSDataType.INT64); - buffer.add_long((long) value); - } - else if ((value.GetType().Equals(typeof(double)))) - { - buffer.add_char((char) TSDataType.DOUBLE); - buffer.add_double((double) value); - } - else if ((value.GetType().Equals(typeof(float)))) - { - buffer.add_char((char) TSDataType.FLOAT); - buffer.add_float((float) value); - } - else if ((value.GetType().Equals(typeof(string)))) - { - buffer.add_char((char) TSDataType.TEXT); - buffer.add_str((string) value); - } - else + switch (value) { - var message = String.Format("Unsupported data type:{0}", value.GetType().ToString()); - throw new TException(message, null); + case bool b: + buffer.add_char((char) TSDataType.BOOLEAN); + buffer.add_bool(b); + break; + case int i: + buffer.add_char((char) TSDataType.INT32); + buffer.add_int(i); + break; + case long l: + buffer.add_char((char) TSDataType.INT64); + buffer.add_long(l); + break; + case double d: + buffer.add_char((char) TSDataType.DOUBLE); + buffer.add_double(d); + break; + case float f: + buffer.add_char((char) TSDataType.FLOAT); + buffer.add_float(f); + break; + case string s: + buffer.add_char((char) TSDataType.TEXT); + buffer.add_str(s); + break; + default: + throw new TException($"Unsupported data type:{value.GetType()}", null); } } - var buf = buffer.get_buffer(); - return buf; + return buffer.get_buffer();; } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index b9fb162..a175e65 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; using Thrift; @@ -7,131 +8,111 @@ namespace Apache.IoTDB.DataStructure { public class SessionDataSet { - private long query_id; - - private string sql; - List column_name_lst; - Dictionary column_name_index_map; - Dictionary duplicate_location; - List column_type_lst; - TSQueryDataSet query_dataset; - byte[] current_bitmap; - int column_size; - List value_buffer_lst, bitmap_buffer_lst; - ByteBuffer time_buffer; - ConcurrentClientQueue clientQueue; - - private string TIMESTAMP_STR - { - get { return "Time"; } - } - - private int START_INDEX - { - get { return 2; } - } - - private int FLAG - { - get { return 0x80; } - } - - private int default_timeout - { - get { return 10000; } - } - - public int fetch_size { get; set; } - private int row_index; - - private bool has_catched_result; - private RowRecord cached_row_record; - private bool is_closed = false; - + private readonly long _queryId; + private readonly string _sql; + private readonly List _columnNames; + private readonly Dictionary _columnNameIndexMap; + private readonly Dictionary _duplicateLocation; + private readonly List _columnTypeLst; + private TSQueryDataSet _queryDataset; + private readonly byte[] _currentBitmap; + private readonly int _columnSize; + private List _valueBufferLst, _bitmapBufferLst; + private ByteBuffer _timeBuffer; + private readonly ConcurrentClientQueue _clientQueue; + private int _rowIndex; + private bool _hasCatchedResult; + private RowRecord _cachedRowRecord; + private readonly bool _isClosed = false; + + + private string TimestampStr => "Time"; + private int StartIndex => 2; + private int Flag => 0x80; + private int DefaultTimeout => 10000; + + public int FetchSize { get; set; } + public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQueue clientQueue) { - this.clientQueue = clientQueue; - this.sql = sql; - this.query_dataset = resp.QueryDataSet; - this.query_id = resp.QueryId; - this.column_size = resp.Columns.Count; - this.current_bitmap = new byte[this.column_size]; - this.column_name_lst = new List { }; - this.time_buffer = new ByteBuffer(query_dataset.Time); - this.column_name_index_map = new Dictionary { }; - this.column_type_lst = new List { }; - this.duplicate_location = new Dictionary { }; - this.value_buffer_lst = new List { }; - this.bitmap_buffer_lst = new List { }; + _clientQueue = clientQueue; + _sql = sql; + _queryDataset = resp.QueryDataSet; + _queryId = resp.QueryId; + _columnSize = resp.Columns.Count; + _currentBitmap = new byte[_columnSize]; + _columnNames = new List(); + _timeBuffer = new ByteBuffer(_queryDataset.Time); + _columnNameIndexMap = new Dictionary(); + _columnTypeLst = new List(); + _duplicateLocation = new Dictionary(); + _valueBufferLst = new List(); + _bitmapBufferLst = new List(); // some internal variable - this.has_catched_result = false; - this.row_index = 0; + _hasCatchedResult = false; + _rowIndex = 0; if (resp.ColumnNameIndexMap != null) { for (var index = 0; index < resp.Columns.Count; index++) { - this.column_name_lst.Add(""); - this.column_type_lst.Add(""); + _columnNames.Add(""); + _columnTypeLst.Add(""); } for (var index = 0; index < resp.Columns.Count; index++) { var name = resp.Columns[index]; - this.column_name_lst[resp.ColumnNameIndexMap[name]] = name; - this.column_type_lst[resp.ColumnNameIndexMap[name]] = resp.DataTypeList[index]; + _columnNames[resp.ColumnNameIndexMap[name]] = name; + _columnTypeLst[resp.ColumnNameIndexMap[name]] = resp.DataTypeList[index]; } } else { - this.column_name_lst = resp.Columns; - this.column_type_lst = resp.DataTypeList; + _columnNames = resp.Columns; + _columnTypeLst = resp.DataTypeList; } - for (int index = 0; index < this.column_name_lst.Count; index++) + for (int index = 0; index < _columnNames.Count; index++) { - var column_name = this.column_name_lst[index]; - if (this.column_name_index_map.ContainsKey(column_name)) + var columnName = _columnNames[index]; + if (_columnNameIndexMap.ContainsKey(columnName)) { - this.duplicate_location[index] = this.column_name_index_map[column_name]; + _duplicateLocation[index] = _columnNameIndexMap[columnName]; } else { - this.column_name_index_map[column_name] = index; + _columnNameIndexMap[columnName] = index; } - this.value_buffer_lst.Add(new ByteBuffer(this.query_dataset.ValueList[index])); - this.bitmap_buffer_lst.Add(new ByteBuffer(this.query_dataset.BitmapList[index])); + _valueBufferLst.Add(new ByteBuffer(_queryDataset.ValueList[index])); + _bitmapBufferLst.Add(new ByteBuffer(_queryDataset.BitmapList[index])); } } - public List get_column_names() + private List get_column_names() { - var name_lst = new List {"timestamp"}; - name_lst.AddRange(this.column_name_lst); - return name_lst; + var nameLst = new List {"timestamp"}; + nameLst.AddRange(_columnNames); + return nameLst; } public void show_table_names() { - var str = ""; - var name_lst = get_column_names(); - foreach (var name in name_lst) - { - str += name + "\t\t"; - } + var str = get_column_names() + .Aggregate("", (current, name) => current + (name + "\t\t")); Console.WriteLine(str); } public bool has_next() { - if (has_catched_result) + if (_hasCatchedResult) { return true; } // we have consumed all current data, fetch some more - if (!this.time_buffer.has_remaining()) + if (!_timeBuffer.has_remaining()) { if (!fetch_results()) { @@ -140,13 +121,13 @@ public bool has_next() } construct_one_row(); - has_catched_result = true; + _hasCatchedResult = true; return true; } - public RowRecord next() + public RowRecord Next() { - if (!has_catched_result) + if (!_hasCatchedResult) { if (!has_next()) { @@ -154,169 +135,164 @@ public RowRecord next() } } - has_catched_result = false; - return cached_row_record; + _hasCatchedResult = false; + return _cachedRowRecord; } private TSDataType get_data_type_from_str(string str) { - switch (str) + return str switch { - case "BOOLEAN": - return TSDataType.BOOLEAN; - case "INT32": - return TSDataType.INT32; - case "INT64": - return TSDataType.INT64; - case "FLOAT": - return TSDataType.FLOAT; - case "DOUBLE": - return TSDataType.DOUBLE; - case "TEXT": - return TSDataType.TEXT; - case "NULLTYPE": - return TSDataType.NONE; - default: - return TSDataType.TEXT; - } + "BOOLEAN" => TSDataType.BOOLEAN, + "INT32" => TSDataType.INT32, + "INT64" => TSDataType.INT64, + "FLOAT" => TSDataType.FLOAT, + "DOUBLE" => TSDataType.DOUBLE, + "TEXT" => TSDataType.TEXT, + "NULLTYPE" => TSDataType.NONE, + _ => TSDataType.TEXT + }; } - public void construct_one_row() + private void construct_one_row() { - List field_lst = new List { }; - for (int i = 0; i < this.column_size; i++) + List fieldLst = new List(); + + for (int i = 0; i < _columnSize; i++) { - if (duplicate_location.ContainsKey(i)) + if (_duplicateLocation.ContainsKey(i)) { - var field = field_lst[duplicate_location[i]]; - field_lst.Add(field); + var field = fieldLst[_duplicateLocation[i]]; + fieldLst.Add(field); } else { - ByteBuffer column_value_buffer = value_buffer_lst[i]; - ByteBuffer column_bitmap_buffer = bitmap_buffer_lst[i]; - if (row_index % 8 == 0) + var columnValueBuffer = _valueBufferLst[i]; + var columnBitmapBuffer = _bitmapBufferLst[i]; + + if (_rowIndex % 8 == 0) { - current_bitmap[i] = column_bitmap_buffer.get_byte(); + _currentBitmap[i] = columnBitmapBuffer.get_byte(); } - object local_field; - if (!is_null(i, row_index)) + object localField; + if (!is_null(i, _rowIndex)) { - TSDataType column_data_type = get_data_type_from_str(column_type_lst[i]); + var columnDataType = get_data_type_from_str(_columnTypeLst[i]); - switch (column_data_type) + switch (columnDataType) { case TSDataType.BOOLEAN: - local_field = column_value_buffer.get_bool(); + localField = columnValueBuffer.get_bool(); break; case TSDataType.INT32: - local_field = column_value_buffer.get_int(); + localField = columnValueBuffer.get_int(); break; case TSDataType.INT64: - local_field = column_value_buffer.get_long(); + localField = columnValueBuffer.get_long(); break; case TSDataType.FLOAT: - local_field = column_value_buffer.get_float(); + localField = columnValueBuffer.get_float(); break; case TSDataType.DOUBLE: - local_field = column_value_buffer.get_double(); + localField = columnValueBuffer.get_double(); break; case TSDataType.TEXT: - local_field = column_value_buffer.get_str(); + localField = columnValueBuffer.get_str(); break; default: - string err_msg = string.Format("value format not supported"); + string err_msg = "value format not supported"; throw new TException(err_msg, null); } - field_lst.Add(local_field); + fieldLst.Add(localField); } else { - local_field = null; - field_lst.Add("NULL"); + localField = null; + fieldLst.Add("NULL"); } } } - long timestamp = time_buffer.get_long(); - row_index += 1; - this.cached_row_record = new RowRecord(timestamp, field_lst, column_name_lst); + long timestamp = _timeBuffer.get_long(); + _rowIndex += 1; + _cachedRowRecord = new RowRecord(timestamp, fieldLst, _columnNames); } private bool is_null(int loc, int row_index) { - byte bitmap = current_bitmap[loc]; + byte bitmap = _currentBitmap[loc]; int shift = row_index % 8; - return ((FLAG >> shift) & bitmap) == 0; + return ((Flag >> shift) & bitmap) == 0; } private bool fetch_results() { - row_index = 0; - var my_client = clientQueue.Take(); - var req = new TSFetchResultsReq(my_client.sessionId, sql, fetch_size, query_id, true); - req.Timeout = default_timeout; + _rowIndex = 0; + var myClient = _clientQueue.Take(); + var req = new TSFetchResultsReq(myClient.SessionId, _sql, FetchSize, _queryId, true) + { + Timeout = DefaultTimeout + }; try { - var task = my_client.client.fetchResultsAsync(req); + var task = myClient.ServiceClient.fetchResultsAsync(req); task.Wait(); var resp = task.Result; + if (resp.HasResultSet) { - this.query_dataset = resp.QueryDataSet; + _queryDataset = resp.QueryDataSet; // reset buffer - this.time_buffer = new ByteBuffer(resp.QueryDataSet.Time); - this.value_buffer_lst = new List { }; - this.bitmap_buffer_lst = new List { }; - for (int index = 0; index < query_dataset.ValueList.Count; index++) + _timeBuffer = new ByteBuffer(resp.QueryDataSet.Time); + _valueBufferLst = new List(); + _bitmapBufferLst = new List(); + for (int index = 0; index < _queryDataset.ValueList.Count; index++) { - this.value_buffer_lst.Add(new ByteBuffer(query_dataset.ValueList[index])); - this.bitmap_buffer_lst.Add(new ByteBuffer(query_dataset.BitmapList[index])); + _valueBufferLst.Add(new ByteBuffer(_queryDataset.ValueList[index])); + _bitmapBufferLst.Add(new ByteBuffer(_queryDataset.BitmapList[index])); } // reset row index - row_index = 0; - } - - if (clientQueue != null) - { - clientQueue.Add(my_client); + _rowIndex = 0; } return resp.HasResultSet; } catch (TException e) { - if (clientQueue != null) - { - clientQueue.Add(my_client); - } - - var message = string.Format("Cannot fetch result from server, because of network connection"); - throw new TException(message, e); + throw new TException("Cannot fetch result from server, because of network connection", e); + } + finally + { + _clientQueue.Add(myClient); } } - public async Task close() + public async Task Close() { - if (!is_closed) + if (!_isClosed) { - var my_client = clientQueue.Take(); - var req = new TSCloseOperationReq(sessionId: my_client.sessionId) {QueryId = query_id}; + var myClient = _clientQueue.Take(); + var req = new TSCloseOperationReq(myClient.SessionId) + { + QueryId = _queryId + }; + try { - await my_client.client.closeOperationAsync(req); + await myClient.ServiceClient.closeOperationAsync(req); } catch (TException e) { - clientQueue.Add(my_client); throw new TException("Operation Handle Close Failed", e); } - - clientQueue.Add(my_client); + finally + { + _clientQueue.Add(myClient); + } } } } diff --git a/src/Apache.IoTDB/DataStructure/Tablet.cs b/src/Apache.IoTDB/DataStructure/Tablet.cs index 6c923c4..4f98818 100644 --- a/src/Apache.IoTDB/DataStructure/Tablet.cs +++ b/src/Apache.IoTDB/DataStructure/Tablet.cs @@ -1,4 +1,3 @@ -using System; using System.Collections.Generic; using System.Linq; using Thrift; @@ -21,47 +20,55 @@ namespace Apache.IoTDB.DataStructure */ public class Tablet { - public string device_id { get; } - public List measurement_lst { get; } - public List timestamp_lst; - public List> value_lst; - public int row_number { get; } - public int col_number; + private readonly List _timestamps; + private readonly List> _values; + + public string DeviceId { get; } + public List Measurements { get; } + public int RowNumber { get; } + public int ColNumber { get; } - public Utils util_functions = new Utils(); + private readonly Utils _utilFunctions = new Utils(); - public Tablet(string device_id, List measurement_lst, List> value_lst, - List timestamp_lst) + public Tablet( + string deviceId, + List measurements, + List> values, + List timestamps) { - if (timestamp_lst.Count != value_lst.Count) + if (timestamps.Count != values.Count) { - var err_msg = String.Format("Input error! len(timestamp_lst) does not equal to len(value_lst)!"); - throw new TException(err_msg, null); + throw new TException( + $"Input error. TimeStamp. Timestamps.Count({timestamps.Count}) does not equal to Values.Count({values.Count}).", + null); } - - if (!util_functions.check_sorted(timestamp_lst)) + + if (!_utilFunctions.IsSorted(timestamps)) { - var sorted = timestamp_lst.Select((x, index) => (timestamp: x, values: value_lst[index])) + var sorted = timestamps + .Select((x, index) => (timestamp: x, values: values[index])) .OrderBy(x => x.timestamp).ToList(); - this.timestamp_lst = sorted.Select(x => x.timestamp).ToList(); - this.value_lst = sorted.Select(x => x.values).ToList(); + + _timestamps = sorted.Select(x => x.timestamp).ToList(); + _values = sorted.Select(x => x.values).ToList(); } else { - this.value_lst = value_lst; - this.timestamp_lst = timestamp_lst; + _values = values; + _timestamps = timestamps; } - this.device_id = device_id; - this.measurement_lst = measurement_lst; - this.row_number = timestamp_lst.Count; - this.col_number = measurement_lst.Count; + DeviceId = deviceId; + Measurements = measurements; + RowNumber = timestamps.Count; + ColNumber = measurements.Count; } public byte[] get_binary_timestamps() { - ByteBuffer buffer = new ByteBuffer(new byte[] { }); - foreach (var timestamp in timestamp_lst) + var buffer = new ByteBuffer(new byte[] { }); + + foreach (var timestamp in _timestamps) { buffer.add_long(timestamp); } @@ -71,134 +78,142 @@ public byte[] get_binary_timestamps() public List get_data_types() { - List data_type_values = new List() { }; - foreach (var value in value_lst[0]) + var dataTypeValues = new List(); + + foreach (var valueType in _values[0].Select(value => value)) { - var value_type = value.GetType(); - if (value_type.Equals(typeof(bool))) - { - data_type_values.Add((int) TSDataType.BOOLEAN); - } - else if (value_type.Equals(typeof(Int32))) - { - data_type_values.Add((int) TSDataType.INT32); - } - else if (value_type.Equals(typeof(Int64))) - { - data_type_values.Add((int) TSDataType.INT64); - } - else if (value_type.Equals(typeof(float))) - { - data_type_values.Add((int) TSDataType.FLOAT); - } - else if (value_type.Equals(typeof(double))) - { - data_type_values.Add((int) TSDataType.DOUBLE); - } - else if (value_type.Equals(typeof(string))) - { - data_type_values.Add((int) TSDataType.TEXT); + switch (valueType) + { + case bool _: + dataTypeValues.Add((int) TSDataType.BOOLEAN); + break; + case int _: + dataTypeValues.Add((int) TSDataType.INT32); + break; + case long _: + dataTypeValues.Add((int) TSDataType.INT64); + break; + case float _: + dataTypeValues.Add((int) TSDataType.FLOAT); + break; + case double _: + dataTypeValues.Add((int) TSDataType.DOUBLE); + break; + case string _: + dataTypeValues.Add((int) TSDataType.TEXT); + break; } } - return data_type_values; + return dataTypeValues; } - public int estimate_buffer_size() + private int estimate_buffer_size() { - var estimate_size = 0; + var estimateSize = 0; + // estimate one row size - foreach (var value in value_lst[0]) + foreach (var value in _values[0]) { - var value_type = value.GetType(); - if (value_type.Equals(typeof(bool))) - { - estimate_size += 1; - } - else if (value_type.Equals(typeof(Int32))) - { - estimate_size += 4; - } - else if (value_type.Equals(typeof(Int64))) - { - estimate_size += 8; - } - else if (value_type.Equals(typeof(float))) - { - estimate_size += 4; - } - else if (value_type.Equals(typeof(double))) - { - estimate_size += 8; - } - else if (value_type.Equals(typeof(string))) - { - estimate_size += ((string) value).Length; + switch (value) + { + case bool _: + estimateSize += 1; + break; + case int _: + estimateSize += 4; + break; + case long _: + estimateSize += 8; + break; + case float _: + estimateSize += 4; + break; + case double _: + estimateSize += 8; + break; + case string s: + estimateSize += s.Length; + break; } } - estimate_size *= timestamp_lst.Count; - return estimate_size; + estimateSize *= _timestamps.Count; + return estimateSize; } public byte[] get_binary_values() { - var estimate_size = estimate_buffer_size(); - ByteBuffer buffer = new ByteBuffer(estimate_size); - for (int i = 0; i < col_number; i++) + var estimateSize = estimate_buffer_size(); + var buffer = new ByteBuffer(estimateSize); + + for (var i = 0; i < ColNumber; i++) { - var value_type = value_lst[0][i].GetType(); - if (value_type.Equals(typeof(bool))) + var value = _values[0][i]; + + switch (value) { - for (int j = 0; j < row_number; j++) + case bool _: { - buffer.add_bool((bool) value_lst[j][i]); + for (var j = 0; j < RowNumber; j++) + { + buffer.add_bool((bool) _values[j][i]); + } + + break; } - } - else if (value_type.Equals(typeof(Int32))) - { - for (int j = 0; j < row_number; j++) + case int _: { - buffer.add_int((Int32) value_lst[j][i]); + for (var j = 0; j < RowNumber; j++) + { + buffer.add_int((int) _values[j][i]); + } + + break; } - } - else if (value_type.Equals(typeof(Int64))) - { - for (int j = 0; j < row_number; j++) + case long _: { - buffer.add_long((Int64) value_lst[j][i]); + for (var j = 0; j < RowNumber; j++) + { + buffer.add_long((long) _values[j][i]); + } + + break; } - } - else if (value_type.Equals(typeof(float))) - { - for (int j = 0; j < row_number; j++) + case float _: { - buffer.add_float((float) value_lst[j][i]); + for (int j = 0; j < RowNumber; j++) + { + buffer.add_float((float) _values[j][i]); + } + + break; } - } - else if (value_type.Equals(typeof(double))) - { - for (int j = 0; j < row_number; j++) + case double _: { - buffer.add_double((double) value_lst[j][i]); + for (var j = 0; j < RowNumber; j++) + { + buffer.add_double((double) _values[j][i]); + } + + break; } - } - else if (value_type.Equals(typeof(string))) - { - for (int j = 0; j < row_number; j++) + case string _: { - buffer.add_str((string) value_lst[j][i]); + for (var j = 0; j < RowNumber; j++) + { + buffer.add_str((string) _values[j][i]); + } + + break; } - } - else - { - var message = String.Format("Unsupported data type {0}", value_type); - throw new TException(message, null); + default: + throw new TException($"Unsupported data type {value}", null); + } } - var buf = buffer.get_buffer(); - return buf; + return buffer.get_buffer(); } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/IoTDBConstants.cs b/src/Apache.IoTDB/IoTDBConstants.cs index 1f4eabc..a528d7a 100644 --- a/src/Apache.IoTDB/IoTDBConstants.cs +++ b/src/Apache.IoTDB/IoTDBConstants.cs @@ -11,7 +11,7 @@ public enum TSDataType // default value must be 0 NONE - }; + } public enum TSEncoding { @@ -27,7 +27,7 @@ public enum TSEncoding // default value must be 0 NONE - }; + } public enum Compressor { @@ -39,5 +39,5 @@ public enum Compressor PAA, PLA, LZ4 - }; + } } \ No newline at end of file diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index a0cfb18..13394fd 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -6,6 +6,8 @@ using System.Threading.Tasks; using Apache.IoTDB.DataStructure; using NLog; +using NLog.Config; +using NLog.Targets; using Thrift; using Thrift.Protocol; using Thrift.Transport; @@ -15,825 +17,877 @@ namespace Apache.IoTDB { public class SessionPool { - private string username, password, zoneId, host; - - public int SUCCESS_CODE - { - get { return 200; } - } - - private int port, fetch_size; - private int pool_size = 4; - private bool debug_mode = false; - private bool is_close = true; - private ConcurrentClientQueue client_lst; - private NLog.Logger _logger; - public Utils util_functions = new Utils(); - private static TSProtocolVersion protocol_version = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - - public SessionPool(string host, int port, int pool_size) + private static int SuccessCode => 200; + private static readonly TSProtocolVersion ProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; + + private readonly string _username; + private readonly string _password; + private string _zoneId; + private readonly string _host; + private readonly int _port; + private readonly int _fetchSize; + private readonly int _poolSize = 4; + private readonly Utils _utilFunctions = new Utils(); + + + private bool _debugMode; + private bool _isClose = true; + private ConcurrentClientQueue _clients; + private Logger _logger; + + public SessionPool(string host, int port, int poolSize) { // init success code - this.host = host; - this.port = port; - this.username = "root"; - this.password = "root"; - this.zoneId = "UTC+08:00"; - this.fetch_size = 1024; - this.pool_size = pool_size; - } - - public SessionPool(string host, int port, string username, string password, int pool_size = 8) - { - this.host = host; - this.port = port; - this.password = password; - this.username = username; - this.zoneId = "UTC+08:00"; - this.fetch_size = 1024; - this.debug_mode = false; - this.pool_size = pool_size; - } - - public SessionPool(string host, int port, string username, string password, int fetch_size, int pool_size = 8) - { - this.host = host; - this.port = port; - this.username = username; - this.password = password; - this.fetch_size = fetch_size; - this.zoneId = "UTC+08:00"; - this.debug_mode = false; - this.pool_size = pool_size; - } - - public SessionPool(string host, int port, string username = "root", string password = "root", - int fetch_size = 1000, string zoneId = "UTC+08:00", int pool_size = 8) - { - this.host = host; - this.port = port; - this.username = username; - this.password = password; - this.zoneId = zoneId; - this.fetch_size = fetch_size; - this.debug_mode = false; - this.pool_size = pool_size; - } - - public void open_debug_mode(NLog.Config.LoggingConfiguration config = null) - { - this.debug_mode = true; + _host = host; + _port = port; + _username = "root"; + _password = "root"; + _zoneId = "UTC+08:00"; + _fetchSize = 1024; + _poolSize = poolSize; + } + + public SessionPool( + string host, + int port, + string username, + string password, + int poolSize = 8) + { + _host = host; + _port = port; + _password = password; + _username = username; + _zoneId = "UTC+08:00"; + _fetchSize = 1024; + _debugMode = false; + _poolSize = poolSize; + } + + public SessionPool( + string host, + int port, + string username, + string password, + int fetchSize, + int poolSize = 8) + { + _host = host; + _port = port; + _username = username; + _password = password; + _fetchSize = fetchSize; + _zoneId = "UTC+08:00"; + _debugMode = false; + _poolSize = poolSize; + } + + public SessionPool( + string host, + int port, + string username = "root", + string password = "root", + int fetchSize = 1000, + string zoneId = "UTC+08:00", + int poolSize = 8) + { + _host = host; + _port = port; + _username = username; + _password = password; + _zoneId = zoneId; + _fetchSize = fetchSize; + _debugMode = false; + _poolSize = poolSize; + } + + public void open_debug_mode(LoggingConfiguration config = null) + { + _debugMode = true; if (config == null) { - config = new NLog.Config.LoggingConfiguration(); - var logconsole = new NLog.Targets.ConsoleTarget("logconsole"); - config.AddRule(LogLevel.Debug, LogLevel.Fatal, logconsole); - NLog.LogManager.Configuration = config; - _logger = NLog.LogManager.GetCurrentClassLogger(); - } - else - { - NLog.LogManager.Configuration = config; - _logger = NLog.LogManager.GetCurrentClassLogger(); + config = new LoggingConfiguration(); + config.AddRule(LogLevel.Debug, LogLevel.Fatal, new ConsoleTarget("logconsole")); } + + LogManager.Configuration = config; + _logger = LogManager.GetCurrentClassLogger(); } public void close_debug_mode() { - this.debug_mode = false; + _debugMode = false; } - public async Task open(bool enableRPCCompression) + public async Task Open(bool enableRpcCompression) { - client_lst = new ConcurrentClientQueue(); - for (int index = 0; index < pool_size; index++) + _clients = new ConcurrentClientQueue(); + + for (var index = 0; index < _poolSize; index++) { - client_lst.Add(await create_and_open(enableRPCCompression)); + _clients.Add(await CreateAndOpen(enableRpcCompression)); } } - public bool is_open() - { - return !is_close; - } + public bool IsOpen() => !_isClose; - public async Task close() + public async Task Close() { - if (is_close) + if (_isClose) { return; } - foreach (var client in client_lst.client_queue.AsEnumerable()) + foreach (var client in _clients.ClientQueue.AsEnumerable()) { - var req = new TSCloseSessionReq(client.sessionId); + var closeSessionRequest = new TSCloseSessionReq(client.SessionId); try { - await client.client.closeSessionAsync(req); + await client.ServiceClient.closeSessionAsync(closeSessionRequest); } catch (TException e) { - var message = String.Format("Error occurs when closing session at server. Maybe server is down"); - throw new TException(message, e); + throw new TException("Error occurs when closing session at server. Maybe server is down", e); } finally { - is_close = true; - if (client.transport != null) - { - client.transport.Close(); - } + _isClose = true; + + client.Transport?.Close(); } } } - public async Task set_time_zone(string zoneId) + public async Task SetTimeZone(string zoneId) { - this.zoneId = zoneId; - foreach (var client in client_lst.client_queue.AsEnumerable()) + _zoneId = zoneId; + + foreach (var client in _clients.ClientQueue.AsEnumerable()) { - var req = new TSSetTimeZoneReq(client.sessionId, zoneId); + var req = new TSSetTimeZoneReq(client.SessionId, zoneId); try { - var resp = await client.client.setTimeZoneAsync(req); - if (debug_mode) + var resp = await client.ServiceClient.setTimeZoneAsync(req); + if (_debugMode) { _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, resp.Message); } } catch (TException e) { - var message = String.Format("could not set time zone"); - throw new TException(message, e); + throw new TException("could not set time zone", e); } } } - public async Task get_time_zone() + public async Task GetTimeZone() { - TSGetTimeZoneResp resp; - if (zoneId != "") + if (_zoneId != "") { - return zoneId; + return _zoneId; } - var client = client_lst.Take(); + var client = _clients.Take(); + try { - resp = await client.client.getTimeZoneAsync(client.sessionId); + var response = await client.ServiceClient.getTimeZoneAsync(client.SessionId); + + return response?.TimeZone; } catch (TException e) { - client_lst.Add(client); - var message = String.Format("counld not get time zone"); - throw new TException(message, e); + throw new TException("could not get time zone", e); + } + finally + { + _clients.Add(client); } - - client_lst.Add(client); - return resp.TimeZone; } - public async Task create_and_open(bool enableRPCCompression) + private async Task CreateAndOpen(bool enableRpcCompression) { - TcpClient tcp_client = new TcpClient(this.host, this.port); - TSIService.Client client; - long sessionId, statementId; - var transport = new TFramedTransport(new TSocketTransport(tcp_client, null)); + var tcpClient = new TcpClient(_host, _port); + + var transport = new TFramedTransport(new TSocketTransport(tcpClient, null)); + if (!transport.IsOpen) { - try - { - await transport.OpenAsync(new CancellationToken()); - } - catch (TTransportException) - { - throw; - } + await transport.OpenAsync(new CancellationToken()); } - if (enableRPCCompression) - { - client = new TSIService.Client(new TCompactProtocol(transport)); - } - else - { - client = new TSIService.Client(new TBinaryProtocol(transport)); - } + var client = enableRpcCompression ? + new TSIService.Client(new TCompactProtocol(transport)) : + new TSIService.Client(new TBinaryProtocol(transport)); - var open_req = new TSOpenSessionReq(protocol_version, zoneId); - open_req.Username = username; - open_req.Password = password; + var openReq = new TSOpenSessionReq(ProtocolVersion, _zoneId) + { + Username = _username, + Password = _password + }; + try { - var open_resp = await client.openSessionAsync(open_req); - if (open_resp.ServerProtocolVersion != protocol_version) + var openResp = await client.openSessionAsync(openReq); + + if (openResp.ServerProtocolVersion != ProtocolVersion) { - var message = String.Format("Protocol Differ, Client version is {0} but Server version is {1}", - protocol_version, open_resp.ServerProtocolVersion); - throw new TException(message, null); + throw new TException($"Protocol Differ, Client version is {ProtocolVersion} but Server version is {openResp.ServerProtocolVersion}", null); } - if (open_resp.ServerProtocolVersion == 0) + if (openResp.ServerProtocolVersion == 0) { throw new TException("Protocol not supported", null); } - sessionId = open_resp.SessionId; - statementId = await client.requestStatementIdAsync(sessionId); + var sessionId = openResp.SessionId; + var statementId = await client.requestStatementIdAsync(sessionId); + + _isClose = false; + + var returnClient = new Client( + client, + sessionId, + statementId, + transport); + + return returnClient; } catch (Exception) { transport.Close(); + throw; } - - is_close = false; - var return_client = new Client(); - return_client.client = client; - return_client.sessionId = sessionId; - return_client.statementId = statementId; - return_client.transport = transport; - return return_client; } - public async Task set_storage_group_async(string group_name) + public async Task SetStorageGroup(string groupName) { - TSStatus status; - var client = client_lst.Take(); + var client = _clients.Take(); + try { - status = await client.client.setStorageGroupAsync(client.sessionId, group_name); + var status = await client.ServiceClient.setStorageGroupAsync(client.SessionId, groupName); + + if (_debugMode) + { + _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("set storage group {0} failed", group_name); - throw new TException(err_msg, e); + throw new TException($"set storage group {groupName} failed", e); } - - if (debug_mode) + finally { - _logger.Info("set storage group {0} successfully, server message is {1}", group_name, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task create_time_series_async(string ts_path, TSDataType data_type, TSEncoding encoding, + public async Task CreateTimeSeries( + string tsPath, + TSDataType dataType, + TSEncoding encoding, Compressor compressor) { - TSStatus status; - var client = client_lst.Take(); - var req = new TSCreateTimeseriesReq(client.sessionId, ts_path, (int) data_type, (int) encoding, + var client = _clients.Take(); + var req = new TSCreateTimeseriesReq( + client.SessionId, + tsPath, + (int) dataType, + (int) encoding, (int) compressor); try { - status = await client.client.createTimeseriesAsync(req); + var status = await client.ServiceClient.createTimeseriesAsync(req); + + if (_debugMode) + { + _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("create time series {0} failed", ts_path); - throw new TException(err_msg, e); + throw new TException($"create time series {tsPath} failed", e); } - - if (debug_mode) + finally { - _logger.Info("creating time series {0} successfully, server message is {1}", ts_path, status.Message); + _clients.Add(client); } - client_lst.Add(client); - - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_storage_group_async(string group_name) + public async Task delete_storage_group_async(string groupName) { - TSStatus status; - var client = client_lst.Take(); + var client = _clients.Take(); try { - status = await client.client.deleteStorageGroupsAsync(client.sessionId, new List {group_name}); + var status = await client.ServiceClient.deleteStorageGroupsAsync( + client.SessionId, + new List {groupName}); + + if (_debugMode) + { + _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("delete storage group {0} failed", group_name); - throw new TException(err_msg, e); + throw new TException($"delete storage group {groupName} failed", e); } - - if (debug_mode) + finally { - var message = String.Format("delete storage group {0} successfully, server message is {1}", group_name, - status.Message); - _logger.Info(message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_storage_groups_async(List group_names) + public async Task delete_storage_groups_async(List groupNames) { - var client = client_lst.Take(); + var client = _clients.Take(); - TSStatus status; try { - status = await client.client.deleteStorageGroupsAsync(client.sessionId, group_names); + var status = await client.ServiceClient.deleteStorageGroupsAsync(client.SessionId, groupNames); + + if (_debugMode) + { + _logger.Info( + "delete storage group(s) {0} successfully, server message is {1}", + groupNames, + status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("delete storage group(s) {0} failed", group_names); - throw new TException(err_msg, e); + throw new TException($"delete storage group(s) {groupNames} failed", e); } - - if (debug_mode) + finally { - _logger.Info("delete storage group(s) {0} successfully, server message is {1}", group_names, - status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task create_multi_time_series_async(List ts_path_lst, List data_type_lst, - List encoding_lst, List compressor_lst) + public async Task create_multi_time_series_async( + List tsPathLst, + List dataTypeLst, + List encodingLst, + List compressorLst) { - var client = client_lst.Take(); - var data_types = data_type_lst.ConvertAll(x => (int) x); - var encodings = encoding_lst.ConvertAll(x => (int) x); - var compressors = compressor_lst.ConvertAll(x => (int) x); - TSStatus status; - var req = new TSCreateMultiTimeseriesReq(client.sessionId, ts_path_lst, data_types, encodings, compressors); + var client = _clients.Take(); + var dataTypes = dataTypeLst.ConvertAll(x => (int) x); + var encodings = encodingLst.ConvertAll(x => (int) x); + var compressors = compressorLst.ConvertAll(x => (int) x); + + var req = new TSCreateMultiTimeseriesReq(client.SessionId, tsPathLst, dataTypes, encodings, compressors); + try { - status = await client.client.createMultiTimeseriesAsync(req); + var status = await client.ServiceClient.createMultiTimeseriesAsync(req); + + if (_debugMode) + { + _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("create multiple time series {0} failed", ts_path_lst); - throw new TException(err_msg, e); + throw new TException($"create multiple time series {tsPathLst} failed", e); } - - if (debug_mode) + finally { - _logger.Info("creating multiple time series {0}, server message is {1}", ts_path_lst, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_time_series_async(List path_list) + public async Task delete_time_series_async(List pathList) { - TSStatus status; - var client = client_lst.Take(); + var client = _clients.Take(); + try { - status = await client.client.deleteTimeseriesAsync(client.sessionId, path_list); + var status = await client.ServiceClient.deleteTimeseriesAsync(client.SessionId, pathList); + + if (_debugMode) + { + _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("delete time series {0} failed", path_list); - throw new TException(err_msg, e); + throw new TException($"delete time series {pathList} failed", e); } - - if (debug_mode) + finally { - _logger.Info("deleting multiple time series {0}, server message is {1}", path_list, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task delete_time_series_async(string ts_path) + public async Task delete_time_series_async(string tsPath) { - return await delete_time_series_async(new List {ts_path}); + return await delete_time_series_async(new List {tsPath}); } - public async Task check_time_series_exists_async(string ts_path) + public async Task check_time_series_exists_async(string tsPath) { // TBD by dalong try { - string sql = "SHOW TIMESERIES " + ts_path; - var session_dataset = await execute_query_statement_async(sql); - return session_dataset.has_next(); + var sql = "SHOW TIMESERIES " + tsPath; + var sessionDataset = await execute_query_statement_async(sql); + return sessionDataset.has_next(); } catch (TException e) { - var err_msg = String.Format("could not check if certain time series exists"); - throw new TException(err_msg, e); + throw new TException("could not check if certain time series exists", e); } } - public async Task delete_data_async(List ts_path_lst, long start_time, long end_time) + public async Task delete_data_async(List tsPathLst, long startTime, long endTime) { - var client = client_lst.Take(); - var req = new TSDeleteDataReq(client.sessionId, ts_path_lst, start_time, end_time); - TSStatus status; + var client = _clients.Take(); + var req = new TSDeleteDataReq(client.SessionId, tsPathLst, startTime, endTime); + try { - status = await client.client.deleteDataAsync(req); + var status = await client.ServiceClient.deleteDataAsync(req); + + if (_debugMode) + { + _logger.Info( + "delete data from {0}, server message is {1}", + tsPathLst, + status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("data deletion fails because"); - throw new TException(err_msg, e); + throw new TException("data deletion fails because", e); } - - if (debug_mode) + finally { - _logger.Info("delete data from {0}, server message is {1}", ts_path_lst, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task insert_record_async(string device_id, RowRecord record) + public async Task insert_record_async(string deviceId, RowRecord record) { // TBD by Luzhan - var client = client_lst.Take(); - var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), - record.timestamp); - TSStatus status; + var client = _clients.Take(); + var req = new TSInsertRecordReq(client.SessionId, deviceId, record.Measurements, record.ToBytes(), + record.Timestamps); try { - status = await client.client.insertRecordAsync(req); + var status = await client.ServiceClient.insertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - Console.WriteLine(e); - var err_msg = String.Format("Record insertion failed"); - throw new TException(err_msg, e); + throw new TException("Record insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - - return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertStringRecordReq gen_insert_str_record_req(string device_id, List measurements, - List values, long timestamp, long session_id) + public TSInsertStringRecordReq gen_insert_str_record_req(string deviceId, List measurements, + List values, long timestamp, long sessionId) { if (values.Count() != measurements.Count()) { - var err_msg = "length of data types does not equal to length of values!"; - throw new TException(err_msg, null); + throw new TException("length of data types does not equal to length of values!", null); } - return new TSInsertStringRecordReq(session_id, device_id, measurements, values, timestamp); + return new TSInsertStringRecordReq(sessionId, deviceId, measurements, values, timestamp); } - public TSInsertRecordsReq gen_insert_records_req(List device_id, List rowRecords, - long session_id) + public TSInsertRecordsReq gen_insert_records_req(List deviceId, List rowRecords, + long sessionId) { //TODO - var measurement_lst = rowRecords.Select(x => x.measurements).ToList(); - var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); - List values_lst_in_bytes = new List(); - foreach (var row in rowRecords) - { - values_lst_in_bytes.Add(row.ToBytes()); - } + var measurementLst = rowRecords.Select(x => x.Measurements).ToList(); + var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); + var valuesLstInBytes = rowRecords.Select(row => row.ToBytes()).ToList(); - return new TSInsertRecordsReq(session_id, device_id, measurement_lst, values_lst_in_bytes, timestamp_lst); + return new TSInsertRecordsReq(sessionId, deviceId, measurementLst, valuesLstInBytes, timestampLst); } - public async Task insert_records_async(List device_id, List rowRecords) + public async Task insert_records_async(List deviceId, List rowRecords) { - var client = client_lst.Take(); - var req = gen_insert_records_req(device_id, rowRecords, client.sessionId); - TSStatus status; + var client = _clients.Take(); + + var request = gen_insert_records_req(deviceId, rowRecords, client.SessionId); + try { - status = await client.client.insertRecordsAsync(req); + var status = await client.ServiceClient.insertRecordsAsync(request); + + if (_debugMode) + { + _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Multiple records insertion failed"); - throw new TException(err_msg, e); + throw new TException("Multiple records insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet, long session_id) + public TSInsertTabletReq gen_insert_tablet_req(Tablet tablet, long sessionId) { - return new TSInsertTabletReq(session_id, tablet.device_id, tablet.measurement_lst, - tablet.get_binary_values(), tablet.get_binary_timestamps(), tablet.get_data_types(), tablet.row_number); + return new TSInsertTabletReq( + sessionId, + tablet.DeviceId, + tablet.Measurements, + tablet.get_binary_values(), + tablet.get_binary_timestamps(), + tablet.get_data_types(), + tablet.RowNumber); } public async Task insert_tablet_async(Tablet tablet) { - var client = client_lst.Take(); - var req = gen_insert_tablet_req(tablet, client.sessionId); - TSStatus status; + var client = _clients.Take(); + var req = gen_insert_tablet_req(tablet, client.SessionId); + try { - status = await client.client.insertTabletAsync(req); + var status = await client.ServiceClient.insertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Tablet insertion failed"); - throw new TException(err_msg, e); + throw new TException("Tablet insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - - return util_functions.verify_success(status, SUCCESS_CODE); } - public TSInsertTabletsReq gen_insert_tablets_req(List tablet_lst, long session_id) + public TSInsertTabletsReq gen_insert_tablets_req(List tabletLst, long sessionId) { - List device_id_lst = new List() { }; - List> measurements_lst = new List>() { }; - List values_lst = new List() { }; - List timestamps_lst = new List() { }; - List> type_lst = new List>() { }; - List size_lst = new List() { }; - foreach (var tablet in tablet_lst) + var deviceIdLst = new List(); + var measurementsLst = new List>(); + var valuesLst = new List(); + var timestampsLst = new List(); + var typeLst = new List>(); + var sizeLst = new List(); + + foreach (var tablet in tabletLst) { - List data_type_values = tablet.get_data_types(); - device_id_lst.Add(tablet.device_id); - measurements_lst.Add(tablet.measurement_lst); - values_lst.Add(tablet.get_binary_values()); - timestamps_lst.Add(tablet.get_binary_timestamps()); - type_lst.Add(data_type_values); - size_lst.Add(tablet.row_number); + var dataTypeValues = tablet.get_data_types(); + deviceIdLst.Add(tablet.DeviceId); + measurementsLst.Add(tablet.Measurements); + valuesLst.Add(tablet.get_binary_values()); + timestampsLst.Add(tablet.get_binary_timestamps()); + typeLst.Add(dataTypeValues); + sizeLst.Add(tablet.RowNumber); } - return new TSInsertTabletsReq(session_id, device_id_lst, measurements_lst, values_lst, timestamps_lst, - type_lst, size_lst); + return new TSInsertTabletsReq( + sessionId, + deviceIdLst, + measurementsLst, + valuesLst, + timestampsLst, + typeLst, + sizeLst); } - public async Task insert_tablets_async(List tablet_lst) + public async Task insert_tablets_async(List tabletLst) { - var client = client_lst.Take(); - var req = gen_insert_tablets_req(tablet_lst, client.sessionId); - TSStatus status; + var client = _clients.Take(); + var req = gen_insert_tablets_req(tabletLst, client.SessionId); + try { - status = await client.client.insertTabletsAsync(req); + var status = await client.ServiceClient.insertTabletsAsync(req); + + if (_debugMode) + { + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Multiple tablets insertion failed"); - throw new TException(err_msg, e); - } + _clients.Add(client); - if (debug_mode) + throw new TException("Multiple tablets insertion failed", e); + } + finally { - _logger.Info("insert multiple tablets, message: {0}", status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task insert_records_of_one_device_async(string device_id, List rowRecords) + public async Task insert_records_of_one_device_async(string deviceId, List rowRecords) { - var sorted_row_records = rowRecords.OrderBy(x => x.timestamp).ToList(); - return await insert_records_of_one_device_sorted_async(device_id, sorted_row_records); + var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); + return await insert_records_of_one_device_sorted_async(deviceId, sortedRowRecords); } - public TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request(string device_id, - List rowRecords, long session_id) + private TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request( + string deviceId, + List records, + long sessionId) { - List binary_value_lst = new List() { }; - foreach (var row in rowRecords) - { - binary_value_lst.Add(row.ToBytes()); - } - - var measurements_lst = rowRecords.Select(x => x.measurements).ToList(); - var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); - return new TSInsertRecordsOfOneDeviceReq(session_id, device_id, measurements_lst, binary_value_lst, - timestamp_lst); + var values = records.Select(row => row.ToBytes()); + var measurementsLst = records.Select(x => x.Measurements).ToList(); + var timestampLst = records.Select(x => x.Timestamps).ToList(); + + return new TSInsertRecordsOfOneDeviceReq( + sessionId, + deviceId, + measurementsLst, + values.ToList(), + timestampLst); } - public async Task insert_records_of_one_device_sorted_async(string device_id, List rowRecords) + public async Task insert_records_of_one_device_sorted_async(string deviceId, List rowRecords) { - var client = client_lst.Take(); - var timestamp_lst = rowRecords.Select(x => x.timestamp).ToList(); - if (!util_functions.check_sorted(timestamp_lst)) + var client = _clients.Take(); + + var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); + + if (!_utilFunctions.IsSorted(timestampLst)) { - var err_msg = "insert records of one device error: timestamp not sorted"; - throw new TException(err_msg, null); + throw new TException("insert records of one device error: timestamp not sorted", null); } - var req = gen_insert_records_of_one_device_request(device_id, rowRecords, client.sessionId); - TSStatus status; + var req = gen_insert_records_of_one_device_request(deviceId, rowRecords, client.SessionId); + try { - status = await client.client.insertRecordsOfOneDeviceAsync(req); + var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.Info("insert records of one device, message: {0}", status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Sorted records of one device insertion failed"); - throw new TException(err_msg, e); + throw new TException("Sorted records of one device insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert records of one device, message: {0}", status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_record_async(string device_id, RowRecord record) + public async Task test_insert_record_async(string deviceId, RowRecord record) { - var client = client_lst.Take(); - var req = new TSInsertRecordReq(client.sessionId, device_id, record.measurements, record.ToBytes(), - record.timestamp); - TSStatus status; + var client = _clients.Take(); + + var req = new TSInsertRecordReq( + client.SessionId, + deviceId, + record.Measurements, + record.ToBytes(), + record.Timestamps); + try { - status = await client.client.testInsertRecordAsync(req); + var status = await client.ServiceClient.testInsertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - Console.WriteLine(e); - var err_msg = String.Format("Record insertion failed"); - throw new TException(err_msg, e); + throw new TException("Record insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert one record to device {0}, server message: {1}", device_id, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_records_async(List device_id, List rowRecords) + public async Task test_insert_records_async(List deviceId, List rowRecords) { - var client = client_lst.Take(); - var req = gen_insert_records_req(device_id, rowRecords, client.sessionId); - TSStatus status; + var client = _clients.Take(); + var req = gen_insert_records_req(deviceId, rowRecords, client.SessionId); + try { - status = await client.client.testInsertRecordsAsync(req); + var status = await client.ServiceClient.testInsertRecordsAsync(req); + + if (_debugMode) + { + _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Multiple records insertion failed"); - throw new TException(err_msg, e); + throw new TException("Multiple records insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert multiple records to devices {0}, server message: {1}", device_id, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } public async Task test_insert_tablet_async(Tablet tablet) { - var client = client_lst.Take(); - var req = gen_insert_tablet_req(tablet, client.sessionId); - TSStatus status; + var client = _clients.Take(); + + var req = gen_insert_tablet_req(tablet, client.SessionId); + try { - status = await client.client.testInsertTabletAsync(req); + var status = await client.ServiceClient.testInsertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, + status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Tablet insertion failed"); - throw new TException(err_msg, e); + throw new TException("Tablet insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.device_id, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - - return util_functions.verify_success(status, SUCCESS_CODE); } - public async Task test_insert_tablets_async(List tablet_lst) + public async Task test_insert_tablets_async(List tabletLst) { - var client = client_lst.Take(); - var req = gen_insert_tablets_req(tablet_lst, client.sessionId); - TSStatus status; + var client = _clients.Take(); + + var req = gen_insert_tablets_req(tabletLst, client.SessionId); + try { - status = await client.client.testInsertTabletsAsync(req); + var status = await client.ServiceClient.testInsertTabletsAsync(req); + + if (_debugMode) + { + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("Multiple tablets insertion failed"); - throw new TException(err_msg, e); + throw new TException("Multiple tablets insertion failed", e); } - - if (debug_mode) + finally { - _logger.Info("insert multiple tablets, message: {0}", status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } public async Task execute_query_statement_async(string sql) { TSExecuteStatementResp resp; TSStatus status; - var client = client_lst.Take(); - var req = new TSExecuteStatementReq(client.sessionId, sql, client.statementId); - req.FetchSize = this.fetch_size; + var client = _clients.Take(); + var req = new TSExecuteStatementReq(client.SessionId, sql, client.StatementId) + { + FetchSize = _fetchSize + }; try { - resp = await client.client.executeQueryStatementAsync(req); + resp = await client.ServiceClient.executeQueryStatementAsync(req); status = resp.Status; } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("could not execute query statement"); - throw new TException(err_msg, e); + _clients.Add(client); + + throw new TException("could not execute query statement", e); } - if (util_functions.verify_success(status, SUCCESS_CODE) == -1) + if (_utilFunctions.verify_success(status, SuccessCode) == -1) { - client_lst.Add(client); + _clients.Add(client); + throw new TException("execute query failed", null); } - client_lst.Add(client); + _clients.Add(client); - var session_dataset = new SessionDataSet(sql, resp, client_lst); - session_dataset.fetch_size = fetch_size; - return session_dataset; + var sessionDataset = new SessionDataSet(sql, resp, _clients) + { + FetchSize = _fetchSize + }; + + return sessionDataset; } public async Task execute_non_query_statement_async(string sql) { - TSExecuteStatementResp resp; - TSStatus status; - var client = client_lst.Take(); - var req = new TSExecuteStatementReq(client.sessionId, sql, client.statementId); + var client = _clients.Take(); + var req = new TSExecuteStatementReq(client.SessionId, sql, client.StatementId); + try { - resp = await client.client.executeUpdateStatementAsync(req); - status = resp.Status; + var resp = await client.ServiceClient.executeUpdateStatementAsync(req); + var status = resp.Status; + + if (_debugMode) + { + _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + } + + return _utilFunctions.verify_success(status, SuccessCode); } catch (TException e) { - client_lst.Add(client); - var err_msg = String.Format("execution of non-query statement failed"); - throw new TException(err_msg, e); + throw new TException("execution of non-query statement failed", e); } - - if (debug_mode) + finally { - _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + _clients.Add(client); } - - client_lst.Add(client); - return util_functions.verify_success(status, SUCCESS_CODE); } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/Utils.cs b/src/Apache.IoTDB/Utils.cs index 14765bb..4d2fbba 100644 --- a/src/Apache.IoTDB/Utils.cs +++ b/src/Apache.IoTDB/Utils.cs @@ -1,14 +1,15 @@ using System.Collections.Generic; +using System.Linq; namespace Apache.IoTDB { public class Utils { - public bool check_sorted(List timestamp_lst) + public bool IsSorted(IList collection) { - for (int i = 1; i < timestamp_lst.Count; i++) + for (var i = 1; i < collection.Count; i++) { - if (timestamp_lst[i] < timestamp_lst[i - 1]) + if (collection[i] < collection[i - 1]) { return false; } @@ -17,22 +18,19 @@ public bool check_sorted(List timestamp_lst) return true; } - public int verify_success(TSStatus status, int SUCCESS_CODE) + public int verify_success(TSStatus status, int successCode) { if (status.__isset.subStatus) { - foreach (var sub_status in status.SubStatus) + if (status.SubStatus.Any(subStatus => verify_success(subStatus, successCode) != 0)) { - if (verify_success(sub_status, SUCCESS_CODE) != 0) - { - return -1; - } + return -1; } return 0; } - if (status.Code == SUCCESS_CODE) + if (status.Code == successCode) { return 0; } From 68e20153f29f22967b02ce3d81f72efb2c13703c Mon Sep 17 00:00:00 2001 From: mwx Date: Fri, 28 May 2021 16:45:09 +0800 Subject: [PATCH 118/214] change name style to Pascal in SessionPool.cx --- src/Apache.IoTDB/SessionPool.cs | 72 ++++++++++++++++----------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 13394fd..825161e 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -101,7 +101,7 @@ public SessionPool( _poolSize = poolSize; } - public void open_debug_mode(LoggingConfiguration config = null) + public void OpenDebugMode(LoggingConfiguration config = null) { _debugMode = true; if (config == null) @@ -114,7 +114,7 @@ public void open_debug_mode(LoggingConfiguration config = null) _logger = LogManager.GetCurrentClassLogger(); } - public void close_debug_mode() + public void CloseDebugMode() { _debugMode = false; } @@ -321,7 +321,7 @@ public async Task CreateTimeSeries( } - public async Task delete_storage_group_async(string groupName) + public async Task DeleteStorageGroupAsync(string groupName) { var client = _clients.Take(); try @@ -347,7 +347,7 @@ public async Task delete_storage_group_async(string groupName) } } - public async Task delete_storage_groups_async(List groupNames) + public async Task DeleteStorageGroupsAsync(List groupNames) { var client = _clients.Take(); @@ -375,7 +375,7 @@ public async Task delete_storage_groups_async(List groupNames) } } - public async Task create_multi_time_series_async( + public async Task CreateMultiTimeSeriesAsync( List tsPathLst, List dataTypeLst, List encodingLst, @@ -409,7 +409,7 @@ public async Task create_multi_time_series_async( } } - public async Task delete_time_series_async(List pathList) + public async Task DeleteTimeSeriesAsync(List pathList) { var client = _clients.Take(); @@ -434,18 +434,18 @@ public async Task delete_time_series_async(List pathList) } } - public async Task delete_time_series_async(string tsPath) + public async Task DeleteTimeSeriesAsync(string tsPath) { - return await delete_time_series_async(new List {tsPath}); + return await DeleteTimeSeriesAsync(new List {tsPath}); } - public async Task check_time_series_exists_async(string tsPath) + public async Task CheckTimeSeriesExistsAsync(string tsPath) { // TBD by dalong try { var sql = "SHOW TIMESERIES " + tsPath; - var sessionDataset = await execute_query_statement_async(sql); + var sessionDataset = await ExecuteQueryStatementAsync(sql); return sessionDataset.has_next(); } catch (TException e) @@ -454,7 +454,7 @@ public async Task check_time_series_exists_async(string tsPath) } } - public async Task delete_data_async(List tsPathLst, long startTime, long endTime) + public async Task DeleteDataAsync(List tsPathLst, long startTime, long endTime) { var client = _clients.Take(); var req = new TSDeleteDataReq(client.SessionId, tsPathLst, startTime, endTime); @@ -483,7 +483,7 @@ public async Task delete_data_async(List tsPathLst, long startTime, } } - public async Task insert_record_async(string deviceId, RowRecord record) + public async Task InsertRecordAsync(string deviceId, RowRecord record) { // TBD by Luzhan var client = _clients.Take(); @@ -510,7 +510,7 @@ public async Task insert_record_async(string deviceId, RowRecord record) } } - public TSInsertStringRecordReq gen_insert_str_record_req(string deviceId, List measurements, + public TSInsertStringRecordReq GenInsertStrRecordReq(string deviceId, List measurements, List values, long timestamp, long sessionId) { if (values.Count() != measurements.Count()) @@ -521,7 +521,7 @@ public TSInsertStringRecordReq gen_insert_str_record_req(string deviceId, List deviceId, List rowRecords, + public TSInsertRecordsReq GenInsertRecordsReq(List deviceId, List rowRecords, long sessionId) { //TODO @@ -532,11 +532,11 @@ public TSInsertRecordsReq gen_insert_records_req(List deviceId, List insert_records_async(List deviceId, List rowRecords) + public async Task InsertRecordsAsync(List deviceId, List rowRecords) { var client = _clients.Take(); - var request = gen_insert_records_req(deviceId, rowRecords, client.SessionId); + var request = GenInsertRecordsReq(deviceId, rowRecords, client.SessionId); try { @@ -559,7 +559,7 @@ public async Task insert_records_async(List deviceId, List insert_tablet_async(Tablet tablet) + public async Task InsertTabletAsync(Tablet tablet) { var client = _clients.Take(); - var req = gen_insert_tablet_req(tablet, client.SessionId); + var req = GenInsertTabletReq(tablet, client.SessionId); try { @@ -597,7 +597,7 @@ public async Task insert_tablet_async(Tablet tablet) } } - public TSInsertTabletsReq gen_insert_tablets_req(List tabletLst, long sessionId) + public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessionId) { var deviceIdLst = new List(); var measurementsLst = new List>(); @@ -627,10 +627,10 @@ public TSInsertTabletsReq gen_insert_tablets_req(List tabletLst, long se sizeLst); } - public async Task insert_tablets_async(List tabletLst) + public async Task InsertTabletsAsync(List tabletLst) { var client = _clients.Take(); - var req = gen_insert_tablets_req(tabletLst, client.SessionId); + var req = GenInsertTabletsReq(tabletLst, client.SessionId); try { @@ -655,13 +655,13 @@ public async Task insert_tablets_async(List tabletLst) } } - public async Task insert_records_of_one_device_async(string deviceId, List rowRecords) + public async Task InsertRecordsOfOneDeviceAsync(string deviceId, List rowRecords) { var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); - return await insert_records_of_one_device_sorted_async(deviceId, sortedRowRecords); + return await InsertRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); } - private TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request( + private TSInsertRecordsOfOneDeviceReq GenInsertRecordsOfOneDeviceRequest( string deviceId, List records, long sessionId) @@ -678,7 +678,7 @@ private TSInsertRecordsOfOneDeviceReq gen_insert_records_of_one_device_request( timestampLst); } - public async Task insert_records_of_one_device_sorted_async(string deviceId, List rowRecords) + public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List rowRecords) { var client = _clients.Take(); @@ -689,7 +689,7 @@ public async Task insert_records_of_one_device_sorted_async(string deviceId throw new TException("insert records of one device error: timestamp not sorted", null); } - var req = gen_insert_records_of_one_device_request(deviceId, rowRecords, client.SessionId); + var req = GenInsertRecordsOfOneDeviceRequest(deviceId, rowRecords, client.SessionId); try { @@ -712,7 +712,7 @@ public async Task insert_records_of_one_device_sorted_async(string deviceId } } - public async Task test_insert_record_async(string deviceId, RowRecord record) + public async Task TestInsertRecordAsync(string deviceId, RowRecord record) { var client = _clients.Take(); @@ -744,10 +744,10 @@ public async Task test_insert_record_async(string deviceId, RowRecord recor } } - public async Task test_insert_records_async(List deviceId, List rowRecords) + public async Task TestInsertRecordsAsync(List deviceId, List rowRecords) { var client = _clients.Take(); - var req = gen_insert_records_req(deviceId, rowRecords, client.SessionId); + var req = GenInsertRecordsReq(deviceId, rowRecords, client.SessionId); try { @@ -770,11 +770,11 @@ public async Task test_insert_records_async(List deviceId, List test_insert_tablet_async(Tablet tablet) + public async Task TestInsertTabletAsync(Tablet tablet) { var client = _clients.Take(); - var req = gen_insert_tablet_req(tablet, client.SessionId); + var req = GenInsertTabletReq(tablet, client.SessionId); try { @@ -798,11 +798,11 @@ public async Task test_insert_tablet_async(Tablet tablet) } } - public async Task test_insert_tablets_async(List tabletLst) + public async Task TestInsertTabletsAsync(List tabletLst) { var client = _clients.Take(); - var req = gen_insert_tablets_req(tabletLst, client.SessionId); + var req = GenInsertTabletsReq(tabletLst, client.SessionId); try { @@ -825,7 +825,7 @@ public async Task test_insert_tablets_async(List tabletLst) } } - public async Task execute_query_statement_async(string sql) + public async Task ExecuteQueryStatementAsync(string sql) { TSExecuteStatementResp resp; TSStatus status; @@ -863,7 +863,7 @@ public async Task execute_query_statement_async(string sql) return sessionDataset; } - public async Task execute_non_query_statement_async(string sql) + public async Task ExecuteNonQueryStatementAsync(string sql) { var client = _clients.Take(); var req = new TSExecuteStatementReq(client.SessionId, sql, client.StatementId); From 3d87ae7f0a79c54f8f8f87af06e089fe8106a5f1 Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 19 Jun 2021 15:23:16 +0800 Subject: [PATCH 119/214] fix test --- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 260 +++++++++--------- 1 file changed, 130 insertions(+), 130 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index 31ba6d3..ff04245 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -60,10 +60,10 @@ public async Task TestInsertRecord() var session_pool = new SessionPool(host, port, pool_size); int status; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, @@ -86,7 +86,7 @@ public async Task TestInsertRecord() for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) { var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.insert_record_async( + var task = session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); tasks.Add(task); } @@ -94,7 +94,7 @@ public async Task TestInsertRecord() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.Close(); Console.WriteLine("TestInsertRecordAsync Passed"); } @@ -105,9 +105,9 @@ public async Task TestCreateMultiTimeSeries() var session_pool = new SessionPool(host, port, user, passwd, pool_size); await session_pool.Open(false); var status = 0; - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); var ts_path_lst = new List() { "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", @@ -132,10 +132,10 @@ public async Task TestCreateMultiTimeSeries() Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY }; - status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, + status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCreateMultiTimeSeries Passed!"); @@ -146,9 +146,9 @@ public async Task TestDeleteTimeSeries() var session_pool = new SessionPool(host, port, user, passwd, pool_size); await session_pool.Open(false); var status = 0; - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); var ts_path_lst = new List() { "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", @@ -173,13 +173,13 @@ public async Task TestDeleteTimeSeries() Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY }; - status = await session_pool.create_multi_time_series_async(ts_path_lst, data_type_lst, encoding_lst, + status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_groups_async(ts_path_lst); + status = await session_pool.DeleteStorageGroupsAsync(ts_path_lst); System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestDeleteTimeSeries Passed!"); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.Close(); } @@ -187,9 +187,9 @@ public async Task TestGetTimeZone() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var time_zone = await session_pool.GetTimeZone(); System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); @@ -202,10 +202,10 @@ public async Task TestInsertStrRecord() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", @@ -219,10 +219,10 @@ public async Task TestInsertStrRecord() var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; var values = new List {(int) 1, (int) 2}; var rowRecord = new RowRecord(1, values, measures); - status = await session_pool.insert_record_async( + status = await session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -237,13 +237,13 @@ public async Task TestInsertStrRecord() for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) { - var task = session_pool.insert_record_async( + var task = session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp - 2]); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); var res_count = 0; while (res.has_next()) @@ -254,7 +254,7 @@ public async Task TestInsertStrRecord() await res.Close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.Close(); Console.WriteLine("TestInsertStrRecord Passed!"); } @@ -263,11 +263,11 @@ public async Task TestInsertRecords() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); @@ -320,9 +320,9 @@ public async Task TestInsertRecords() rowRecords.Add(rowRecord); } - status = await session_pool.insert_records_async(device_id, rowRecords); + status = await session_pool.InsertRecordsAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -341,14 +341,14 @@ public async Task TestInsertRecords() new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if (timestamp % fetch_size == 0) { - tasks.Add(session_pool.insert_records_async(device_id, rowRecords)); + tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); device_id = new List() { }; rowRecords = new List() { }; } } Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); var record_count = fetch_size * processed_size; @@ -363,7 +363,7 @@ public async Task TestInsertRecords() Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertRecords Passed!"); @@ -373,11 +373,11 @@ public async Task TestInsertRecordsOfOneDevice() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); @@ -421,9 +421,9 @@ await session_pool.CreateTimeSeries( rowRecords.Add(rowRecord); } - status = await session_pool.insert_records_of_one_device_async(device_id, rowRecords); + status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -438,13 +438,13 @@ await session_pool.CreateTimeSeries( new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if (timestamp % fetch_size == 0) { - tasks.Add(session_pool.insert_records_of_one_device_async(device_id, rowRecords)); + tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); rowRecords = new List() { }; } } Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); var res_count = 0; while (res.has_next()) @@ -456,7 +456,7 @@ await session_pool.CreateTimeSeries( await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); @@ -467,10 +467,10 @@ public async Task TestInsertTablet() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; var measurement_lst = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; @@ -481,9 +481,9 @@ public async Task TestInsertTablet() }; var timestamp_lst = new List {1, 2, 3}; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.insert_tablet_async(tablet); + status = await session_pool.InsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -501,7 +501,7 @@ public async Task TestInsertTablet() if (timestamp % fetch_size == 0) { tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.insert_tablet_async(tablet)); + tasks.Add(session_pool.InsertTabletAsync(tablet)); value_lst = new List>() { }; timestamp_lst = new List() { }; } @@ -510,7 +510,7 @@ public async Task TestInsertTablet() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); var res_count = 0; @@ -523,7 +523,7 @@ public async Task TestInsertTablet() await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertTablet Passed!"); @@ -534,10 +534,10 @@ public async Task TestInsertTablets() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = new List() { "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", @@ -570,15 +570,15 @@ public async Task TestInsertTablets() tablets.Add(tablet); } - status = await session_pool.insert_tablets_async(tablets); + status = await session_pool.InsertTabletsAsync(tablets); // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -599,13 +599,13 @@ public async Task TestInsertTablets() tablets.Add(tablet); if (timestamp % fetch_size == 0) { - tasks.Add(session_pool.insert_tablets_async(tablets)); + tasks.Add(session_pool.InsertTabletsAsync(tablets)); tablets = new List() { }; } } Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); res.show_table_names(); var res_count = 0; @@ -617,7 +617,7 @@ public async Task TestInsertTablets() await res.Close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertTablets Passed!"); @@ -628,13 +628,13 @@ public async Task TestSetAndDeleteStorageGroup() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert( await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); System.Diagnostics.Debug.Assert( - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); await session_pool.Close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } @@ -643,9 +643,9 @@ public async Task TestCreateTimeSeries() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); @@ -664,7 +664,7 @@ public async Task TestCreateTimeSeries() System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.Close(); Console.WriteLine("TestCreateTimeSeries Passed!"); } @@ -673,7 +673,7 @@ public async Task TestDeleteStorageGroups() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); @@ -684,7 +684,7 @@ public async Task TestDeleteStorageGroups() group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); - System.Diagnostics.Debug.Assert(await session_pool.delete_storage_groups_async(group_names) == 0); + System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); await session_pool.Close(); Console.WriteLine("TestDeleteStorageGroups Passed!"); } @@ -694,19 +694,19 @@ public async Task TestCheckTimeSeriesExists() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - var ifExist_1 = await session_pool.check_time_series_exists_async( + var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); - var ifExist_2 = await session_pool.check_time_series_exists_async( + var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCheckTimeSeriesExists Passed!"); @@ -716,9 +716,9 @@ public async Task TestSetTimeZone() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.SetTimeZone("GMT+8:00"); System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); @@ -731,10 +731,10 @@ public async Task TestDeleteData() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, @@ -752,19 +752,19 @@ public async Task TestDeleteData() var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var values = new List {"test_text", true, (int) 123}; - status = await session_pool.insert_record_async( + status = await session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async( + status = await session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async( + status = await session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.insert_record_async( + status = await session_pool.InsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -775,14 +775,14 @@ public async Task TestDeleteData() "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2" }; - await session_pool.delete_data_async(ts_path_lst, 2, 3); - res = await session_pool.execute_query_statement_async( + await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestDeleteData Passed!"); @@ -793,10 +793,10 @@ public async Task TestTestInsertRecord() var session_pool = new SessionPool(host, port, pool_size); int status; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, @@ -819,7 +819,7 @@ public async Task TestTestInsertRecord() for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) { var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.test_insert_record_async( + var task = session_pool.TestInsertRecordAsync( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); tasks.Add(task); } @@ -827,7 +827,7 @@ public async Task TestTestInsertRecord() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); await session_pool.Close(); Console.WriteLine("TestTestInsertRecordAsync Passed"); } @@ -836,11 +836,11 @@ public async Task TestTestInsertRecords() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); status = await session_pool.CreateTimeSeries( "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); @@ -893,9 +893,9 @@ public async Task TestTestInsertRecords() rowRecords.Add(rowRecord); } - status = await session_pool.test_insert_records_async(device_id, rowRecords); + status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -913,14 +913,14 @@ public async Task TestTestInsertRecords() new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if (timestamp % fetch_size == 0) { - tasks.Add(session_pool.test_insert_records_async(device_id, rowRecords)); + tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); device_id = new List() { }; rowRecords = new List() { }; } } Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); var record_count = fetch_size * processed_size; @@ -934,7 +934,7 @@ public async Task TestTestInsertRecords() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertRecords Passed!"); @@ -945,10 +945,10 @@ public async Task TestTestInsertTablet() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; var measurement_lst = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; @@ -959,9 +959,9 @@ public async Task TestTestInsertTablet() }; var timestamp_lst = new List {2, 1, 3}; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.test_insert_tablet_async(tablet); + status = await session_pool.TestInsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -979,7 +979,7 @@ public async Task TestTestInsertTablet() if (timestamp % (fetch_size / 32) == 0) { tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.test_insert_tablet_async(tablet)); + tasks.Add(session_pool.TestInsertTabletAsync(tablet)); value_lst = new List>() { }; timestamp_lst = new List() { }; } @@ -988,7 +988,7 @@ public async Task TestTestInsertTablet() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); res.show_table_names(); var res_count = 0; @@ -1000,7 +1000,7 @@ public async Task TestTestInsertTablet() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertTablet Passed!"); @@ -1011,10 +1011,10 @@ public async Task TestTestInsertTablets() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); var device_id = new List() { "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", @@ -1047,15 +1047,15 @@ public async Task TestTestInsertTablets() tablets.Add(tablet); } - status = await session_pool.test_insert_tablets_async(tablets); + status = await session_pool.TestInsertTabletsAsync(tablets); // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); @@ -1076,13 +1076,13 @@ public async Task TestTestInsertTablets() tablets.Add(tablet); if (timestamp % fetch_size == 0) { - tasks.Add(session_pool.test_insert_tablets_async(tablets)); + tasks.Add(session_pool.TestInsertTabletsAsync(tablets)); tablets = new List() { }; } } Task.WaitAll(tasks.ToArray()); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); res.show_table_names(); var res_count = 0; @@ -1094,7 +1094,7 @@ public async Task TestTestInsertTablets() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertTablets Passed!"); @@ -1105,34 +1105,34 @@ public async Task TestNonSql() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.execute_non_query_statement_async( + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - status = await session_pool.execute_non_query_statement_async( + status = await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); System.Diagnostics.Debug.Assert(status == 0); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - var res = await session_pool.execute_query_statement_async( + var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestNonSql Passed"); @@ -1143,58 +1143,58 @@ public async Task TestSqlQuery() var session_pool = new SessionPool(host, port, pool_size); var status = 0; await session_pool.Open(false); - if (debug) session_pool.open_debug_mode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); - await session_pool.execute_non_query_statement_async( + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.execute_non_query_statement_async( + await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - var res = await session_pool.execute_query_statement_async("show timeseries root"); + var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); - res = await session_pool.execute_query_statement_async("show devices"); + res = await session_pool.ExecuteQueryStatementAsync("show devices"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("SHOW DEVICES sql passed!"); - res = await session_pool.execute_query_statement_async("COUNT TIMESERIES root"); + res = await session_pool.ExecuteQueryStatementAsync("COUNT TIMESERIES root"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("COUNT TIMESERIES root sql Passed"); - res = await session_pool.execute_query_statement_async("select * from root.ln.wf01 where time<10"); + res = await session_pool.ExecuteQueryStatementAsync("select * from root.ln.wf01 where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("SELECT sql Passed"); - res = await session_pool.execute_query_statement_async( + res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.show_table_names(); while (res.has_next()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.delete_storage_group_async("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("SELECT sql Passed"); From 0b4cd61f52594e738cde5f585707591e65776e7f Mon Sep 17 00:00:00 2001 From: eedalong Date: Sat, 19 Jun 2021 15:25:41 +0800 Subject: [PATCH 120/214] update README --- README.md | 2 +- README_ZH.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index cd35a5d..446d565 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ dotnet add package iotdb_client_csharp ## How to Use the Client (Quick Start) -Users can refer to the test code in [tests](https://github.com/eedalong/iotdb-client-csharp/tree/main/client/tests) to understand the usage mode of each interface. +Users can refer to the test code in [tests](samples/Apache.IoTDB.Samples/SessioonPoolTest.cs) to understand the usage mode of each interface. ## Developer environment requirements for iotdb-client-csharp diff --git a/README_ZH.md b/README_ZH.md index 2a1131d..208050c 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -45,7 +45,7 @@ dotnet add package iotdb_client_csharp --version 0.12.0 .NET SDK Version == 5.0 ## 如何使用 (快速上手) -用户可参考[测试代码](https://github.com/eedalong/iotdb-client-csharp/tree/main/client/tests)中的测试代码了解各个接口使用方式 +用户可参考[测试代码](samples/Apache.IoTDB.Samples/SessioonPoolTest.cs)中的测试代码了解各个接口使用方式 ## iotdb-client-csharp的开发者环境要求 From c77c96b068021509988aade9cb2c91bd45bffc51 Mon Sep 17 00:00:00 2001 From: mwx Date: Sun, 20 Jun 2021 12:56:35 +0800 Subject: [PATCH 121/214] change type from char to byte to fit RPC 0.12 --- src/Apache.IoTDB/DataStructure/ByteBuffer.cs | 5 +++++ src/Apache.IoTDB/DataStructure/RowRecord.cs | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs index 5f720ee..2e14dbb 100644 --- a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs +++ b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs @@ -195,5 +195,10 @@ public void add_char(char value) charBuf.CopyTo(_buffer, _writePos); _writePos += charBuf.Length; } + public void add_byte(byte value){ + extend_buffer(1); + _buffer[_writePos] = value; + _writePos += 1; + } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/RowRecord.cs b/src/Apache.IoTDB/DataStructure/RowRecord.cs index 6b3fea9..2b25352 100644 --- a/src/Apache.IoTDB/DataStructure/RowRecord.cs +++ b/src/Apache.IoTDB/DataStructure/RowRecord.cs @@ -91,27 +91,27 @@ public byte[] ToBytes() switch (value) { case bool b: - buffer.add_char((char) TSDataType.BOOLEAN); + buffer.add_byte((byte) TSDataType.BOOLEAN); buffer.add_bool(b); break; case int i: - buffer.add_char((char) TSDataType.INT32); + buffer.add_byte((byte) TSDataType.INT32); buffer.add_int(i); break; case long l: - buffer.add_char((char) TSDataType.INT64); + buffer.add_byte((byte) TSDataType.INT64); buffer.add_long(l); break; case double d: - buffer.add_char((char) TSDataType.DOUBLE); + buffer.add_byte((byte) TSDataType.DOUBLE); buffer.add_double(d); break; case float f: - buffer.add_char((char) TSDataType.FLOAT); + buffer.add_byte((byte) TSDataType.FLOAT); buffer.add_float(f); break; case string s: - buffer.add_char((char) TSDataType.TEXT); + buffer.add_byte((byte) TSDataType.TEXT); buffer.add_str(s); break; default: From 8d569850fd846668b62c777e619aa2c9955f7ff8 Mon Sep 17 00:00:00 2001 From: lu-z18 Date: Sun, 20 Jun 2021 14:34:05 +0800 Subject: [PATCH 122/214] update README --- README.md | 2 +- README_ZH.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 446d565..0476114 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ Apache IoTDB Github: https://github.com/apache/iotdb We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0). Run the following command in the command line to complete installation ```sh -dotnet add package iotdb_client_csharp +dotnet add package Apache.IoTDB ``` ## Prerequisites diff --git a/README_ZH.md b/README_ZH.md index 208050c..bdf4706 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -36,7 +36,7 @@ Apache IoTDB Github: https://github.com/apache/iotdb 我们为CSharp用户准备了NuGet包,用户可直接通过.NET CLI进行客户端安装,[NuGet包链接如下](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0),命令行中运行如下命令即可完成安装 ```sh -dotnet add package iotdb_client_csharp --version 0.12.0 +dotnet add package Apache.IoTDB ``` From 436b5b64344d4f82e0c0ec0c54fd901e388392c5 Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Sun, 20 Jun 2021 14:43:26 +0800 Subject: [PATCH 123/214] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0476114..3f24598 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ dotnet add package Apache.IoTDB ## How to Use the Client (Quick Start) -Users can refer to the test code in [tests](samples/Apache.IoTDB.Samples/SessioonPoolTest.cs) to understand the usage mode of each interface. +Users can refer to the test code in [tests](https://github.com/eedalong/Apache-IoTDB-Client-CSharp-UserCase) to understand the usage mode of each interface. ## Developer environment requirements for iotdb-client-csharp From 56bb33a81f3fb711add7eaf23ed29d288fb9db8c Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Sun, 20 Jun 2021 14:43:52 +0800 Subject: [PATCH 124/214] Update README_ZH.md --- README_ZH.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README_ZH.md b/README_ZH.md index bdf4706..1f04b5c 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -45,7 +45,7 @@ dotnet add package Apache.IoTDB .NET SDK Version == 5.0 ## 如何使用 (快速上手) -用户可参考[测试代码](samples/Apache.IoTDB.Samples/SessioonPoolTest.cs)中的测试代码了解各个接口使用方式 +用户可参考[使用样例](https://github.com/eedalong/Apache-IoTDB-Client-CSharp-UserCase)中的测试代码了解各个接口使用方式 ## iotdb-client-csharp的开发者环境要求 From 7d27c866fe8a5cce1a65e94bedeb0c175e9cce72 Mon Sep 17 00:00:00 2001 From: eedalong Date: Sun, 20 Jun 2021 14:46:28 +0800 Subject: [PATCH 125/214] add module --- .gitmodules | 3 +++ Apache-IoTDB-Client-CSharp-UserCase | 1 + 2 files changed, 4 insertions(+) create mode 100644 .gitmodules create mode 160000 Apache-IoTDB-Client-CSharp-UserCase diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..7d7130b --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "Apache-IoTDB-Client-CSharp-UserCase"] + path = Apache-IoTDB-Client-CSharp-UserCase + url = git@github.com:eedalong/Apache-IoTDB-Client-CSharp-UserCase.git diff --git a/Apache-IoTDB-Client-CSharp-UserCase b/Apache-IoTDB-Client-CSharp-UserCase new file mode 160000 index 0000000..a58a732 --- /dev/null +++ b/Apache-IoTDB-Client-CSharp-UserCase @@ -0,0 +1 @@ +Subproject commit a58a73217a6d7d3bf96aa6a306a8a2b8ca75c51d From ec080e53295186bcfea7d80202d40ccb954f6616 Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Tue, 22 Jun 2021 13:11:25 +0800 Subject: [PATCH 126/214] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3f24598..b546d8f 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Apache IoTDB Github: https://github.com/apache/iotdb ### Install from NuGet Package -We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0). Run the following command in the command line to complete installation +We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation ```sh dotnet add package Apache.IoTDB From 96f985fff968b75a3f0a460f1b635c38cf76a2d9 Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Tue, 22 Jun 2021 13:11:46 +0800 Subject: [PATCH 127/214] Update README_ZH.md --- README_ZH.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README_ZH.md b/README_ZH.md index 1f04b5c..ce936cd 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -33,7 +33,7 @@ Apache IoTDB Github: https://github.com/apache/iotdb ## 如何安装 ### 从NuGet Package安装 -我们为CSharp用户准备了NuGet包,用户可直接通过.NET CLI进行客户端安装,[NuGet包链接如下](https://www.nuget.org/packages/iotdb_client_csharp/0.12.0),命令行中运行如下命令即可完成安装 +我们为CSharp用户准备了NuGet包,用户可直接通过.NET CLI进行客户端安装,[NuGet包链接如下](https://www.nuget.org/packages/Apache.IoTDB/),命令行中运行如下命令即可完成安装 ```sh dotnet add package Apache.IoTDB From 6daea40fad8473f2fb139e51a2508e6ef2161a79 Mon Sep 17 00:00:00 2001 From: mwx Date: Fri, 25 Jun 2021 17:15:58 +0800 Subject: [PATCH 128/214] add api document --- docs/API.md | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 docs/API.md diff --git a/docs/API.md b/docs/API.md new file mode 100644 index 0000000..ffd2b4d --- /dev/null +++ b/docs/API.md @@ -0,0 +1,98 @@ +# **核心概念** + +### **Row Record** + +- 对**IoTDB**中的`record`数据进行封装和抽象。 +- 示例: + +| timestamp | status | temperature | +| --------- | ------ | ----------- | +| 1 | 0 | 20 | + +- 构造方法: + +```c# +var rowRecord = + new RowRecord(long timestamps, List values, List measurements); +``` + +### **Tablet** + +- 一种类似于表格的数据结构,包含一个设备的若干行非空数据块。 +- 示例: + +| time | status | temperature | +| ---- | ------ | ----------- | +| 1 | 0 | 20 | +| 2 | 0 | 20 | +| 3 | 3 | 21 | + +- 构造方法: + +```c# +var tablet = + Tablet(string deviceId, List measurements, List> values, List timestamps); +``` + + + +# **API** + +### **基础接口** + +| api name | parameters | notes | use example | +| -------------- | ------------------------- | ------------------------ | ----------------------------- | +| Open | bool | open session | session_pool.Open(false) | +| Close | null | close session | session_pool.Close() | +| IsOpen | null | check if session is open | session_pool.IsOpen() | +| OpenDebugMode | LoggingConfiguration=null | open debug mode | session_pool.OpenDebugMode() | +| CloseDebugMode | null | close debug mode | session_pool.CloseDebugMode() | +| SetTimeZone | string | set time zone | session_pool.GetTimeZone() | +| GetTimeZone | null | get time zone | session_pool.GetTimeZone() | + +### **Record相关接口** + +| api name | parameters | notes | use example | +| ----------------------------------- | ----------------------------- | ----------------------------------- | ------------------------------------------------------------ | +| InsertRecordAsync | string, RowRecord | insert single record | session_pool.InsertRecordAsync("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); | +| InsertRecordsAsync | List, List | insert records | session_pool.InsertRecordsAsync(device_id, rowRecords) | +| InsertRecordsOfOneDeviceAsync | string, List | insert records of one device | session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords) | +| InsertRecordsOfOneDeviceSortedAsync | string, List | insert sorted records of one device | InsertRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); | +| TestInsertRecordAsync | string, RowRecord | test insert record | session_pool.TestInsertRecordAsync("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord) | +| TestInsertRecordsAsync | List, List | test insert record | session_pool.TestInsertRecordsAsync(device_id, rowRecords) | + +### **Tablet相关接口** + +| api name | parameters | notes | use example | +| ---------------------- | ------------ | -------------------- | -------------------------------------------- | +| InsertTabletAsync | Tablet | insert single tablet | session_pool.InsertTabletAsync(tablet) | +| InsertTabletsAsync | List | insert tablets | session_pool.InsertTabletsAsync(tablets) | +| TestInsertTabletAsync | Tablet | test insert tablet | session_pool.TestInsertTabletAsync(tablet) | +| TestInsertTabletsAsync | List | test insert tablets | session_pool.TestInsertTabletsAsync(tablets) | + +- ### **SQL语句接口** + +| api name | parameters | notes | use example | +| ----------------------------- | ---------- | ------------------------------ | ------------------------------------------------------------ | +| ExecuteQueryStatementAsync | string | execute sql query statement | session_pool.ExecuteQueryStatementAsync("select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); | +| ExecuteNonQueryStatementAsync | string | execute sql nonquery statement | session_pool.ExecuteNonQueryStatementAsync( "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN") | + +- ### 数据表接口 + +| api name | parameters | notes | use example | +| -------------------------- | ------------------------------------------------------------ | --------------------------- | ------------------------------------------------------------ | +| SetStorageGroup | string | set storage group | session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_01") | +| CreateTimeSeries | string, TSDataType, TSEncoding, Compressor | create time series | session_pool.InsertTabletsAsync(tablets) | +| DeleteStorageGroupAsync | string | delete single storage group | session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP_01") | +| DeleteStorageGroupsAsync | List | delete storage group | session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP") | +| CreateMultiTimeSeriesAsync | List, List , List , List | create multi time series | session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); | +| DeleteTimeSeriesAsync | List | delete time series | | +| DeleteTimeSeriesAsync | string | delete time series | | +| DeleteDataAsync | List, long, long | delete data | session_pool.DeleteDataAsync(ts_path_lst, 2, 3) | + +- ### **辅助接口** + +| api name | parameters | notes | use example | +| -------------------------- | ---------- | --------------------------- | ---------------------------------------------------- | +| CheckTimeSeriesExistsAsync | string | check if time series exists | session_pool.CheckTimeSeriesExistsAsync(time series) | + From 04f39909a32252ffe21cf96c8333a2fb7f2d648c Mon Sep 17 00:00:00 2001 From: mwx Date: Wed, 18 Aug 2021 21:42:07 +0800 Subject: [PATCH 129/214] fix: change function names to pascal style --- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 100 +++++++++--------- src/Apache.IoTDB/DataStructure/ByteBuffer.cs | 56 +++++----- src/Apache.IoTDB/DataStructure/RowRecord.cs | 30 +++--- .../DataStructure/SessionDataSet.cs | 44 ++++---- src/Apache.IoTDB/DataStructure/Tablet.cs | 28 ++--- src/Apache.IoTDB/SessionPool.cs | 50 ++++----- src/Apache.IoTDB/Utils.cs | 4 +- 7 files changed, 156 insertions(+), 156 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index ff04245..c035bf5 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -224,8 +224,8 @@ public async Task TestInsertStrRecord() System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); @@ -246,7 +246,7 @@ public async Task TestInsertStrRecord() res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -324,8 +324,8 @@ public async Task TestInsertRecords() System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine(status); @@ -350,10 +350,10 @@ public async Task TestInsertRecords() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); + res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -425,8 +425,8 @@ await session_pool.CreateTimeSeries( System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); // large data test @@ -447,7 +447,7 @@ await session_pool.CreateTimeSeries( res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -485,8 +485,8 @@ public async Task TestInsertTablet() System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); // large data test @@ -512,9 +512,9 @@ public async Task TestInsertTablet() Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); + res.ShowTableNames(); var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -574,14 +574,14 @@ public async Task TestInsertTablets() // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); @@ -607,9 +607,9 @@ public async Task TestInsertTablets() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - res.show_table_names(); + res.ShowTableNames(); var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -766,8 +766,8 @@ public async Task TestDeleteData() System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); var ts_path_lst = new List() @@ -778,8 +778,8 @@ public async Task TestDeleteData() await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -897,8 +897,8 @@ public async Task TestTestInsertRecords() // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); @@ -922,10 +922,10 @@ public async Task TestTestInsertRecords() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); + res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -963,8 +963,8 @@ public async Task TestTestInsertTablet() System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); // large data test @@ -990,9 +990,9 @@ public async Task TestTestInsertTablet() Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); - res.show_table_names(); + res.ShowTableNames(); var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -1051,14 +1051,14 @@ public async Task TestTestInsertTablets() // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); @@ -1084,9 +1084,9 @@ public async Task TestTestInsertTablets() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); - res.show_table_names(); + res.ShowTableNames(); var res_count = 0; - while (res.has_next()) + while (res.HasNext()) { res.Next(); res_count += 1; @@ -1128,8 +1128,8 @@ await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); var res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); @@ -1165,33 +1165,33 @@ await session_pool.ExecuteNonQueryStatementAsync( "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); res = await session_pool.ExecuteQueryStatementAsync("show devices"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("SHOW DEVICES sql passed!"); res = await session_pool.ExecuteQueryStatementAsync("COUNT TIMESERIES root"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("COUNT TIMESERIES root sql Passed"); res = await session_pool.ExecuteQueryStatementAsync("select * from root.ln.wf01 where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); Console.WriteLine("SELECT sql Passed"); res = await session_pool.ExecuteQueryStatementAsync( "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.show_table_names(); - while (res.has_next()) Console.WriteLine(res.Next()); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); diff --git a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs index 2e14dbb..6140688 100644 --- a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs +++ b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs @@ -28,27 +28,27 @@ public ByteBuffer(int reserve = 1) _totalLength = reserve; } - public bool has_remaining() + public bool HasRemaining() { return _readPos < _writePos; } // these for read - public byte get_byte() + public byte GetByte() { var byteVal = _buffer[_readPos]; _readPos += 1; return byteVal; } - public bool get_bool() + public bool GetBool() { var boolValue = BitConverter.ToBoolean(_buffer, _readPos); _readPos += 1; return boolValue; } - public int get_int() + public int GetInt() { var intBuff = _buffer[_readPos..(_readPos + 4)]; @@ -59,7 +59,7 @@ public int get_int() return intValue; } - public long get_long() + public long GetLong() { var longBuff = _buffer[_readPos..(_readPos + 8)]; @@ -70,7 +70,7 @@ public long get_long() return longValue; } - public float get_float() + public float GetFloat() { var floatBuff = _buffer[_readPos..(_readPos + 4)]; @@ -81,7 +81,7 @@ public float get_float() return floatValue; } - public double get_double() + public double GetDouble() { var doubleBuff = _buffer[_readPos..(_readPos + 8)]; @@ -92,21 +92,21 @@ public double get_double() return doubleValue; } - public string get_str() + public string GetStr() { - var length = get_int(); + var length = GetInt(); var strBuff = _buffer[_readPos..(_readPos + length)]; var strValue = Encoding.UTF8.GetString(strBuff); _readPos += length; return strValue; } - public byte[] get_buffer() + public byte[] GetBuffer() { return _buffer[.._writePos]; } - private void extend_buffer(int spaceNeed) + private void ExtendBuffer(int spaceNeed) { if (_writePos + spaceNeed >= _totalLength) { @@ -119,84 +119,84 @@ private void extend_buffer(int spaceNeed) } // these for write - public void add_bool(bool value) + public void AddBool(bool value) { var boolBuffer = BitConverter.GetBytes(value); if (_isLittleEndian) boolBuffer = boolBuffer.Reverse().ToArray(); - extend_buffer(boolBuffer.Length); + ExtendBuffer(boolBuffer.Length); boolBuffer.CopyTo(_buffer, _writePos); _writePos += boolBuffer.Length; } - public void add_int(int value) + public void AddInt(int value) { var intBuff = BitConverter.GetBytes(value); if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); - extend_buffer(intBuff.Length); + ExtendBuffer(intBuff.Length); intBuff.CopyTo(_buffer, _writePos); _writePos += intBuff.Length; } - public void add_long(long value) + public void AddLong(long value) { var longBuff = BitConverter.GetBytes(value); if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); - extend_buffer(longBuff.Length); + ExtendBuffer(longBuff.Length); longBuff.CopyTo(_buffer, _writePos); _writePos += longBuff.Length; } - public void add_float(float value) + public void AddFloat(float value) { var floatBuff = BitConverter.GetBytes(value); if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); - extend_buffer(floatBuff.Length); + ExtendBuffer(floatBuff.Length); floatBuff.CopyTo(_buffer, _writePos); _writePos += floatBuff.Length; } - public void add_double(double value) + public void AddDouble(double value) { var doubleBuff = BitConverter.GetBytes(value); if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); - extend_buffer(doubleBuff.Length); + ExtendBuffer(doubleBuff.Length); doubleBuff.CopyTo(_buffer, _writePos); _writePos += doubleBuff.Length; } - public void add_str(string value) + public void AddStr(string value) { - add_int(value.Length); + AddInt(value.Length); var strBuf = Encoding.UTF8.GetBytes(value); - extend_buffer(strBuf.Length); + ExtendBuffer(strBuf.Length); strBuf.CopyTo(_buffer, _writePos); _writePos += strBuf.Length; } - public void add_char(char value) + public void AddChar(char value) { var charBuf = BitConverter.GetBytes(value); if (_isLittleEndian) charBuf = charBuf.Reverse().ToArray(); - extend_buffer(charBuf.Length); + ExtendBuffer(charBuf.Length); charBuf.CopyTo(_buffer, _writePos); _writePos += charBuf.Length; } - public void add_byte(byte value){ - extend_buffer(1); + public void AddByte(byte value){ + ExtendBuffer(1); _buffer[_writePos] = value; _writePos += 1; } diff --git a/src/Apache.IoTDB/DataStructure/RowRecord.cs b/src/Apache.IoTDB/DataStructure/RowRecord.cs index 2b25352..1f4db75 100644 --- a/src/Apache.IoTDB/DataStructure/RowRecord.cs +++ b/src/Apache.IoTDB/DataStructure/RowRecord.cs @@ -24,7 +24,7 @@ public void Append(string measurement, object value) Measurements.Add(measurement); } - public DateTime get_date_time() + public DateTime GetDateTime() { return DateTimeOffset.FromUnixTimeMilliseconds(Timestamps).DateTime.ToLocalTime(); } @@ -50,7 +50,7 @@ public override string ToString() return str; } - public List get_datatypes() + public List GetDataTypes() { var dataTypeValues = new List(); @@ -91,35 +91,35 @@ public byte[] ToBytes() switch (value) { case bool b: - buffer.add_byte((byte) TSDataType.BOOLEAN); - buffer.add_bool(b); + buffer.AddByte((byte) TSDataType.BOOLEAN); + buffer.AddBool(b); break; case int i: - buffer.add_byte((byte) TSDataType.INT32); - buffer.add_int(i); + buffer.AddByte((byte) TSDataType.INT32); + buffer.AddInt(i); break; case long l: - buffer.add_byte((byte) TSDataType.INT64); - buffer.add_long(l); + buffer.AddByte((byte) TSDataType.INT64); + buffer.AddLong(l); break; case double d: - buffer.add_byte((byte) TSDataType.DOUBLE); - buffer.add_double(d); + buffer.AddByte((byte) TSDataType.DOUBLE); + buffer.AddDouble(d); break; case float f: - buffer.add_byte((byte) TSDataType.FLOAT); - buffer.add_float(f); + buffer.AddByte((byte) TSDataType.FLOAT); + buffer.AddFloat(f); break; case string s: - buffer.add_byte((byte) TSDataType.TEXT); - buffer.add_str(s); + buffer.AddByte((byte) TSDataType.TEXT); + buffer.AddStr(s); break; default: throw new TException($"Unsupported data type:{value.GetType()}", null); } } - return buffer.get_buffer();; + return buffer.GetBuffer();; } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index a175e65..d414f80 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -89,22 +89,22 @@ public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQ } } - private List get_column_names() + private List GetColumnNames() { var nameLst = new List {"timestamp"}; nameLst.AddRange(_columnNames); return nameLst; } - public void show_table_names() + public void ShowTableNames() { - var str = get_column_names() + var str = GetColumnNames() .Aggregate("", (current, name) => current + (name + "\t\t")); Console.WriteLine(str); } - public bool has_next() + public bool HasNext() { if (_hasCatchedResult) { @@ -112,15 +112,15 @@ public bool has_next() } // we have consumed all current data, fetch some more - if (!_timeBuffer.has_remaining()) + if (!_timeBuffer.HasRemaining()) { - if (!fetch_results()) + if (!FetchResults()) { return false; } } - construct_one_row(); + ConstructOneRow(); _hasCatchedResult = true; return true; } @@ -129,7 +129,7 @@ public RowRecord Next() { if (!_hasCatchedResult) { - if (!has_next()) + if (!HasNext()) { return null; } @@ -139,7 +139,7 @@ public RowRecord Next() return _cachedRowRecord; } - private TSDataType get_data_type_from_str(string str) + private TSDataType GetDataTypeFromStr(string str) { return str switch { @@ -154,7 +154,7 @@ private TSDataType get_data_type_from_str(string str) }; } - private void construct_one_row() + private void ConstructOneRow() { List fieldLst = new List(); @@ -172,34 +172,34 @@ private void construct_one_row() if (_rowIndex % 8 == 0) { - _currentBitmap[i] = columnBitmapBuffer.get_byte(); + _currentBitmap[i] = columnBitmapBuffer.GetByte(); } object localField; - if (!is_null(i, _rowIndex)) + if (!IsNull(i, _rowIndex)) { - var columnDataType = get_data_type_from_str(_columnTypeLst[i]); + var columnDataType = GetDataTypeFromStr(_columnTypeLst[i]); switch (columnDataType) { case TSDataType.BOOLEAN: - localField = columnValueBuffer.get_bool(); + localField = columnValueBuffer.GetBool(); break; case TSDataType.INT32: - localField = columnValueBuffer.get_int(); + localField = columnValueBuffer.GetInt(); break; case TSDataType.INT64: - localField = columnValueBuffer.get_long(); + localField = columnValueBuffer.GetLong(); break; case TSDataType.FLOAT: - localField = columnValueBuffer.get_float(); + localField = columnValueBuffer.GetFloat(); break; case TSDataType.DOUBLE: - localField = columnValueBuffer.get_double(); + localField = columnValueBuffer.GetDouble(); break; case TSDataType.TEXT: - localField = columnValueBuffer.get_str(); + localField = columnValueBuffer.GetStr(); break; default: string err_msg = "value format not supported"; @@ -216,19 +216,19 @@ private void construct_one_row() } } - long timestamp = _timeBuffer.get_long(); + long timestamp = _timeBuffer.GetLong(); _rowIndex += 1; _cachedRowRecord = new RowRecord(timestamp, fieldLst, _columnNames); } - private bool is_null(int loc, int row_index) + private bool IsNull(int loc, int row_index) { byte bitmap = _currentBitmap[loc]; int shift = row_index % 8; return ((Flag >> shift) & bitmap) == 0; } - private bool fetch_results() + private bool FetchResults() { _rowIndex = 0; var myClient = _clientQueue.Take(); diff --git a/src/Apache.IoTDB/DataStructure/Tablet.cs b/src/Apache.IoTDB/DataStructure/Tablet.cs index 4f98818..950de3c 100644 --- a/src/Apache.IoTDB/DataStructure/Tablet.cs +++ b/src/Apache.IoTDB/DataStructure/Tablet.cs @@ -64,19 +64,19 @@ public Tablet( ColNumber = measurements.Count; } - public byte[] get_binary_timestamps() + public byte[] GetBinaryTimestamps() { var buffer = new ByteBuffer(new byte[] { }); foreach (var timestamp in _timestamps) { - buffer.add_long(timestamp); + buffer.AddLong(timestamp); } - return buffer.get_buffer(); + return buffer.GetBuffer(); } - public List get_data_types() + public List GetDataTypes() { var dataTypeValues = new List(); @@ -108,7 +108,7 @@ public List get_data_types() return dataTypeValues; } - private int estimate_buffer_size() + private int EstimateBufferSize() { var estimateSize = 0; @@ -142,9 +142,9 @@ private int estimate_buffer_size() return estimateSize; } - public byte[] get_binary_values() + public byte[] GetBinaryValues() { - var estimateSize = estimate_buffer_size(); + var estimateSize = EstimateBufferSize(); var buffer = new ByteBuffer(estimateSize); for (var i = 0; i < ColNumber; i++) @@ -157,7 +157,7 @@ public byte[] get_binary_values() { for (var j = 0; j < RowNumber; j++) { - buffer.add_bool((bool) _values[j][i]); + buffer.AddBool((bool) _values[j][i]); } break; @@ -166,7 +166,7 @@ public byte[] get_binary_values() { for (var j = 0; j < RowNumber; j++) { - buffer.add_int((int) _values[j][i]); + buffer.AddInt((int) _values[j][i]); } break; @@ -175,7 +175,7 @@ public byte[] get_binary_values() { for (var j = 0; j < RowNumber; j++) { - buffer.add_long((long) _values[j][i]); + buffer.AddLong((long) _values[j][i]); } break; @@ -184,7 +184,7 @@ public byte[] get_binary_values() { for (int j = 0; j < RowNumber; j++) { - buffer.add_float((float) _values[j][i]); + buffer.AddFloat((float) _values[j][i]); } break; @@ -193,7 +193,7 @@ public byte[] get_binary_values() { for (var j = 0; j < RowNumber; j++) { - buffer.add_double((double) _values[j][i]); + buffer.AddDouble((double) _values[j][i]); } break; @@ -202,7 +202,7 @@ public byte[] get_binary_values() { for (var j = 0; j < RowNumber; j++) { - buffer.add_str((string) _values[j][i]); + buffer.AddStr((string) _values[j][i]); } break; @@ -213,7 +213,7 @@ public byte[] get_binary_values() } } - return buffer.get_buffer(); + return buffer.GetBuffer(); } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 825161e..08fe62b 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -274,7 +274,7 @@ public async Task SetStorageGroup(string groupName) _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -308,7 +308,7 @@ public async Task CreateTimeSeries( _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -335,7 +335,7 @@ public async Task DeleteStorageGroupAsync(string groupName) _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -363,7 +363,7 @@ public async Task DeleteStorageGroupsAsync(List groupNames) status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -397,7 +397,7 @@ public async Task CreateMultiTimeSeriesAsync( _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -422,7 +422,7 @@ public async Task DeleteTimeSeriesAsync(List pathList) _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -446,7 +446,7 @@ public async Task CheckTimeSeriesExistsAsync(string tsPath) { var sql = "SHOW TIMESERIES " + tsPath; var sessionDataset = await ExecuteQueryStatementAsync(sql); - return sessionDataset.has_next(); + return sessionDataset.HasNext(); } catch (TException e) { @@ -471,7 +471,7 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -498,7 +498,7 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -547,7 +547,7 @@ public async Task InsertRecordsAsync(List deviceId, List _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -565,9 +565,9 @@ public TSInsertTabletReq GenInsertTabletReq(Tablet tablet, long sessionId) sessionId, tablet.DeviceId, tablet.Measurements, - tablet.get_binary_values(), - tablet.get_binary_timestamps(), - tablet.get_data_types(), + tablet.GetBinaryValues(), + tablet.GetBinaryTimestamps(), + tablet.GetDataTypes(), tablet.RowNumber); } @@ -585,7 +585,7 @@ public async Task InsertTabletAsync(Tablet tablet) _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -608,11 +608,11 @@ public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessi foreach (var tablet in tabletLst) { - var dataTypeValues = tablet.get_data_types(); + var dataTypeValues = tablet.GetDataTypes(); deviceIdLst.Add(tablet.DeviceId); measurementsLst.Add(tablet.Measurements); - valuesLst.Add(tablet.get_binary_values()); - timestampsLst.Add(tablet.get_binary_timestamps()); + valuesLst.Add(tablet.GetBinaryValues()); + timestampsLst.Add(tablet.GetBinaryTimestamps()); typeLst.Add(dataTypeValues); sizeLst.Add(tablet.RowNumber); } @@ -641,7 +641,7 @@ public async Task InsertTabletsAsync(List tabletLst) _logger.Info("insert multiple tablets, message: {0}", status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -700,7 +700,7 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List _logger.Info("insert records of one device, message: {0}", status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -732,7 +732,7 @@ public async Task TestInsertRecordAsync(string deviceId, RowRecord record) _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -758,7 +758,7 @@ public async Task TestInsertRecordsAsync(List deviceId, List TestInsertTabletAsync(Tablet tablet) status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -813,7 +813,7 @@ public async Task TestInsertTabletsAsync(List tabletLst) _logger.Info("insert multiple tablets, message: {0}", status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { @@ -846,7 +846,7 @@ public async Task ExecuteQueryStatementAsync(string sql) throw new TException("could not execute query statement", e); } - if (_utilFunctions.verify_success(status, SuccessCode) == -1) + if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) { _clients.Add(client); @@ -878,7 +878,7 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); } - return _utilFunctions.verify_success(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) { diff --git a/src/Apache.IoTDB/Utils.cs b/src/Apache.IoTDB/Utils.cs index 4d2fbba..82624f0 100644 --- a/src/Apache.IoTDB/Utils.cs +++ b/src/Apache.IoTDB/Utils.cs @@ -18,11 +18,11 @@ public bool IsSorted(IList collection) return true; } - public int verify_success(TSStatus status, int successCode) + public int VerifySuccess(TSStatus status, int successCode) { if (status.__isset.subStatus) { - if (status.SubStatus.Any(subStatus => verify_success(subStatus, successCode) != 0)) + if (status.SubStatus.Any(subStatus => VerifySuccess(subStatus, successCode) != 0)) { return -1; } From 217b3af65e775b7b8bfac50fedd1bfb73ecf28c8 Mon Sep 17 00:00:00 2001 From: mwx Date: Fri, 27 Aug 2021 19:02:51 +0800 Subject: [PATCH 130/214] feat: add session_pool_zh.md --- docs/assets/1.png | Bin 0 -> 122844 bytes docs/assets/2.png | Bin 0 -> 120090 bytes docs/assets/3.png | Bin 0 -> 117406 bytes docs/session_pool_zh.md | 133 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 133 insertions(+) create mode 100644 docs/assets/1.png create mode 100644 docs/assets/2.png create mode 100644 docs/assets/3.png create mode 100644 docs/session_pool_zh.md diff --git a/docs/assets/1.png b/docs/assets/1.png new file mode 100644 index 0000000000000000000000000000000000000000..e1c446e0e5ad9bc7a872ec415e335d5ab779a45c GIT binary patch literal 122844 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

    @xGrtI& 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 literal 0 HcmV?d00001 diff --git a/docs/assets/2.png b/docs/assets/2.png new file mode 100644 index 0000000000000000000000000000000000000000..20c2b09a46c571197b6ec6b669e46d4a7ab6b550 GIT binary patch literal 120090 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

    %*(El?ymb9r7k>xx~{GV34J4$ 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 literal 0 HcmV?d00001 diff --git a/docs/assets/3.png b/docs/assets/3.png new file mode 100644 index 0000000000000000000000000000000000000000..b2bce443243470f70fa0be6951b681b2dc750de1 GIT binary patch literal 117406 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

    r# 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�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

    )^F2TRyXgp9kA+#L*nixwhgJ7R(`Xh!O z_2Ea7+sa??JD{tX|GR-+TC|)ZT)dvX)XvVv%I8Rl^m;k&q1ZIcAYhgK@-O^xFp|^+ z^y3GG6Oiy&PBl5?;SJwf&1ja0A4u%;h9nFB zvpUQ9nk~jzvgwmXaE9+7Qcqr=a<0I^PwtS0h8CT-w*$74yEQR%PCTn=VB0 zb(|N>PKRpXztCMEIlMyhn48>HRHjNdE=NkdNI~`liWCbo%_0M(cKMD~ieq3(LrZXJ z5K^!)?GLOOWQ3ZM5=ULz(AJY!J}YQ$bPVc|ohP2Bv_+Uns|fFo=!Byh)yxLvq$iUL zBSV<7<;8}*K8<;zTEbwtC&ZQIDr8edpDdYYZM~#HY{hrJ1ZeJHY0X4wQ$boy0_Kvp zgHL?ZBI1vXJ%xze>+PDaJFc2A<(O#@l}?K2GwR@*xvyox%w)CNwdI!)djNm;d-twy zSMSOO8T%ZbzZ>OIYL+P64<~5mJ@0A%TatMEa-EN5N<4%bYxwP_xB{Rbfwh^uIS&`j zV9SItB_)Nl&xy29$im1A+#2ulv0b~`7pUposh7cB8xwVTy&H^r8WPa@%39SnXG?-g z)JwHphRZ^!khvjeXIjq~OhW8&M2E`wbEd0MRdG-2F{d0#26;IEb`zcft(eS&ALhpO zQS@PyGTbTYF4h0rlgM9?*j?P_-6#j5=K638rLQL$6T+8LbKSF;eG}|%e57s0(+cv$ znyH#k1zh56hwHi%mO#ZJ(#LLMXyzWuJZ*AA!kIL3dx}sRa{=L#$_4?+$i+{;&peT*`cLQ`NO8abg znrA?#l9mQ{ra$&iyO6jg)wiP!VtRiDg=A2H@}tY~Gwm_hBv7N8kbv~;;~aH2qhcVl zyHsmGDVyoW$l{*AKVH6J{I%7@D67Z2xzb%zF~K_AS6fRSe^au7e?&0; z3N0QG5=zm=nbemYedSFXa8)lL>onm^IqcZsZ@Dow`5wf@sa~#E5AZMO@~}!-x1=W| zxX>__0%STpVFZt)yX~#>TC>A@GdO~AUHN}-ckfmK&!MNUnc$iwqvF=|nyps&?E0?l zMs^PEr|YvnR_dWOPS%C!@dC2gy3*f8)8{n@ty=W|Q{{Poff`VYeH8#KlR<`rC$d8> z`yAnUHAlkqSUrtD*I^cj)vi+oK}{|7X)=MCB*K>=1d^`4hHr&9tSk!e+P&9X6wNgX zHFi1n1@euu`(5inI?Y@6CvP*^AlwFnNfM}D^Qdt5+#RTq1Y&8gn!6>-Oza`z>+Eer z3Cjmky;giY7(H*$5`0m>-Xs=R^nLcaBdggd6_|Ny=%?bh?qr3*r z9+7DUX3fGN6HAQ%un^yKm9$vj1}hCEN=O1rJaHm^ikc=vMpo8x_2guwbET&z_IUmL zCNzV&c0tXR76+0&K>gT3SW>JDL`nShSG9|N12q%6EBdkVnpe(H&{i1I@_e=x98u8PaaG6BA zk;@0YHcSJguQ(qk2r_N!jC#)ThBTZ{6|5asE|o^Kd8``NbKO90E|G=3O9w-BTBb=X zIt^y?7FIVY9wv1qO$=r|8yclqraWjOXB0`JO+2OF({vPhd0m=Jk473;DdJ1KTc5c+ zE6Ow11{x9QY9+qW{*0`lB-PnSkUj20SS3O55H9X}GW%Ox_fWAsR;q^b`1#L<{h|4;uh{0s|a4%hTQ-q0Bc~NWFh(D-Q+i z@%F49TO1rI^ zt-(Z=p{JUTO=&$nJCB)=(M+yFJXyI`5>EC_lQfJ$)USu<3zVXaVG{@lVyk|LQg&k3 zlgVbL!!3@16)%QXpLVJT{yYEd*(ZQf$?jm`z!k0RqZTjLP?Jg$Eqy;2mpck|m#P#z z#{CNB_yN&SQEQJgc+SAeYbZvl!;CO1gLe8nmGA3P*qu@nsay?A+d;s=OtAe)l<1#s zm@S3KRhugd3uM2(Ue25?*`A?PMLnaejAbJ~Yp|jT1Pr4@TO5sNT&@*^_!@T^OI^k) zfIMnS>K-K+0WC-J$B4jZxh7wI52s6k0}x}QW#;l{LiuLh1ZoMLz;|D*<@Hxxb2lSN z#*vwzV2i8SATaA%xqDp9;B1A))+?pw>};G_!^ed$mA(2obw$-Zn1|Bf&mR$Qkl?vW zb8T=gSNa+Z^$vQ$3w9Z9`R^@4um1YcV*n8uZ<#u|G-+j(HMKb`W&_gsP+2o?{r1b4 z11a+2C8IK`PH`brRqboJ&dVOVd7#b=_$hR=7xWq`&a>ewC(j77OwBWB`M@ zu_^|glTPiz}>Lp+9h8hJYS0^=-k`v2~Udn+%^~eo0|GF8FvjZ$xKbi z{5MO-t?`@4AN-~3)nbrA4>01~xS<2ajWy7%I(s5?32o@T`!Fwp4&(Da&0&<`@!Jqq z5mA$}yqH7pwCGtJQmmNzr7oj{fE%QYKwx)|z8Mo(r1@w1cgaM51rvEWhzE~F}BX{sLfL7vTYMqhV@nu>oaoye& zLy<~-&N40LLxZ-Gim8g}+~{au3!dYG1>f;4pK1<0Cawg|r&ZGXNqYcwbfD4Cvd(e! zuV3|z>gppp=90HSQlM{YjPET}uF?)sv}0_4NU}i;p;ueum`63?nVOoo?RN{L#XglE zjPDYW{D}wj-`G8|M>yT37hP~GF3$0?+@Day?`G5g%;a!1JZ&}99lxY(x7-xtzOf#O z94+f=L0Q7rPttUJhT2|{#L8OKB%3L?03C0>! z7Jd#?Qbi32%3GJBg!zPn|D8PEzm}#Dze-?Ehr{Jrto6=)i+G>?~(Go zT>EHG=4*|2Mh67kaND)tg>2v4-Q6W#w|j7Hch<*X91>4R3U!dGZC$6gdtD!si5Ts@ ztZ#ZqVIDf)A)<=A!}Qt7z&}A~%8cRP+aZupdJeRDA+V?HlEn>JCdg@()=VH4 zod`lw76w+fo-UEhP9s0$o1|(O&I8(fq&W^K$l1!UX8gu&{mw!JK9fI{FM;_iPVtT| z32hv>7Hou8BvrVgq7bqFTz(Ucb{vCXA8hK{Jk?-haKV8Qa9l8oP~ro7)?;?OmKfyi zFMv?QiV%G>v*e!$QLJLm5*K*8g(y!9vP<*w^0;JVR0_#QwY+6Ba=@yEu3_|QH6|ld zQ&WA##Yer|hl_b{L;-SOZM!=jSD*bf;7?$fef>}i_PEUionofotq@xWS>$#1oB6Ku z7R}u-QyC&l>!86fU)z?`6{mvuZ?Sm~3IwR}ZzuJT7tHT;tUZ1*55;;*zk2@7s)B5M zoG(UsB1Ksyc2)*^%t_Y)>&?ICRP_2WjM=ptD*5qjPp0fcR(OZ%uL}+J@46WINmo8o z!6t>={;yt8J{J|1Q|&wNe8JiU8UgX}BpswLvvJ|P=5h*JTqua61y&0+Ei*%+XT{tE za;nvZk1y#`i@p(nJ@!h6^5hahX1aom18llSqp{MMQ|6k*Art{)7!4Tl;kE(a?3D$a zULqhWAiVmpC+{Qt9v7j~TteckdZxgGEAo#35A_^tN-e5=$|g=>*Dh?kQ%=`i+Nt2YoN<=z|cRh z_5-m@TnQJ21LviQR^k(E96MK8`Og4!G0jOSZ<)np!4sF@ zI>_GbHK@~+Tt{jQ1iDBYjI)|4+tc${jM#&xa=ZW^Lbv(nkPtfB!Cv3~i^mXg9v_3B z&il{D9fDTllKzP$c}oU54E4;)i<%Tw5qV{ro|uxd*Z{Wz{g!vqsdhb| ztwCKU^$O-T*O6v5oRyQU$zM{%oNy#}8i%EX5Nr+i`J^;VzYKOZ8?4UR5D*DDm*|z+ zM%z?$M<)BNLRy2(VtqM!^M!O)*SJPgcdi zFxJu0Py?rdp<&9*U^(!YHeZ#UHlMo>5l#YjWnOrfJ11=a>791Q$J_(dW-ps5csfP7 z-o?4>JPycLFfV4U0eS2~TwjEDZpYC-H|qvsTEXczI792DdkS+seS(I55lM_Osa&`7=Ju50*~ z%QEtRH_EvC*SwPC+A&7S=MTTC6_2i|zNhp+g~qTj=Aj|f+-++=sVS>PBMZxPyIGA3 zpur?hC-;Mf?Ifk7;=0; zX>Jdr{ayyre@f~FRR6DNG$weF-U;)MU~)Yfo8-42K_^AtLLi@c1sW``GaUlg>of|x zdv(w6wKB3nE-x?9QCr)8TKf-Jw^(qdyhqks;4*VC=-N+5wp#qCz*ke_xHZ`Ai6}9w z(=k(*<2*g#wPrI)t)PTi%br3w80pg5JId7etREiTe*ZNtNBABAHavWMM3(*)k=?S2 zfEmkz(tu3~2XBhrl9G@wEa(d*{!~$@Ll%6sPGLvJU6oz+_hfvrvmPx@2{k%3 z^H}E~S+ea~(rlyb$LR6_69q(yg!01mgUjLvGtlz{m$J7-UI|*@1G;ujB6CyundvXJ z@3^XfhU)L%i}VZ-!oL$Ut2Us1h+!AswcH-I1E)`(48Td?FekeN`sE_aan#M?4-;o5ww*A)sBwIi+795m(v^s4F}FD z$__t-m1V8hNuL>w;hePvvPGLqj)VsXbqtho@r;ZOG23y)K6LHw8hmj#WTaV-j?mR? z_B@#%R&8mIuyg&yNyH*es}Hi!9$oHX>v%YCONu@ax(yL=m+Rt0E*IezzT5}*k@+n- z^pUx(EXFy7sZ53l!|yIFbX(F-_fz%paB*?dTRefW9+`SI)EQBuiiObkMC5SMf^1_0 zdtEbCF*1%PQ5zH%vGv7MSWU1a!dcg!ixIu z*DdiuH^5RV7uzk_H)Xf{nIJ16kgv>#xCZ`qLuFh&?Cy6{d195QB1Raz)^>pJ$L$Ap z8WVc#ULMoas~NlTvniF8-HvBw-SgC(?S3g>-ScKI4U>Nt>~#!au)KDzY~~Mt>thgc zZZ1$M9xmNBDQiV)YrW7#{04D<^*sTHFj_BTb`tc+;e!`O9L=6!T~1hQhJF@&Z(>#t{>Iz$a?(nku?vI#Imq1|c3e>RBq!)rHn6 z;thuH)fIZLcnQLu08K2AMEu{1iqwucl)l-x)}i_-f8X-=l3oOStZ9@Nx@r$jZ6m`a z>Ajl1hJ?Xlt4Y0#jz1rF^~+_&R{$RCmHA+>z6=>o1qd4slUi9ufW@NJLGN^`?XpZo z1-~4%Wtjv%I$+?1G(uAA%{zqdL#h3}$rL{+YnF~w%O=770xSOg*CJYuuM*;Fd?WIZ zmAR*SA~EukYD9h;JhkM!leBS6!pw0gco=9|*M;txJE4J?Uf7jIE(w{j{SgJcEYQ?h zS$@QC{pVNbJDZj34l(Wz`9d8&zEc@+@3kzpwo{8rI^i*<=4`0#UgF-d-UY4QvV%Pk z2|?@@uWL4F6*H=rfnnk82~2Erg|EM~97b%632uLVS?raQm6X_PJC+g`M^$s}!hrc1 zPh@U$Zut8*uyf4K%VY&ySx29fLAyVj)%)<|e{Z7B;$Z=dK$)}u2UR13(J4n(R#}9J zq4@-4SP6DpQBf4Rx|~#`Q_Wi-bL@W;Qg<<3BsFx{a!}EF+;C83*d0vPdO&2J?qOE= zQd7}dRRLH9{)uE9Rk8Z6d52MOBL#kz5ttXlUtyqJ&`$maoSMh9JpA|gK@N|Za~Jt` z(7HUXYZrI}-!~P^d znOBnhcGJ@&`uNc4B$WiuUrJ%QsV)zyu7>S7)E=($gBt4oBd3hGDb6Ljx9!-+7;}vqYM06aHH^pEH@rZ^X*&;G>&0D>I{aO5yR$% z+gErcn%mKT?Wix4T9cyl36sswL2!4=LA6^_+hkcZa7C-H%xa!6@LI~==Q+0*l)i~YX~!o&&nwJerDx#VINt8SIcK= zHLYXeEKfJJ2bdc>a~Q;%c6Ges+Z!>!Wj6fI`8UeWh{skecn5Oqv{3;x8Y%yVFX_|7 z-ibHpKt;6{(Vtf8a|?oTND{qboaNDboXd6hFNxn%-{ke^}!tVgHI zXU1b~An(^=XGv-e*nt&YRfo@eY<>TV&=r9)=~Al(NpIIOO=6#JUYhii>*H7yoGYxy zjbh-lR%i+Jds%;o8C(xX1xb=BC>j4=>o+5`^U0f=tT$! zvSKpgVya`p0=|(8R{8ld5TMuv*`WA{NjVcF~PfGr|6dBJ3FgU;aItx?B4`OQ*8K zcDh91DL42<>wY-$dA1Py_@I~8UEdBBi+@zhRReX2{Q?mf7E=Z}tXO{?AQ!GuXtU(1 zJzQ8SV{#j^*|j-oLLkCqx8Xi3`svct*dMXK$km$pytSGcRyWmNvG2yaC2|wRXW0pt zo1f-GH|OZ<8kKz(u-Tzuen^aiHyd`ofJ_9Rnfpm(@cG z!Rx>mUpbo8m@;7Bwx~F&B6q6i02xBIa%;kN{ zh2CAu-Q(7F(nk@Q#atR|5p%U?5O}ELxCU8a16|#pWD4)k&*T>PrQDqlu|>nLnmpu2 zGs50pUyHOmT?>{KeKA#18n+P8b@hAr0kFT4dKol6T#txMB(O2xD^59$1mMxEI;H93 zUa_3yCF?x2@#d6`P@`e%I(n{CZ(+WYsVkXliH_YeW|Zvq&q%%Mtbs0y%-qlbTd=o+~-4ShV0UBB*S%41E3LXXC-4CV*y?_ATKq* zfo>+OE9rQ=&l-s&8$zon%Tnv6L9&%!K9xH4sK{uf!oI}{s{O+?RD`yb)_5$W$<_s$ zEKuvZQ2$Q&Rq&dEYM$rOm77-wYypj}?WPNjO%n4y3GXE6wHafAe7-VJJxBo<L6;Ekzv~fZ5&dNRS61t&D{;%8EeJmOAJiZ0nS{=&a zJlfT9^}s)P1z3su<@P6`_mk86C_!7b%SsD@5yWuDIxWK2Usg+0P<(`}v@K%UIUu-IpY58(5Ir!l@|mvqQLX4w(+|pfK^gTMCtIfeL@L>1l0%5zRDMu60SE5x5+H+f^V6h0yCUOcyvQ9mUwi%E#|>j)@u;`Gv0k-KM!Egiz&PU=WIz4JGTE{~Sjh*smqJh_qlB=t1TAbq zrgGRBOjk_6IeE4Q&XaFYk|AuRii_Fw829C`1elj^el1O=WhN+u=S_ZOW8hw z_#N-CNeGz)-7l@dBeOXrsDf@e_|vX}=7xSy!wZvl^W$&ML;@@Rs59!Izt=FWOn_o$ zm&zaOm3S8ytB4Tsx$JX|30_=Ij+NapqYGO_pYBGZx{N3Y9JNi}UB0{EHHY<5EUg!* z>zmGW7#=XEjZSG_=tWSjKs+tem=j*3(`0AY#irinKdJ~I3vdje2ERFlH|378-y!Ax zS*Dzp%(hJM(eN@wYpg{xTwc3sgrmALX(^vYFLUCc=u;O8QZW$YlcW-yIks|IL7YEh5gVGdCP`f(bva2ctF-zZZfF>zjrE0PL9+Sz6>+aWNP8Z(C z{5ZD;q%Kcx{oG}2yNkA6NWPqZrwG}Tn#+WQmEkO94ht*a6pPBF+c%yzFgCe=&aw+i z=`pYU3$8btfj<*i>Z9(|J3bjF+*dfDPHIj>NlRbJ@soj+XHW-WOmmY|Z5(1%?q^{K z1Z*(a{jJ{}?7q3rhs*02r*sT(Z?E3PxC_2h=BjR?!Yr+_m+b56>Ht49D#AQ3@?_#@ z+j$u(-i*($#ETsevm2~_rD|Prnbmd6P^r2I7M3*!yR}_d2q}klXvkr)1c5T zi|rb0wwE)M#wde#RCR9c3~lx5@NGr6S$VAXhPZ-uVjKik&X4nAA+#So?K&7JK9XKG zca+JmO`i3f9~fUm3EBQ}2=L|I?QK^CyDr*zh4r7Ne`{fhk#6zfPnggAgJv}Hl9BCB zkKRXF!#(p-)Sc-t*wlyv9-5BH)M0M@g`W(NROD~^mX_M{`|1Fg=ik@ud^ALV3|~#Y zFf)8v0QtmL^wcHg{dd$~47hGU^wX9kR(i*j@iNV9-yp+v!NNRi#(2M@5X65q{U8*z z=rr4{QT(uE;Np1oxA#?N7NBO=+qvZ5FUpM)-tWRYIkewzYYYzyo59C}{`>^%fU{^U zJ1R_>zE47-JX>oPfJ4j^&Gprsc_nrSm*1*3p9?aG?Wm4*r_-Y7o$Sk zeGlJm?c_Z8++$Wdd9pTYV-YEV>wqu4w{th67RO?s-_zw-rs`;mN;;7n2&O{60|^#X zMkG%1;U)N;*Z?Fn_BON?PJq5{x2%=k=;J|eIWp5-lm$NIAT!z7xdidU@UOPdhb z%UgkX1-pjDbP*%{9rscZk<-~1Mh(q1w<6l@ko@6P0JtXPleu*C=R01z3_mGJgT4+KLG-#>T0Gq6%76{S%MvdcN@ESw|S}H8wby8 zTy)yQ;WDqh)~VQo?XYSj#3$l$TojXHVZl|Gl6hUjrn3o9A7cZ=HkA!LCG`hSL*B%6ujt);eI>XXk&^ z=D{(E#j2*;3H_KN%q@;RzdM$k$L{@_E%s_SZx=Urc6O3VC`q#z=F*)si*KI)PoYp4F7OyX}Gp^5tQER{7W_|E%zWix9P+%Xx4pUBR#}&tiWT@ z-C{bYVtTPXn$gj>)I1hR1_YB%mGbFl(^Cdl`_n6x+8M3O{)hmr`6`6qv;8l`q`DKX z2Ak4H9%yWjo&BUR6a8{vh!FmEHMsPxP0C%jsu^~r$Ck6H-Y0JPUU+4ToSq2L(Z>q+KFbSPIN-2Z zwn*oAU$zel(!|`@Gn6ld0h#+EdAY(|NS;bn&F0hRc-Ii9Z*;Bw?fx1i>~m7M%Y&TIFka@Hc8jj zqj;Xe(eYduf8GajluN&GwDAm?!jpL>Wr=k`hWcjQtHV2PutQ_Ma8n&7EJAR`zw`a` z5uWX-+$C>^Ob=w_pz+rj4+EF}RX=Bj1kZZ@{~IU+pjJ_$()EcJ3Q1?b6x0{2EGpW3 z$jNDI`@QioKaV;^M|s`jZ2j}?acd6+E2FQ)dbkHFGIZ++EowSCy1oh_bfMzmybB*Yv5$UM|BPZz2|%qKscq?beYOug z1JFQX$uQgd;FzO$KXSh-d*hIXT@0dLCN|0hOfQ;Hnjt$gx*3%i{icu>5LGM!f5f`RmwZ zgwj)u);5_t5=zwF?RqIMvx}@~*JbAAhu@KMHk1YFIfT=(y=&yL(tW zVG{<;?zJ}xc`Y`d5lxH=(0S0y9!eeM>UMRngG4CtKU}fcJ*QM37xEBDgldSRK9tS~ z?qWbZ-7{zP$;bHG&ljyfRsKz60B$)x@Bmap#FggZpUTLnU@VU_V2MwzL-dxe;pEKpflgzc|_ zK_|FkQlm*GCFf~M7=63_{^qkwjsNO#lnd{Ws*02@?gpw8;9-(!dlj??gTqPSggDD{r*yx3Gx6uvSk z*=)0@BwMO=-)iY=DLde=-}ph+0KWjzIJf6Ju3sk4IY+RVy!t{00wf+riJKUuBQI!k znT!ZM12)-LAicjIocRTrrfImM@)}FOqhDY(?8g)lwz64geaYY29D0cbl+*q$rE+70 z@S>Mm&F6hm8Wp7Zdda6}?Qyg$Sz6bAB6j4#$Uz$VKGV}0x-NG@h2Z7Gq|6 z=s7d}pJeWd?$qPTZ6v3d!Olj_==dfT!#L9R=KBq|S=88LTOc_o$v}7t_r*PwZ8;DXVcoi*#uLm-i z_y1;vznOJ^l8N35#Qhv>5KG@;~ZJT5ina@ftE~TMd z#63|Hb~Bl(y-k(QF&EDXX?J1-8T#qKncC^cWrK&5OyOaW!L~;E<3kpB>)#{`78Vp2 z-9RZfQDKOD&-qnE0cDDvZV=oFRv1qG|CxMU3YZZI$UN+RLD~~O$Xy+ z?LhOlop#v!4IOYO@Y5~_p^CQVm!sa{*2-OE;uJg%zlkLh`0=0HkPTcbas6DMQsb)6 z3PijmN$-as-4#$)dPtd50$4jm2R~>izse*G=3IgdC59irim}*howTU@bbQf9dgcSS zjL9*Ulap`+mJwBVoS-6ghC;sV2`0HrU6@-~pTrE9s$JcUH7%?!OYfn_!%pw|H;!VN z`}qK^S3B2krwWeMY=sd2$)$d#w@Rr_1)+Bj9)Uj20jPVNa!ZV9fR9p3DOVO8je*g< zd&qw2QyGb3ViQ+XHhA^P=%d*J#Sf3lS^Yc{hb_n$MHrj{1I?BDs+oGc#rxJ*=Z@e% zk-OV_R8=F8cDg(-LdlLenG^>&W432}VKx)Pi*9y#D5#D)C4ww54jAupeOTf)~_@Wh(8$?_lVY^NWiMm$(Yu6&=((4MJK9>3l~}RG;x!&xVHw zY+Cz*n%bJbMUY;VDosQM>7o>=0xCxV0jUzIbV%qVU}yqC1Ob(*^xj*5(7S>Vst`yB z9qEKBp~JH|_xXQ;XTQjmT*=O!wbsn6Su?+xIjaBHEgBv!O$A8wuQS-)!W0)@;L7Se zxf@%!{I#boCUx}$2orCm11~3~^=SK6gX)%of&z!+gYS9CS`+TwV}O-1Ez@k2?hgzs zo?OMp%E@1-#_%lrtWM^9X9eWiEM?UJ+JU!TwCsKC#|&kLls7pl^i>VDkeQ8!X4w~*rwm&pP<-}q=b`1E!v5J5zr2Q5e)I{#0-F=5C7wfrR#_2tE) zUT2d=c5#OeimJ1QqBnP)?Z-mp!-btdQJ;&6#6WYm7eLK|R_RiFOT*xFrLl-Ot44of zf~4b49gxN)-r_i50XxE<=coPFdZoA+5@J7?0__S{e;&<#^ma2j)^PLi#rdFNxst{ZAZzwJTc#N>6#zBKjck3 zD-0t%%Mv`-l@*`nFUu^h2)Wpc_(FCPNv0+|jmbya8IG1pk_w+{WEuRFWYgE&-=k0m zZK>b;pRF??0w^K=<&)o2sgbXN;zffi(vaiQ+9~2W1imcV#~F9;nEp)%>{+q3>71T4_>Zmn-0xcUP4brgFaP|5&o?%pN4Kx@ioO0ub$1#4 zr%&2-n?=rmY+Px0$e{kvg=HP^iW_kj^)(<_N`s@s`x=b?vxhza2!*Jd9vQ(`tj|8$ zbTNmHTLhj($xQ!R9q|Av&8G>`2mjXBQIgB#sA2ScO_Kn0Wbhj;uz#-j6}*S{Kj_yO z9Xt5n#N2lJ=W=F5-!M)l_asIzl&A30?TPi<(EdC|z>|$$6`AHqS_{K6Qc}LX(kkzh z>b+2SY?mzX>~*1A)<4s}cQu*@-iQD3X57h-+o+$PQBGOAYZBFS0g_8~xi0kvt~*e= zDz@^swmH$Sc@?%E8KJixiE6AafSv2R+HUqrFHC@IXIy;q!yVL>|08GuT#}_01)Tp> zW_jmY!j27v(@h(^dVW_&)Sv-a2Mg7Rm9gpT*RM^3k2DNaKi(1-{xuEyH)acLGXYoa zEOk>^{q9_c_MZwjO{WJJdciNszx9r^EI9E2|autJ@l?+xX z5(sr=X5+E1;wm(_LX8pmJ6pDc8 zRn{Byva>;?FSXwQt& z_kW{q+tSHvk6Lx^#CqSIH~91q`?{cjJ+iEWUQ+3yvR~b9b7erhH_%c$R;a4FDdAh; z{6V&M=f}zA!XZPWURx(%}PtJK6u8n3*6Xz*ACD z?~wm^Ig8wz=NLRDi=0x#OWv} zX1M-k({oAW@ElJPh&yQ*FK-R#snIYIsV`cHFE)31H@28)0X^CuuZ3@qQ+WGo-rnu7PA9(M!(aZ9JOUlUq zj?`5<#P4g5Ld&F6*uo^KGK;SpC^cTOCV#%rF|_x`W>6!ygY);6ovLwsnBwUnKR=Pn zYc)e9(L7?96aWM@2I5gMsek)c?4Q@3tcBi)t}|9Ma`z$?0fhiIS%BpK?Ip683_tdF zXj^c&EZ{bJ{KPeXCaT+?DjLkHy{~QNezMD1-nuh5PB{JXvo`tgJPo;NEPUr@Vv75V{0`RQccKj&-<`u~IXtvhhj^9Dy|p^_28h#*XK@-7 z=7Bzm0o`09qB1zKbB6{qMxTSoLqyM8S7i7W#eBZT#oWxzz&osaWlTF1fbm-C>l}iA zpnE;yhcNQe`_`)BW=VHp^PhCk(UThM=RfoB)cL{5M0R_p?jJXs7auiWwD?aQ7@0os z***ix4WFE;;j87(BSO-9?vFt0OA;_h>#fTckM&F6oy8iKn#RrHgt+lnZ;n0?#GQ{n zcx#N6f@;gwNhmgETrL_nZyuiw@$WUpait!W+}hq`2$qP`=on%P4BB$Ge@eykvAfyX z=>T@?zkQH|R66@xrS0l?(7S6zQFBTd<|a;g_IJz2 zP*21IvdS7CHYaVh@m1o>KR>Q(Da*c_ZIN#wPV{}-YVrE}hqoK{c(xtCRkuLI`*`Lpc%Q(6lmjBk+GQ&eh6P4=t9MZ zRtEP$mp*-F6OwMQsFPkxI8t}BTwM9^-#k{|Hzti-lO;=JRG<#Nl?1>;O1@P+y)?9v z3#&VRYwh;tjG|uVT)KzIY1w7n+JcB@^4@EsR2p3imAc;s+a{U^Dve7Naya)zLD|ZZ zcB)M-QlkIKbP-kG<<{x&<(tq^8(N#E;XLFi&Fa1D%Ch^<-n|14j;5_=Lk3=LCBC{7 z+wbEla`x2_)uR3?i6-b5W(3Mu>yHV=` z`2uLqiinAy;;*W^fIyzCkWv6hJm#OQvX7@N73(Jej zt&p~HX4Oc%YB>fx1VQeTWEr0dj z6a#-O+6J8usf%Fl&`fUFT!AuiY&u%gu^s9KV0Knke)!efzL3Ajtmkb?JNIg%=j91> z{D5v69H-k>m^lzQ4)Ac2{AOA?8+!jn>#^P*_uiOP;M!q!W16pi-#VN5mNwH10BHD@ z^Vz9Ef$rjql7+DJ6bF{bBkeoeG2Ok(5cb_v%LS8mozp-&vormbT@Jz8npuo-2{J@L z3M}g~Tk!Tkekmh$lqmgLORc!=QS|l9-T2fpf@p3-hawDXO=H3oBM|ig9#-5kw0pf|tSb%oOZ;&+AzY0~-nPQH)}^V>PQe z*(092LYW%@FjoPekYRRx?g4=TA9JNLqDCPfxrAqx)3_(g3r9U+4ch} zTWj7P{2tR%wpr%lc2T^8^8znBgq5p=aGy6*n5)I#dSvXvx-bwp)<*U$RvKqXm@+^6 zeSf#3!u#RHWK$FG%$p{t?M1u%sqOgst2Z@Hm=1&D3c7mU<)y_XB~v-a+2%xFcgW&M zNB(ceRc4yt48g^-(v96`KlVIGS?$ZU>L@F;i;<~^!)0zKx}2bwQY4wh;K3eG=A~`J zss|M$l$;K2?$hKIsHZ4#DNP4XSyEJRZv$->;G^GQX{KXXM$BI?VU*a^E7D9p##);z2-93^RfJi==2D!R=qtmo!GvgpOS z)3jR?aAz5v^LML8uZLe{95{>Hi$|#M49v0V(x#^$x%xU1%ckS{QjA@<&I-zN?s8uk zn|Dt5TTshfz(?|`IE)u@p1mz5c>F(7-Tj{`2<=Lb?N^H2k-o;nmG&z#^&1>y03e~U zn*-+Sgk^kN!6(Yu@RrTn16TElAY&QB34ZugDkRXZ`pt%DD17$Z5K?cy@ICJ&yji!f zq%8hDq|MLo?V_PCf3Fxwuh6a0ZGH(t1>v~Rb&296d*c4lah+zANPMkTA?0ib1Q2li zpXA-hq!dtSh9#`as_a`4J+uMDRUGr|SM&G6-eQ~Ytk-DGq{v-lY?8(Iz9G?*4}C=_So`{;;hc zjBMSbIcBz8a6y#eU7)~gBVn-N$HXQ3oqT|lkwqA1I=IzZ% z(ax4RLrZvJd~AeUqdfcRdK2c$2!z~*MV=ZR9P3-*i+TF+ae=2G z&WkpOD(nyoHn|VH|1u!rB7mAThC(=mfB22WH`-Rsdm(KgqsQcLaTk6TW5)qEL+4^BZMM5??k1%h82>|0+) zrFXSO-~R9zyG4`>W%x&slasoZZm%`21w(MTxrxWJS+Qt##3zzgeu!`jMvYD z+#lFeY~SC{5YpMqugiQ;GBbv(1ie)=x>#4ul&oNSHcjqH5H@JN zF%qASY?nVuDP^q>VQl2qtwP8b&bf=;gisqIqB{(A~n+YjOaQ^zhJo~>2v~m z?d@(P<+hogOJ|l@x9UsH=6eI9LXC)J&`B(uDPS#HTb`qg?Kcn*I>-o_ESnm2!sz3e zCyn#B?E<}-#LLJ1!O77avh@O}~NyG+Mu6{~tx z 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 通过System.Threading.**Monitor**类实现多线程对**ConcurrentQueue**的同步访问,以确保数据的安全性。 + +- #### 获取空闲连接 + +当请求发生时,系统会在**ConcurrentClientQueue**中寻找一个空闲的**Client**连接,即调用 **ConcurrentClientQueue** 的**Take()**函数,代码如下: + +```c# +public Client Take() +{ + Monitor.Enter(ClientQueue); + if (ClientQueue.IsEmpty) + { + Monitor.Wait(ClientQueue); + } + ClientQueue.TryDequeue(out var client); + Monitor.Exit(ClientQueue); + return client; +} +``` + +如果请求时**ConcurrentClientQueue**中没有空闲**Client**连接时,系统会调用 Monitor 类中的 **Wait()** 方法让线程等待,直到队列不为空时,弹出空闲**Client**连接。 + +- #### 执行操作 + +获取到空闲Client连接后,系统便在此连接上进行数据操作,示例如下: + +```c# +public async Task InsertRecordAsync(string deviceId, RowRecord record) +{ + var client = _clients.Take(); // 获取空闲的Client连接 + var req = new TSInsertRecordReq(client.SessionId, deviceId, record.Measurements, record.ToBytes(), + record.Timestamps); + try + { + var status = await client.ServiceClient.insertRecordAsync(req); + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + return _utilFunctions.verify_success(status, SuccessCode); + } + + catch (TException e) + { + throw new TException("Record insertion failed", e); + } + + finally + { + _clients.Add(client); + } +} +``` + +- #### 回收Client连接 + +当操作结束后,系统会回收该空闲连接,通过 **ConcurrentClientQueue.Add()** 函数将该连接重新加入队列,并在在添加后会通过 **Pulse()** 方法通知其他处于等待状态的线程。考虑到操作过程中可能出现异常,所有操作都被放在try-catch块中,即使捕获到了异常也会将该Client连接放回队列中,防止连接丢失。 + +### 对比评测 + +#### 本地测试 + +> ##### 测试环境: +> +> - 操作系统:macOS +> - 处理器:2.3GHz 八核 Intel Core i9 +> - IoTDB版本:0.12.0 + +1 + +#### 远端测试 + +> ##### 测试环境: +> +> - 本地: +> - 操作系统:macOS +> - 处理器:2.3GHz 八核 Intel Core i9 +> - 服务器: +> - IoTDB版本:0.12.1 + +2 + +3 + From 0d1c15f0fcf787fa10d6d5cb02d04ed9d4940c95 Mon Sep 17 00:00:00 2001 From: Aiemu Date: Thu, 9 Sep 2021 12:13:25 +0800 Subject: [PATCH 131/214] Add PUBLISH.md --- PUBLISH.md | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 3 ++ README_ZH.md | 3 ++ 3 files changed, 95 insertions(+) create mode 100644 PUBLISH.md diff --git a/PUBLISH.md b/PUBLISH.md new file mode 100644 index 0000000..6614a58 --- /dev/null +++ b/PUBLISH.md @@ -0,0 +1,89 @@ +# Publish your own nuget package +In this doc, we will introduce how to package and publish your own nuget package. Note that this will include the packaging and release of the two packages. + +## Package +### Step 1: Rename +Rename the following files/directories, where PACKAGE_NAME is the package name you expect. + +Note that this name should be unique, otherwise it will be rejected. You can search at [nuget.org](https://www.nuget.org/) to confirm whether the name is unique. +- `./src/Apache.IoTDB` => `./src/PACKAGE_NAME` +- `./src/Apache.IoTDB/Apache.IoTDB.csproj` => `./src/PACKAGE_NAME/PACKAGE_NAME.csproj` +- `./src/Apache.IoTDB.Rpc.Generated` => `./src/PACKAGE_NAME.Rpc.Generated` +- `./src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj` => `./src/PACKAGE_NAME.Rpc.Generated/PACKAGE_NAME.Rpc.Generated.csproj` + +Besides, you also need to modify the configuration in `./src/Apache.IoTDB/Apache.IoTDB.csproj` to ensure that the project references are correct. +``` xml + +``` +to +``` xml + +``` + +### Step 2: Add package information +Modify `PACKAGE_NAME.csproj` to add package information, including version number, author, company, package description information, etc. + + The commonly used ones are as follows, you can find a complete list in [NuGet pack and restore as MSBuild targets](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target). + +- `Version`, a specific version number in the form Major.Minor.Patch\[-Suffix\] where -Suffix identifies [pre-release versions](https://docs.microsoft.com/en-us/nuget/create-packages/prerelease-packages). If not specified, the default value is 1.0.0. +- `Authors`, author and owner information. If not specified, the default value is AssemblyName. +- `Company`, your company name. If not specified, the default value is AssemblyName. +- `PackageDescription`, A long description of the package for UI display. + +``` xml + + 0.12.4 + Alice, Bob, Carol + Test Inc. + A test nuget package. + +``` + +### Step 3: Build package with dotnet pack +Execute the following commands in the same directory of `PACKAGE_NAME.csproj` and `PACKAGE_NAME.Rpc.Generated.csproj` to pack. You can find the generated package file `PACKAGE_NAME.VERSION.nupkg` in `bin/`. + +#### Debug +``` bash +dotnet pack PACKAGE_NAME.csproj --configuration debug +``` + +#### Release +``` bash +dotnet pack PACKAGE_NAME.csproj --configuration release +``` + +## Publish +### Web portal: use the Upload Package tab on nuget.org +1. Select Upload on the top menu of nuget.org and browse to the package location. +![](https://docs.microsoft.com/en-us/nuget/nuget-org/media/publish_uploadyourpackage.png) + +2. nuget.org tells you if the package name is available. If it isn't, change the package identifier in your project, rebuild, and try the upload again. + +3. If the package name is available, nuget.org opens a Verify section in which you can review the metadata from the package manifest. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. + +4. When all the information is ready, select the Submit button. + +### Command line +#### Step 1: Sign in & Create API keys +1. [Sign into your nuget.org](https://www.nuget.org/) account or create an account if you don't have one already. + +2. Select your user name (on the upper right), then select **API Keys**. + +3. Select **Create**, provide a name for your key, select **Select Scopes > Push**. Enter **\*** for **Glob pattern**, then select **Create**. (See below for more about scopes.) + +4. Once the key is created, select **Copy** to retrieve the access key you need in the CLI: +![](https://docs.microsoft.com/en-us/nuget/quickstart/media/qs_create-02-apikey.png) + +5. **Important**: Save your key in a secure location because you cannot copy the key again later on. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages via the CLI. + +#### Step 2: Publish with dotnet nuget push +1. Change to the directory containing the `.nupkg` file (`bin/Debug/` or `bin/Release/`). +2. Execute the following command, specifying your package name and replacing the key value with your API key: +``` .NET CLI +dotnet nuget push PACKAGE_NAME.VERSION.nupkg --api-key YOUR_API_KEY --source https://api.nuget.org/v3/index.json +``` + +## References +[MS Docs: Create a NuGet package](https://docs.microsoft.com/en-us/nuget/create-packages/creating-a-package-dotnet-cli) + +[MS Docs: Publishing packages](https://docs.microsoft.com/en-us/nuget/nuget-org/publish-a-package) diff --git a/README.md b/README.md index b546d8f..20b741a 100644 --- a/README.md +++ b/README.md @@ -63,3 +63,6 @@ NLog >= 4.7.9 * Windows+bash(WSL, cygwin, Git Bash) ### Command Line Tools + +## Publish your own client on nuget.org +You can find out how to publish from this [doc](./PUBLISH.md). \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md index ce936cd..a31c5d6 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -60,3 +60,6 @@ dotnet add package Apache.IoTDB * Windows+bash(WSL、cygwin、Git Bash) ### 命令行工具 + +## 在 nuget.org 上发布你自己的客户端 +你可以在这个[文档](./PUBLISH.md)中找到如何发布 \ No newline at end of file From c7d77fe9c0fd488c667ce8407fd83e64bddb1176 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Fri, 12 Nov 2021 16:26:18 +0800 Subject: [PATCH 132/214] Change RPC to lower case (#62) --- PUBLISH.md | 4 ++-- src/Apache.IoTDB/Apache.IoTDB.csproj | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/PUBLISH.md b/PUBLISH.md index 6614a58..86013a3 100644 --- a/PUBLISH.md +++ b/PUBLISH.md @@ -13,11 +13,11 @@ Note that this name should be unique, otherwise it will be rejected. You can sea Besides, you also need to modify the configuration in `./src/Apache.IoTDB/Apache.IoTDB.csproj` to ensure that the project references are correct. ``` xml - + ``` to ``` xml - + ``` ### Step 2: Add package information diff --git a/src/Apache.IoTDB/Apache.IoTDB.csproj b/src/Apache.IoTDB/Apache.IoTDB.csproj index 78e314e..86a0799 100644 --- a/src/Apache.IoTDB/Apache.IoTDB.csproj +++ b/src/Apache.IoTDB/Apache.IoTDB.csproj @@ -9,7 +9,7 @@ - + From c36f253a50fd1f7f80914fb7897bdaa25cc2e87f Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 15 Nov 2021 11:24:39 +0800 Subject: [PATCH 133/214] Add CI (#64) --- .github/workflows/dotnet.yml | 25 ++ .github/workflows/e2e.yml | 43 +++ .../Dockerfile.iotdb-client-csharp | 26 ++ .../Dockerfile.iotdb-server | 27 ++ samples/Apache.IoTDB.Samples/Program.cs | 2 +- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 320 +++++++++--------- .../Apache.IoTDB.Samples/docker-compose.yml | 42 +++ 7 files changed, 326 insertions(+), 159 deletions(-) create mode 100644 .github/workflows/dotnet.yml create mode 100644 .github/workflows/e2e.yml create mode 100644 samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp create mode 100644 samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server create mode 100644 samples/Apache.IoTDB.Samples/docker-compose.yml diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml new file mode 100644 index 0000000..659168f --- /dev/null +++ b/.github/workflows/dotnet.yml @@ -0,0 +1,25 @@ +name: .NET + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Setup .NET + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 5.0.x + - name: Restore dependencies + run: dotnet restore + - name: Build + run: dotnet build --no-restore + - name: Test + run: dotnet test --no-build --verbosity normal diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml new file mode 100644 index 0000000..92655a9 --- /dev/null +++ b/.github/workflows/e2e.yml @@ -0,0 +1,43 @@ +name: E2E Tests + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + + build: + name: e2e test + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] + steps: + + - name: Check out code into the CSharp module directory + uses: actions/checkout@v2 + + - name: Cache local Maven repository + uses: actions/cache@v2 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + + - name: Set Up IoTDB + run: | + sh -c "cd /tmp/ && rm -rf iotdb && git clone https://github.com/apache/iotdb.git && cd iotdb && mvn -Dmaven.test.skip=true package -am -pl server" + mkdir -p target/iotdb + unzip -o -q /tmp/iotdb/server/target/iotdb-server-*.zip -d target/iotdb + + - name: Set Docker & Run Test + run: | + docker-compose -f samples/Apache.IoTDB.Samples/docker-compose.yml up --build --abort-on-container-exit --remove-orphans + + - name: Clean IoTDB & Shut Down Docker + run: | + rm -rf /tmp/iotdb target + docker-compose -f samples/Apache.IoTDB.Samples/docker-compose.yml down diff --git a/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp b/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp new file mode 100644 index 0000000..4032e6c --- /dev/null +++ b/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp @@ -0,0 +1,26 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +FROM mcr.microsoft.com/dotnet/sdk:5.0 +WORKDIR /app + +COPY . . +CMD ["dotnet", "restore"] +CMD ["dotnet", "run", "--project", "samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj"] + diff --git a/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server b/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server new file mode 100644 index 0000000..4d6a8ab --- /dev/null +++ b/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server @@ -0,0 +1,27 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +FROM openjdk:11-jre-slim + +RUN apt update \ + && apt install -y procps && apt clean +ADD target /usr/local +WORKDIR /usr/local/iotdb +EXPOSE 6667 +CMD [ "/usr/local/iotdb/sbin/start-server.sh" ] diff --git a/samples/Apache.IoTDB.Samples/Program.cs b/samples/Apache.IoTDB.Samples/Program.cs index 77fe181..346ca7b 100644 --- a/samples/Apache.IoTDB.Samples/Program.cs +++ b/samples/Apache.IoTDB.Samples/Program.cs @@ -4,7 +4,7 @@ public static class Program { public static void Main() { - var sessionPoolTest = new SessionPoolTest(); + var sessionPoolTest = new SessionPoolTest("iotdb"); sessionPoolTest.Test(); } } diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index c035bf5..b7b2dee 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -16,6 +16,10 @@ public class SessionPoolTest public bool debug = false; private int pool_size = 2; + public SessionPoolTest(string _host = "localhost"){ + host = _host; + } + public void Test() { Task task; @@ -63,19 +67,19 @@ public async Task TestInsertRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List @@ -87,14 +91,14 @@ public async Task TestInsertRecord() { var rowRecord = new RowRecord(timestamp, values, measures); var task = session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestInsertRecordAsync Passed"); } @@ -107,15 +111,15 @@ public async Task TestCreateMultiTimeSeries() var status = 0; if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); var ts_path_lst = new List() { - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" }; var data_type_lst = new List() { @@ -135,7 +139,7 @@ public async Task TestCreateMultiTimeSeries() status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCreateMultiTimeSeries Passed!"); @@ -148,15 +152,15 @@ public async Task TestDeleteTimeSeries() var status = 0; if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); var ts_path_lst = new List() { - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" }; var data_type_lst = new List() { @@ -179,7 +183,7 @@ public async Task TestDeleteTimeSeries() status = await session_pool.DeleteStorageGroupsAsync(ts_path_lst); System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestDeleteTimeSeries Passed!"); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); } @@ -189,7 +193,7 @@ public async Task TestGetTimeZone() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var time_zone = await session_pool.GetTimeZone(); System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); @@ -205,14 +209,14 @@ public async Task TestInsertStrRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -220,10 +224,10 @@ public async Task TestInsertStrRecord() var values = new List {(int) 1, (int) 2}; var rowRecord = new RowRecord(1, values, measures); status = await session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<2"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<2"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -238,13 +242,13 @@ public async Task TestInsertStrRecord() for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) { var task = session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp - 2]); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp - 2]); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); var res_count = 0; while (res.HasNext()) { @@ -254,7 +258,7 @@ public async Task TestInsertStrRecord() await res.Close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestInsertStrRecord Passed!"); } @@ -267,34 +271,34 @@ public async Task TestInsertRecords() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); var measurements_lst = new List>() { }; measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); @@ -323,7 +327,7 @@ public async Task TestInsertRecords() status = await session_pool.InsertRecordsAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -336,7 +340,7 @@ public async Task TestInsertRecords() var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if (timestamp % fetch_size == 0) @@ -349,7 +353,7 @@ public async Task TestInsertRecords() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; @@ -363,7 +367,7 @@ public async Task TestInsertRecords() Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertRecords Passed!"); @@ -377,26 +381,26 @@ public async Task TestInsertRecordsOfOneDevice() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; var measurements_lst = new List>() { }; measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); measurements_lst.Add(new List() @@ -424,7 +428,7 @@ await session_pool.CreateTimeSeries( status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -445,7 +449,7 @@ await session_pool.CreateTimeSeries( Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); var res_count = 0; while (res.HasNext()) { @@ -456,7 +460,7 @@ await session_pool.CreateTimeSeries( await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); @@ -470,8 +474,8 @@ public async Task TestInsertTablet() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); - var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; var measurement_lst = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var value_lst = new List> @@ -484,7 +488,7 @@ public async Task TestInsertTablet() status = await session_pool.InsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -511,7 +515,7 @@ public async Task TestInsertTablet() var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -523,7 +527,7 @@ public async Task TestInsertTablet() await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertTablet Passed!"); @@ -537,11 +541,11 @@ public async Task TestInsertTablets() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); var device_id = new List() { - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2" + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2" }; var measurements_lst = new List>() { @@ -573,13 +577,13 @@ public async Task TestInsertTablets() status = await session_pool.InsertTabletsAsync(tablets); // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -590,7 +594,7 @@ public async Task TestInsertTablets() var tasks = new List>(); for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) { - var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; + var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; var local_measurements = new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; @@ -606,7 +610,7 @@ public async Task TestInsertTablets() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -617,7 +621,7 @@ public async Task TestInsertTablets() await res.Close(); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertTablets Passed!"); @@ -630,11 +634,11 @@ public async Task TestSetAndDeleteStorageGroup() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert( - await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); + await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209") == 0); System.Diagnostics.Debug.Assert( - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP") == 0); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209") == 0); await session_pool.Close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } @@ -645,26 +649,26 @@ public async Task TestCreateTimeSeries() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestCreateTimeSeries Passed!"); } @@ -675,15 +679,15 @@ public async Task TestDeleteStorageGroups() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - await session_pool.SetStorageGroup("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_01"); + await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_02"); + await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_03"); + await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_04"); var group_names = new List() { }; - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_01"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_02"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_03"); - group_names.Add("root.97209_TEST_CSHARP_CLIENT_GROUP_04"); + group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_01"); + group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_02"); + group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_03"); + group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_04"); System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); await session_pool.Close(); Console.WriteLine("TestDeleteStorageGroups Passed!"); @@ -697,16 +701,16 @@ public async Task TestCheckTimeSeriesExists() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCheckTimeSeriesExists Passed!"); @@ -718,7 +722,7 @@ public async Task TestSetTimeZone() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.SetTimeZone("GMT+8:00"); System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); @@ -734,18 +738,18 @@ public async Task TestDeleteData() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); @@ -753,36 +757,36 @@ public async Task TestDeleteData() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var values = new List {"test_text", true, (int) 123}; status = await session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.InsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); var ts_path_lst = new List() { - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2" + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2" }; await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestDeleteData Passed!"); @@ -796,19 +800,19 @@ public async Task TestTestInsertRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List @@ -820,14 +824,14 @@ public async Task TestTestInsertRecord() { var rowRecord = new RowRecord(timestamp, values, measures); var task = session_pool.TestInsertRecordAsync( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestTestInsertRecordAsync Passed"); } @@ -840,34 +844,34 @@ public async Task TestTestInsertRecords() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); var measurements_lst = new List>() { }; measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); @@ -896,7 +900,7 @@ public async Task TestTestInsertRecords() status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -908,7 +912,7 @@ public async Task TestTestInsertRecords() var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - device_id.Add("root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); if (timestamp % fetch_size == 0) @@ -921,7 +925,7 @@ public async Task TestTestInsertRecords() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; @@ -934,7 +938,7 @@ public async Task TestTestInsertRecords() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertRecords Passed!"); @@ -948,8 +952,8 @@ public async Task TestTestInsertTablet() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); - var device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"; + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; var measurement_lst = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var value_lst = new List> @@ -962,7 +966,7 @@ public async Task TestTestInsertTablet() status = await session_pool.TestInsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<15"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -989,7 +993,7 @@ public async Task TestTestInsertTablet() var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -1000,7 +1004,7 @@ public async Task TestTestInsertTablet() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertTablet Passed!"); @@ -1014,11 +1018,11 @@ public async Task TestTestInsertTablets() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); var device_id = new List() { - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1", - "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2" + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1", + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2" }; var measurements_lst = new List>() { @@ -1050,13 +1054,13 @@ public async Task TestTestInsertTablets() status = await session_pool.TestInsertTabletsAsync(tablets); // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -1067,7 +1071,7 @@ public async Task TestTestInsertTablets() var tasks = new List>(); for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) { - var local_device_id = "root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"; + var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; var local_measurements = new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; @@ -1083,7 +1087,7 @@ public async Task TestTestInsertTablets() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE1"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -1094,7 +1098,7 @@ public async Task TestTestInsertTablets() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertTablets Passed!"); @@ -1108,31 +1112,31 @@ public async Task TestNonSql() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); status = await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestNonSql Passed"); @@ -1146,23 +1150,23 @@ public async Task TestSqlQuery() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); res.ShowTableNames(); @@ -1189,12 +1193,12 @@ await session_pool.ExecuteNonQueryStatementAsync( await res.Close(); Console.WriteLine("SELECT sql Passed"); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.97209_TEST_CSHARP_CLIENT_GROUP.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.97209_TEST_CSHARP_CLIENT_GROUP"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("SELECT sql Passed"); diff --git a/samples/Apache.IoTDB.Samples/docker-compose.yml b/samples/Apache.IoTDB.Samples/docker-compose.yml new file mode 100644 index 0000000..090688e --- /dev/null +++ b/samples/Apache.IoTDB.Samples/docker-compose.yml @@ -0,0 +1,42 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +version: "3.1" + +services: + iotdb: + build: + context: ../.. + dockerfile: samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server + ports: + - 6667:6667 + healthcheck: + test: ["CMD", "ls", "/usr/local/iotdb/data"] + interval: 3s + timeout: 5s + retries: 30 + start_period: 30s + + iotdb_client_csharp: + build: + context: ../.. + dockerfile: samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp + depends_on: + iotdb: + condition: service_healthy \ No newline at end of file From 3e021d4cc4b4dc42b4e264b9e9ff5321d32fbbbd Mon Sep 17 00:00:00 2001 From: Zheng Zeng <479983336@qq.com> Date: Tue, 28 Dec 2021 08:31:25 +0800 Subject: [PATCH 134/214] update README: add installing instruction for .net framework (#65) lgtm --- README.md | 13 ++++++++++++- README_ZH.md | 12 +++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 20b741a..5d05634 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,8 @@ We have prepared Nuget Package for C# users. Users can directly install the clie dotnet add package Apache.IoTDB ``` +Note that the `Apache.IoTDB` package only supports `.net 5.0`. If you are using `.net framework 4.x`, please refer to the section [starting from .net framework 4.x](#starting-from-net-framework-4x). + ## Prerequisites .NET SDK Version == 5.0 @@ -65,4 +67,13 @@ NLog >= 4.7.9 ### Command Line Tools ## Publish your own client on nuget.org -You can find out how to publish from this [doc](./PUBLISH.md). \ No newline at end of file +You can find out how to publish from this [doc](./PUBLISH.md). + +## Starting from `.net framework 4.x` +In order to adapt to `.net framework 4.x`, we have packaged a nuget package separately, the package name is [`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/). + +You can install it through Package Manager (PM), .NET CLI, etc. For example (.NET CLI): + +```sh +dotnet add package Apache.IoTDB.framework --version 0.12.1.2 +``` \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md index a31c5d6..e7e3577 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -39,6 +39,7 @@ Apache IoTDB Github: https://github.com/apache/iotdb dotnet add package Apache.IoTDB ``` +请注意,`Apache.IoTDB`这个包仅支持`.net 5.0`。 如果您使用的是`.net framework 4.x`,请参考[从`.net framework 4.x`开始](#从-net-framework-4x-开始)。 ## 环境准备 @@ -62,4 +63,13 @@ dotnet add package Apache.IoTDB ### 命令行工具 ## 在 nuget.org 上发布你自己的客户端 -你可以在这个[文档](./PUBLISH.md)中找到如何发布 \ No newline at end of file +你可以在这个[文档](./PUBLISH.md)中找到如何发布 + +## 从`.net framework 4.x`开始 +为了适配`.net framework 4.x`,我们单独构建了一个Nuget包,包名是[`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/)。 + +您可以使用PM、.NET CLI等工作来安装它。以.NET CLI为例: + +```sh +dotnet add package Apache.IoTDB.framework --version 0.12.1.2 +``` \ No newline at end of file From 96da32db2eb4c2fd9fa74204e7c97d82509d57d1 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Wed, 6 Apr 2022 09:30:18 +0800 Subject: [PATCH 135/214] add thrift generated files --- src/Apache.IoTDB.Rpc.Generated/EndPoint.cs | 2 +- .../ServerProperties.cs | 379 +- .../TSAppendSchemaTemplateReq.cs | 457 ++ .../TSCancelOperationReq.cs | 10 +- .../TSCloseOperationReq.cs | 16 +- .../TSCloseSessionReq.cs | 8 +- .../TSCreateAlignedTimeseriesReq.cs | 671 ++ .../TSCreateMultiTimeseriesReq.cs | 220 +- .../TSCreateSchemaTemplateReq.cs | 233 + .../TSCreateTimeseriesReq.cs | 98 +- .../TSDeleteDataReq.cs | 30 +- .../TSDropSchemaTemplateReq.cs | 191 + .../TSExecuteBatchStatementReq.cs | 26 +- .../TSExecuteStatementReq.cs | 75 +- .../TSExecuteStatementResp.cs | 278 +- .../TSFetchMetadataReq.cs | 14 +- .../TSFetchMetadataResp.cs | 36 +- .../TSFetchResultsReq.cs | 20 +- .../TSFetchResultsResp.cs | 20 +- .../TSGetOperationStatusReq.cs | 10 +- .../TSGetTimeZoneResp.cs | 10 +- src/Apache.IoTDB.Rpc.Generated/TSIService.cs | 6746 +++++++++++++---- .../TSInsertRecordReq.cs | 123 +- .../TSInsertRecordsOfOneDeviceReq.cs | 169 +- .../TSInsertRecordsReq.cs | 183 +- .../TSInsertStringRecordReq.cs | 139 +- .../TSInsertStringRecordsOfOneDeviceReq.cs | 457 ++ .../TSInsertStringRecordsReq.cs | 197 +- .../TSInsertTabletReq.cs | 143 +- .../TSInsertTabletsReq.cs | 233 +- .../TSLastDataQueryReq.cs | 421 + .../TSOpenSessionReq.cs | 44 +- .../TSOpenSessionResp.cs | 40 +- .../TSProtocolVersion.cs | 2 +- .../TSPruneSchemaTemplateReq.cs | 233 + .../TSQueryDataSet.cs | 2 +- .../TSQueryNonAlignDataSet.cs | 2 +- .../TSQueryTemplateReq.cs | 276 + .../TSQueryTemplateResp.cs | 362 + .../TSRawDataQueryReq.cs | 91 +- .../TSSetSchemaTemplateReq.cs | 233 + .../TSSetTimeZoneReq.cs | 10 +- src/Apache.IoTDB.Rpc.Generated/TSStatus.cs | 2 +- .../TSTracingInfo.cs | 684 ++ .../TSUnsetSchemaTemplateReq.cs | 233 + .../rpc.Extensions.cs | 89 +- 46 files changed, 11475 insertions(+), 2443 deletions(-) create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs diff --git a/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs b/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs index 228785d..4f701b2 100644 --- a/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs +++ b/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs b/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs index fcb5984..6653d70 100644 --- a/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs +++ b/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,6 +31,13 @@ public partial class ServerProperties : TBase { + private int _maxConcurrentClientNum; + private string _watermarkSecretKey; + private string _watermarkBitString; + private int _watermarkParamMarkRate; + private int _watermarkParamMaxRightBit; + private int _thriftMaxFrameSize; + private bool _isReadOnly; public string Version { get; set; } @@ -38,6 +45,110 @@ public partial class ServerProperties : TBase public string TimestampPrecision { get; set; } + public int MaxConcurrentClientNum + { + get + { + return _maxConcurrentClientNum; + } + set + { + __isset.maxConcurrentClientNum = true; + this._maxConcurrentClientNum = value; + } + } + + public string WatermarkSecretKey + { + get + { + return _watermarkSecretKey; + } + set + { + __isset.watermarkSecretKey = true; + this._watermarkSecretKey = value; + } + } + + public string WatermarkBitString + { + get + { + return _watermarkBitString; + } + set + { + __isset.watermarkBitString = true; + this._watermarkBitString = value; + } + } + + public int WatermarkParamMarkRate + { + get + { + return _watermarkParamMarkRate; + } + set + { + __isset.watermarkParamMarkRate = true; + this._watermarkParamMarkRate = value; + } + } + + public int WatermarkParamMaxRightBit + { + get + { + return _watermarkParamMaxRightBit; + } + set + { + __isset.watermarkParamMaxRightBit = true; + this._watermarkParamMaxRightBit = value; + } + } + + public int ThriftMaxFrameSize + { + get + { + return _thriftMaxFrameSize; + } + set + { + __isset.thriftMaxFrameSize = true; + this._thriftMaxFrameSize = value; + } + } + + public bool IsReadOnly + { + get + { + return _isReadOnly; + } + set + { + __isset.isReadOnly = true; + this._isReadOnly = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool maxConcurrentClientNum; + public bool watermarkSecretKey; + public bool watermarkBitString; + public bool watermarkParamMarkRate; + public bool watermarkParamMaxRightBit; + public bool thriftMaxFrameSize; + public bool isReadOnly; + } + public ServerProperties() { } @@ -51,20 +162,55 @@ public ServerProperties(string version, List supportedTimeAggregationOpe public ServerProperties DeepCopy() { - var tmp293 = new ServerProperties(); + var tmp379 = new ServerProperties(); if((Version != null)) { - tmp293.Version = this.Version; + tmp379.Version = this.Version; } if((SupportedTimeAggregationOperations != null)) { - tmp293.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); + tmp379.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); } if((TimestampPrecision != null)) { - tmp293.TimestampPrecision = this.TimestampPrecision; + tmp379.TimestampPrecision = this.TimestampPrecision; + } + if(__isset.maxConcurrentClientNum) + { + tmp379.MaxConcurrentClientNum = this.MaxConcurrentClientNum; + } + tmp379.__isset.maxConcurrentClientNum = this.__isset.maxConcurrentClientNum; + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + tmp379.WatermarkSecretKey = this.WatermarkSecretKey; + } + tmp379.__isset.watermarkSecretKey = this.__isset.watermarkSecretKey; + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + tmp379.WatermarkBitString = this.WatermarkBitString; + } + tmp379.__isset.watermarkBitString = this.__isset.watermarkBitString; + if(__isset.watermarkParamMarkRate) + { + tmp379.WatermarkParamMarkRate = this.WatermarkParamMarkRate; + } + tmp379.__isset.watermarkParamMarkRate = this.__isset.watermarkParamMarkRate; + if(__isset.watermarkParamMaxRightBit) + { + tmp379.WatermarkParamMaxRightBit = this.WatermarkParamMaxRightBit; + } + tmp379.__isset.watermarkParamMaxRightBit = this.__isset.watermarkParamMaxRightBit; + if(__isset.thriftMaxFrameSize) + { + tmp379.ThriftMaxFrameSize = this.ThriftMaxFrameSize; + } + tmp379.__isset.thriftMaxFrameSize = this.__isset.thriftMaxFrameSize; + if(__isset.isReadOnly) + { + tmp379.IsReadOnly = this.IsReadOnly; } - return tmp293; + tmp379.__isset.isReadOnly = this.__isset.isReadOnly; + return tmp379; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -102,13 +248,13 @@ public ServerProperties DeepCopy() if (field.Type == TType.List) { { - TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); - SupportedTimeAggregationOperations = new List(_list294.Count); - for(int _i295 = 0; _i295 < _list294.Count; ++_i295) + TList _list380 = await iprot.ReadListBeginAsync(cancellationToken); + SupportedTimeAggregationOperations = new List(_list380.Count); + for(int _i381 = 0; _i381 < _list380.Count; ++_i381) { - string _elem296; - _elem296 = await iprot.ReadStringAsync(cancellationToken); - SupportedTimeAggregationOperations.Add(_elem296); + string _elem382; + _elem382 = await iprot.ReadStringAsync(cancellationToken); + SupportedTimeAggregationOperations.Add(_elem382); } await iprot.ReadListEndAsync(cancellationToken); } @@ -130,6 +276,76 @@ public ServerProperties DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 4: + if (field.Type == TType.I32) + { + MaxConcurrentClientNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.String) + { + WatermarkSecretKey = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.String) + { + WatermarkBitString = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I32) + { + WatermarkParamMarkRate = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.I32) + { + WatermarkParamMaxRightBit = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.I32) + { + ThriftMaxFrameSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.Bool) + { + IsReadOnly = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -183,9 +399,9 @@ public ServerProperties DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, SupportedTimeAggregationOperations.Count), cancellationToken); - foreach (string _iter297 in SupportedTimeAggregationOperations) + foreach (string _iter383 in SupportedTimeAggregationOperations) { - await oprot.WriteStringAsync(_iter297, cancellationToken); + await oprot.WriteStringAsync(_iter383, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -200,6 +416,69 @@ public ServerProperties DeepCopy() await oprot.WriteStringAsync(TimestampPrecision, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.maxConcurrentClientNum) + { + field.Name = "maxConcurrentClientNum"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(MaxConcurrentClientNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + field.Name = "watermarkSecretKey"; + field.Type = TType.String; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(WatermarkSecretKey, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + field.Name = "watermarkBitString"; + field.Type = TType.String; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(WatermarkBitString, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.watermarkParamMarkRate) + { + field.Name = "watermarkParamMarkRate"; + field.Type = TType.I32; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(WatermarkParamMarkRate, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.watermarkParamMaxRightBit) + { + field.Name = "watermarkParamMaxRightBit"; + field.Type = TType.I32; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(WatermarkParamMaxRightBit, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.thriftMaxFrameSize) + { + field.Name = "thriftMaxFrameSize"; + field.Type = TType.I32; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(ThriftMaxFrameSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isReadOnly) + { + field.Name = "isReadOnly"; + field.Type = TType.Bool; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsReadOnly, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -215,7 +494,14 @@ public override bool Equals(object that) if (ReferenceEquals(this, other)) return true; return System.Object.Equals(Version, other.Version) && TCollections.Equals(SupportedTimeAggregationOperations, other.SupportedTimeAggregationOperations) - && System.Object.Equals(TimestampPrecision, other.TimestampPrecision); + && System.Object.Equals(TimestampPrecision, other.TimestampPrecision) + && ((__isset.maxConcurrentClientNum == other.__isset.maxConcurrentClientNum) && ((!__isset.maxConcurrentClientNum) || (System.Object.Equals(MaxConcurrentClientNum, other.MaxConcurrentClientNum)))) + && ((__isset.watermarkSecretKey == other.__isset.watermarkSecretKey) && ((!__isset.watermarkSecretKey) || (System.Object.Equals(WatermarkSecretKey, other.WatermarkSecretKey)))) + && ((__isset.watermarkBitString == other.__isset.watermarkBitString) && ((!__isset.watermarkBitString) || (System.Object.Equals(WatermarkBitString, other.WatermarkBitString)))) + && ((__isset.watermarkParamMarkRate == other.__isset.watermarkParamMarkRate) && ((!__isset.watermarkParamMarkRate) || (System.Object.Equals(WatermarkParamMarkRate, other.WatermarkParamMarkRate)))) + && ((__isset.watermarkParamMaxRightBit == other.__isset.watermarkParamMaxRightBit) && ((!__isset.watermarkParamMaxRightBit) || (System.Object.Equals(WatermarkParamMaxRightBit, other.WatermarkParamMaxRightBit)))) + && ((__isset.thriftMaxFrameSize == other.__isset.thriftMaxFrameSize) && ((!__isset.thriftMaxFrameSize) || (System.Object.Equals(ThriftMaxFrameSize, other.ThriftMaxFrameSize)))) + && ((__isset.isReadOnly == other.__isset.isReadOnly) && ((!__isset.isReadOnly) || (System.Object.Equals(IsReadOnly, other.IsReadOnly)))); } public override int GetHashCode() { @@ -233,6 +519,34 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TimestampPrecision.GetHashCode(); } + if(__isset.maxConcurrentClientNum) + { + hashcode = (hashcode * 397) + MaxConcurrentClientNum.GetHashCode(); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + hashcode = (hashcode * 397) + WatermarkSecretKey.GetHashCode(); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + hashcode = (hashcode * 397) + WatermarkBitString.GetHashCode(); + } + if(__isset.watermarkParamMarkRate) + { + hashcode = (hashcode * 397) + WatermarkParamMarkRate.GetHashCode(); + } + if(__isset.watermarkParamMaxRightBit) + { + hashcode = (hashcode * 397) + WatermarkParamMaxRightBit.GetHashCode(); + } + if(__isset.thriftMaxFrameSize) + { + hashcode = (hashcode * 397) + ThriftMaxFrameSize.GetHashCode(); + } + if(__isset.isReadOnly) + { + hashcode = (hashcode * 397) + IsReadOnly.GetHashCode(); + } } return hashcode; } @@ -255,6 +569,41 @@ public override string ToString() sb.Append(", TimestampPrecision: "); TimestampPrecision.ToString(sb); } + if(__isset.maxConcurrentClientNum) + { + sb.Append(", MaxConcurrentClientNum: "); + MaxConcurrentClientNum.ToString(sb); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + sb.Append(", WatermarkSecretKey: "); + WatermarkSecretKey.ToString(sb); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + sb.Append(", WatermarkBitString: "); + WatermarkBitString.ToString(sb); + } + if(__isset.watermarkParamMarkRate) + { + sb.Append(", WatermarkParamMarkRate: "); + WatermarkParamMarkRate.ToString(sb); + } + if(__isset.watermarkParamMaxRightBit) + { + sb.Append(", WatermarkParamMaxRightBit: "); + WatermarkParamMaxRightBit.ToString(sb); + } + if(__isset.thriftMaxFrameSize) + { + sb.Append(", ThriftMaxFrameSize: "); + ThriftMaxFrameSize.ToString(sb); + } + if(__isset.isReadOnly) + { + sb.Append(", IsReadOnly: "); + IsReadOnly.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs new file mode 100644 index 0000000..ed9994e --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSAppendSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public bool IsAligned { get; set; } + + public List Measurements { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public TSAppendSchemaTemplateReq() + { + } + + public TSAppendSchemaTemplateReq(long sessionId, string name, bool isAligned, List measurements, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.IsAligned = isAligned; + this.Measurements = measurements; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSAppendSchemaTemplateReq DeepCopy() + { + var tmp389 = new TSAppendSchemaTemplateReq(); + tmp389.SessionId = this.SessionId; + if((Name != null)) + { + tmp389.Name = this.Name; + } + tmp389.IsAligned = this.IsAligned; + if((Measurements != null)) + { + tmp389.Measurements = this.Measurements.DeepCopy(); + } + if((DataTypes != null)) + { + tmp389.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp389.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp389.Compressors = this.Compressors.DeepCopy(); + } + return tmp389; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_isAligned = false; + bool isset_measurements = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + isset_isAligned = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list390 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list390.Count); + for(int _i391 = 0; _i391 < _list390.Count; ++_i391) + { + string _elem392; + _elem392 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem392); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list393 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list393.Count); + for(int _i394 = 0; _i394 < _list393.Count; ++_i394) + { + int _elem395; + _elem395 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem395); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list396 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list396.Count); + for(int _i397 = 0; _i397 < _list396.Count; ++_i397) + { + int _elem398; + _elem398 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem398); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list399 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list399.Count); + for(int _i400 = 0; _i400 < _list399.Count; ++_i400) + { + int _elem401; + _elem401 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem401); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_isAligned) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSAppendSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter402 in Measurements) + { + await oprot.WriteStringAsync(_iter402, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter403 in DataTypes) + { + await oprot.WriteI32Async(_iter403, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter404 in Encodings) + { + await oprot.WriteI32Async(_iter404, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter405 in Compressors) + { + await oprot.WriteI32Async(_iter405, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSAppendSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(IsAligned, other.IsAligned) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSAppendSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs index 46f4ec6..ed59e75 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,10 +48,10 @@ public TSCancelOperationReq(long sessionId, long queryId) : this() public TSCancelOperationReq DeepCopy() { - var tmp69 = new TSCancelOperationReq(); - tmp69.SessionId = this.SessionId; - tmp69.QueryId = this.QueryId; - return tmp69; + var tmp87 = new TSCancelOperationReq(); + tmp87.SessionId = this.SessionId; + tmp87.QueryId = this.QueryId; + return tmp87; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs index 0e95fc9..7b5d173 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -81,19 +81,19 @@ public TSCloseOperationReq(long sessionId) : this() public TSCloseOperationReq DeepCopy() { - var tmp71 = new TSCloseOperationReq(); - tmp71.SessionId = this.SessionId; + var tmp89 = new TSCloseOperationReq(); + tmp89.SessionId = this.SessionId; if(__isset.queryId) { - tmp71.QueryId = this.QueryId; + tmp89.QueryId = this.QueryId; } - tmp71.__isset.queryId = this.__isset.queryId; + tmp89.__isset.queryId = this.__isset.queryId; if(__isset.statementId) { - tmp71.StatementId = this.StatementId; + tmp89.StatementId = this.StatementId; } - tmp71.__isset.statementId = this.__isset.statementId; - return tmp71; + tmp89.__isset.statementId = this.__isset.statementId; + return tmp89; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs index 3b73ab3..1d97b91 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -45,9 +45,9 @@ public TSCloseSessionReq(long sessionId) : this() public TSCloseSessionReq DeepCopy() { - var tmp57 = new TSCloseSessionReq(); - tmp57.SessionId = this.SessionId; - return tmp57; + var tmp75 = new TSCloseSessionReq(); + tmp75.SessionId = this.SessionId; + return tmp75; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs new file mode 100644 index 0000000..7aa50fa --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs @@ -0,0 +1,671 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateAlignedTimeseriesReq : TBase +{ + private List _measurementAlias; + private List> _tagsList; + private List> _attributesList; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List Measurements { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public List MeasurementAlias + { + get + { + return _measurementAlias; + } + set + { + __isset.measurementAlias = true; + this._measurementAlias = value; + } + } + + public List> TagsList + { + get + { + return _tagsList; + } + set + { + __isset.tagsList = true; + this._tagsList = value; + } + } + + public List> AttributesList + { + get + { + return _attributesList; + } + set + { + __isset.attributesList = true; + this._attributesList = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool measurementAlias; + public bool tagsList; + public bool attributesList; + } + + public TSCreateAlignedTimeseriesReq() + { + } + + public TSCreateAlignedTimeseriesReq(long sessionId, string prefixPath, List measurements, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.Measurements = measurements; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSCreateAlignedTimeseriesReq DeepCopy() + { + var tmp278 = new TSCreateAlignedTimeseriesReq(); + tmp278.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp278.PrefixPath = this.PrefixPath; + } + if((Measurements != null)) + { + tmp278.Measurements = this.Measurements.DeepCopy(); + } + if((DataTypes != null)) + { + tmp278.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp278.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp278.Compressors = this.Compressors.DeepCopy(); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + tmp278.MeasurementAlias = this.MeasurementAlias.DeepCopy(); + } + tmp278.__isset.measurementAlias = this.__isset.measurementAlias; + if((TagsList != null) && __isset.tagsList) + { + tmp278.TagsList = this.TagsList.DeepCopy(); + } + tmp278.__isset.tagsList = this.__isset.tagsList; + if((AttributesList != null) && __isset.attributesList) + { + tmp278.AttributesList = this.AttributesList.DeepCopy(); + } + tmp278.__isset.attributesList = this.__isset.attributesList; + return tmp278; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurements = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list279 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list279.Count); + for(int _i280 = 0; _i280 < _list279.Count; ++_i280) + { + string _elem281; + _elem281 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem281); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list282 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list282.Count); + for(int _i283 = 0; _i283 < _list282.Count; ++_i283) + { + int _elem284; + _elem284 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem284); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list285 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list285.Count); + for(int _i286 = 0; _i286 < _list285.Count; ++_i286) + { + int _elem287; + _elem287 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem287); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list288 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list288.Count); + for(int _i289 = 0; _i289 < _list288.Count; ++_i289) + { + int _elem290; + _elem290 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem290); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list291 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAlias = new List(_list291.Count); + for(int _i292 = 0; _i292 < _list291.Count; ++_i292) + { + string _elem293; + _elem293 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAlias.Add(_elem293); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.List) + { + { + TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list294.Count); + for(int _i295 = 0; _i295 < _list294.Count; ++_i295) + { + Dictionary _elem296; + { + TMap _map297 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem296 = new Dictionary(_map297.Count); + for(int _i298 = 0; _i298 < _map297.Count; ++_i298) + { + string _key299; + string _val300; + _key299 = await iprot.ReadStringAsync(cancellationToken); + _val300 = await iprot.ReadStringAsync(cancellationToken); + _elem296[_key299] = _val300; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + TagsList.Add(_elem296); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.List) + { + { + TList _list301 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list301.Count); + for(int _i302 = 0; _i302 < _list301.Count; ++_i302) + { + Dictionary _elem303; + { + TMap _map304 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem303 = new Dictionary(_map304.Count); + for(int _i305 = 0; _i305 < _map304.Count; ++_i305) + { + string _key306; + string _val307; + _key306 = await iprot.ReadStringAsync(cancellationToken); + _val307 = await iprot.ReadStringAsync(cancellationToken); + _elem303[_key306] = _val307; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + AttributesList.Add(_elem303); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateAlignedTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter308 in Measurements) + { + await oprot.WriteStringAsync(_iter308, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter309 in DataTypes) + { + await oprot.WriteI32Async(_iter309, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter310 in Encodings) + { + await oprot.WriteI32Async(_iter310, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter311 in Compressors) + { + await oprot.WriteI32Async(_iter311, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + field.Name = "measurementAlias"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAlias.Count), cancellationToken); + foreach (string _iter312 in MeasurementAlias) + { + await oprot.WriteStringAsync(_iter312, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TagsList != null) && __isset.tagsList) + { + field.Name = "tagsList"; + field.Type = TType.List; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); + foreach (Dictionary _iter313 in TagsList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter313.Count), cancellationToken); + foreach (string _iter314 in _iter313.Keys) + { + await oprot.WriteStringAsync(_iter314, cancellationToken); + await oprot.WriteStringAsync(_iter313[_iter314], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AttributesList != null) && __isset.attributesList) + { + field.Name = "attributesList"; + field.Type = TType.List; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); + foreach (Dictionary _iter315 in AttributesList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter315.Count), cancellationToken); + foreach (string _iter316 in _iter315.Keys) + { + await oprot.WriteStringAsync(_iter316, cancellationToken); + await oprot.WriteStringAsync(_iter315[_iter316], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateAlignedTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors) + && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (TCollections.Equals(MeasurementAlias, other.MeasurementAlias)))) + && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) + && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAlias); + } + if((TagsList != null) && __isset.tagsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); + } + if((AttributesList != null) && __isset.attributesList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateAlignedTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + sb.Append(", MeasurementAlias: "); + MeasurementAlias.ToString(sb); + } + if((TagsList != null) && __isset.tagsList) + { + sb.Append(", TagsList: "); + TagsList.ToString(sb); + } + if((AttributesList != null) && __isset.attributesList) + { + sb.Append(", AttributesList: "); + AttributesList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs index e833703..64f9e17 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -123,45 +123,45 @@ public TSCreateMultiTimeseriesReq(long sessionId, List paths, List public TSCreateMultiTimeseriesReq DeepCopy() { - var tmp244 = new TSCreateMultiTimeseriesReq(); - tmp244.SessionId = this.SessionId; + var tmp330 = new TSCreateMultiTimeseriesReq(); + tmp330.SessionId = this.SessionId; if((Paths != null)) { - tmp244.Paths = this.Paths.DeepCopy(); + tmp330.Paths = this.Paths.DeepCopy(); } if((DataTypes != null)) { - tmp244.DataTypes = this.DataTypes.DeepCopy(); + tmp330.DataTypes = this.DataTypes.DeepCopy(); } if((Encodings != null)) { - tmp244.Encodings = this.Encodings.DeepCopy(); + tmp330.Encodings = this.Encodings.DeepCopy(); } if((Compressors != null)) { - tmp244.Compressors = this.Compressors.DeepCopy(); + tmp330.Compressors = this.Compressors.DeepCopy(); } if((PropsList != null) && __isset.propsList) { - tmp244.PropsList = this.PropsList.DeepCopy(); + tmp330.PropsList = this.PropsList.DeepCopy(); } - tmp244.__isset.propsList = this.__isset.propsList; + tmp330.__isset.propsList = this.__isset.propsList; if((TagsList != null) && __isset.tagsList) { - tmp244.TagsList = this.TagsList.DeepCopy(); + tmp330.TagsList = this.TagsList.DeepCopy(); } - tmp244.__isset.tagsList = this.__isset.tagsList; + tmp330.__isset.tagsList = this.__isset.tagsList; if((AttributesList != null) && __isset.attributesList) { - tmp244.AttributesList = this.AttributesList.DeepCopy(); + tmp330.AttributesList = this.AttributesList.DeepCopy(); } - tmp244.__isset.attributesList = this.__isset.attributesList; + tmp330.__isset.attributesList = this.__isset.attributesList; if((MeasurementAliasList != null) && __isset.measurementAliasList) { - tmp244.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); + tmp330.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); } - tmp244.__isset.measurementAliasList = this.__isset.measurementAliasList; - return tmp244; + tmp330.__isset.measurementAliasList = this.__isset.measurementAliasList; + return tmp330; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -201,13 +201,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list245.Count); - for(int _i246 = 0; _i246 < _list245.Count; ++_i246) + TList _list331 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list331.Count); + for(int _i332 = 0; _i332 < _list331.Count; ++_i332) { - string _elem247; - _elem247 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem247); + string _elem333; + _elem333 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem333); } await iprot.ReadListEndAsync(cancellationToken); } @@ -222,13 +222,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list248 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypes = new List(_list248.Count); - for(int _i249 = 0; _i249 < _list248.Count; ++_i249) + TList _list334 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list334.Count); + for(int _i335 = 0; _i335 < _list334.Count; ++_i335) { - int _elem250; - _elem250 = await iprot.ReadI32Async(cancellationToken); - DataTypes.Add(_elem250); + int _elem336; + _elem336 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem336); } await iprot.ReadListEndAsync(cancellationToken); } @@ -243,13 +243,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list251 = await iprot.ReadListBeginAsync(cancellationToken); - Encodings = new List(_list251.Count); - for(int _i252 = 0; _i252 < _list251.Count; ++_i252) + TList _list337 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list337.Count); + for(int _i338 = 0; _i338 < _list337.Count; ++_i338) { - int _elem253; - _elem253 = await iprot.ReadI32Async(cancellationToken); - Encodings.Add(_elem253); + int _elem339; + _elem339 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem339); } await iprot.ReadListEndAsync(cancellationToken); } @@ -264,13 +264,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list254 = await iprot.ReadListBeginAsync(cancellationToken); - Compressors = new List(_list254.Count); - for(int _i255 = 0; _i255 < _list254.Count; ++_i255) + TList _list340 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list340.Count); + for(int _i341 = 0; _i341 < _list340.Count; ++_i341) { - int _elem256; - _elem256 = await iprot.ReadI32Async(cancellationToken); - Compressors.Add(_elem256); + int _elem342; + _elem342 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem342); } await iprot.ReadListEndAsync(cancellationToken); } @@ -285,25 +285,25 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list257 = await iprot.ReadListBeginAsync(cancellationToken); - PropsList = new List>(_list257.Count); - for(int _i258 = 0; _i258 < _list257.Count; ++_i258) + TList _list343 = await iprot.ReadListBeginAsync(cancellationToken); + PropsList = new List>(_list343.Count); + for(int _i344 = 0; _i344 < _list343.Count; ++_i344) { - Dictionary _elem259; + Dictionary _elem345; { - TMap _map260 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem259 = new Dictionary(_map260.Count); - for(int _i261 = 0; _i261 < _map260.Count; ++_i261) + TMap _map346 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem345 = new Dictionary(_map346.Count); + for(int _i347 = 0; _i347 < _map346.Count; ++_i347) { - string _key262; - string _val263; - _key262 = await iprot.ReadStringAsync(cancellationToken); - _val263 = await iprot.ReadStringAsync(cancellationToken); - _elem259[_key262] = _val263; + string _key348; + string _val349; + _key348 = await iprot.ReadStringAsync(cancellationToken); + _val349 = await iprot.ReadStringAsync(cancellationToken); + _elem345[_key348] = _val349; } await iprot.ReadMapEndAsync(cancellationToken); } - PropsList.Add(_elem259); + PropsList.Add(_elem345); } await iprot.ReadListEndAsync(cancellationToken); } @@ -317,25 +317,25 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list264 = await iprot.ReadListBeginAsync(cancellationToken); - TagsList = new List>(_list264.Count); - for(int _i265 = 0; _i265 < _list264.Count; ++_i265) + TList _list350 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list350.Count); + for(int _i351 = 0; _i351 < _list350.Count; ++_i351) { - Dictionary _elem266; + Dictionary _elem352; { - TMap _map267 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem266 = new Dictionary(_map267.Count); - for(int _i268 = 0; _i268 < _map267.Count; ++_i268) + TMap _map353 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem352 = new Dictionary(_map353.Count); + for(int _i354 = 0; _i354 < _map353.Count; ++_i354) { - string _key269; - string _val270; - _key269 = await iprot.ReadStringAsync(cancellationToken); - _val270 = await iprot.ReadStringAsync(cancellationToken); - _elem266[_key269] = _val270; + string _key355; + string _val356; + _key355 = await iprot.ReadStringAsync(cancellationToken); + _val356 = await iprot.ReadStringAsync(cancellationToken); + _elem352[_key355] = _val356; } await iprot.ReadMapEndAsync(cancellationToken); } - TagsList.Add(_elem266); + TagsList.Add(_elem352); } await iprot.ReadListEndAsync(cancellationToken); } @@ -349,25 +349,25 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list271 = await iprot.ReadListBeginAsync(cancellationToken); - AttributesList = new List>(_list271.Count); - for(int _i272 = 0; _i272 < _list271.Count; ++_i272) + TList _list357 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list357.Count); + for(int _i358 = 0; _i358 < _list357.Count; ++_i358) { - Dictionary _elem273; + Dictionary _elem359; { - TMap _map274 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem273 = new Dictionary(_map274.Count); - for(int _i275 = 0; _i275 < _map274.Count; ++_i275) + TMap _map360 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem359 = new Dictionary(_map360.Count); + for(int _i361 = 0; _i361 < _map360.Count; ++_i361) { - string _key276; - string _val277; - _key276 = await iprot.ReadStringAsync(cancellationToken); - _val277 = await iprot.ReadStringAsync(cancellationToken); - _elem273[_key276] = _val277; + string _key362; + string _val363; + _key362 = await iprot.ReadStringAsync(cancellationToken); + _val363 = await iprot.ReadStringAsync(cancellationToken); + _elem359[_key362] = _val363; } await iprot.ReadMapEndAsync(cancellationToken); } - AttributesList.Add(_elem273); + AttributesList.Add(_elem359); } await iprot.ReadListEndAsync(cancellationToken); } @@ -381,13 +381,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list278 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementAliasList = new List(_list278.Count); - for(int _i279 = 0; _i279 < _list278.Count; ++_i279) + TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAliasList = new List(_list364.Count); + for(int _i365 = 0; _i365 < _list364.Count; ++_i365) { - string _elem280; - _elem280 = await iprot.ReadStringAsync(cancellationToken); - MeasurementAliasList.Add(_elem280); + string _elem366; + _elem366 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAliasList.Add(_elem366); } await iprot.ReadListEndAsync(cancellationToken); } @@ -455,9 +455,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter281 in Paths) + foreach (string _iter367 in Paths) { - await oprot.WriteStringAsync(_iter281, cancellationToken); + await oprot.WriteStringAsync(_iter367, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -471,9 +471,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); - foreach (int _iter282 in DataTypes) + foreach (int _iter368 in DataTypes) { - await oprot.WriteI32Async(_iter282, cancellationToken); + await oprot.WriteI32Async(_iter368, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -487,9 +487,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); - foreach (int _iter283 in Encodings) + foreach (int _iter369 in Encodings) { - await oprot.WriteI32Async(_iter283, cancellationToken); + await oprot.WriteI32Async(_iter369, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -503,9 +503,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); - foreach (int _iter284 in Compressors) + foreach (int _iter370 in Compressors) { - await oprot.WriteI32Async(_iter284, cancellationToken); + await oprot.WriteI32Async(_iter370, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -519,14 +519,14 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Map, PropsList.Count), cancellationToken); - foreach (Dictionary _iter285 in PropsList) + foreach (Dictionary _iter371 in PropsList) { { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter285.Count), cancellationToken); - foreach (string _iter286 in _iter285.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter371.Count), cancellationToken); + foreach (string _iter372 in _iter371.Keys) { - await oprot.WriteStringAsync(_iter286, cancellationToken); - await oprot.WriteStringAsync(_iter285[_iter286], cancellationToken); + await oprot.WriteStringAsync(_iter372, cancellationToken); + await oprot.WriteStringAsync(_iter371[_iter372], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -543,14 +543,14 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); - foreach (Dictionary _iter287 in TagsList) + foreach (Dictionary _iter373 in TagsList) { { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter287.Count), cancellationToken); - foreach (string _iter288 in _iter287.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter373.Count), cancellationToken); + foreach (string _iter374 in _iter373.Keys) { - await oprot.WriteStringAsync(_iter288, cancellationToken); - await oprot.WriteStringAsync(_iter287[_iter288], cancellationToken); + await oprot.WriteStringAsync(_iter374, cancellationToken); + await oprot.WriteStringAsync(_iter373[_iter374], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -567,14 +567,14 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); - foreach (Dictionary _iter289 in AttributesList) + foreach (Dictionary _iter375 in AttributesList) { { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter289.Count), cancellationToken); - foreach (string _iter290 in _iter289.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter375.Count), cancellationToken); + foreach (string _iter376 in _iter375.Keys) { - await oprot.WriteStringAsync(_iter290, cancellationToken); - await oprot.WriteStringAsync(_iter289[_iter290], cancellationToken); + await oprot.WriteStringAsync(_iter376, cancellationToken); + await oprot.WriteStringAsync(_iter375[_iter376], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -591,9 +591,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAliasList.Count), cancellationToken); - foreach (string _iter291 in MeasurementAliasList) + foreach (string _iter377 in MeasurementAliasList) { - await oprot.WriteStringAsync(_iter291, cancellationToken); + await oprot.WriteStringAsync(_iter377, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs new file mode 100644 index 0000000..7ad6092 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public byte[] SerializedTemplate { get; set; } + + public TSCreateSchemaTemplateReq() + { + } + + public TSCreateSchemaTemplateReq(long sessionId, string name, byte[] serializedTemplate) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.SerializedTemplate = serializedTemplate; + } + + public TSCreateSchemaTemplateReq DeepCopy() + { + var tmp387 = new TSCreateSchemaTemplateReq(); + tmp387.SessionId = this.SessionId; + if((Name != null)) + { + tmp387.Name = this.Name; + } + if((SerializedTemplate != null)) + { + tmp387.SerializedTemplate = this.SerializedTemplate.ToArray(); + } + return tmp387; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_serializedTemplate = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + SerializedTemplate = await iprot.ReadBinaryAsync(cancellationToken); + isset_serializedTemplate = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_serializedTemplate) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SerializedTemplate != null)) + { + field.Name = "serializedTemplate"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(SerializedTemplate, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && TCollections.Equals(SerializedTemplate, other.SerializedTemplate); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + if((SerializedTemplate != null)) + { + hashcode = (hashcode * 397) + SerializedTemplate.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + if((SerializedTemplate != null)) + { + sb.Append(", SerializedTemplate: "); + SerializedTemplate.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs index 367492b..d2c2f7c 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -123,36 +123,36 @@ public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int enco public TSCreateTimeseriesReq DeepCopy() { - var tmp221 = new TSCreateTimeseriesReq(); - tmp221.SessionId = this.SessionId; + var tmp261 = new TSCreateTimeseriesReq(); + tmp261.SessionId = this.SessionId; if((Path != null)) { - tmp221.Path = this.Path; + tmp261.Path = this.Path; } - tmp221.DataType = this.DataType; - tmp221.Encoding = this.Encoding; - tmp221.Compressor = this.Compressor; + tmp261.DataType = this.DataType; + tmp261.Encoding = this.Encoding; + tmp261.Compressor = this.Compressor; if((Props != null) && __isset.props) { - tmp221.Props = this.Props.DeepCopy(); + tmp261.Props = this.Props.DeepCopy(); } - tmp221.__isset.props = this.__isset.props; + tmp261.__isset.props = this.__isset.props; if((Tags != null) && __isset.tags) { - tmp221.Tags = this.Tags.DeepCopy(); + tmp261.Tags = this.Tags.DeepCopy(); } - tmp221.__isset.tags = this.__isset.tags; + tmp261.__isset.tags = this.__isset.tags; if((Attributes != null) && __isset.attributes) { - tmp221.Attributes = this.Attributes.DeepCopy(); + tmp261.Attributes = this.Attributes.DeepCopy(); } - tmp221.__isset.attributes = this.__isset.attributes; + tmp261.__isset.attributes = this.__isset.attributes; if((MeasurementAlias != null) && __isset.measurementAlias) { - tmp221.MeasurementAlias = this.MeasurementAlias; + tmp261.MeasurementAlias = this.MeasurementAlias; } - tmp221.__isset.measurementAlias = this.__isset.measurementAlias; - return tmp221; + tmp261.__isset.measurementAlias = this.__isset.measurementAlias; + return tmp261; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -236,15 +236,15 @@ public TSCreateTimeseriesReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map222 = await iprot.ReadMapBeginAsync(cancellationToken); - Props = new Dictionary(_map222.Count); - for(int _i223 = 0; _i223 < _map222.Count; ++_i223) + TMap _map262 = await iprot.ReadMapBeginAsync(cancellationToken); + Props = new Dictionary(_map262.Count); + for(int _i263 = 0; _i263 < _map262.Count; ++_i263) { - string _key224; - string _val225; - _key224 = await iprot.ReadStringAsync(cancellationToken); - _val225 = await iprot.ReadStringAsync(cancellationToken); - Props[_key224] = _val225; + string _key264; + string _val265; + _key264 = await iprot.ReadStringAsync(cancellationToken); + _val265 = await iprot.ReadStringAsync(cancellationToken); + Props[_key264] = _val265; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -258,15 +258,15 @@ public TSCreateTimeseriesReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map226 = await iprot.ReadMapBeginAsync(cancellationToken); - Tags = new Dictionary(_map226.Count); - for(int _i227 = 0; _i227 < _map226.Count; ++_i227) + TMap _map266 = await iprot.ReadMapBeginAsync(cancellationToken); + Tags = new Dictionary(_map266.Count); + for(int _i267 = 0; _i267 < _map266.Count; ++_i267) { - string _key228; - string _val229; - _key228 = await iprot.ReadStringAsync(cancellationToken); - _val229 = await iprot.ReadStringAsync(cancellationToken); - Tags[_key228] = _val229; + string _key268; + string _val269; + _key268 = await iprot.ReadStringAsync(cancellationToken); + _val269 = await iprot.ReadStringAsync(cancellationToken); + Tags[_key268] = _val269; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -280,15 +280,15 @@ public TSCreateTimeseriesReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map230 = await iprot.ReadMapBeginAsync(cancellationToken); - Attributes = new Dictionary(_map230.Count); - for(int _i231 = 0; _i231 < _map230.Count; ++_i231) + TMap _map270 = await iprot.ReadMapBeginAsync(cancellationToken); + Attributes = new Dictionary(_map270.Count); + for(int _i271 = 0; _i271 < _map270.Count; ++_i271) { - string _key232; - string _val233; - _key232 = await iprot.ReadStringAsync(cancellationToken); - _val233 = await iprot.ReadStringAsync(cancellationToken); - Attributes[_key232] = _val233; + string _key272; + string _val273; + _key272 = await iprot.ReadStringAsync(cancellationToken); + _val273 = await iprot.ReadStringAsync(cancellationToken); + Attributes[_key272] = _val273; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -393,10 +393,10 @@ public TSCreateTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Props.Count), cancellationToken); - foreach (string _iter234 in Props.Keys) + foreach (string _iter274 in Props.Keys) { - await oprot.WriteStringAsync(_iter234, cancellationToken); - await oprot.WriteStringAsync(Props[_iter234], cancellationToken); + await oprot.WriteStringAsync(_iter274, cancellationToken); + await oprot.WriteStringAsync(Props[_iter274], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -410,10 +410,10 @@ public TSCreateTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Tags.Count), cancellationToken); - foreach (string _iter235 in Tags.Keys) + foreach (string _iter275 in Tags.Keys) { - await oprot.WriteStringAsync(_iter235, cancellationToken); - await oprot.WriteStringAsync(Tags[_iter235], cancellationToken); + await oprot.WriteStringAsync(_iter275, cancellationToken); + await oprot.WriteStringAsync(Tags[_iter275], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -427,10 +427,10 @@ public TSCreateTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Attributes.Count), cancellationToken); - foreach (string _iter236 in Attributes.Keys) + foreach (string _iter276 in Attributes.Keys) { - await oprot.WriteStringAsync(_iter236, cancellationToken); - await oprot.WriteStringAsync(Attributes[_iter236], cancellationToken); + await oprot.WriteStringAsync(_iter276, cancellationToken); + await oprot.WriteStringAsync(Attributes[_iter276], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs index b8a00cd..c3e9977 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -54,15 +54,15 @@ public TSDeleteDataReq(long sessionId, List paths, long startTime, long public TSDeleteDataReq DeepCopy() { - var tmp215 = new TSDeleteDataReq(); - tmp215.SessionId = this.SessionId; + var tmp255 = new TSDeleteDataReq(); + tmp255.SessionId = this.SessionId; if((Paths != null)) { - tmp215.Paths = this.Paths.DeepCopy(); + tmp255.Paths = this.Paths.DeepCopy(); } - tmp215.StartTime = this.StartTime; - tmp215.EndTime = this.EndTime; - return tmp215; + tmp255.StartTime = this.StartTime; + tmp255.EndTime = this.EndTime; + return tmp255; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -101,13 +101,13 @@ public TSDeleteDataReq DeepCopy() if (field.Type == TType.List) { { - TList _list216 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list216.Count); - for(int _i217 = 0; _i217 < _list216.Count; ++_i217) + TList _list256 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list256.Count); + for(int _i257 = 0; _i257 < _list256.Count; ++_i257) { - string _elem218; - _elem218 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem218); + string _elem258; + _elem258 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem258); } await iprot.ReadListEndAsync(cancellationToken); } @@ -194,9 +194,9 @@ public TSDeleteDataReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter219 in Paths) + foreach (string _iter259 in Paths) { - await oprot.WriteStringAsync(_iter219, cancellationToken); + await oprot.WriteStringAsync(_iter259, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs new file mode 100644 index 0000000..7d8b01c --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSDropSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string TemplateName { get; set; } + + public TSDropSchemaTemplateReq() + { + } + + public TSDropSchemaTemplateReq(long sessionId, string templateName) : this() + { + this.SessionId = sessionId; + this.TemplateName = templateName; + } + + public TSDropSchemaTemplateReq DeepCopy() + { + var tmp419 = new TSDropSchemaTemplateReq(); + tmp419.SessionId = this.SessionId; + if((TemplateName != null)) + { + tmp419.TemplateName = this.TemplateName; + } + return tmp419; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_templateName = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSDropSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSDropSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TemplateName, other.TemplateName); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSDropSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs index 126d1ce..f6f3cf4 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,13 +48,13 @@ public TSExecuteBatchStatementReq(long sessionId, List statements) : thi public TSExecuteBatchStatementReq DeepCopy() { - var tmp61 = new TSExecuteBatchStatementReq(); - tmp61.SessionId = this.SessionId; + var tmp79 = new TSExecuteBatchStatementReq(); + tmp79.SessionId = this.SessionId; if((Statements != null)) { - tmp61.Statements = this.Statements.DeepCopy(); + tmp79.Statements = this.Statements.DeepCopy(); } - return tmp61; + return tmp79; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -91,13 +91,13 @@ public TSExecuteBatchStatementReq DeepCopy() if (field.Type == TType.List) { { - TList _list62 = await iprot.ReadListBeginAsync(cancellationToken); - Statements = new List(_list62.Count); - for(int _i63 = 0; _i63 < _list62.Count; ++_i63) + TList _list80 = await iprot.ReadListBeginAsync(cancellationToken); + Statements = new List(_list80.Count); + for(int _i81 = 0; _i81 < _list80.Count; ++_i81) { - string _elem64; - _elem64 = await iprot.ReadStringAsync(cancellationToken); - Statements.Add(_elem64); + string _elem82; + _elem82 = await iprot.ReadStringAsync(cancellationToken); + Statements.Add(_elem82); } await iprot.ReadListEndAsync(cancellationToken); } @@ -154,9 +154,9 @@ public TSExecuteBatchStatementReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Statements.Count), cancellationToken); - foreach (string _iter65 in Statements) + foreach (string _iter83 in Statements) { - await oprot.WriteStringAsync(_iter65, cancellationToken); + await oprot.WriteStringAsync(_iter83, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs index 7d0b092..71c6ef0 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -34,6 +34,7 @@ public partial class TSExecuteStatementReq : TBase private int _fetchSize; private long _timeout; private bool _enableRedirectQuery; + private bool _jdbcQuery; public long SessionId { get; set; } @@ -80,6 +81,19 @@ public bool EnableRedirectQuery } } + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + public Isset __isset; public struct Isset @@ -87,6 +101,7 @@ public struct Isset public bool fetchSize; public bool timeout; public bool enableRedirectQuery; + public bool jdbcQuery; } public TSExecuteStatementReq() @@ -102,29 +117,34 @@ public TSExecuteStatementReq(long sessionId, string statement, long statementId) public TSExecuteStatementReq DeepCopy() { - var tmp59 = new TSExecuteStatementReq(); - tmp59.SessionId = this.SessionId; + var tmp77 = new TSExecuteStatementReq(); + tmp77.SessionId = this.SessionId; if((Statement != null)) { - tmp59.Statement = this.Statement; + tmp77.Statement = this.Statement; } - tmp59.StatementId = this.StatementId; + tmp77.StatementId = this.StatementId; if(__isset.fetchSize) { - tmp59.FetchSize = this.FetchSize; + tmp77.FetchSize = this.FetchSize; } - tmp59.__isset.fetchSize = this.__isset.fetchSize; + tmp77.__isset.fetchSize = this.__isset.fetchSize; if(__isset.timeout) { - tmp59.Timeout = this.Timeout; + tmp77.Timeout = this.Timeout; } - tmp59.__isset.timeout = this.__isset.timeout; + tmp77.__isset.timeout = this.__isset.timeout; if(__isset.enableRedirectQuery) { - tmp59.EnableRedirectQuery = this.EnableRedirectQuery; + tmp77.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp77.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp77.JdbcQuery = this.JdbcQuery; } - tmp59.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - return tmp59; + tmp77.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp77; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -210,6 +230,16 @@ public TSExecuteStatementReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 7: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -294,6 +324,15 @@ public TSExecuteStatementReq DeepCopy() await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -312,7 +351,8 @@ public override bool Equals(object that) && System.Object.Equals(StatementId, other.StatementId) && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))); + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); } public override int GetHashCode() { @@ -336,6 +376,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } } return hashcode; } @@ -367,6 +411,11 @@ public override string ToString() sb.Append(", EnableRedirectQuery: "); EnableRedirectQuery.ToString(sb); } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs index 75e8a94..62aaecd 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -39,6 +39,9 @@ public partial class TSExecuteStatementResp : TBase private TSQueryDataSet _queryDataSet; private TSQueryNonAlignDataSet _nonAlignQueryDataSet; private Dictionary _columnNameIndexMap; + private List _sgColumns; + private List _aliasColumns; + private TSTracingInfo _tracingInfo; public TSStatus Status { get; set; } @@ -146,6 +149,45 @@ public Dictionary ColumnNameIndexMap } } + public List SgColumns + { + get + { + return _sgColumns; + } + set + { + __isset.sgColumns = true; + this._sgColumns = value; + } + } + + public List AliasColumns + { + get + { + return _aliasColumns; + } + set + { + __isset.aliasColumns = true; + this._aliasColumns = value; + } + } + + public TSTracingInfo TracingInfo + { + get + { + return _tracingInfo; + } + set + { + __isset.tracingInfo = true; + this._tracingInfo = value; + } + } + public Isset __isset; public struct Isset @@ -158,6 +200,9 @@ public struct Isset public bool queryDataSet; public bool nonAlignQueryDataSet; public bool columnNameIndexMap; + public bool sgColumns; + public bool aliasColumns; + public bool tracingInfo; } public TSExecuteStatementResp() @@ -171,52 +216,67 @@ public TSExecuteStatementResp(TSStatus status) : this() public TSExecuteStatementResp DeepCopy() { - var tmp28 = new TSExecuteStatementResp(); + var tmp38 = new TSExecuteStatementResp(); if((Status != null)) { - tmp28.Status = (TSStatus)this.Status.DeepCopy(); + tmp38.Status = (TSStatus)this.Status.DeepCopy(); } if(__isset.queryId) { - tmp28.QueryId = this.QueryId; + tmp38.QueryId = this.QueryId; } - tmp28.__isset.queryId = this.__isset.queryId; + tmp38.__isset.queryId = this.__isset.queryId; if((Columns != null) && __isset.columns) { - tmp28.Columns = this.Columns.DeepCopy(); + tmp38.Columns = this.Columns.DeepCopy(); } - tmp28.__isset.columns = this.__isset.columns; + tmp38.__isset.columns = this.__isset.columns; if((OperationType != null) && __isset.operationType) { - tmp28.OperationType = this.OperationType; + tmp38.OperationType = this.OperationType; } - tmp28.__isset.operationType = this.__isset.operationType; + tmp38.__isset.operationType = this.__isset.operationType; if(__isset.ignoreTimeStamp) { - tmp28.IgnoreTimeStamp = this.IgnoreTimeStamp; + tmp38.IgnoreTimeStamp = this.IgnoreTimeStamp; } - tmp28.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; + tmp38.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; if((DataTypeList != null) && __isset.dataTypeList) { - tmp28.DataTypeList = this.DataTypeList.DeepCopy(); + tmp38.DataTypeList = this.DataTypeList.DeepCopy(); } - tmp28.__isset.dataTypeList = this.__isset.dataTypeList; + tmp38.__isset.dataTypeList = this.__isset.dataTypeList; if((QueryDataSet != null) && __isset.queryDataSet) { - tmp28.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + tmp38.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); } - tmp28.__isset.queryDataSet = this.__isset.queryDataSet; + tmp38.__isset.queryDataSet = this.__isset.queryDataSet; if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) { - tmp28.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + tmp38.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); } - tmp28.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + tmp38.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) { - tmp28.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + tmp38.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + } + tmp38.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; + if((SgColumns != null) && __isset.sgColumns) + { + tmp38.SgColumns = this.SgColumns.DeepCopy(); + } + tmp38.__isset.sgColumns = this.__isset.sgColumns; + if((AliasColumns != null) && __isset.aliasColumns) + { + tmp38.AliasColumns = this.AliasColumns.DeepCopy(); + } + tmp38.__isset.aliasColumns = this.__isset.aliasColumns; + if((TracingInfo != null) && __isset.tracingInfo) + { + tmp38.TracingInfo = (TSTracingInfo)this.TracingInfo.DeepCopy(); } - tmp28.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; - return tmp28; + tmp38.__isset.tracingInfo = this.__isset.tracingInfo; + return tmp38; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -263,13 +323,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); - Columns = new List(_list29.Count); - for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + TList _list39 = await iprot.ReadListBeginAsync(cancellationToken); + Columns = new List(_list39.Count); + for(int _i40 = 0; _i40 < _list39.Count; ++_i40) { - string _elem31; - _elem31 = await iprot.ReadStringAsync(cancellationToken); - Columns.Add(_elem31); + string _elem41; + _elem41 = await iprot.ReadStringAsync(cancellationToken); + Columns.Add(_elem41); } await iprot.ReadListEndAsync(cancellationToken); } @@ -303,13 +363,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypeList = new List(_list32.Count); - for(int _i33 = 0; _i33 < _list32.Count; ++_i33) + TList _list42 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypeList = new List(_list42.Count); + for(int _i43 = 0; _i43 < _list42.Count; ++_i43) { - string _elem34; - _elem34 = await iprot.ReadStringAsync(cancellationToken); - DataTypeList.Add(_elem34); + string _elem44; + _elem44 = await iprot.ReadStringAsync(cancellationToken); + DataTypeList.Add(_elem44); } await iprot.ReadListEndAsync(cancellationToken); } @@ -345,15 +405,15 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.Map) { { - TMap _map35 = await iprot.ReadMapBeginAsync(cancellationToken); - ColumnNameIndexMap = new Dictionary(_map35.Count); - for(int _i36 = 0; _i36 < _map35.Count; ++_i36) + TMap _map45 = await iprot.ReadMapBeginAsync(cancellationToken); + ColumnNameIndexMap = new Dictionary(_map45.Count); + for(int _i46 = 0; _i46 < _map45.Count; ++_i46) { - string _key37; - int _val38; - _key37 = await iprot.ReadStringAsync(cancellationToken); - _val38 = await iprot.ReadI32Async(cancellationToken); - ColumnNameIndexMap[_key37] = _val38; + string _key47; + int _val48; + _key47 = await iprot.ReadStringAsync(cancellationToken); + _val48 = await iprot.ReadI32Async(cancellationToken); + ColumnNameIndexMap[_key47] = _val48; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -363,6 +423,57 @@ public TSExecuteStatementResp DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 10: + if (field.Type == TType.List) + { + { + TList _list49 = await iprot.ReadListBeginAsync(cancellationToken); + SgColumns = new List(_list49.Count); + for(int _i50 = 0; _i50 < _list49.Count; ++_i50) + { + string _elem51; + _elem51 = await iprot.ReadStringAsync(cancellationToken); + SgColumns.Add(_elem51); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 11: + if (field.Type == TType.List) + { + { + TList _list52 = await iprot.ReadListBeginAsync(cancellationToken); + AliasColumns = new List(_list52.Count); + for(int _i53 = 0; _i53 < _list52.Count; ++_i53) + { + sbyte _elem54; + _elem54 = await iprot.ReadByteAsync(cancellationToken); + AliasColumns.Add(_elem54); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 12: + if (field.Type == TType.Struct) + { + TracingInfo = new TSTracingInfo(); + await TracingInfo.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -417,9 +528,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Columns.Count), cancellationToken); - foreach (string _iter39 in Columns) + foreach (string _iter55 in Columns) { - await oprot.WriteStringAsync(_iter39, cancellationToken); + await oprot.WriteStringAsync(_iter55, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -451,9 +562,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, DataTypeList.Count), cancellationToken); - foreach (string _iter40 in DataTypeList) + foreach (string _iter56 in DataTypeList) { - await oprot.WriteStringAsync(_iter40, cancellationToken); + await oprot.WriteStringAsync(_iter56, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -485,15 +596,56 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count), cancellationToken); - foreach (string _iter41 in ColumnNameIndexMap.Keys) + foreach (string _iter57 in ColumnNameIndexMap.Keys) { - await oprot.WriteStringAsync(_iter41, cancellationToken); - await oprot.WriteI32Async(ColumnNameIndexMap[_iter41], cancellationToken); + await oprot.WriteStringAsync(_iter57, cancellationToken); + await oprot.WriteI32Async(ColumnNameIndexMap[_iter57], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if((SgColumns != null) && __isset.sgColumns) + { + field.Name = "sgColumns"; + field.Type = TType.List; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, SgColumns.Count), cancellationToken); + foreach (string _iter58 in SgColumns) + { + await oprot.WriteStringAsync(_iter58, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + field.Name = "aliasColumns"; + field.Type = TType.List; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Byte, AliasColumns.Count), cancellationToken); + foreach (sbyte _iter59 in AliasColumns) + { + await oprot.WriteByteAsync(_iter59, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + field.Name = "tracingInfo"; + field.Type = TType.Struct; + field.ID = 12; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await TracingInfo.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -515,7 +667,10 @@ public override bool Equals(object that) && ((__isset.dataTypeList == other.__isset.dataTypeList) && ((!__isset.dataTypeList) || (TCollections.Equals(DataTypeList, other.DataTypeList)))) && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))) - && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))); + && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))) + && ((__isset.sgColumns == other.__isset.sgColumns) && ((!__isset.sgColumns) || (TCollections.Equals(SgColumns, other.SgColumns)))) + && ((__isset.aliasColumns == other.__isset.aliasColumns) && ((!__isset.aliasColumns) || (TCollections.Equals(AliasColumns, other.AliasColumns)))) + && ((__isset.tracingInfo == other.__isset.tracingInfo) && ((!__isset.tracingInfo) || (System.Object.Equals(TracingInfo, other.TracingInfo)))); } public override int GetHashCode() { @@ -557,6 +712,18 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnNameIndexMap); } + if((SgColumns != null) && __isset.sgColumns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SgColumns); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AliasColumns); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + hashcode = (hashcode * 397) + TracingInfo.GetHashCode(); + } } return hashcode; } @@ -609,6 +776,21 @@ public override string ToString() sb.Append(", ColumnNameIndexMap: "); ColumnNameIndexMap.ToString(sb); } + if((SgColumns != null) && __isset.sgColumns) + { + sb.Append(", SgColumns: "); + SgColumns.ToString(sb); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + sb.Append(", AliasColumns: "); + AliasColumns.ToString(sb); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + sb.Append(", TracingInfo: "); + TracingInfo.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs index b0a6a54..4b998c3 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -69,18 +69,18 @@ public TSFetchMetadataReq(long sessionId, string type) : this() public TSFetchMetadataReq DeepCopy() { - var tmp83 = new TSFetchMetadataReq(); - tmp83.SessionId = this.SessionId; + var tmp101 = new TSFetchMetadataReq(); + tmp101.SessionId = this.SessionId; if((Type != null)) { - tmp83.Type = this.Type; + tmp101.Type = this.Type; } if((ColumnPath != null) && __isset.columnPath) { - tmp83.ColumnPath = this.ColumnPath; + tmp101.ColumnPath = this.ColumnPath; } - tmp83.__isset.columnPath = this.__isset.columnPath; - return tmp83; + tmp101.__isset.columnPath = this.__isset.columnPath; + return tmp101; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs index f34d1f1..751f6d9 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -96,27 +96,27 @@ public TSFetchMetadataResp(TSStatus status) : this() public TSFetchMetadataResp DeepCopy() { - var tmp77 = new TSFetchMetadataResp(); + var tmp95 = new TSFetchMetadataResp(); if((Status != null)) { - tmp77.Status = (TSStatus)this.Status.DeepCopy(); + tmp95.Status = (TSStatus)this.Status.DeepCopy(); } if((MetadataInJson != null) && __isset.metadataInJson) { - tmp77.MetadataInJson = this.MetadataInJson; + tmp95.MetadataInJson = this.MetadataInJson; } - tmp77.__isset.metadataInJson = this.__isset.metadataInJson; + tmp95.__isset.metadataInJson = this.__isset.metadataInJson; if((ColumnsList != null) && __isset.columnsList) { - tmp77.ColumnsList = this.ColumnsList.DeepCopy(); + tmp95.ColumnsList = this.ColumnsList.DeepCopy(); } - tmp77.__isset.columnsList = this.__isset.columnsList; + tmp95.__isset.columnsList = this.__isset.columnsList; if((DataType != null) && __isset.dataType) { - tmp77.DataType = this.DataType; + tmp95.DataType = this.DataType; } - tmp77.__isset.dataType = this.__isset.dataType; - return tmp77; + tmp95.__isset.dataType = this.__isset.dataType; + return tmp95; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -163,13 +163,13 @@ public TSFetchMetadataResp DeepCopy() if (field.Type == TType.List) { { - TList _list78 = await iprot.ReadListBeginAsync(cancellationToken); - ColumnsList = new List(_list78.Count); - for(int _i79 = 0; _i79 < _list78.Count; ++_i79) + TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); + ColumnsList = new List(_list96.Count); + for(int _i97 = 0; _i97 < _list96.Count; ++_i97) { - string _elem80; - _elem80 = await iprot.ReadStringAsync(cancellationToken); - ColumnsList.Add(_elem80); + string _elem98; + _elem98 = await iprot.ReadStringAsync(cancellationToken); + ColumnsList.Add(_elem98); } await iprot.ReadListEndAsync(cancellationToken); } @@ -243,9 +243,9 @@ public TSFetchMetadataResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ColumnsList.Count), cancellationToken); - foreach (string _iter81 in ColumnsList) + foreach (string _iter99 in ColumnsList) { - await oprot.WriteStringAsync(_iter81, cancellationToken); + await oprot.WriteStringAsync(_iter99, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs index e180731..9ef28d6 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -78,21 +78,21 @@ public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long q public TSFetchResultsReq DeepCopy() { - var tmp73 = new TSFetchResultsReq(); - tmp73.SessionId = this.SessionId; + var tmp91 = new TSFetchResultsReq(); + tmp91.SessionId = this.SessionId; if((Statement != null)) { - tmp73.Statement = this.Statement; + tmp91.Statement = this.Statement; } - tmp73.FetchSize = this.FetchSize; - tmp73.QueryId = this.QueryId; - tmp73.IsAlign = this.IsAlign; + tmp91.FetchSize = this.FetchSize; + tmp91.QueryId = this.QueryId; + tmp91.IsAlign = this.IsAlign; if(__isset.timeout) { - tmp73.Timeout = this.Timeout; + tmp91.Timeout = this.Timeout; } - tmp73.__isset.timeout = this.__isset.timeout; - return tmp73; + tmp91.__isset.timeout = this.__isset.timeout; + return tmp91; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs index 93584f7..6b178c5 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -87,24 +87,24 @@ public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : th public TSFetchResultsResp DeepCopy() { - var tmp75 = new TSFetchResultsResp(); + var tmp93 = new TSFetchResultsResp(); if((Status != null)) { - tmp75.Status = (TSStatus)this.Status.DeepCopy(); + tmp93.Status = (TSStatus)this.Status.DeepCopy(); } - tmp75.HasResultSet = this.HasResultSet; - tmp75.IsAlign = this.IsAlign; + tmp93.HasResultSet = this.HasResultSet; + tmp93.IsAlign = this.IsAlign; if((QueryDataSet != null) && __isset.queryDataSet) { - tmp75.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + tmp93.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); } - tmp75.__isset.queryDataSet = this.__isset.queryDataSet; + tmp93.__isset.queryDataSet = this.__isset.queryDataSet; if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) { - tmp75.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + tmp93.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); } - tmp75.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; - return tmp75; + tmp93.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + return tmp93; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs index e32437d..27718fb 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,10 +48,10 @@ public TSGetOperationStatusReq(long sessionId, long queryId) : this() public TSGetOperationStatusReq DeepCopy() { - var tmp67 = new TSGetOperationStatusReq(); - tmp67.SessionId = this.SessionId; - tmp67.QueryId = this.QueryId; - return tmp67; + var tmp85 = new TSGetOperationStatusReq(); + tmp85.SessionId = this.SessionId; + tmp85.QueryId = this.QueryId; + return tmp85; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs index d22b52f..4dca3ad 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,16 +48,16 @@ public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() public TSGetTimeZoneResp DeepCopy() { - var tmp85 = new TSGetTimeZoneResp(); + var tmp103 = new TSGetTimeZoneResp(); if((Status != null)) { - tmp85.Status = (TSStatus)this.Status.DeepCopy(); + tmp103.Status = (TSStatus)this.Status.DeepCopy(); } if((TimeZone != null)) { - tmp85.TimeZone = this.TimeZone; + tmp103.TimeZone = this.TimeZone; } - return tmp85; + return tmp103; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSIService.cs b/src/Apache.IoTDB.Rpc.Generated/TSIService.cs index ca6bcbd..964e1aa 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSIService.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSIService.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -23,7 +23,7 @@ using Thrift.Transport.Client; using Thrift.Transport.Server; using Thrift.Processor; - + #pragma warning disable IDE0079 // remove unnecessary pragmas #pragma warning disable IDE1006 // parts of the code use IDL spelling @@ -62,6 +62,8 @@ public interface IAsync global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default); global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default); @@ -80,6 +82,8 @@ public interface IAsync global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); @@ -100,8 +104,24 @@ public interface IAsync global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default); + } @@ -563,6 +583,36 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); } + public async global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createAlignedTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.createAlignedTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createAlignedTimeseries failed: unknown result"); + } + public async global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Call, SeqId), cancellationToken); @@ -835,6 +885,36 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); } + public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecordsOfOneDevice failed: unknown result"); + } + public async global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Call, SeqId), cancellationToken); @@ -1135,6 +1215,36 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); } + public async global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeLastDataQueryArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeLastDataQueryResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeLastDataQuery failed: unknown result"); + } + public async global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Call, SeqId), cancellationToken); @@ -1165,141 +1275,361 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); } - } - - public class AsyncProcessor : ITAsyncProcessor - { - private readonly IAsync _iAsync; - private readonly ILogger _logger; - - public AsyncProcessor(IAsync iAsync, ILogger logger = default) - { - _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); - _logger = logger; - processMap_["openSession"] = openSession_ProcessAsync; - processMap_["closeSession"] = closeSession_ProcessAsync; - processMap_["executeStatement"] = executeStatement_ProcessAsync; - processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; - processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; - processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; - processMap_["fetchResults"] = fetchResults_ProcessAsync; - processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; - processMap_["cancelOperation"] = cancelOperation_ProcessAsync; - processMap_["closeOperation"] = closeOperation_ProcessAsync; - processMap_["getTimeZone"] = getTimeZone_ProcessAsync; - processMap_["setTimeZone"] = setTimeZone_ProcessAsync; - processMap_["getProperties"] = getProperties_ProcessAsync; - processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; - processMap_["createTimeseries"] = createTimeseries_ProcessAsync; - processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; - processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; - processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; - processMap_["insertRecord"] = insertRecord_ProcessAsync; - processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; - processMap_["insertTablet"] = insertTablet_ProcessAsync; - processMap_["insertTablets"] = insertTablets_ProcessAsync; - processMap_["insertRecords"] = insertRecords_ProcessAsync; - processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; - processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; - processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; - processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; - processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; - processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; - processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; - processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; - processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; - processMap_["deleteData"] = deleteData_ProcessAsync; - processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; - processMap_["requestStatementId"] = requestStatementId_ProcessAsync; - } - - protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); - protected Dictionary processMap_ = new Dictionary(); - - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) - { - return await ProcessAsync(iprot, oprot, CancellationToken.None); - } - - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default) { - try + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - var msg = await iprot.ReadMessageBeginAsync(cancellationToken); - - processMap_.TryGetValue(msg.Name, out ProcessFunction fn); - - if (fn == null) - { - await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); - await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - return true; - } - - await fn(msg.SeqID, iprot, oprot, cancellationToken); - + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; } - catch (IOException) + + var result = new InternalStructs.createSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) { - return false; + return result.Success; } - - return true; + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createSchemaTemplate failed: unknown result"); } - public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default) { - var args = new InternalStructs.openSessionArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.openSessionResult(); - try - { - result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) + await OutputProtocol.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.appendSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - throw; + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; } - catch (Exception ex) + + var result = new InternalStructs.appendSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); + return result.Success; } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "appendSchemaTemplate failed: unknown result"); } - public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default) { - var args = new InternalStructs.closeSessionArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.closeSessionResult(); - try + await OutputProtocol.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.pruneSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; } - catch (TTransportException) + + var result = new InternalStructs.pruneSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) { - throw; + return result.Success; } - catch (Exception ex) + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "pruneSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.querySchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.querySchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "querySchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.setSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.unsetSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.unsetSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "unsetSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.dropSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.dropSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "dropSchemaTemplate failed: unknown result"); + } + + } + + public class AsyncProcessor : ITAsyncProcessor + { + private readonly IAsync _iAsync; + private readonly ILogger _logger; + + public AsyncProcessor(IAsync iAsync, ILogger logger = default) + { + _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); + _logger = logger; + processMap_["openSession"] = openSession_ProcessAsync; + processMap_["closeSession"] = closeSession_ProcessAsync; + processMap_["executeStatement"] = executeStatement_ProcessAsync; + processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; + processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; + processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; + processMap_["fetchResults"] = fetchResults_ProcessAsync; + processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; + processMap_["cancelOperation"] = cancelOperation_ProcessAsync; + processMap_["closeOperation"] = closeOperation_ProcessAsync; + processMap_["getTimeZone"] = getTimeZone_ProcessAsync; + processMap_["setTimeZone"] = setTimeZone_ProcessAsync; + processMap_["getProperties"] = getProperties_ProcessAsync; + processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; + processMap_["createTimeseries"] = createTimeseries_ProcessAsync; + processMap_["createAlignedTimeseries"] = createAlignedTimeseries_ProcessAsync; + processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; + processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; + processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; + processMap_["insertRecord"] = insertRecord_ProcessAsync; + processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; + processMap_["insertTablet"] = insertTablet_ProcessAsync; + processMap_["insertTablets"] = insertTablets_ProcessAsync; + processMap_["insertRecords"] = insertRecords_ProcessAsync; + processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecordsOfOneDevice"] = insertStringRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; + processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; + processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; + processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; + processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; + processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; + processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; + processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; + processMap_["deleteData"] = deleteData_ProcessAsync; + processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; + processMap_["executeLastDataQuery"] = executeLastDataQuery_ProcessAsync; + processMap_["requestStatementId"] = requestStatementId_ProcessAsync; + processMap_["createSchemaTemplate"] = createSchemaTemplate_ProcessAsync; + processMap_["appendSchemaTemplate"] = appendSchemaTemplate_ProcessAsync; + processMap_["pruneSchemaTemplate"] = pruneSchemaTemplate_ProcessAsync; + processMap_["querySchemaTemplate"] = querySchemaTemplate_ProcessAsync; + processMap_["setSchemaTemplate"] = setSchemaTemplate_ProcessAsync; + processMap_["unsetSchemaTemplate"] = unsetSchemaTemplate_ProcessAsync; + processMap_["dropSchemaTemplate"] = dropSchemaTemplate_ProcessAsync; + } + + protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); + protected Dictionary processMap_ = new Dictionary(); + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) + { + return await ProcessAsync(iprot, oprot, CancellationToken.None); + } + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + try + { + var msg = await iprot.ReadMessageBeginAsync(cancellationToken); + + processMap_.TryGetValue(msg.Name, out ProcessFunction fn); + + if (fn == null) + { + await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); + await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + return true; + } + + await fn(msg.SeqID, iprot, oprot, cancellationToken); + + } + catch (IOException) + { + return false; + } + + return true; + } + + public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.openSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.openSessionResult(); + try + { + result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.closeSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeSessionResult(); + try + { + result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) { var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; if(_logger != null) @@ -1717,16 +2047,16 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task createAlignedTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.createMultiTimeseriesArgs(); + var args = new InternalStructs.createAlignedTimeseriesArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.createMultiTimeseriesResult(); + var result = new InternalStructs.createAlignedTimeseriesResult(); try { - result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.createAlignedTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1741,23 +2071,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.deleteTimeseriesArgs(); + var args = new InternalStructs.createMultiTimeseriesArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.deleteTimeseriesResult(); + var result = new InternalStructs.createMultiTimeseriesResult(); try { - result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1772,14 +2102,45 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.deleteTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteTimeseriesResult(); + try + { + result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { var args = new InternalStructs.deleteStorageGroupsArgs(); await args.ReadAsync(iprot, cancellationToken); @@ -1996,6 +2357,37 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } + public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); + try + { + result.Success = await _iAsync.insertStringRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + public async global::System.Threading.Tasks.Task insertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { var args = new InternalStructs.insertStringRecordsArgs(); @@ -2306,6 +2698,37 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } + public async global::System.Threading.Tasks.Task executeLastDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeLastDataQueryArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeLastDataQueryResult(); + try + { + result.Success = await _iAsync.executeLastDataQueryAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + public async global::System.Threading.Tasks.Task requestStatementId_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { var args = new InternalStructs.requestStatementIdArgs(); @@ -2337,109 +2760,3225 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } - } - - public class InternalStructs - { - - public partial class openSessionArgs : TBase + public async global::System.Threading.Tasks.Task createSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - private TSOpenSessionReq _req; - - public TSOpenSessionReq Req + var args = new InternalStructs.createSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createSchemaTemplateResult(); + try { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } + result.Success = await _iAsync.createSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - - - public Isset __isset; - public struct Isset + catch (TTransportException) { - public bool req; + throw; } - - public openSessionArgs() + catch (Exception ex) { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - public openSessionArgs DeepCopy() + public async global::System.Threading.Tasks.Task appendSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.appendSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.appendSchemaTemplateResult(); + try { - var tmp299 = new openSessionArgs(); - if((Req != null) && __isset.req) - { - tmp299.Req = (TSOpenSessionReq)this.Req.DeepCopy(); - } - tmp299.__isset.req = this.__isset.req; - return tmp299; + result.Success = await _iAsync.appendSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + catch (TTransportException) { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSOpenSessionReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - await iprot.ReadFieldEndAsync(cancellationToken); - } + public async global::System.Threading.Tasks.Task pruneSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.pruneSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.pruneSchemaTemplateResult(); + try + { + result.Success = await _iAsync.pruneSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } + public async global::System.Threading.Tasks.Task querySchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.querySchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.querySchemaTemplateResult(); + try + { + result.Success = await _iAsync.querySchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task setSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setSchemaTemplateResult(); + try { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("openSession_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; + result.Success = await _iAsync.setSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.unsetSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.unsetSchemaTemplateResult(); + try + { + result.Success = await _iAsync.unsetSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.dropSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.dropSchemaTemplateResult(); + try + { + result.Success = await _iAsync.dropSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + } + + public class InternalStructs + { + + public partial class openSessionArgs : TBase + { + private TSOpenSessionReq _req; + + public TSOpenSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public openSessionArgs() + { + } + + public openSessionArgs DeepCopy() + { + var tmp421 = new openSessionArgs(); + if((Req != null) && __isset.req) + { + tmp421.Req = (TSOpenSessionReq)this.Req.DeepCopy(); + } + tmp421.__isset.req = this.__isset.req; + return tmp421; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSOpenSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_args("); + int tmp422 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp422++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class openSessionResult : TBase + { + private TSOpenSessionResp _success; + + public TSOpenSessionResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public openSessionResult() + { + } + + public openSessionResult DeepCopy() + { + var tmp423 = new openSessionResult(); + if((Success != null) && __isset.success) + { + tmp423.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + } + tmp423.__isset.success = this.__isset.success; + return tmp423; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSOpenSessionResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_result("); + int tmp424 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp424++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionArgs : TBase + { + private TSCloseSessionReq _req; + + public TSCloseSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeSessionArgs() + { + } + + public closeSessionArgs DeepCopy() + { + var tmp425 = new closeSessionArgs(); + if((Req != null) && __isset.req) + { + tmp425.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + } + tmp425.__isset.req = this.__isset.req; + return tmp425; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_args("); + int tmp426 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp426++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeSessionResult() + { + } + + public closeSessionResult DeepCopy() + { + var tmp427 = new closeSessionResult(); + if((Success != null) && __isset.success) + { + tmp427.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp427.__isset.success = this.__isset.success; + return tmp427; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_result("); + int tmp428 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp428++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeStatementArgs() + { + } + + public executeStatementArgs DeepCopy() + { + var tmp429 = new executeStatementArgs(); + if((Req != null) && __isset.req) + { + tmp429.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp429.__isset.req = this.__isset.req; + return tmp429; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_args("); + int tmp430 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp430++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeStatementResult() + { + } + + public executeStatementResult DeepCopy() + { + var tmp431 = new executeStatementResult(); + if((Success != null) && __isset.success) + { + tmp431.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp431.__isset.success = this.__isset.success; + return tmp431; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_result("); + int tmp432 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp432++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementArgs : TBase + { + private TSExecuteBatchStatementReq _req; + + public TSExecuteBatchStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeBatchStatementArgs() + { + } + + public executeBatchStatementArgs DeepCopy() + { + var tmp433 = new executeBatchStatementArgs(); + if((Req != null) && __isset.req) + { + tmp433.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + } + tmp433.__isset.req = this.__isset.req; + return tmp433; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteBatchStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_args("); + int tmp434 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp434++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeBatchStatementResult() + { + } + + public executeBatchStatementResult DeepCopy() + { + var tmp435 = new executeBatchStatementResult(); + if((Success != null) && __isset.success) + { + tmp435.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp435.__isset.success = this.__isset.success; + return tmp435; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_result("); + int tmp436 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp436++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeQueryStatementArgs() + { + } + + public executeQueryStatementArgs DeepCopy() + { + var tmp437 = new executeQueryStatementArgs(); + if((Req != null) && __isset.req) + { + tmp437.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp437.__isset.req = this.__isset.req; + return tmp437; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_args("); + int tmp438 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp438++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeQueryStatementResult() + { + } + + public executeQueryStatementResult DeepCopy() + { + var tmp439 = new executeQueryStatementResult(); + if((Success != null) && __isset.success) + { + tmp439.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp439.__isset.success = this.__isset.success; + return tmp439; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_result("); + int tmp440 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp440++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeUpdateStatementArgs() + { + } + + public executeUpdateStatementArgs DeepCopy() + { + var tmp441 = new executeUpdateStatementArgs(); + if((Req != null) && __isset.req) + { + tmp441.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp441.__isset.req = this.__isset.req; + return tmp441; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatement_args("); + int tmp442 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp442++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeUpdateStatementResult() + { + } + + public executeUpdateStatementResult DeepCopy() + { + var tmp443 = new executeUpdateStatementResult(); + if((Success != null) && __isset.success) + { + tmp443.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp443.__isset.success = this.__isset.success; + return tmp443; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatement_result("); + int tmp444 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp444++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsArgs : TBase + { + private TSFetchResultsReq _req; + + public TSFetchResultsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchResultsArgs() + { + } + + public fetchResultsArgs DeepCopy() + { + var tmp445 = new fetchResultsArgs(); + if((Req != null) && __isset.req) + { + tmp445.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + } + tmp445.__isset.req = this.__isset.req; + return tmp445; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchResultsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResults_args("); + int tmp446 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp446++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsResult : TBase + { + private TSFetchResultsResp _success; + + public TSFetchResultsResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchResultsResult() + { + } + + public fetchResultsResult DeepCopy() + { + var tmp447 = new fetchResultsResult(); + if((Success != null) && __isset.success) + { + tmp447.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + } + tmp447.__isset.success = this.__isset.success; + return tmp447; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchResultsResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResults_result("); + int tmp448 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp448++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchMetadataArgs : TBase + { + private TSFetchMetadataReq _req; + + public TSFetchMetadataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchMetadataArgs() + { + } + + public fetchMetadataArgs DeepCopy() + { + var tmp449 = new fetchMetadataArgs(); + if((Req != null) && __isset.req) + { + tmp449.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); + } + tmp449.__isset.req = this.__isset.req; + return tmp449; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchMetadataReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchMetadataArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchMetadata_args("); + int tmp450 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp450++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchMetadataResult : TBase + { + private TSFetchMetadataResp _success; + + public TSFetchMetadataResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchMetadataResult() + { + } + + public fetchMetadataResult DeepCopy() + { + var tmp451 = new fetchMetadataResult(); + if((Success != null) && __isset.success) + { + tmp451.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + } + tmp451.__isset.success = this.__isset.success; + return tmp451; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchMetadataResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchMetadataResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchMetadata_result("); + int tmp452 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp452++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class cancelOperationArgs : TBase + { + private TSCancelOperationReq _req; + + public TSCancelOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public cancelOperationArgs() + { + } + + public cancelOperationArgs DeepCopy() + { + var tmp453 = new cancelOperationArgs(); + if((Req != null) && __isset.req) + { + tmp453.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + } + tmp453.__isset.req = this.__isset.req; + return tmp453; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCancelOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is cancelOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("cancelOperation_args("); + int tmp454 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp454++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class cancelOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public cancelOperationResult() + { + } + + public cancelOperationResult DeepCopy() + { + var tmp455 = new cancelOperationResult(); + if((Success != null) && __isset.success) + { + tmp455.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp455.__isset.success = this.__isset.success; + return tmp455; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is cancelOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("cancelOperation_result("); + int tmp456 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp456++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeOperationArgs : TBase + { + private TSCloseOperationReq _req; + + public TSCloseOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeOperationArgs() + { + } + + public closeOperationArgs DeepCopy() + { + var tmp457 = new closeOperationArgs(); + if((Req != null) && __isset.req) + { + tmp457.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + } + tmp457.__isset.req = this.__isset.req; + return tmp457; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeOperation_args("); + int tmp458 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp458++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeOperationResult() + { + } + + public closeOperationResult DeepCopy() + { + var tmp459 = new closeOperationResult(); + if((Success != null) && __isset.success) + { + tmp459.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp459.__isset.success = this.__isset.success; + return tmp459; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeOperation_result("); + int tmp460 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp460++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class getTimeZoneArgs : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + } + + public getTimeZoneArgs() + { + } + + public getTimeZoneArgs DeepCopy() + { + var tmp461 = new getTimeZoneArgs(); + if(__isset.sessionId) + { + tmp461.SessionId = this.SessionId; + } + tmp461.__isset.sessionId = this.__isset.sessionId; + return tmp461; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getTimeZone_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -2453,17 +5992,17 @@ public openSessionArgs DeepCopy() public override bool Equals(object that) { - if (!(that is openSessionArgs other)) return false; + if (!(that is getTimeZoneArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); } } return hashcode; @@ -2471,13 +6010,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("openSession_args("); - int tmp300 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("getTimeZone_args("); + int tmp462 = 0; + if(__isset.sessionId) { - if(0 < tmp300++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp462++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -2485,11 +6024,11 @@ public override string ToString() } - public partial class openSessionResult : TBase + public partial class getTimeZoneResult : TBase { - private TSOpenSessionResp _success; + private TSGetTimeZoneResp _success; - public TSOpenSessionResp Success + public TSGetTimeZoneResp Success { get { @@ -2509,19 +6048,19 @@ public struct Isset public bool success; } - public openSessionResult() + public getTimeZoneResult() { } - public openSessionResult DeepCopy() + public getTimeZoneResult DeepCopy() { - var tmp301 = new openSessionResult(); + var tmp463 = new getTimeZoneResult(); if((Success != null) && __isset.success) { - tmp301.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + tmp463.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); } - tmp301.__isset.success = this.__isset.success; - return tmp301; + tmp463.__isset.success = this.__isset.success; + return tmp463; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2544,7 +6083,7 @@ public openSessionResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSOpenSessionResp(); + Success = new TSGetTimeZoneResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -2573,7 +6112,7 @@ public openSessionResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("openSession_result"); + var struc = new TStruct("getTimeZone_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -2600,7 +6139,7 @@ public openSessionResult DeepCopy() public override bool Equals(object that) { - if (!(that is openSessionResult other)) return false; + if (!(that is getTimeZoneResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -2618,11 +6157,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("openSession_result("); - int tmp302 = 0; + var sb = new StringBuilder("getTimeZone_result("); + int tmp464 = 0; if((Success != null) && __isset.success) { - if(0 < tmp302++) { sb.Append(", "); } + if(0 < tmp464++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -2632,11 +6171,11 @@ public override string ToString() } - public partial class closeSessionArgs : TBase + public partial class setTimeZoneArgs : TBase { - private TSCloseSessionReq _req; + private TSSetTimeZoneReq _req; - public TSCloseSessionReq Req + public TSSetTimeZoneReq Req { get { @@ -2656,19 +6195,19 @@ public struct Isset public bool req; } - public closeSessionArgs() + public setTimeZoneArgs() { } - public closeSessionArgs DeepCopy() + public setTimeZoneArgs DeepCopy() { - var tmp303 = new closeSessionArgs(); + var tmp465 = new setTimeZoneArgs(); if((Req != null) && __isset.req) { - tmp303.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + tmp465.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); } - tmp303.__isset.req = this.__isset.req; - return tmp303; + tmp465.__isset.req = this.__isset.req; + return tmp465; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2691,7 +6230,7 @@ public closeSessionArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCloseSessionReq(); + Req = new TSSetTimeZoneReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -2720,7 +6259,7 @@ public closeSessionArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeSession_args"); + var struc = new TStruct("setTimeZone_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -2743,7 +6282,7 @@ public closeSessionArgs DeepCopy() public override bool Equals(object that) { - if (!(that is closeSessionArgs other)) return false; + if (!(that is setTimeZoneArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -2761,11 +6300,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeSession_args("); - int tmp304 = 0; + var sb = new StringBuilder("setTimeZone_args("); + int tmp466 = 0; if((Req != null) && __isset.req) { - if(0 < tmp304++) { sb.Append(", "); } + if(0 < tmp466++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -2775,7 +6314,7 @@ public override string ToString() } - public partial class closeSessionResult : TBase + public partial class setTimeZoneResult : TBase { private TSStatus _success; @@ -2799,19 +6338,19 @@ public struct Isset public bool success; } - public closeSessionResult() + public setTimeZoneResult() { } - public closeSessionResult DeepCopy() + public setTimeZoneResult DeepCopy() { - var tmp305 = new closeSessionResult(); + var tmp467 = new setTimeZoneResult(); if((Success != null) && __isset.success) { - tmp305.Success = (TSStatus)this.Success.DeepCopy(); + tmp467.Success = (TSStatus)this.Success.DeepCopy(); } - tmp305.__isset.success = this.__isset.success; - return tmp305; + tmp467.__isset.success = this.__isset.success; + return tmp467; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2863,7 +6402,7 @@ public closeSessionResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeSession_result"); + var struc = new TStruct("setTimeZone_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -2890,7 +6429,7 @@ public closeSessionResult DeepCopy() public override bool Equals(object that) { - if (!(that is closeSessionResult other)) return false; + if (!(that is setTimeZoneResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -2908,11 +6447,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeSession_result("); - int tmp306 = 0; + var sb = new StringBuilder("setTimeZone_result("); + int tmp468 = 0; if((Success != null) && __isset.success) { - if(0 < tmp306++) { sb.Append(", "); } + if(0 < tmp468++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -2922,43 +6461,17 @@ public override string ToString() } - public partial class executeStatementArgs : TBase + public partial class getPropertiesArgs : TBase { - private TSExecuteStatementReq _req; - - public TSExecuteStatementReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - public executeStatementArgs() + public getPropertiesArgs() { } - public executeStatementArgs DeepCopy() + public getPropertiesArgs DeepCopy() { - var tmp307 = new executeStatementArgs(); - if((Req != null) && __isset.req) - { - tmp307.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); - } - tmp307.__isset.req = this.__isset.req; - return tmp307; + var tmp469 = new getPropertiesArgs(); + return tmp469; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2978,17 +6491,6 @@ public executeStatementArgs DeepCopy() switch (field.ID) { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSExecuteStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -3010,18 +6512,8 @@ public executeStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeStatement_args"); + var struc = new TStruct("getProperties_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -3033,43 +6525,32 @@ public executeStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeStatementArgs other)) return false; + if (!(that is getPropertiesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return true; } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("executeStatement_args("); - int tmp308 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp308++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } + var sb = new StringBuilder("getProperties_args("); sb.Append(')'); return sb.ToString(); } } - public partial class executeStatementResult : TBase + public partial class getPropertiesResult : TBase { - private TSExecuteStatementResp _success; + private ServerProperties _success; - public TSExecuteStatementResp Success + public ServerProperties Success { get { @@ -3089,19 +6570,19 @@ public struct Isset public bool success; } - public executeStatementResult() + public getPropertiesResult() { } - public executeStatementResult DeepCopy() + public getPropertiesResult DeepCopy() { - var tmp309 = new executeStatementResult(); + var tmp471 = new getPropertiesResult(); if((Success != null) && __isset.success) { - tmp309.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp471.Success = (ServerProperties)this.Success.DeepCopy(); } - tmp309.__isset.success = this.__isset.success; - return tmp309; + tmp471.__isset.success = this.__isset.success; + return tmp471; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3124,7 +6605,7 @@ public executeStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new ServerProperties(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3153,7 +6634,7 @@ public executeStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeStatement_result"); + var struc = new TStruct("getProperties_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3180,7 +6661,7 @@ public executeStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeStatementResult other)) return false; + if (!(that is getPropertiesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3198,11 +6679,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeStatement_result("); - int tmp310 = 0; + var sb = new StringBuilder("getProperties_result("); + int tmp472 = 0; if((Success != null) && __isset.success) { - if(0 < tmp310++) { sb.Append(", "); } + if(0 < tmp472++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3212,20 +6693,34 @@ public override string ToString() } - public partial class executeBatchStatementArgs : TBase + public partial class setStorageGroupArgs : TBase { - private TSExecuteBatchStatementReq _req; + private long _sessionId; + private string _storageGroup; - public TSExecuteBatchStatementReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public string StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; } } @@ -3233,22 +6728,28 @@ public TSExecuteBatchStatementReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool storageGroup; } - public executeBatchStatementArgs() + public setStorageGroupArgs() { } - public executeBatchStatementArgs DeepCopy() + public setStorageGroupArgs DeepCopy() { - var tmp311 = new executeBatchStatementArgs(); - if((Req != null) && __isset.req) + var tmp473 = new setStorageGroupArgs(); + if(__isset.sessionId) + { + tmp473.SessionId = this.SessionId; + } + tmp473.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) { - tmp311.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + tmp473.StorageGroup = this.StorageGroup; } - tmp311.__isset.req = this.__isset.req; - return tmp311; + tmp473.__isset.storageGroup = this.__isset.storageGroup; + return tmp473; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3269,10 +6770,19 @@ public executeBatchStatementArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSExecuteBatchStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + StorageGroup = await iprot.ReadStringAsync(cancellationToken); } else { @@ -3300,16 +6810,25 @@ public executeBatchStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeBatchStatement_args"); + var struc = new TStruct("setStorageGroup_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(StorageGroup, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -3323,17 +6842,22 @@ public executeBatchStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeBatchStatementArgs other)) return false; + if (!(that is setStorageGroupArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); } } return hashcode; @@ -3341,13 +6865,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeBatchStatement_args("); - int tmp312 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("setStorageGroup_args("); + int tmp474 = 0; + if(__isset.sessionId) { - if(0 < tmp312++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -3355,7 +6885,7 @@ public override string ToString() } - public partial class executeBatchStatementResult : TBase + public partial class setStorageGroupResult : TBase { private TSStatus _success; @@ -3379,19 +6909,19 @@ public struct Isset public bool success; } - public executeBatchStatementResult() + public setStorageGroupResult() { } - public executeBatchStatementResult DeepCopy() + public setStorageGroupResult DeepCopy() { - var tmp313 = new executeBatchStatementResult(); + var tmp475 = new setStorageGroupResult(); if((Success != null) && __isset.success) { - tmp313.Success = (TSStatus)this.Success.DeepCopy(); + tmp475.Success = (TSStatus)this.Success.DeepCopy(); } - tmp313.__isset.success = this.__isset.success; - return tmp313; + tmp475.__isset.success = this.__isset.success; + return tmp475; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3443,7 +6973,7 @@ public executeBatchStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeBatchStatement_result"); + var struc = new TStruct("setStorageGroup_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3470,7 +7000,7 @@ public executeBatchStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeBatchStatementResult other)) return false; + if (!(that is setStorageGroupResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3488,11 +7018,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeBatchStatement_result("); - int tmp314 = 0; + var sb = new StringBuilder("setStorageGroup_result("); + int tmp476 = 0; if((Success != null) && __isset.success) { - if(0 < tmp314++) { sb.Append(", "); } + if(0 < tmp476++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3502,11 +7032,11 @@ public override string ToString() } - public partial class executeQueryStatementArgs : TBase + public partial class createTimeseriesArgs : TBase { - private TSExecuteStatementReq _req; + private TSCreateTimeseriesReq _req; - public TSExecuteStatementReq Req + public TSCreateTimeseriesReq Req { get { @@ -3526,19 +7056,19 @@ public struct Isset public bool req; } - public executeQueryStatementArgs() + public createTimeseriesArgs() { } - public executeQueryStatementArgs DeepCopy() + public createTimeseriesArgs DeepCopy() { - var tmp315 = new executeQueryStatementArgs(); + var tmp477 = new createTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp315.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp477.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); } - tmp315.__isset.req = this.__isset.req; - return tmp315; + tmp477.__isset.req = this.__isset.req; + return tmp477; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3561,7 +7091,7 @@ public executeQueryStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); + Req = new TSCreateTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3590,7 +7120,7 @@ public executeQueryStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeQueryStatement_args"); + var struc = new TStruct("createTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3613,7 +7143,7 @@ public executeQueryStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeQueryStatementArgs other)) return false; + if (!(that is createTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3631,11 +7161,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeQueryStatement_args("); - int tmp316 = 0; + var sb = new StringBuilder("createTimeseries_args("); + int tmp478 = 0; if((Req != null) && __isset.req) { - if(0 < tmp316++) { sb.Append(", "); } + if(0 < tmp478++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3645,11 +7175,11 @@ public override string ToString() } - public partial class executeQueryStatementResult : TBase + public partial class createTimeseriesResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -3669,19 +7199,19 @@ public struct Isset public bool success; } - public executeQueryStatementResult() + public createTimeseriesResult() { } - public executeQueryStatementResult DeepCopy() + public createTimeseriesResult DeepCopy() { - var tmp317 = new executeQueryStatementResult(); + var tmp479 = new createTimeseriesResult(); if((Success != null) && __isset.success) { - tmp317.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp479.Success = (TSStatus)this.Success.DeepCopy(); } - tmp317.__isset.success = this.__isset.success; - return tmp317; + tmp479.__isset.success = this.__isset.success; + return tmp479; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3704,7 +7234,7 @@ public executeQueryStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3733,7 +7263,7 @@ public executeQueryStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeQueryStatement_result"); + var struc = new TStruct("createTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3760,7 +7290,7 @@ public executeQueryStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeQueryStatementResult other)) return false; + if (!(that is createTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3778,11 +7308,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeQueryStatement_result("); - int tmp318 = 0; + var sb = new StringBuilder("createTimeseries_result("); + int tmp480 = 0; if((Success != null) && __isset.success) { - if(0 < tmp318++) { sb.Append(", "); } + if(0 < tmp480++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3792,11 +7322,11 @@ public override string ToString() } - public partial class executeUpdateStatementArgs : TBase + public partial class createAlignedTimeseriesArgs : TBase { - private TSExecuteStatementReq _req; + private TSCreateAlignedTimeseriesReq _req; - public TSExecuteStatementReq Req + public TSCreateAlignedTimeseriesReq Req { get { @@ -3816,19 +7346,19 @@ public struct Isset public bool req; } - public executeUpdateStatementArgs() + public createAlignedTimeseriesArgs() { } - public executeUpdateStatementArgs DeepCopy() + public createAlignedTimeseriesArgs DeepCopy() { - var tmp319 = new executeUpdateStatementArgs(); + var tmp481 = new createAlignedTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp319.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp481.Req = (TSCreateAlignedTimeseriesReq)this.Req.DeepCopy(); } - tmp319.__isset.req = this.__isset.req; - return tmp319; + tmp481.__isset.req = this.__isset.req; + return tmp481; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3851,7 +7381,7 @@ public executeUpdateStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); + Req = new TSCreateAlignedTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3880,7 +7410,7 @@ public executeUpdateStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeUpdateStatement_args"); + var struc = new TStruct("createAlignedTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3903,7 +7433,7 @@ public executeUpdateStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeUpdateStatementArgs other)) return false; + if (!(that is createAlignedTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3921,11 +7451,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeUpdateStatement_args("); - int tmp320 = 0; + var sb = new StringBuilder("createAlignedTimeseries_args("); + int tmp482 = 0; if((Req != null) && __isset.req) { - if(0 < tmp320++) { sb.Append(", "); } + if(0 < tmp482++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3935,11 +7465,11 @@ public override string ToString() } - public partial class executeUpdateStatementResult : TBase + public partial class createAlignedTimeseriesResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -3959,19 +7489,19 @@ public struct Isset public bool success; } - public executeUpdateStatementResult() + public createAlignedTimeseriesResult() { } - public executeUpdateStatementResult DeepCopy() + public createAlignedTimeseriesResult DeepCopy() { - var tmp321 = new executeUpdateStatementResult(); + var tmp483 = new createAlignedTimeseriesResult(); if((Success != null) && __isset.success) { - tmp321.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp483.Success = (TSStatus)this.Success.DeepCopy(); } - tmp321.__isset.success = this.__isset.success; - return tmp321; + tmp483.__isset.success = this.__isset.success; + return tmp483; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3994,7 +7524,7 @@ public executeUpdateStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4023,7 +7553,7 @@ public executeUpdateStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeUpdateStatement_result"); + var struc = new TStruct("createAlignedTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4050,7 +7580,7 @@ public executeUpdateStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeUpdateStatementResult other)) return false; + if (!(that is createAlignedTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4068,11 +7598,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeUpdateStatement_result("); - int tmp322 = 0; + var sb = new StringBuilder("createAlignedTimeseries_result("); + int tmp484 = 0; if((Success != null) && __isset.success) { - if(0 < tmp322++) { sb.Append(", "); } + if(0 < tmp484++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4082,11 +7612,11 @@ public override string ToString() } - public partial class fetchResultsArgs : TBase + public partial class createMultiTimeseriesArgs : TBase { - private TSFetchResultsReq _req; + private TSCreateMultiTimeseriesReq _req; - public TSFetchResultsReq Req + public TSCreateMultiTimeseriesReq Req { get { @@ -4106,19 +7636,19 @@ public struct Isset public bool req; } - public fetchResultsArgs() + public createMultiTimeseriesArgs() { } - public fetchResultsArgs DeepCopy() + public createMultiTimeseriesArgs DeepCopy() { - var tmp323 = new fetchResultsArgs(); + var tmp485 = new createMultiTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp323.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + tmp485.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); } - tmp323.__isset.req = this.__isset.req; - return tmp323; + tmp485.__isset.req = this.__isset.req; + return tmp485; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4141,7 +7671,7 @@ public fetchResultsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSFetchResultsReq(); + Req = new TSCreateMultiTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -4170,7 +7700,7 @@ public fetchResultsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchResults_args"); + var struc = new TStruct("createMultiTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -4193,7 +7723,7 @@ public fetchResultsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is fetchResultsArgs other)) return false; + if (!(that is createMultiTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -4211,11 +7741,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchResults_args("); - int tmp324 = 0; + var sb = new StringBuilder("createMultiTimeseries_args("); + int tmp486 = 0; if((Req != null) && __isset.req) { - if(0 < tmp324++) { sb.Append(", "); } + if(0 < tmp486++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -4225,11 +7755,11 @@ public override string ToString() } - public partial class fetchResultsResult : TBase + public partial class createMultiTimeseriesResult : TBase { - private TSFetchResultsResp _success; + private TSStatus _success; - public TSFetchResultsResp Success + public TSStatus Success { get { @@ -4249,19 +7779,19 @@ public struct Isset public bool success; } - public fetchResultsResult() + public createMultiTimeseriesResult() { } - public fetchResultsResult DeepCopy() + public createMultiTimeseriesResult DeepCopy() { - var tmp325 = new fetchResultsResult(); + var tmp487 = new createMultiTimeseriesResult(); if((Success != null) && __isset.success) { - tmp325.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + tmp487.Success = (TSStatus)this.Success.DeepCopy(); } - tmp325.__isset.success = this.__isset.success; - return tmp325; + tmp487.__isset.success = this.__isset.success; + return tmp487; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4284,7 +7814,7 @@ public fetchResultsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSFetchResultsResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4313,7 +7843,7 @@ public fetchResultsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchResults_result"); + var struc = new TStruct("createMultiTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4340,7 +7870,7 @@ public fetchResultsResult DeepCopy() public override bool Equals(object that) { - if (!(that is fetchResultsResult other)) return false; + if (!(that is createMultiTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4358,11 +7888,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchResults_result("); - int tmp326 = 0; + var sb = new StringBuilder("createMultiTimeseries_result("); + int tmp488 = 0; if((Success != null) && __isset.success) { - if(0 < tmp326++) { sb.Append(", "); } + if(0 < tmp488++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4372,20 +7902,34 @@ public override string ToString() } - public partial class fetchMetadataArgs : TBase + public partial class deleteTimeseriesArgs : TBase { - private TSFetchMetadataReq _req; + private long _sessionId; + private List _path; - public TSFetchMetadataReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List Path + { + get + { + return _path; + } + set + { + __isset.path = true; + this._path = value; } } @@ -4393,22 +7937,28 @@ public TSFetchMetadataReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool path; } - public fetchMetadataArgs() + public deleteTimeseriesArgs() { } - public fetchMetadataArgs DeepCopy() + public deleteTimeseriesArgs DeepCopy() { - var tmp327 = new fetchMetadataArgs(); - if((Req != null) && __isset.req) + var tmp489 = new deleteTimeseriesArgs(); + if(__isset.sessionId) + { + tmp489.SessionId = this.SessionId; + } + tmp489.__isset.sessionId = this.__isset.sessionId; + if((Path != null) && __isset.path) { - tmp327.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); + tmp489.Path = this.Path.DeepCopy(); } - tmp327.__isset.req = this.__isset.req; - return tmp327; + tmp489.__isset.path = this.__isset.path; + return tmp489; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4429,10 +7979,29 @@ public fetchMetadataArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSFetchMetadataReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list490 = await iprot.ReadListBeginAsync(cancellationToken); + Path = new List(_list490.Count); + for(int _i491 = 0; _i491 < _list490.Count; ++_i491) + { + string _elem492; + _elem492 = await iprot.ReadStringAsync(cancellationToken); + Path.Add(_elem492); + } + await iprot.ReadListEndAsync(cancellationToken); + } } else { @@ -4460,16 +8029,32 @@ public fetchMetadataArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchMetadata_args"); + var struc = new TStruct("deleteTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null) && __isset.path) + { + field.Name = "path"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); + foreach (string _iter493 in Path) + { + await oprot.WriteStringAsync(_iter493, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -4483,17 +8068,22 @@ public fetchMetadataArgs DeepCopy() public override bool Equals(object that) { - if (!(that is fetchMetadataArgs other)) return false; + if (!(that is deleteTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Path != null) && __isset.path) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); } } return hashcode; @@ -4501,13 +8091,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchMetadata_args("); - int tmp328 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("deleteTimeseries_args("); + int tmp494 = 0; + if(__isset.sessionId) { - if(0 < tmp328++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp494++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((Path != null) && __isset.path) + { + if(0 < tmp494++) { sb.Append(", "); } + sb.Append("Path: "); + Path.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -4515,11 +8111,11 @@ public override string ToString() } - public partial class fetchMetadataResult : TBase + public partial class deleteTimeseriesResult : TBase { - private TSFetchMetadataResp _success; + private TSStatus _success; - public TSFetchMetadataResp Success + public TSStatus Success { get { @@ -4539,19 +8135,19 @@ public struct Isset public bool success; } - public fetchMetadataResult() + public deleteTimeseriesResult() { } - public fetchMetadataResult DeepCopy() + public deleteTimeseriesResult DeepCopy() { - var tmp329 = new fetchMetadataResult(); + var tmp495 = new deleteTimeseriesResult(); if((Success != null) && __isset.success) { - tmp329.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + tmp495.Success = (TSStatus)this.Success.DeepCopy(); } - tmp329.__isset.success = this.__isset.success; - return tmp329; + tmp495.__isset.success = this.__isset.success; + return tmp495; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4574,7 +8170,7 @@ public fetchMetadataResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSFetchMetadataResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4603,7 +8199,7 @@ public fetchMetadataResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchMetadata_result"); + var struc = new TStruct("deleteTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4630,7 +8226,7 @@ public fetchMetadataResult DeepCopy() public override bool Equals(object that) { - if (!(that is fetchMetadataResult other)) return false; + if (!(that is deleteTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4648,11 +8244,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchMetadata_result("); - int tmp330 = 0; + var sb = new StringBuilder("deleteTimeseries_result("); + int tmp496 = 0; if((Success != null) && __isset.success) { - if(0 < tmp330++) { sb.Append(", "); } + if(0 < tmp496++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4662,20 +8258,34 @@ public override string ToString() } - public partial class cancelOperationArgs : TBase + public partial class deleteStorageGroupsArgs : TBase { - private TSCancelOperationReq _req; + private long _sessionId; + private List _storageGroup; - public TSCancelOperationReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; } } @@ -4683,22 +8293,28 @@ public TSCancelOperationReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool storageGroup; } - public cancelOperationArgs() + public deleteStorageGroupsArgs() { } - public cancelOperationArgs DeepCopy() + public deleteStorageGroupsArgs DeepCopy() { - var tmp331 = new cancelOperationArgs(); - if((Req != null) && __isset.req) + var tmp497 = new deleteStorageGroupsArgs(); + if(__isset.sessionId) + { + tmp497.SessionId = this.SessionId; + } + tmp497.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) { - tmp331.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + tmp497.StorageGroup = this.StorageGroup.DeepCopy(); } - tmp331.__isset.req = this.__isset.req; - return tmp331; + tmp497.__isset.storageGroup = this.__isset.storageGroup; + return tmp497; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4719,10 +8335,29 @@ public cancelOperationArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSCancelOperationReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list498 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroup = new List(_list498.Count); + for(int _i499 = 0; _i499 < _list498.Count; ++_i499) + { + string _elem500; + _elem500 = await iprot.ReadStringAsync(cancellationToken); + StorageGroup.Add(_elem500); + } + await iprot.ReadListEndAsync(cancellationToken); + } } else { @@ -4750,16 +8385,32 @@ public cancelOperationArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("cancelOperation_args"); + var struc = new TStruct("deleteStorageGroups_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); + foreach (string _iter501 in StorageGroup) + { + await oprot.WriteStringAsync(_iter501, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -4773,17 +8424,22 @@ public cancelOperationArgs DeepCopy() public override bool Equals(object that) { - if (!(that is cancelOperationArgs other)) return false; + if (!(that is deleteStorageGroupsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); } } return hashcode; @@ -4791,13 +8447,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("cancelOperation_args("); - int tmp332 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("deleteStorageGroups_args("); + int tmp502 = 0; + if(__isset.sessionId) { - if(0 < tmp332++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp502++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp502++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -4805,7 +8467,7 @@ public override string ToString() } - public partial class cancelOperationResult : TBase + public partial class deleteStorageGroupsResult : TBase { private TSStatus _success; @@ -4829,19 +8491,19 @@ public struct Isset public bool success; } - public cancelOperationResult() + public deleteStorageGroupsResult() { } - public cancelOperationResult DeepCopy() + public deleteStorageGroupsResult DeepCopy() { - var tmp333 = new cancelOperationResult(); + var tmp503 = new deleteStorageGroupsResult(); if((Success != null) && __isset.success) { - tmp333.Success = (TSStatus)this.Success.DeepCopy(); + tmp503.Success = (TSStatus)this.Success.DeepCopy(); } - tmp333.__isset.success = this.__isset.success; - return tmp333; + tmp503.__isset.success = this.__isset.success; + return tmp503; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4893,7 +8555,7 @@ public cancelOperationResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("cancelOperation_result"); + var struc = new TStruct("deleteStorageGroups_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4920,7 +8582,7 @@ public cancelOperationResult DeepCopy() public override bool Equals(object that) { - if (!(that is cancelOperationResult other)) return false; + if (!(that is deleteStorageGroupsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4938,11 +8600,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("cancelOperation_result("); - int tmp334 = 0; + var sb = new StringBuilder("deleteStorageGroups_result("); + int tmp504 = 0; if((Success != null) && __isset.success) { - if(0 < tmp334++) { sb.Append(", "); } + if(0 < tmp504++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4952,11 +8614,11 @@ public override string ToString() } - public partial class closeOperationArgs : TBase + public partial class insertRecordArgs : TBase { - private TSCloseOperationReq _req; + private TSInsertRecordReq _req; - public TSCloseOperationReq Req + public TSInsertRecordReq Req { get { @@ -4976,19 +8638,19 @@ public struct Isset public bool req; } - public closeOperationArgs() + public insertRecordArgs() { } - public closeOperationArgs DeepCopy() + public insertRecordArgs DeepCopy() { - var tmp335 = new closeOperationArgs(); + var tmp505 = new insertRecordArgs(); if((Req != null) && __isset.req) { - tmp335.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + tmp505.Req = (TSInsertRecordReq)this.Req.DeepCopy(); } - tmp335.__isset.req = this.__isset.req; - return tmp335; + tmp505.__isset.req = this.__isset.req; + return tmp505; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5011,7 +8673,7 @@ public closeOperationArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCloseOperationReq(); + Req = new TSInsertRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -5040,7 +8702,7 @@ public closeOperationArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeOperation_args"); + var struc = new TStruct("insertRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -5063,7 +8725,7 @@ public closeOperationArgs DeepCopy() public override bool Equals(object that) { - if (!(that is closeOperationArgs other)) return false; + if (!(that is insertRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -5081,11 +8743,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeOperation_args("); - int tmp336 = 0; + var sb = new StringBuilder("insertRecord_args("); + int tmp506 = 0; if((Req != null) && __isset.req) { - if(0 < tmp336++) { sb.Append(", "); } + if(0 < tmp506++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -5095,7 +8757,7 @@ public override string ToString() } - public partial class closeOperationResult : TBase + public partial class insertRecordResult : TBase { private TSStatus _success; @@ -5119,19 +8781,19 @@ public struct Isset public bool success; } - public closeOperationResult() + public insertRecordResult() { } - public closeOperationResult DeepCopy() + public insertRecordResult DeepCopy() { - var tmp337 = new closeOperationResult(); + var tmp507 = new insertRecordResult(); if((Success != null) && __isset.success) { - tmp337.Success = (TSStatus)this.Success.DeepCopy(); + tmp507.Success = (TSStatus)this.Success.DeepCopy(); } - tmp337.__isset.success = this.__isset.success; - return tmp337; + tmp507.__isset.success = this.__isset.success; + return tmp507; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5183,7 +8845,7 @@ public closeOperationResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeOperation_result"); + var struc = new TStruct("insertRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5210,7 +8872,7 @@ public closeOperationResult DeepCopy() public override bool Equals(object that) { - if (!(that is closeOperationResult other)) return false; + if (!(that is insertRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5228,11 +8890,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeOperation_result("); - int tmp338 = 0; + var sb = new StringBuilder("insertRecord_result("); + int tmp508 = 0; if((Success != null) && __isset.success) { - if(0 < tmp338++) { sb.Append(", "); } + if(0 < tmp508++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5242,20 +8904,20 @@ public override string ToString() } - public partial class getTimeZoneArgs : TBase + public partial class insertStringRecordArgs : TBase { - private long _sessionId; + private TSInsertStringRecordReq _req; - public long SessionId + public TSInsertStringRecordReq Req { get { - return _sessionId; + return _req; } set { - __isset.sessionId = true; - this._sessionId = value; + __isset.req = true; + this._req = value; } } @@ -5263,22 +8925,22 @@ public long SessionId public Isset __isset; public struct Isset { - public bool sessionId; + public bool req; } - public getTimeZoneArgs() + public insertStringRecordArgs() { } - public getTimeZoneArgs DeepCopy() + public insertStringRecordArgs DeepCopy() { - var tmp339 = new getTimeZoneArgs(); - if(__isset.sessionId) + var tmp509 = new insertStringRecordArgs(); + if((Req != null) && __isset.req) { - tmp339.SessionId = this.SessionId; + tmp509.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); } - tmp339.__isset.sessionId = this.__isset.sessionId; - return tmp339; + tmp509.__isset.req = this.__isset.req; + return tmp509; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5299,9 +8961,10 @@ public getTimeZoneArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - SessionId = await iprot.ReadI64Async(cancellationToken); + Req = new TSInsertStringRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -5329,16 +8992,16 @@ public getTimeZoneArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getTimeZone_args"); + var struc = new TStruct("insertStringRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -5352,17 +9015,17 @@ public getTimeZoneArgs DeepCopy() public override bool Equals(object that) { - if (!(that is getTimeZoneArgs other)) return false; + if (!(that is insertStringRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -5370,13 +9033,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getTimeZone_args("); - int tmp340 = 0; - if(__isset.sessionId) + var sb = new StringBuilder("insertStringRecord_args("); + int tmp510 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp340++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); + if(0 < tmp510++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -5384,11 +9047,11 @@ public override string ToString() } - public partial class getTimeZoneResult : TBase + public partial class insertStringRecordResult : TBase { - private TSGetTimeZoneResp _success; + private TSStatus _success; - public TSGetTimeZoneResp Success + public TSStatus Success { get { @@ -5408,19 +9071,19 @@ public struct Isset public bool success; } - public getTimeZoneResult() + public insertStringRecordResult() { } - public getTimeZoneResult DeepCopy() + public insertStringRecordResult DeepCopy() { - var tmp341 = new getTimeZoneResult(); + var tmp511 = new insertStringRecordResult(); if((Success != null) && __isset.success) { - tmp341.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); + tmp511.Success = (TSStatus)this.Success.DeepCopy(); } - tmp341.__isset.success = this.__isset.success; - return tmp341; + tmp511.__isset.success = this.__isset.success; + return tmp511; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5443,7 +9106,7 @@ public getTimeZoneResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSGetTimeZoneResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -5472,7 +9135,7 @@ public getTimeZoneResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getTimeZone_result"); + var struc = new TStruct("insertStringRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5499,7 +9162,7 @@ public getTimeZoneResult DeepCopy() public override bool Equals(object that) { - if (!(that is getTimeZoneResult other)) return false; + if (!(that is insertStringRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5517,11 +9180,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getTimeZone_result("); - int tmp342 = 0; + var sb = new StringBuilder("insertStringRecord_result("); + int tmp512 = 0; if((Success != null) && __isset.success) { - if(0 < tmp342++) { sb.Append(", "); } + if(0 < tmp512++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5531,11 +9194,11 @@ public override string ToString() } - public partial class setTimeZoneArgs : TBase + public partial class insertTabletArgs : TBase { - private TSSetTimeZoneReq _req; + private TSInsertTabletReq _req; - public TSSetTimeZoneReq Req + public TSInsertTabletReq Req { get { @@ -5555,19 +9218,19 @@ public struct Isset public bool req; } - public setTimeZoneArgs() + public insertTabletArgs() { } - public setTimeZoneArgs DeepCopy() + public insertTabletArgs DeepCopy() { - var tmp343 = new setTimeZoneArgs(); + var tmp513 = new insertTabletArgs(); if((Req != null) && __isset.req) { - tmp343.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); + tmp513.Req = (TSInsertTabletReq)this.Req.DeepCopy(); } - tmp343.__isset.req = this.__isset.req; - return tmp343; + tmp513.__isset.req = this.__isset.req; + return tmp513; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5590,7 +9253,7 @@ public setTimeZoneArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSSetTimeZoneReq(); + Req = new TSInsertTabletReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -5619,7 +9282,7 @@ public setTimeZoneArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setTimeZone_args"); + var struc = new TStruct("insertTablet_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -5642,7 +9305,7 @@ public setTimeZoneArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setTimeZoneArgs other)) return false; + if (!(that is insertTabletArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -5660,11 +9323,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setTimeZone_args("); - int tmp344 = 0; + var sb = new StringBuilder("insertTablet_args("); + int tmp514 = 0; if((Req != null) && __isset.req) { - if(0 < tmp344++) { sb.Append(", "); } + if(0 < tmp514++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -5674,7 +9337,7 @@ public override string ToString() } - public partial class setTimeZoneResult : TBase + public partial class insertTabletResult : TBase { private TSStatus _success; @@ -5698,19 +9361,19 @@ public struct Isset public bool success; } - public setTimeZoneResult() + public insertTabletResult() { } - public setTimeZoneResult DeepCopy() + public insertTabletResult DeepCopy() { - var tmp345 = new setTimeZoneResult(); + var tmp515 = new insertTabletResult(); if((Success != null) && __isset.success) { - tmp345.Success = (TSStatus)this.Success.DeepCopy(); + tmp515.Success = (TSStatus)this.Success.DeepCopy(); } - tmp345.__isset.success = this.__isset.success; - return tmp345; + tmp515.__isset.success = this.__isset.success; + return tmp515; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5762,7 +9425,7 @@ public setTimeZoneResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setTimeZone_result"); + var struc = new TStruct("insertTablet_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5789,7 +9452,7 @@ public setTimeZoneResult DeepCopy() public override bool Equals(object that) { - if (!(that is setTimeZoneResult other)) return false; + if (!(that is insertTabletResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5807,11 +9470,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setTimeZone_result("); - int tmp346 = 0; + var sb = new StringBuilder("insertTablet_result("); + int tmp516 = 0; if((Success != null) && __isset.success) { - if(0 < tmp346++) { sb.Append(", "); } + if(0 < tmp516++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5821,17 +9484,43 @@ public override string ToString() } - public partial class getPropertiesArgs : TBase + public partial class insertTabletsArgs : TBase { + private TSInsertTabletsReq _req; - public getPropertiesArgs() + public TSInsertTabletsReq Req { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } } - public getPropertiesArgs DeepCopy() + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertTabletsArgs() + { + } + + public insertTabletsArgs DeepCopy() { - var tmp347 = new getPropertiesArgs(); - return tmp347; + var tmp517 = new insertTabletsArgs(); + if((Req != null) && __isset.req) + { + tmp517.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + } + tmp517.__isset.req = this.__isset.req; + return tmp517; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5851,6 +9540,17 @@ public getPropertiesArgs DeepCopy() switch (field.ID) { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -5872,8 +9572,18 @@ public getPropertiesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getProperties_args"); + var struc = new TStruct("insertTablets_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -5885,32 +9595,43 @@ public getPropertiesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is getPropertiesArgs other)) return false; + if (!(that is insertTabletsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("getProperties_args("); + var sb = new StringBuilder("insertTablets_args("); + int tmp518 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp518++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } sb.Append(')'); return sb.ToString(); } } - public partial class getPropertiesResult : TBase + public partial class insertTabletsResult : TBase { - private ServerProperties _success; + private TSStatus _success; - public ServerProperties Success + public TSStatus Success { get { @@ -5930,19 +9651,19 @@ public struct Isset public bool success; } - public getPropertiesResult() + public insertTabletsResult() { } - public getPropertiesResult DeepCopy() + public insertTabletsResult DeepCopy() { - var tmp349 = new getPropertiesResult(); + var tmp519 = new insertTabletsResult(); if((Success != null) && __isset.success) { - tmp349.Success = (ServerProperties)this.Success.DeepCopy(); + tmp519.Success = (TSStatus)this.Success.DeepCopy(); } - tmp349.__isset.success = this.__isset.success; - return tmp349; + tmp519.__isset.success = this.__isset.success; + return tmp519; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5965,7 +9686,7 @@ public getPropertiesResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new ServerProperties(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -5994,7 +9715,7 @@ public getPropertiesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getProperties_result"); + var struc = new TStruct("insertTablets_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6021,7 +9742,7 @@ public getPropertiesResult DeepCopy() public override bool Equals(object that) { - if (!(that is getPropertiesResult other)) return false; + if (!(that is insertTabletsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6039,11 +9760,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getProperties_result("); - int tmp350 = 0; + var sb = new StringBuilder("insertTablets_result("); + int tmp520 = 0; if((Success != null) && __isset.success) { - if(0 < tmp350++) { sb.Append(", "); } + if(0 < tmp520++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6053,34 +9774,20 @@ public override string ToString() } - public partial class setStorageGroupArgs : TBase + public partial class insertRecordsArgs : TBase { - private long _sessionId; - private string _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertRecordsReq _req; - public string StorageGroup + public TSInsertRecordsReq Req { get { - return _storageGroup; + return _req; } set { - __isset.storageGroup = true; - this._storageGroup = value; + __isset.req = true; + this._req = value; } } @@ -6088,28 +9795,22 @@ public string StorageGroup public Isset __isset; public struct Isset { - public bool sessionId; - public bool storageGroup; + public bool req; } - public setStorageGroupArgs() + public insertRecordsArgs() { } - public setStorageGroupArgs DeepCopy() + public insertRecordsArgs DeepCopy() { - var tmp351 = new setStorageGroupArgs(); - if(__isset.sessionId) - { - tmp351.SessionId = this.SessionId; - } - tmp351.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) + var tmp521 = new insertRecordsArgs(); + if((Req != null) && __isset.req) { - tmp351.StorageGroup = this.StorageGroup; + tmp521.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); } - tmp351.__isset.storageGroup = this.__isset.storageGroup; - return tmp351; + tmp521.__isset.req = this.__isset.req; + return tmp521; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6130,19 +9831,10 @@ public setStorageGroupArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) + if (field.Type == TType.Struct) { - StorageGroup = await iprot.ReadStringAsync(cancellationToken); + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -6170,25 +9862,16 @@ public setStorageGroupArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setStorageGroup_args"); + var struc = new TStruct("insertRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(StorageGroup, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -6202,22 +9885,17 @@ public setStorageGroupArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setStorageGroupArgs other)) return false; + if (!(that is insertRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -6225,19 +9903,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setStorageGroup_args("); - int tmp352 = 0; - if(__isset.sessionId) - { - if(0 < tmp352++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) + var sb = new StringBuilder("insertRecords_args("); + int tmp522 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp352++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); + if(0 < tmp522++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -6245,7 +9917,7 @@ public override string ToString() } - public partial class setStorageGroupResult : TBase + public partial class insertRecordsResult : TBase { private TSStatus _success; @@ -6269,19 +9941,19 @@ public struct Isset public bool success; } - public setStorageGroupResult() + public insertRecordsResult() { } - public setStorageGroupResult DeepCopy() + public insertRecordsResult DeepCopy() { - var tmp353 = new setStorageGroupResult(); + var tmp523 = new insertRecordsResult(); if((Success != null) && __isset.success) { - tmp353.Success = (TSStatus)this.Success.DeepCopy(); + tmp523.Success = (TSStatus)this.Success.DeepCopy(); } - tmp353.__isset.success = this.__isset.success; - return tmp353; + tmp523.__isset.success = this.__isset.success; + return tmp523; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6333,7 +10005,7 @@ public setStorageGroupResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setStorageGroup_result"); + var struc = new TStruct("insertRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6360,7 +10032,7 @@ public setStorageGroupResult DeepCopy() public override bool Equals(object that) { - if (!(that is setStorageGroupResult other)) return false; + if (!(that is insertRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6378,11 +10050,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setStorageGroup_result("); - int tmp354 = 0; + var sb = new StringBuilder("insertRecords_result("); + int tmp524 = 0; if((Success != null) && __isset.success) { - if(0 < tmp354++) { sb.Append(", "); } + if(0 < tmp524++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6392,11 +10064,11 @@ public override string ToString() } - public partial class createTimeseriesArgs : TBase + public partial class insertRecordsOfOneDeviceArgs : TBase { - private TSCreateTimeseriesReq _req; + private TSInsertRecordsOfOneDeviceReq _req; - public TSCreateTimeseriesReq Req + public TSInsertRecordsOfOneDeviceReq Req { get { @@ -6416,19 +10088,19 @@ public struct Isset public bool req; } - public createTimeseriesArgs() + public insertRecordsOfOneDeviceArgs() { } - public createTimeseriesArgs DeepCopy() + public insertRecordsOfOneDeviceArgs DeepCopy() { - var tmp355 = new createTimeseriesArgs(); + var tmp525 = new insertRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp355.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); + tmp525.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp355.__isset.req = this.__isset.req; - return tmp355; + tmp525.__isset.req = this.__isset.req; + return tmp525; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6451,7 +10123,7 @@ public createTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateTimeseriesReq(); + Req = new TSInsertRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -6480,7 +10152,7 @@ public createTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createTimeseries_args"); + var struc = new TStruct("insertRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -6503,7 +10175,7 @@ public createTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createTimeseriesArgs other)) return false; + if (!(that is insertRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -6521,11 +10193,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createTimeseries_args("); - int tmp356 = 0; + var sb = new StringBuilder("insertRecordsOfOneDevice_args("); + int tmp526 = 0; if((Req != null) && __isset.req) { - if(0 < tmp356++) { sb.Append(", "); } + if(0 < tmp526++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -6535,7 +10207,7 @@ public override string ToString() } - public partial class createTimeseriesResult : TBase + public partial class insertRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -6559,19 +10231,19 @@ public struct Isset public bool success; } - public createTimeseriesResult() + public insertRecordsOfOneDeviceResult() { } - public createTimeseriesResult DeepCopy() + public insertRecordsOfOneDeviceResult DeepCopy() { - var tmp357 = new createTimeseriesResult(); + var tmp527 = new insertRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp357.Success = (TSStatus)this.Success.DeepCopy(); + tmp527.Success = (TSStatus)this.Success.DeepCopy(); } - tmp357.__isset.success = this.__isset.success; - return tmp357; + tmp527.__isset.success = this.__isset.success; + return tmp527; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6623,7 +10295,7 @@ public createTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createTimeseries_result"); + var struc = new TStruct("insertRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6650,7 +10322,7 @@ public createTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createTimeseriesResult other)) return false; + if (!(that is insertRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6668,11 +10340,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createTimeseries_result("); - int tmp358 = 0; + var sb = new StringBuilder("insertRecordsOfOneDevice_result("); + int tmp528 = 0; if((Success != null) && __isset.success) { - if(0 < tmp358++) { sb.Append(", "); } + if(0 < tmp528++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6682,11 +10354,11 @@ public override string ToString() } - public partial class createMultiTimeseriesArgs : TBase + public partial class insertStringRecordsOfOneDeviceArgs : TBase { - private TSCreateMultiTimeseriesReq _req; + private TSInsertStringRecordsOfOneDeviceReq _req; - public TSCreateMultiTimeseriesReq Req + public TSInsertStringRecordsOfOneDeviceReq Req { get { @@ -6706,19 +10378,19 @@ public struct Isset public bool req; } - public createMultiTimeseriesArgs() + public insertStringRecordsOfOneDeviceArgs() { } - public createMultiTimeseriesArgs DeepCopy() + public insertStringRecordsOfOneDeviceArgs DeepCopy() { - var tmp359 = new createMultiTimeseriesArgs(); + var tmp529 = new insertStringRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp359.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); + tmp529.Req = (TSInsertStringRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp359.__isset.req = this.__isset.req; - return tmp359; + tmp529.__isset.req = this.__isset.req; + return tmp529; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6741,7 +10413,7 @@ public createMultiTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateMultiTimeseriesReq(); + Req = new TSInsertStringRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -6770,7 +10442,7 @@ public createMultiTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createMultiTimeseries_args"); + var struc = new TStruct("insertStringRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -6793,7 +10465,7 @@ public createMultiTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createMultiTimeseriesArgs other)) return false; + if (!(that is insertStringRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -6811,11 +10483,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createMultiTimeseries_args("); - int tmp360 = 0; + var sb = new StringBuilder("insertStringRecordsOfOneDevice_args("); + int tmp530 = 0; if((Req != null) && __isset.req) { - if(0 < tmp360++) { sb.Append(", "); } + if(0 < tmp530++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -6825,7 +10497,7 @@ public override string ToString() } - public partial class createMultiTimeseriesResult : TBase + public partial class insertStringRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -6849,19 +10521,19 @@ public struct Isset public bool success; } - public createMultiTimeseriesResult() + public insertStringRecordsOfOneDeviceResult() { } - public createMultiTimeseriesResult DeepCopy() + public insertStringRecordsOfOneDeviceResult DeepCopy() { - var tmp361 = new createMultiTimeseriesResult(); + var tmp531 = new insertStringRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp361.Success = (TSStatus)this.Success.DeepCopy(); + tmp531.Success = (TSStatus)this.Success.DeepCopy(); } - tmp361.__isset.success = this.__isset.success; - return tmp361; + tmp531.__isset.success = this.__isset.success; + return tmp531; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6913,7 +10585,7 @@ public createMultiTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createMultiTimeseries_result"); + var struc = new TStruct("insertStringRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6940,7 +10612,7 @@ public createMultiTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createMultiTimeseriesResult other)) return false; + if (!(that is insertStringRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6958,11 +10630,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createMultiTimeseries_result("); - int tmp362 = 0; + var sb = new StringBuilder("insertStringRecordsOfOneDevice_result("); + int tmp532 = 0; if((Success != null) && __isset.success) { - if(0 < tmp362++) { sb.Append(", "); } + if(0 < tmp532++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6972,34 +10644,20 @@ public override string ToString() } - public partial class deleteTimeseriesArgs : TBase + public partial class insertStringRecordsArgs : TBase { - private long _sessionId; - private List _path; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertStringRecordsReq _req; - public List Path + public TSInsertStringRecordsReq Req { get { - return _path; + return _req; } set { - __isset.path = true; - this._path = value; + __isset.req = true; + this._req = value; } } @@ -7007,28 +10665,22 @@ public List Path public Isset __isset; public struct Isset { - public bool sessionId; - public bool path; + public bool req; } - public deleteTimeseriesArgs() + public insertStringRecordsArgs() { } - public deleteTimeseriesArgs DeepCopy() + public insertStringRecordsArgs DeepCopy() { - var tmp363 = new deleteTimeseriesArgs(); - if(__isset.sessionId) - { - tmp363.SessionId = this.SessionId; - } - tmp363.__isset.sessionId = this.__isset.sessionId; - if((Path != null) && __isset.path) + var tmp533 = new insertStringRecordsArgs(); + if((Req != null) && __isset.req) { - tmp363.Path = this.Path.DeepCopy(); + tmp533.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); } - tmp363.__isset.path = this.__isset.path; - return tmp363; + tmp533.__isset.req = this.__isset.req; + return tmp533; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7046,32 +10698,13 @@ public deleteTimeseriesArgs DeepCopy() break; } - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { - { - TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); - Path = new List(_list364.Count); - for(int _i365 = 0; _i365 < _list364.Count; ++_i365) - { - string _elem366; - _elem366 = await iprot.ReadStringAsync(cancellationToken); - Path.Add(_elem366); - } - await iprot.ReadListEndAsync(cancellationToken); - } + Req = new TSInsertStringRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -7099,32 +10732,16 @@ public deleteTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteTimeseries_args"); + var struc = new TStruct("insertStringRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Path != null) && __isset.path) - { - field.Name = "path"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); - foreach (string _iter367 in Path) - { - await oprot.WriteStringAsync(_iter367, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -7138,22 +10755,17 @@ public deleteTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteTimeseriesArgs other)) return false; + if (!(that is insertStringRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((Path != null) && __isset.path) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -7161,19 +10773,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteTimeseries_args("); - int tmp368 = 0; - if(__isset.sessionId) - { - if(0 < tmp368++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((Path != null) && __isset.path) + var sb = new StringBuilder("insertStringRecords_args("); + int tmp534 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp368++) { sb.Append(", "); } - sb.Append("Path: "); - Path.ToString(sb); + if(0 < tmp534++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -7181,7 +10787,7 @@ public override string ToString() } - public partial class deleteTimeseriesResult : TBase + public partial class insertStringRecordsResult : TBase { private TSStatus _success; @@ -7205,19 +10811,19 @@ public struct Isset public bool success; } - public deleteTimeseriesResult() + public insertStringRecordsResult() { } - public deleteTimeseriesResult DeepCopy() + public insertStringRecordsResult DeepCopy() { - var tmp369 = new deleteTimeseriesResult(); + var tmp535 = new insertStringRecordsResult(); if((Success != null) && __isset.success) { - tmp369.Success = (TSStatus)this.Success.DeepCopy(); + tmp535.Success = (TSStatus)this.Success.DeepCopy(); } - tmp369.__isset.success = this.__isset.success; - return tmp369; + tmp535.__isset.success = this.__isset.success; + return tmp535; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7269,7 +10875,7 @@ public deleteTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteTimeseries_result"); + var struc = new TStruct("insertStringRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7296,7 +10902,7 @@ public deleteTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteTimeseriesResult other)) return false; + if (!(that is insertStringRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7314,11 +10920,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteTimeseries_result("); - int tmp370 = 0; + var sb = new StringBuilder("insertStringRecords_result("); + int tmp536 = 0; if((Success != null) && __isset.success) { - if(0 < tmp370++) { sb.Append(", "); } + if(0 < tmp536++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7328,34 +10934,20 @@ public override string ToString() } - public partial class deleteStorageGroupsArgs : TBase + public partial class testInsertTabletArgs : TBase { - private long _sessionId; - private List _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertTabletReq _req; - public List StorageGroup + public TSInsertTabletReq Req { get { - return _storageGroup; + return _req; } set { - __isset.storageGroup = true; - this._storageGroup = value; + __isset.req = true; + this._req = value; } } @@ -7363,28 +10955,22 @@ public List StorageGroup public Isset __isset; public struct Isset { - public bool sessionId; - public bool storageGroup; + public bool req; } - public deleteStorageGroupsArgs() + public testInsertTabletArgs() { } - public deleteStorageGroupsArgs DeepCopy() + public testInsertTabletArgs DeepCopy() { - var tmp371 = new deleteStorageGroupsArgs(); - if(__isset.sessionId) - { - tmp371.SessionId = this.SessionId; - } - tmp371.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) + var tmp537 = new testInsertTabletArgs(); + if((Req != null) && __isset.req) { - tmp371.StorageGroup = this.StorageGroup.DeepCopy(); + tmp537.Req = (TSInsertTabletReq)this.Req.DeepCopy(); } - tmp371.__isset.storageGroup = this.__isset.storageGroup; - return tmp371; + tmp537.__isset.req = this.__isset.req; + return tmp537; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7405,29 +10991,10 @@ public deleteStorageGroupsArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) + if (field.Type == TType.Struct) { - { - TList _list372 = await iprot.ReadListBeginAsync(cancellationToken); - StorageGroup = new List(_list372.Count); - for(int _i373 = 0; _i373 < _list372.Count; ++_i373) - { - string _elem374; - _elem374 = await iprot.ReadStringAsync(cancellationToken); - StorageGroup.Add(_elem374); - } - await iprot.ReadListEndAsync(cancellationToken); - } + Req = new TSInsertTabletReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -7455,32 +11022,16 @@ public deleteStorageGroupsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteStorageGroups_args"); + var struc = new TStruct("testInsertTablet_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); - foreach (string _iter375 in StorageGroup) - { - await oprot.WriteStringAsync(_iter375, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -7494,22 +11045,17 @@ public deleteStorageGroupsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteStorageGroupsArgs other)) return false; + if (!(that is testInsertTabletArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -7517,19 +11063,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteStorageGroups_args("); - int tmp376 = 0; - if(__isset.sessionId) - { - if(0 < tmp376++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) + var sb = new StringBuilder("testInsertTablet_args("); + int tmp538 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp376++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); + if(0 < tmp538++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -7537,7 +11077,7 @@ public override string ToString() } - public partial class deleteStorageGroupsResult : TBase + public partial class testInsertTabletResult : TBase { private TSStatus _success; @@ -7561,19 +11101,19 @@ public struct Isset public bool success; } - public deleteStorageGroupsResult() + public testInsertTabletResult() { } - public deleteStorageGroupsResult DeepCopy() + public testInsertTabletResult DeepCopy() { - var tmp377 = new deleteStorageGroupsResult(); + var tmp539 = new testInsertTabletResult(); if((Success != null) && __isset.success) { - tmp377.Success = (TSStatus)this.Success.DeepCopy(); + tmp539.Success = (TSStatus)this.Success.DeepCopy(); } - tmp377.__isset.success = this.__isset.success; - return tmp377; + tmp539.__isset.success = this.__isset.success; + return tmp539; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7625,7 +11165,7 @@ public deleteStorageGroupsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteStorageGroups_result"); + var struc = new TStruct("testInsertTablet_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7652,7 +11192,7 @@ public deleteStorageGroupsResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteStorageGroupsResult other)) return false; + if (!(that is testInsertTabletResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7670,11 +11210,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteStorageGroups_result("); - int tmp378 = 0; + var sb = new StringBuilder("testInsertTablet_result("); + int tmp540 = 0; if((Success != null) && __isset.success) { - if(0 < tmp378++) { sb.Append(", "); } + if(0 < tmp540++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7684,11 +11224,11 @@ public override string ToString() } - public partial class insertRecordArgs : TBase + public partial class testInsertTabletsArgs : TBase { - private TSInsertRecordReq _req; + private TSInsertTabletsReq _req; - public TSInsertRecordReq Req + public TSInsertTabletsReq Req { get { @@ -7708,19 +11248,19 @@ public struct Isset public bool req; } - public insertRecordArgs() + public testInsertTabletsArgs() { } - public insertRecordArgs DeepCopy() + public testInsertTabletsArgs DeepCopy() { - var tmp379 = new insertRecordArgs(); + var tmp541 = new testInsertTabletsArgs(); if((Req != null) && __isset.req) { - tmp379.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + tmp541.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); } - tmp379.__isset.req = this.__isset.req; - return tmp379; + tmp541.__isset.req = this.__isset.req; + return tmp541; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7743,7 +11283,7 @@ public insertRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordReq(); + Req = new TSInsertTabletsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -7772,7 +11312,7 @@ public insertRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecord_args"); + var struc = new TStruct("testInsertTablets_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -7795,7 +11335,7 @@ public insertRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordArgs other)) return false; + if (!(that is testInsertTabletsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -7813,11 +11353,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecord_args("); - int tmp380 = 0; + var sb = new StringBuilder("testInsertTablets_args("); + int tmp542 = 0; if((Req != null) && __isset.req) { - if(0 < tmp380++) { sb.Append(", "); } + if(0 < tmp542++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -7827,7 +11367,7 @@ public override string ToString() } - public partial class insertRecordResult : TBase + public partial class testInsertTabletsResult : TBase { private TSStatus _success; @@ -7851,19 +11391,19 @@ public struct Isset public bool success; } - public insertRecordResult() + public testInsertTabletsResult() { } - public insertRecordResult DeepCopy() + public testInsertTabletsResult DeepCopy() { - var tmp381 = new insertRecordResult(); + var tmp543 = new testInsertTabletsResult(); if((Success != null) && __isset.success) { - tmp381.Success = (TSStatus)this.Success.DeepCopy(); + tmp543.Success = (TSStatus)this.Success.DeepCopy(); } - tmp381.__isset.success = this.__isset.success; - return tmp381; + tmp543.__isset.success = this.__isset.success; + return tmp543; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7915,7 +11455,7 @@ public insertRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecord_result"); + var struc = new TStruct("testInsertTablets_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7942,7 +11482,7 @@ public insertRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordResult other)) return false; + if (!(that is testInsertTabletsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7960,11 +11500,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecord_result("); - int tmp382 = 0; + var sb = new StringBuilder("testInsertTablets_result("); + int tmp544 = 0; if((Success != null) && __isset.success) { - if(0 < tmp382++) { sb.Append(", "); } + if(0 < tmp544++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7974,11 +11514,11 @@ public override string ToString() } - public partial class insertStringRecordArgs : TBase + public partial class testInsertRecordArgs : TBase { - private TSInsertStringRecordReq _req; + private TSInsertRecordReq _req; - public TSInsertStringRecordReq Req + public TSInsertRecordReq Req { get { @@ -7998,19 +11538,19 @@ public struct Isset public bool req; } - public insertStringRecordArgs() + public testInsertRecordArgs() { } - public insertStringRecordArgs DeepCopy() + public testInsertRecordArgs DeepCopy() { - var tmp383 = new insertStringRecordArgs(); + var tmp545 = new testInsertRecordArgs(); if((Req != null) && __isset.req) { - tmp383.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + tmp545.Req = (TSInsertRecordReq)this.Req.DeepCopy(); } - tmp383.__isset.req = this.__isset.req; - return tmp383; + tmp545.__isset.req = this.__isset.req; + return tmp545; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8033,7 +11573,7 @@ public insertStringRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); + Req = new TSInsertRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8062,7 +11602,7 @@ public insertStringRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecord_args"); + var struc = new TStruct("testInsertRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8085,7 +11625,7 @@ public insertStringRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordArgs other)) return false; + if (!(that is testInsertRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8103,11 +11643,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecord_args("); - int tmp384 = 0; + var sb = new StringBuilder("testInsertRecord_args("); + int tmp546 = 0; if((Req != null) && __isset.req) { - if(0 < tmp384++) { sb.Append(", "); } + if(0 < tmp546++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8117,7 +11657,7 @@ public override string ToString() } - public partial class insertStringRecordResult : TBase + public partial class testInsertRecordResult : TBase { private TSStatus _success; @@ -8141,19 +11681,19 @@ public struct Isset public bool success; } - public insertStringRecordResult() + public testInsertRecordResult() { } - public insertStringRecordResult DeepCopy() + public testInsertRecordResult DeepCopy() { - var tmp385 = new insertStringRecordResult(); + var tmp547 = new testInsertRecordResult(); if((Success != null) && __isset.success) { - tmp385.Success = (TSStatus)this.Success.DeepCopy(); + tmp547.Success = (TSStatus)this.Success.DeepCopy(); } - tmp385.__isset.success = this.__isset.success; - return tmp385; + tmp547.__isset.success = this.__isset.success; + return tmp547; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8205,7 +11745,7 @@ public insertStringRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecord_result"); + var struc = new TStruct("testInsertRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8232,7 +11772,7 @@ public insertStringRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordResult other)) return false; + if (!(that is testInsertRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8250,11 +11790,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecord_result("); - int tmp386 = 0; + var sb = new StringBuilder("testInsertRecord_result("); + int tmp548 = 0; if((Success != null) && __isset.success) { - if(0 < tmp386++) { sb.Append(", "); } + if(0 < tmp548++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8264,11 +11804,11 @@ public override string ToString() } - public partial class insertTabletArgs : TBase + public partial class testInsertStringRecordArgs : TBase { - private TSInsertTabletReq _req; + private TSInsertStringRecordReq _req; - public TSInsertTabletReq Req + public TSInsertStringRecordReq Req { get { @@ -8288,19 +11828,19 @@ public struct Isset public bool req; } - public insertTabletArgs() + public testInsertStringRecordArgs() { } - public insertTabletArgs DeepCopy() + public testInsertStringRecordArgs DeepCopy() { - var tmp387 = new insertTabletArgs(); + var tmp549 = new testInsertStringRecordArgs(); if((Req != null) && __isset.req) { - tmp387.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + tmp549.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); } - tmp387.__isset.req = this.__isset.req; - return tmp387; + tmp549.__isset.req = this.__isset.req; + return tmp549; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8323,7 +11863,7 @@ public insertTabletArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); + Req = new TSInsertStringRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8352,7 +11892,7 @@ public insertTabletArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablet_args"); + var struc = new TStruct("testInsertStringRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8375,7 +11915,7 @@ public insertTabletArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletArgs other)) return false; + if (!(that is testInsertStringRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8393,11 +11933,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablet_args("); - int tmp388 = 0; + var sb = new StringBuilder("testInsertStringRecord_args("); + int tmp550 = 0; if((Req != null) && __isset.req) { - if(0 < tmp388++) { sb.Append(", "); } + if(0 < tmp550++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8407,7 +11947,7 @@ public override string ToString() } - public partial class insertTabletResult : TBase + public partial class testInsertStringRecordResult : TBase { private TSStatus _success; @@ -8431,19 +11971,19 @@ public struct Isset public bool success; } - public insertTabletResult() + public testInsertStringRecordResult() { } - public insertTabletResult DeepCopy() + public testInsertStringRecordResult DeepCopy() { - var tmp389 = new insertTabletResult(); + var tmp551 = new testInsertStringRecordResult(); if((Success != null) && __isset.success) { - tmp389.Success = (TSStatus)this.Success.DeepCopy(); + tmp551.Success = (TSStatus)this.Success.DeepCopy(); } - tmp389.__isset.success = this.__isset.success; - return tmp389; + tmp551.__isset.success = this.__isset.success; + return tmp551; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8495,7 +12035,7 @@ public insertTabletResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablet_result"); + var struc = new TStruct("testInsertStringRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8522,7 +12062,7 @@ public insertTabletResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletResult other)) return false; + if (!(that is testInsertStringRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8540,11 +12080,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablet_result("); - int tmp390 = 0; + var sb = new StringBuilder("testInsertStringRecord_result("); + int tmp552 = 0; if((Success != null) && __isset.success) { - if(0 < tmp390++) { sb.Append(", "); } + if(0 < tmp552++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8554,11 +12094,11 @@ public override string ToString() } - public partial class insertTabletsArgs : TBase + public partial class testInsertRecordsArgs : TBase { - private TSInsertTabletsReq _req; + private TSInsertRecordsReq _req; - public TSInsertTabletsReq Req + public TSInsertRecordsReq Req { get { @@ -8578,19 +12118,19 @@ public struct Isset public bool req; } - public insertTabletsArgs() + public testInsertRecordsArgs() { } - public insertTabletsArgs DeepCopy() + public testInsertRecordsArgs DeepCopy() { - var tmp391 = new insertTabletsArgs(); + var tmp553 = new testInsertRecordsArgs(); if((Req != null) && __isset.req) { - tmp391.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + tmp553.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); } - tmp391.__isset.req = this.__isset.req; - return tmp391; + tmp553.__isset.req = this.__isset.req; + return tmp553; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8613,7 +12153,7 @@ public insertTabletsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); + Req = new TSInsertRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8642,7 +12182,7 @@ public insertTabletsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablets_args"); + var struc = new TStruct("testInsertRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8665,7 +12205,7 @@ public insertTabletsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletsArgs other)) return false; + if (!(that is testInsertRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8683,11 +12223,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablets_args("); - int tmp392 = 0; + var sb = new StringBuilder("testInsertRecords_args("); + int tmp554 = 0; if((Req != null) && __isset.req) { - if(0 < tmp392++) { sb.Append(", "); } + if(0 < tmp554++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8697,7 +12237,7 @@ public override string ToString() } - public partial class insertTabletsResult : TBase + public partial class testInsertRecordsResult : TBase { private TSStatus _success; @@ -8721,19 +12261,19 @@ public struct Isset public bool success; } - public insertTabletsResult() + public testInsertRecordsResult() { } - public insertTabletsResult DeepCopy() + public testInsertRecordsResult DeepCopy() { - var tmp393 = new insertTabletsResult(); + var tmp555 = new testInsertRecordsResult(); if((Success != null) && __isset.success) { - tmp393.Success = (TSStatus)this.Success.DeepCopy(); + tmp555.Success = (TSStatus)this.Success.DeepCopy(); } - tmp393.__isset.success = this.__isset.success; - return tmp393; + tmp555.__isset.success = this.__isset.success; + return tmp555; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8785,7 +12325,7 @@ public insertTabletsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablets_result"); + var struc = new TStruct("testInsertRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8812,7 +12352,7 @@ public insertTabletsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletsResult other)) return false; + if (!(that is testInsertRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8830,11 +12370,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablets_result("); - int tmp394 = 0; + var sb = new StringBuilder("testInsertRecords_result("); + int tmp556 = 0; if((Success != null) && __isset.success) { - if(0 < tmp394++) { sb.Append(", "); } + if(0 < tmp556++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8844,11 +12384,11 @@ public override string ToString() } - public partial class insertRecordsArgs : TBase + public partial class testInsertRecordsOfOneDeviceArgs : TBase { - private TSInsertRecordsReq _req; + private TSInsertRecordsOfOneDeviceReq _req; - public TSInsertRecordsReq Req + public TSInsertRecordsOfOneDeviceReq Req { get { @@ -8868,19 +12408,19 @@ public struct Isset public bool req; } - public insertRecordsArgs() + public testInsertRecordsOfOneDeviceArgs() { } - public insertRecordsArgs DeepCopy() + public testInsertRecordsOfOneDeviceArgs DeepCopy() { - var tmp395 = new insertRecordsArgs(); + var tmp557 = new testInsertRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp395.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + tmp557.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp395.__isset.req = this.__isset.req; - return tmp395; + tmp557.__isset.req = this.__isset.req; + return tmp557; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8903,7 +12443,7 @@ public insertRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); + Req = new TSInsertRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8932,7 +12472,7 @@ public insertRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecords_args"); + var struc = new TStruct("testInsertRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8955,7 +12495,7 @@ public insertRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsArgs other)) return false; + if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8973,11 +12513,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecords_args("); - int tmp396 = 0; + var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); + int tmp558 = 0; if((Req != null) && __isset.req) { - if(0 < tmp396++) { sb.Append(", "); } + if(0 < tmp558++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8987,7 +12527,7 @@ public override string ToString() } - public partial class insertRecordsResult : TBase + public partial class testInsertRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -9011,19 +12551,19 @@ public struct Isset public bool success; } - public insertRecordsResult() + public testInsertRecordsOfOneDeviceResult() { } - public insertRecordsResult DeepCopy() + public testInsertRecordsOfOneDeviceResult DeepCopy() { - var tmp397 = new insertRecordsResult(); + var tmp559 = new testInsertRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp397.Success = (TSStatus)this.Success.DeepCopy(); + tmp559.Success = (TSStatus)this.Success.DeepCopy(); } - tmp397.__isset.success = this.__isset.success; - return tmp397; + tmp559.__isset.success = this.__isset.success; + return tmp559; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9075,7 +12615,7 @@ public insertRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecords_result"); + var struc = new TStruct("testInsertRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9102,7 +12642,7 @@ public insertRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsResult other)) return false; + if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9120,11 +12660,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecords_result("); - int tmp398 = 0; + var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); + int tmp560 = 0; if((Success != null) && __isset.success) { - if(0 < tmp398++) { sb.Append(", "); } + if(0 < tmp560++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9134,11 +12674,11 @@ public override string ToString() } - public partial class insertRecordsOfOneDeviceArgs : TBase + public partial class testInsertStringRecordsArgs : TBase { - private TSInsertRecordsOfOneDeviceReq _req; + private TSInsertStringRecordsReq _req; - public TSInsertRecordsOfOneDeviceReq Req + public TSInsertStringRecordsReq Req { get { @@ -9158,19 +12698,19 @@ public struct Isset public bool req; } - public insertRecordsOfOneDeviceArgs() + public testInsertStringRecordsArgs() { } - public insertRecordsOfOneDeviceArgs DeepCopy() + public testInsertStringRecordsArgs DeepCopy() { - var tmp399 = new insertRecordsOfOneDeviceArgs(); + var tmp561 = new testInsertStringRecordsArgs(); if((Req != null) && __isset.req) { - tmp399.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp561.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); } - tmp399.__isset.req = this.__isset.req; - return tmp399; + tmp561.__isset.req = this.__isset.req; + return tmp561; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9193,7 +12733,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); + Req = new TSInsertStringRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9222,7 +12762,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecordsOfOneDevice_args"); + var struc = new TStruct("testInsertStringRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9245,7 +12785,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsOfOneDeviceArgs other)) return false; + if (!(that is testInsertStringRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9263,11 +12803,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecordsOfOneDevice_args("); - int tmp400 = 0; + var sb = new StringBuilder("testInsertStringRecords_args("); + int tmp562 = 0; if((Req != null) && __isset.req) { - if(0 < tmp400++) { sb.Append(", "); } + if(0 < tmp562++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9277,7 +12817,7 @@ public override string ToString() } - public partial class insertRecordsOfOneDeviceResult : TBase + public partial class testInsertStringRecordsResult : TBase { private TSStatus _success; @@ -9301,19 +12841,19 @@ public struct Isset public bool success; } - public insertRecordsOfOneDeviceResult() + public testInsertStringRecordsResult() { } - public insertRecordsOfOneDeviceResult DeepCopy() + public testInsertStringRecordsResult DeepCopy() { - var tmp401 = new insertRecordsOfOneDeviceResult(); + var tmp563 = new testInsertStringRecordsResult(); if((Success != null) && __isset.success) { - tmp401.Success = (TSStatus)this.Success.DeepCopy(); + tmp563.Success = (TSStatus)this.Success.DeepCopy(); } - tmp401.__isset.success = this.__isset.success; - return tmp401; + tmp563.__isset.success = this.__isset.success; + return tmp563; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9365,7 +12905,7 @@ public insertRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecordsOfOneDevice_result"); + var struc = new TStruct("testInsertStringRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9392,7 +12932,7 @@ public insertRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsOfOneDeviceResult other)) return false; + if (!(that is testInsertStringRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9410,11 +12950,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecordsOfOneDevice_result("); - int tmp402 = 0; + var sb = new StringBuilder("testInsertStringRecords_result("); + int tmp564 = 0; if((Success != null) && __isset.success) { - if(0 < tmp402++) { sb.Append(", "); } + if(0 < tmp564++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9424,11 +12964,11 @@ public override string ToString() } - public partial class insertStringRecordsArgs : TBase + public partial class deleteDataArgs : TBase { - private TSInsertStringRecordsReq _req; + private TSDeleteDataReq _req; - public TSInsertStringRecordsReq Req + public TSDeleteDataReq Req { get { @@ -9448,19 +12988,19 @@ public struct Isset public bool req; } - public insertStringRecordsArgs() + public deleteDataArgs() { } - public insertStringRecordsArgs DeepCopy() + public deleteDataArgs DeepCopy() { - var tmp403 = new insertStringRecordsArgs(); + var tmp565 = new deleteDataArgs(); if((Req != null) && __isset.req) { - tmp403.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + tmp565.Req = (TSDeleteDataReq)this.Req.DeepCopy(); } - tmp403.__isset.req = this.__isset.req; - return tmp403; + tmp565.__isset.req = this.__isset.req; + return tmp565; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9483,7 +13023,7 @@ public insertStringRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); + Req = new TSDeleteDataReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9512,7 +13052,7 @@ public insertStringRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecords_args"); + var struc = new TStruct("deleteData_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9535,7 +13075,7 @@ public insertStringRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsArgs other)) return false; + if (!(that is deleteDataArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9553,11 +13093,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecords_args("); - int tmp404 = 0; + var sb = new StringBuilder("deleteData_args("); + int tmp566 = 0; if((Req != null) && __isset.req) { - if(0 < tmp404++) { sb.Append(", "); } + if(0 < tmp566++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9567,7 +13107,7 @@ public override string ToString() } - public partial class insertStringRecordsResult : TBase + public partial class deleteDataResult : TBase { private TSStatus _success; @@ -9591,19 +13131,19 @@ public struct Isset public bool success; } - public insertStringRecordsResult() + public deleteDataResult() { } - public insertStringRecordsResult DeepCopy() + public deleteDataResult DeepCopy() { - var tmp405 = new insertStringRecordsResult(); + var tmp567 = new deleteDataResult(); if((Success != null) && __isset.success) { - tmp405.Success = (TSStatus)this.Success.DeepCopy(); + tmp567.Success = (TSStatus)this.Success.DeepCopy(); } - tmp405.__isset.success = this.__isset.success; - return tmp405; + tmp567.__isset.success = this.__isset.success; + return tmp567; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9655,7 +13195,7 @@ public insertStringRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecords_result"); + var struc = new TStruct("deleteData_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9682,7 +13222,7 @@ public insertStringRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsResult other)) return false; + if (!(that is deleteDataResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9700,11 +13240,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecords_result("); - int tmp406 = 0; + var sb = new StringBuilder("deleteData_result("); + int tmp568 = 0; if((Success != null) && __isset.success) { - if(0 < tmp406++) { sb.Append(", "); } + if(0 < tmp568++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9714,11 +13254,11 @@ public override string ToString() } - public partial class testInsertTabletArgs : TBase + public partial class executeRawDataQueryArgs : TBase { - private TSInsertTabletReq _req; + private TSRawDataQueryReq _req; - public TSInsertTabletReq Req + public TSRawDataQueryReq Req { get { @@ -9738,19 +13278,19 @@ public struct Isset public bool req; } - public testInsertTabletArgs() + public executeRawDataQueryArgs() { } - public testInsertTabletArgs DeepCopy() + public executeRawDataQueryArgs DeepCopy() { - var tmp407 = new testInsertTabletArgs(); + var tmp569 = new executeRawDataQueryArgs(); if((Req != null) && __isset.req) { - tmp407.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + tmp569.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); } - tmp407.__isset.req = this.__isset.req; - return tmp407; + tmp569.__isset.req = this.__isset.req; + return tmp569; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9773,7 +13313,7 @@ public testInsertTabletArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); + Req = new TSRawDataQueryReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9802,7 +13342,7 @@ public testInsertTabletArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablet_args"); + var struc = new TStruct("executeRawDataQuery_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9825,7 +13365,7 @@ public testInsertTabletArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletArgs other)) return false; + if (!(that is executeRawDataQueryArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9843,11 +13383,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablet_args("); - int tmp408 = 0; + var sb = new StringBuilder("executeRawDataQuery_args("); + int tmp570 = 0; if((Req != null) && __isset.req) { - if(0 < tmp408++) { sb.Append(", "); } + if(0 < tmp570++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9857,11 +13397,11 @@ public override string ToString() } - public partial class testInsertTabletResult : TBase + public partial class executeRawDataQueryResult : TBase { - private TSStatus _success; + private TSExecuteStatementResp _success; - public TSStatus Success + public TSExecuteStatementResp Success { get { @@ -9881,19 +13421,19 @@ public struct Isset public bool success; } - public testInsertTabletResult() + public executeRawDataQueryResult() { } - public testInsertTabletResult DeepCopy() + public executeRawDataQueryResult DeepCopy() { - var tmp409 = new testInsertTabletResult(); + var tmp571 = new executeRawDataQueryResult(); if((Success != null) && __isset.success) { - tmp409.Success = (TSStatus)this.Success.DeepCopy(); + tmp571.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp409.__isset.success = this.__isset.success; - return tmp409; + tmp571.__isset.success = this.__isset.success; + return tmp571; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9916,7 +13456,7 @@ public testInsertTabletResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -9945,7 +13485,7 @@ public testInsertTabletResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablet_result"); + var struc = new TStruct("executeRawDataQuery_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9972,7 +13512,7 @@ public testInsertTabletResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletResult other)) return false; + if (!(that is executeRawDataQueryResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9990,11 +13530,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablet_result("); - int tmp410 = 0; + var sb = new StringBuilder("executeRawDataQuery_result("); + int tmp572 = 0; if((Success != null) && __isset.success) { - if(0 < tmp410++) { sb.Append(", "); } + if(0 < tmp572++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10004,11 +13544,11 @@ public override string ToString() } - public partial class testInsertTabletsArgs : TBase + public partial class executeLastDataQueryArgs : TBase { - private TSInsertTabletsReq _req; + private TSLastDataQueryReq _req; - public TSInsertTabletsReq Req + public TSLastDataQueryReq Req { get { @@ -10028,19 +13568,19 @@ public struct Isset public bool req; } - public testInsertTabletsArgs() + public executeLastDataQueryArgs() { } - public testInsertTabletsArgs DeepCopy() + public executeLastDataQueryArgs DeepCopy() { - var tmp411 = new testInsertTabletsArgs(); + var tmp573 = new executeLastDataQueryArgs(); if((Req != null) && __isset.req) { - tmp411.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + tmp573.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); } - tmp411.__isset.req = this.__isset.req; - return tmp411; + tmp573.__isset.req = this.__isset.req; + return tmp573; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10063,7 +13603,7 @@ public testInsertTabletsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); + Req = new TSLastDataQueryReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10092,7 +13632,7 @@ public testInsertTabletsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablets_args"); + var struc = new TStruct("executeLastDataQuery_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10115,7 +13655,7 @@ public testInsertTabletsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletsArgs other)) return false; + if (!(that is executeLastDataQueryArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10133,11 +13673,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablets_args("); - int tmp412 = 0; + var sb = new StringBuilder("executeLastDataQuery_args("); + int tmp574 = 0; if((Req != null) && __isset.req) { - if(0 < tmp412++) { sb.Append(", "); } + if(0 < tmp574++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10147,11 +13687,11 @@ public override string ToString() } - public partial class testInsertTabletsResult : TBase + public partial class executeLastDataQueryResult : TBase { - private TSStatus _success; + private TSExecuteStatementResp _success; - public TSStatus Success + public TSExecuteStatementResp Success { get { @@ -10171,19 +13711,19 @@ public struct Isset public bool success; } - public testInsertTabletsResult() + public executeLastDataQueryResult() { } - public testInsertTabletsResult DeepCopy() + public executeLastDataQueryResult DeepCopy() { - var tmp413 = new testInsertTabletsResult(); + var tmp575 = new executeLastDataQueryResult(); if((Success != null) && __isset.success) { - tmp413.Success = (TSStatus)this.Success.DeepCopy(); + tmp575.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp413.__isset.success = this.__isset.success; - return tmp413; + tmp575.__isset.success = this.__isset.success; + return tmp575; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10206,7 +13746,7 @@ public testInsertTabletsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -10235,7 +13775,7 @@ public testInsertTabletsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablets_result"); + var struc = new TStruct("executeLastDataQuery_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10262,7 +13802,7 @@ public testInsertTabletsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletsResult other)) return false; + if (!(that is executeLastDataQueryResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10280,11 +13820,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablets_result("); - int tmp414 = 0; + var sb = new StringBuilder("executeLastDataQuery_result("); + int tmp576 = 0; if((Success != null) && __isset.success) { - if(0 < tmp414++) { sb.Append(", "); } + if(0 < tmp576++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10294,20 +13834,20 @@ public override string ToString() } - public partial class testInsertRecordArgs : TBase + public partial class requestStatementIdArgs : TBase { - private TSInsertRecordReq _req; + private long _sessionId; - public TSInsertRecordReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; } } @@ -10315,22 +13855,22 @@ public TSInsertRecordReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; } - public testInsertRecordArgs() + public requestStatementIdArgs() { } - public testInsertRecordArgs DeepCopy() + public requestStatementIdArgs DeepCopy() { - var tmp415 = new testInsertRecordArgs(); - if((Req != null) && __isset.req) + var tmp577 = new requestStatementIdArgs(); + if(__isset.sessionId) { - tmp415.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + tmp577.SessionId = this.SessionId; } - tmp415.__isset.req = this.__isset.req; - return tmp415; + tmp577.__isset.sessionId = this.__isset.sessionId; + return tmp577; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10351,10 +13891,9 @@ public testInsertRecordArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSInsertRecordReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); } else { @@ -10382,16 +13921,16 @@ public testInsertRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecord_args"); + var struc = new TStruct("requestStatementId_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -10405,17 +13944,17 @@ public testInsertRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordArgs other)) return false; + if (!(that is requestStatementIdArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); } } return hashcode; @@ -10423,13 +13962,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecord_args("); - int tmp416 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("requestStatementId_args("); + int tmp578 = 0; + if(__isset.sessionId) { - if(0 < tmp416++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp578++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -10437,11 +13976,11 @@ public override string ToString() } - public partial class testInsertRecordResult : TBase + public partial class requestStatementIdResult : TBase { - private TSStatus _success; + private long _success; - public TSStatus Success + public long Success { get { @@ -10461,19 +14000,19 @@ public struct Isset public bool success; } - public testInsertRecordResult() + public requestStatementIdResult() { } - public testInsertRecordResult DeepCopy() + public requestStatementIdResult DeepCopy() { - var tmp417 = new testInsertRecordResult(); - if((Success != null) && __isset.success) + var tmp579 = new requestStatementIdResult(); + if(__isset.success) { - tmp417.Success = (TSStatus)this.Success.DeepCopy(); + tmp579.Success = this.Success; } - tmp417.__isset.success = this.__isset.success; - return tmp417; + tmp579.__isset.success = this.__isset.success; + return tmp579; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10494,10 +14033,9 @@ public testInsertRecordResult DeepCopy() switch (field.ID) { case 0: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); + Success = await iprot.ReadI64Async(cancellationToken); } else { @@ -10525,21 +14063,18 @@ public testInsertRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecord_result"); + var struc = new TStruct("requestStatementId_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(this.__isset.success) { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } + field.Name = "Success"; + field.Type = TType.I64; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Success, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -10552,7 +14087,7 @@ public testInsertRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordResult other)) return false; + if (!(that is requestStatementIdResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10560,7 +14095,7 @@ public override bool Equals(object that) public override int GetHashCode() { int hashcode = 157; unchecked { - if((Success != null) && __isset.success) + if(__isset.success) { hashcode = (hashcode * 397) + Success.GetHashCode(); } @@ -10570,11 +14105,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecord_result("); - int tmp418 = 0; - if((Success != null) && __isset.success) + var sb = new StringBuilder("requestStatementId_result("); + int tmp580 = 0; + if(__isset.success) { - if(0 < tmp418++) { sb.Append(", "); } + if(0 < tmp580++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10584,11 +14119,11 @@ public override string ToString() } - public partial class testInsertStringRecordArgs : TBase + public partial class createSchemaTemplateArgs : TBase { - private TSInsertStringRecordReq _req; + private TSCreateSchemaTemplateReq _req; - public TSInsertStringRecordReq Req + public TSCreateSchemaTemplateReq Req { get { @@ -10608,19 +14143,19 @@ public struct Isset public bool req; } - public testInsertStringRecordArgs() + public createSchemaTemplateArgs() { } - public testInsertStringRecordArgs DeepCopy() + public createSchemaTemplateArgs DeepCopy() { - var tmp419 = new testInsertStringRecordArgs(); + var tmp581 = new createSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp419.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + tmp581.Req = (TSCreateSchemaTemplateReq)this.Req.DeepCopy(); } - tmp419.__isset.req = this.__isset.req; - return tmp419; + tmp581.__isset.req = this.__isset.req; + return tmp581; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10643,7 +14178,7 @@ public testInsertStringRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); + Req = new TSCreateSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10672,7 +14207,7 @@ public testInsertStringRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecord_args"); + var struc = new TStruct("createSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10695,7 +14230,7 @@ public testInsertStringRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordArgs other)) return false; + if (!(that is createSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10713,11 +14248,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecord_args("); - int tmp420 = 0; + var sb = new StringBuilder("createSchemaTemplate_args("); + int tmp582 = 0; if((Req != null) && __isset.req) { - if(0 < tmp420++) { sb.Append(", "); } + if(0 < tmp582++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10727,7 +14262,7 @@ public override string ToString() } - public partial class testInsertStringRecordResult : TBase + public partial class createSchemaTemplateResult : TBase { private TSStatus _success; @@ -10751,19 +14286,19 @@ public struct Isset public bool success; } - public testInsertStringRecordResult() + public createSchemaTemplateResult() { } - public testInsertStringRecordResult DeepCopy() + public createSchemaTemplateResult DeepCopy() { - var tmp421 = new testInsertStringRecordResult(); + var tmp583 = new createSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp421.Success = (TSStatus)this.Success.DeepCopy(); + tmp583.Success = (TSStatus)this.Success.DeepCopy(); } - tmp421.__isset.success = this.__isset.success; - return tmp421; + tmp583.__isset.success = this.__isset.success; + return tmp583; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10815,7 +14350,7 @@ public testInsertStringRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecord_result"); + var struc = new TStruct("createSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10842,7 +14377,7 @@ public testInsertStringRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordResult other)) return false; + if (!(that is createSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10860,11 +14395,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecord_result("); - int tmp422 = 0; + var sb = new StringBuilder("createSchemaTemplate_result("); + int tmp584 = 0; if((Success != null) && __isset.success) { - if(0 < tmp422++) { sb.Append(", "); } + if(0 < tmp584++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10874,11 +14409,11 @@ public override string ToString() } - public partial class testInsertRecordsArgs : TBase + public partial class appendSchemaTemplateArgs : TBase { - private TSInsertRecordsReq _req; + private TSAppendSchemaTemplateReq _req; - public TSInsertRecordsReq Req + public TSAppendSchemaTemplateReq Req { get { @@ -10898,19 +14433,19 @@ public struct Isset public bool req; } - public testInsertRecordsArgs() + public appendSchemaTemplateArgs() { } - public testInsertRecordsArgs DeepCopy() + public appendSchemaTemplateArgs DeepCopy() { - var tmp423 = new testInsertRecordsArgs(); + var tmp585 = new appendSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp423.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + tmp585.Req = (TSAppendSchemaTemplateReq)this.Req.DeepCopy(); } - tmp423.__isset.req = this.__isset.req; - return tmp423; + tmp585.__isset.req = this.__isset.req; + return tmp585; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10933,7 +14468,7 @@ public testInsertRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); + Req = new TSAppendSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10962,7 +14497,7 @@ public testInsertRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecords_args"); + var struc = new TStruct("appendSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10985,7 +14520,7 @@ public testInsertRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsArgs other)) return false; + if (!(that is appendSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11003,11 +14538,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecords_args("); - int tmp424 = 0; + var sb = new StringBuilder("appendSchemaTemplate_args("); + int tmp586 = 0; if((Req != null) && __isset.req) { - if(0 < tmp424++) { sb.Append(", "); } + if(0 < tmp586++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11017,7 +14552,7 @@ public override string ToString() } - public partial class testInsertRecordsResult : TBase + public partial class appendSchemaTemplateResult : TBase { private TSStatus _success; @@ -11041,19 +14576,19 @@ public struct Isset public bool success; } - public testInsertRecordsResult() + public appendSchemaTemplateResult() { } - public testInsertRecordsResult DeepCopy() + public appendSchemaTemplateResult DeepCopy() { - var tmp425 = new testInsertRecordsResult(); + var tmp587 = new appendSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp425.Success = (TSStatus)this.Success.DeepCopy(); + tmp587.Success = (TSStatus)this.Success.DeepCopy(); } - tmp425.__isset.success = this.__isset.success; - return tmp425; + tmp587.__isset.success = this.__isset.success; + return tmp587; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11105,7 +14640,7 @@ public testInsertRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecords_result"); + var struc = new TStruct("appendSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11132,7 +14667,7 @@ public testInsertRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsResult other)) return false; + if (!(that is appendSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11150,11 +14685,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecords_result("); - int tmp426 = 0; + var sb = new StringBuilder("appendSchemaTemplate_result("); + int tmp588 = 0; if((Success != null) && __isset.success) { - if(0 < tmp426++) { sb.Append(", "); } + if(0 < tmp588++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11164,11 +14699,11 @@ public override string ToString() } - public partial class testInsertRecordsOfOneDeviceArgs : TBase + public partial class pruneSchemaTemplateArgs : TBase { - private TSInsertRecordsOfOneDeviceReq _req; + private TSPruneSchemaTemplateReq _req; - public TSInsertRecordsOfOneDeviceReq Req + public TSPruneSchemaTemplateReq Req { get { @@ -11188,19 +14723,19 @@ public struct Isset public bool req; } - public testInsertRecordsOfOneDeviceArgs() + public pruneSchemaTemplateArgs() { } - public testInsertRecordsOfOneDeviceArgs DeepCopy() + public pruneSchemaTemplateArgs DeepCopy() { - var tmp427 = new testInsertRecordsOfOneDeviceArgs(); + var tmp589 = new pruneSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp427.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp589.Req = (TSPruneSchemaTemplateReq)this.Req.DeepCopy(); } - tmp427.__isset.req = this.__isset.req; - return tmp427; + tmp589.__isset.req = this.__isset.req; + return tmp589; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11223,7 +14758,7 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); + Req = new TSPruneSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11252,7 +14787,7 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecordsOfOneDevice_args"); + var struc = new TStruct("pruneSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11275,7 +14810,7 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; + if (!(that is pruneSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11293,11 +14828,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); - int tmp428 = 0; + var sb = new StringBuilder("pruneSchemaTemplate_args("); + int tmp590 = 0; if((Req != null) && __isset.req) { - if(0 < tmp428++) { sb.Append(", "); } + if(0 < tmp590++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11307,7 +14842,7 @@ public override string ToString() } - public partial class testInsertRecordsOfOneDeviceResult : TBase + public partial class pruneSchemaTemplateResult : TBase { private TSStatus _success; @@ -11331,19 +14866,19 @@ public struct Isset public bool success; } - public testInsertRecordsOfOneDeviceResult() + public pruneSchemaTemplateResult() { } - public testInsertRecordsOfOneDeviceResult DeepCopy() + public pruneSchemaTemplateResult DeepCopy() { - var tmp429 = new testInsertRecordsOfOneDeviceResult(); + var tmp591 = new pruneSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp429.Success = (TSStatus)this.Success.DeepCopy(); + tmp591.Success = (TSStatus)this.Success.DeepCopy(); } - tmp429.__isset.success = this.__isset.success; - return tmp429; + tmp591.__isset.success = this.__isset.success; + return tmp591; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11395,7 +14930,7 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecordsOfOneDevice_result"); + var struc = new TStruct("pruneSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11422,7 +14957,7 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; + if (!(that is pruneSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11440,11 +14975,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); - int tmp430 = 0; + var sb = new StringBuilder("pruneSchemaTemplate_result("); + int tmp592 = 0; if((Success != null) && __isset.success) { - if(0 < tmp430++) { sb.Append(", "); } + if(0 < tmp592++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11454,11 +14989,11 @@ public override string ToString() } - public partial class testInsertStringRecordsArgs : TBase + public partial class querySchemaTemplateArgs : TBase { - private TSInsertStringRecordsReq _req; + private TSQueryTemplateReq _req; - public TSInsertStringRecordsReq Req + public TSQueryTemplateReq Req { get { @@ -11478,19 +15013,19 @@ public struct Isset public bool req; } - public testInsertStringRecordsArgs() + public querySchemaTemplateArgs() { } - public testInsertStringRecordsArgs DeepCopy() + public querySchemaTemplateArgs DeepCopy() { - var tmp431 = new testInsertStringRecordsArgs(); + var tmp593 = new querySchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp431.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + tmp593.Req = (TSQueryTemplateReq)this.Req.DeepCopy(); } - tmp431.__isset.req = this.__isset.req; - return tmp431; + tmp593.__isset.req = this.__isset.req; + return tmp593; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11513,7 +15048,7 @@ public testInsertStringRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); + Req = new TSQueryTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11542,7 +15077,7 @@ public testInsertStringRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecords_args"); + var struc = new TStruct("querySchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11565,7 +15100,7 @@ public testInsertStringRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordsArgs other)) return false; + if (!(that is querySchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11583,11 +15118,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecords_args("); - int tmp432 = 0; + var sb = new StringBuilder("querySchemaTemplate_args("); + int tmp594 = 0; if((Req != null) && __isset.req) { - if(0 < tmp432++) { sb.Append(", "); } + if(0 < tmp594++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11597,11 +15132,11 @@ public override string ToString() } - public partial class testInsertStringRecordsResult : TBase + public partial class querySchemaTemplateResult : TBase { - private TSStatus _success; + private TSQueryTemplateResp _success; - public TSStatus Success + public TSQueryTemplateResp Success { get { @@ -11621,19 +15156,19 @@ public struct Isset public bool success; } - public testInsertStringRecordsResult() + public querySchemaTemplateResult() { } - public testInsertStringRecordsResult DeepCopy() + public querySchemaTemplateResult DeepCopy() { - var tmp433 = new testInsertStringRecordsResult(); + var tmp595 = new querySchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp433.Success = (TSStatus)this.Success.DeepCopy(); + tmp595.Success = (TSQueryTemplateResp)this.Success.DeepCopy(); } - tmp433.__isset.success = this.__isset.success; - return tmp433; + tmp595.__isset.success = this.__isset.success; + return tmp595; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11656,7 +15191,7 @@ public testInsertStringRecordsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSQueryTemplateResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -11685,7 +15220,7 @@ public testInsertStringRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecords_result"); + var struc = new TStruct("querySchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11712,7 +15247,7 @@ public testInsertStringRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordsResult other)) return false; + if (!(that is querySchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11730,11 +15265,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecords_result("); - int tmp434 = 0; + var sb = new StringBuilder("querySchemaTemplate_result("); + int tmp596 = 0; if((Success != null) && __isset.success) { - if(0 < tmp434++) { sb.Append(", "); } + if(0 < tmp596++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11744,11 +15279,11 @@ public override string ToString() } - public partial class deleteDataArgs : TBase + public partial class setSchemaTemplateArgs : TBase { - private TSDeleteDataReq _req; + private TSSetSchemaTemplateReq _req; - public TSDeleteDataReq Req + public TSSetSchemaTemplateReq Req { get { @@ -11768,19 +15303,19 @@ public struct Isset public bool req; } - public deleteDataArgs() + public setSchemaTemplateArgs() { } - public deleteDataArgs DeepCopy() + public setSchemaTemplateArgs DeepCopy() { - var tmp435 = new deleteDataArgs(); + var tmp597 = new setSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp435.Req = (TSDeleteDataReq)this.Req.DeepCopy(); + tmp597.Req = (TSSetSchemaTemplateReq)this.Req.DeepCopy(); } - tmp435.__isset.req = this.__isset.req; - return tmp435; + tmp597.__isset.req = this.__isset.req; + return tmp597; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11803,7 +15338,7 @@ public deleteDataArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSDeleteDataReq(); + Req = new TSSetSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11832,7 +15367,7 @@ public deleteDataArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteData_args"); + var struc = new TStruct("setSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11855,7 +15390,7 @@ public deleteDataArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteDataArgs other)) return false; + if (!(that is setSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11873,11 +15408,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteData_args("); - int tmp436 = 0; + var sb = new StringBuilder("setSchemaTemplate_args("); + int tmp598 = 0; if((Req != null) && __isset.req) { - if(0 < tmp436++) { sb.Append(", "); } + if(0 < tmp598++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11887,7 +15422,7 @@ public override string ToString() } - public partial class deleteDataResult : TBase + public partial class setSchemaTemplateResult : TBase { private TSStatus _success; @@ -11911,19 +15446,19 @@ public struct Isset public bool success; } - public deleteDataResult() + public setSchemaTemplateResult() { } - public deleteDataResult DeepCopy() + public setSchemaTemplateResult DeepCopy() { - var tmp437 = new deleteDataResult(); + var tmp599 = new setSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp437.Success = (TSStatus)this.Success.DeepCopy(); + tmp599.Success = (TSStatus)this.Success.DeepCopy(); } - tmp437.__isset.success = this.__isset.success; - return tmp437; + tmp599.__isset.success = this.__isset.success; + return tmp599; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11975,7 +15510,7 @@ public deleteDataResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteData_result"); + var struc = new TStruct("setSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12002,7 +15537,7 @@ public deleteDataResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteDataResult other)) return false; + if (!(that is setSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12020,11 +15555,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteData_result("); - int tmp438 = 0; + var sb = new StringBuilder("setSchemaTemplate_result("); + int tmp600 = 0; if((Success != null) && __isset.success) { - if(0 < tmp438++) { sb.Append(", "); } + if(0 < tmp600++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12034,11 +15569,11 @@ public override string ToString() } - public partial class executeRawDataQueryArgs : TBase + public partial class unsetSchemaTemplateArgs : TBase { - private TSRawDataQueryReq _req; + private TSUnsetSchemaTemplateReq _req; - public TSRawDataQueryReq Req + public TSUnsetSchemaTemplateReq Req { get { @@ -12058,19 +15593,19 @@ public struct Isset public bool req; } - public executeRawDataQueryArgs() + public unsetSchemaTemplateArgs() { } - public executeRawDataQueryArgs DeepCopy() + public unsetSchemaTemplateArgs DeepCopy() { - var tmp439 = new executeRawDataQueryArgs(); + var tmp601 = new unsetSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp439.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); + tmp601.Req = (TSUnsetSchemaTemplateReq)this.Req.DeepCopy(); } - tmp439.__isset.req = this.__isset.req; - return tmp439; + tmp601.__isset.req = this.__isset.req; + return tmp601; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12093,7 +15628,7 @@ public executeRawDataQueryArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSRawDataQueryReq(); + Req = new TSUnsetSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -12122,7 +15657,7 @@ public executeRawDataQueryArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeRawDataQuery_args"); + var struc = new TStruct("unsetSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -12145,7 +15680,7 @@ public executeRawDataQueryArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeRawDataQueryArgs other)) return false; + if (!(that is unsetSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -12163,11 +15698,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeRawDataQuery_args("); - int tmp440 = 0; + var sb = new StringBuilder("unsetSchemaTemplate_args("); + int tmp602 = 0; if((Req != null) && __isset.req) { - if(0 < tmp440++) { sb.Append(", "); } + if(0 < tmp602++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -12177,11 +15712,11 @@ public override string ToString() } - public partial class executeRawDataQueryResult : TBase + public partial class unsetSchemaTemplateResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -12201,19 +15736,19 @@ public struct Isset public bool success; } - public executeRawDataQueryResult() + public unsetSchemaTemplateResult() { } - public executeRawDataQueryResult DeepCopy() + public unsetSchemaTemplateResult DeepCopy() { - var tmp441 = new executeRawDataQueryResult(); + var tmp603 = new unsetSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp441.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp603.Success = (TSStatus)this.Success.DeepCopy(); } - tmp441.__isset.success = this.__isset.success; - return tmp441; + tmp603.__isset.success = this.__isset.success; + return tmp603; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12236,7 +15771,7 @@ public executeRawDataQueryResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -12265,7 +15800,7 @@ public executeRawDataQueryResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeRawDataQuery_result"); + var struc = new TStruct("unsetSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12292,7 +15827,7 @@ public executeRawDataQueryResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeRawDataQueryResult other)) return false; + if (!(that is unsetSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12310,11 +15845,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeRawDataQuery_result("); - int tmp442 = 0; + var sb = new StringBuilder("unsetSchemaTemplate_result("); + int tmp604 = 0; if((Success != null) && __isset.success) { - if(0 < tmp442++) { sb.Append(", "); } + if(0 < tmp604++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12324,20 +15859,20 @@ public override string ToString() } - public partial class requestStatementIdArgs : TBase + public partial class dropSchemaTemplateArgs : TBase { - private long _sessionId; + private TSDropSchemaTemplateReq _req; - public long SessionId + public TSDropSchemaTemplateReq Req { get { - return _sessionId; + return _req; } set { - __isset.sessionId = true; - this._sessionId = value; + __isset.req = true; + this._req = value; } } @@ -12345,22 +15880,22 @@ public long SessionId public Isset __isset; public struct Isset { - public bool sessionId; + public bool req; } - public requestStatementIdArgs() + public dropSchemaTemplateArgs() { } - public requestStatementIdArgs DeepCopy() + public dropSchemaTemplateArgs DeepCopy() { - var tmp443 = new requestStatementIdArgs(); - if(__isset.sessionId) + var tmp605 = new dropSchemaTemplateArgs(); + if((Req != null) && __isset.req) { - tmp443.SessionId = this.SessionId; + tmp605.Req = (TSDropSchemaTemplateReq)this.Req.DeepCopy(); } - tmp443.__isset.sessionId = this.__isset.sessionId; - return tmp443; + tmp605.__isset.req = this.__isset.req; + return tmp605; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12381,9 +15916,10 @@ public requestStatementIdArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - SessionId = await iprot.ReadI64Async(cancellationToken); + Req = new TSDropSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -12411,16 +15947,16 @@ public requestStatementIdArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("requestStatementId_args"); + var struc = new TStruct("dropSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -12434,17 +15970,17 @@ public requestStatementIdArgs DeepCopy() public override bool Equals(object that) { - if (!(that is requestStatementIdArgs other)) return false; + if (!(that is dropSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -12452,13 +15988,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("requestStatementId_args("); - int tmp444 = 0; - if(__isset.sessionId) + var sb = new StringBuilder("dropSchemaTemplate_args("); + int tmp606 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp444++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); + if(0 < tmp606++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -12466,11 +16002,11 @@ public override string ToString() } - public partial class requestStatementIdResult : TBase + public partial class dropSchemaTemplateResult : TBase { - private long _success; + private TSStatus _success; - public long Success + public TSStatus Success { get { @@ -12490,19 +16026,19 @@ public struct Isset public bool success; } - public requestStatementIdResult() + public dropSchemaTemplateResult() { } - public requestStatementIdResult DeepCopy() + public dropSchemaTemplateResult DeepCopy() { - var tmp445 = new requestStatementIdResult(); - if(__isset.success) + var tmp607 = new dropSchemaTemplateResult(); + if((Success != null) && __isset.success) { - tmp445.Success = this.Success; + tmp607.Success = (TSStatus)this.Success.DeepCopy(); } - tmp445.__isset.success = this.__isset.success; - return tmp445; + tmp607.__isset.success = this.__isset.success; + return tmp607; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12523,9 +16059,10 @@ public requestStatementIdResult DeepCopy() switch (field.ID) { case 0: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - Success = await iprot.ReadI64Async(cancellationToken); + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); } else { @@ -12553,18 +16090,21 @@ public requestStatementIdResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("requestStatementId_result"); + var struc = new TStruct("dropSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(this.__isset.success) { - field.Name = "Success"; - field.Type = TType.I64; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Success, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -12577,7 +16117,7 @@ public requestStatementIdResult DeepCopy() public override bool Equals(object that) { - if (!(that is requestStatementIdResult other)) return false; + if (!(that is dropSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12585,7 +16125,7 @@ public override bool Equals(object that) public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.success) + if((Success != null) && __isset.success) { hashcode = (hashcode * 397) + Success.GetHashCode(); } @@ -12595,11 +16135,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("requestStatementId_result("); - int tmp446 = 0; - if(__isset.success) + var sb = new StringBuilder("dropSchemaTemplate_result("); + int tmp608 = 0; + if((Success != null) && __isset.success) { - if(0 < tmp446++) { sb.Append(", "); } + if(0 < tmp608++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs index cb66120..ebd4a21 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertRecordReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List Measurements { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertRecordReq : TBase public long Timestamp { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertRecordReq() { } - public TSInsertRecordReq(long sessionId, string deviceId, List measurements, byte[] values, long timestamp) : this() + public TSInsertRecordReq(long sessionId, string prefixPath, List measurements, byte[] values, long timestamp) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.Measurements = measurements; this.Values = values; this.Timestamp = timestamp; @@ -57,22 +78,27 @@ public TSInsertRecordReq(long sessionId, string deviceId, List measureme public TSInsertRecordReq DeepCopy() { - var tmp89 = new TSInsertRecordReq(); - tmp89.SessionId = this.SessionId; - if((DeviceId != null)) + var tmp107 = new TSInsertRecordReq(); + tmp107.SessionId = this.SessionId; + if((PrefixPath != null)) { - tmp89.DeviceId = this.DeviceId; + tmp107.PrefixPath = this.PrefixPath; } if((Measurements != null)) { - tmp89.Measurements = this.Measurements.DeepCopy(); + tmp107.Measurements = this.Measurements.DeepCopy(); } if((Values != null)) { - tmp89.Values = this.Values.ToArray(); + tmp107.Values = this.Values.ToArray(); } - tmp89.Timestamp = this.Timestamp; - return tmp89; + tmp107.Timestamp = this.Timestamp; + if(__isset.isAligned) + { + tmp107.IsAligned = this.IsAligned; + } + tmp107.__isset.isAligned = this.__isset.isAligned; + return tmp107; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -81,7 +107,7 @@ public TSInsertRecordReq DeepCopy() try { bool isset_sessionId = false; - bool isset_deviceId = false; + bool isset_prefixPath = false; bool isset_measurements = false; bool isset_values = false; bool isset_timestamp = false; @@ -111,8 +137,8 @@ public TSInsertRecordReq DeepCopy() case 2: if (field.Type == TType.String) { - DeviceId = await iprot.ReadStringAsync(cancellationToken); - isset_deviceId = true; + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; } else { @@ -123,13 +149,13 @@ public TSInsertRecordReq DeepCopy() if (field.Type == TType.List) { { - TList _list90 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list90.Count); - for(int _i91 = 0; _i91 < _list90.Count; ++_i91) + TList _list108 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list108.Count); + for(int _i109 = 0; _i109 < _list108.Count; ++_i109) { - string _elem92; - _elem92 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem92); + string _elem110; + _elem110 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem110); } await iprot.ReadListEndAsync(cancellationToken); } @@ -162,6 +188,16 @@ public TSInsertRecordReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -175,7 +211,7 @@ public TSInsertRecordReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -212,13 +248,13 @@ public TSInsertRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((Measurements != null)) @@ -229,9 +265,9 @@ public TSInsertRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter93 in Measurements) + foreach (string _iter111 in Measurements) { - await oprot.WriteStringAsync(_iter93, cancellationToken); + await oprot.WriteStringAsync(_iter111, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -252,6 +288,15 @@ public TSInsertRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(Timestamp, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -266,19 +311,20 @@ public override bool Equals(object that) if (!(that is TSInsertRecordReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) - && System.Object.Equals(Timestamp, other.Timestamp); + && System.Object.Equals(Timestamp, other.Timestamp) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((Measurements != null)) { @@ -289,6 +335,10 @@ public override int GetHashCode() { hashcode = (hashcode * 397) + Values.GetHashCode(); } hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -298,10 +348,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertRecordReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((Measurements != null)) { @@ -315,6 +365,11 @@ public override string ToString() } sb.Append(", Timestamp: "); Timestamp.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs index 320ea78..5117ce8 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertRecordsOfOneDeviceReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List> MeasurementsList { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertRecordsOfOneDeviceReq : TBase public List Timestamps { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertRecordsOfOneDeviceReq() { } - public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List> measurementsList, List valuesList, List timestamps) : this() + public TSInsertRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List valuesList, List timestamps) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.Timestamps = timestamps; @@ -57,25 +78,30 @@ public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List>(_list172.Count); - for(int _i173 = 0; _i173 < _list172.Count; ++_i173) + TList _list190 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list190.Count); + for(int _i191 = 0; _i191 < _list190.Count; ++_i191) { - List _elem174; + List _elem192; { - TList _list175 = await iprot.ReadListBeginAsync(cancellationToken); - _elem174 = new List(_list175.Count); - for(int _i176 = 0; _i176 < _list175.Count; ++_i176) + TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); + _elem192 = new List(_list193.Count); + for(int _i194 = 0; _i194 < _list193.Count; ++_i194) { - string _elem177; - _elem177 = await iprot.ReadStringAsync(cancellationToken); - _elem174.Add(_elem177); + string _elem195; + _elem195 = await iprot.ReadStringAsync(cancellationToken); + _elem192.Add(_elem195); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem174); + MeasurementsList.Add(_elem192); } await iprot.ReadListEndAsync(cancellationToken); } @@ -157,13 +183,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() if (field.Type == TType.List) { { - TList _list178 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list178.Count); - for(int _i179 = 0; _i179 < _list178.Count; ++_i179) + TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list196.Count); + for(int _i197 = 0; _i197 < _list196.Count; ++_i197) { - byte[] _elem180; - _elem180 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem180); + byte[] _elem198; + _elem198 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem198); } await iprot.ReadListEndAsync(cancellationToken); } @@ -178,13 +204,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() if (field.Type == TType.List) { { - TList _list181 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list181.Count); - for(int _i182 = 0; _i182 < _list181.Count; ++_i182) + TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list199.Count); + for(int _i200 = 0; _i200 < _list199.Count; ++_i200) { - long _elem183; - _elem183 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem183); + long _elem201; + _elem201 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem201); } await iprot.ReadListEndAsync(cancellationToken); } @@ -195,6 +221,16 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -208,7 +244,7 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -245,13 +281,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((MeasurementsList != null)) @@ -262,13 +298,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter184 in MeasurementsList) + foreach (List _iter202 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); - foreach (string _iter185 in _iter184) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter202.Count), cancellationToken); + foreach (string _iter203 in _iter202) { - await oprot.WriteStringAsync(_iter185, cancellationToken); + await oprot.WriteStringAsync(_iter203, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -285,9 +321,9 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter186 in ValuesList) + foreach (byte[] _iter204 in ValuesList) { - await oprot.WriteBinaryAsync(_iter186, cancellationToken); + await oprot.WriteBinaryAsync(_iter204, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -301,14 +337,23 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter187 in Timestamps) + foreach (long _iter205 in Timestamps) { - await oprot.WriteI64Async(_iter187, cancellationToken); + await oprot.WriteI64Async(_iter205, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -323,19 +368,20 @@ public override bool Equals(object that) if (!(that is TSInsertRecordsOfOneDeviceReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps); + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((MeasurementsList != null)) { @@ -349,6 +395,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -358,10 +408,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((MeasurementsList != null)) { @@ -378,6 +428,11 @@ public override string ToString() sb.Append(", Timestamps: "); Timestamps.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs index 32beaec..6d1fc41 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertRecordsReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public List DeviceIds { get; set; } + public List PrefixPaths { get; set; } public List> MeasurementsList { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertRecordsReq : TBase public List Timestamps { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertRecordsReq() { } - public TSInsertRecordsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestamps) : this() + public TSInsertRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestamps) : this() { this.SessionId = sessionId; - this.DeviceIds = deviceIds; + this.PrefixPaths = prefixPaths; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.Timestamps = timestamps; @@ -57,25 +78,30 @@ public TSInsertRecordsReq(long sessionId, List deviceIds, List(_list150.Count); - for(int _i151 = 0; _i151 < _list150.Count; ++_i151) + TList _list168 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list168.Count); + for(int _i169 = 0; _i169 < _list168.Count; ++_i169) { - string _elem152; - _elem152 = await iprot.ReadStringAsync(cancellationToken); - DeviceIds.Add(_elem152); + string _elem170; + _elem170 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem170); } await iprot.ReadListEndAsync(cancellationToken); } - isset_deviceIds = true; + isset_prefixPaths = true; } else { @@ -136,23 +162,23 @@ public TSInsertRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list153 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list153.Count); - for(int _i154 = 0; _i154 < _list153.Count; ++_i154) + TList _list171 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list171.Count); + for(int _i172 = 0; _i172 < _list171.Count; ++_i172) { - List _elem155; + List _elem173; { - TList _list156 = await iprot.ReadListBeginAsync(cancellationToken); - _elem155 = new List(_list156.Count); - for(int _i157 = 0; _i157 < _list156.Count; ++_i157) + TList _list174 = await iprot.ReadListBeginAsync(cancellationToken); + _elem173 = new List(_list174.Count); + for(int _i175 = 0; _i175 < _list174.Count; ++_i175) { - string _elem158; - _elem158 = await iprot.ReadStringAsync(cancellationToken); - _elem155.Add(_elem158); + string _elem176; + _elem176 = await iprot.ReadStringAsync(cancellationToken); + _elem173.Add(_elem176); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem155); + MeasurementsList.Add(_elem173); } await iprot.ReadListEndAsync(cancellationToken); } @@ -167,13 +193,13 @@ public TSInsertRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list159 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list159.Count); - for(int _i160 = 0; _i160 < _list159.Count; ++_i160) + TList _list177 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list177.Count); + for(int _i178 = 0; _i178 < _list177.Count; ++_i178) { - byte[] _elem161; - _elem161 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem161); + byte[] _elem179; + _elem179 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem179); } await iprot.ReadListEndAsync(cancellationToken); } @@ -188,13 +214,13 @@ public TSInsertRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list162 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list162.Count); - for(int _i163 = 0; _i163 < _list162.Count; ++_i163) + TList _list180 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list180.Count); + for(int _i181 = 0; _i181 < _list180.Count; ++_i181) { - long _elem164; - _elem164 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem164); + long _elem182; + _elem182 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem182); } await iprot.ReadListEndAsync(cancellationToken); } @@ -205,6 +231,16 @@ public TSInsertRecordsReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -218,7 +254,7 @@ public TSInsertRecordsReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceIds) + if (!isset_prefixPaths) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -255,17 +291,17 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - field.Name = "deviceIds"; + field.Name = "prefixPaths"; field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); { - await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); - foreach (string _iter165 in DeviceIds) + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter183 in PrefixPaths) { - await oprot.WriteStringAsync(_iter165, cancellationToken); + await oprot.WriteStringAsync(_iter183, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -279,13 +315,13 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter166 in MeasurementsList) + foreach (List _iter184 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter166.Count), cancellationToken); - foreach (string _iter167 in _iter166) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); + foreach (string _iter185 in _iter184) { - await oprot.WriteStringAsync(_iter167, cancellationToken); + await oprot.WriteStringAsync(_iter185, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -302,9 +338,9 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter168 in ValuesList) + foreach (byte[] _iter186 in ValuesList) { - await oprot.WriteBinaryAsync(_iter168, cancellationToken); + await oprot.WriteBinaryAsync(_iter186, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -318,14 +354,23 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter169 in Timestamps) + foreach (long _iter187 in Timestamps) { - await oprot.WriteI64Async(_iter169, cancellationToken); + await oprot.WriteI64Async(_iter187, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -340,19 +385,20 @@ public override bool Equals(object that) if (!(that is TSInsertRecordsReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps); + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); } if((MeasurementsList != null)) { @@ -366,6 +412,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -375,10 +425,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertRecordsReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - sb.Append(", DeviceIds: "); - DeviceIds.ToString(sb); + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); } if((MeasurementsList != null)) { @@ -395,6 +445,11 @@ public override string ToString() sb.Append(", Timestamps: "); Timestamps.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs index c1467b7..228fac5 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertStringRecordReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List Measurements { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertStringRecordReq : TBase public long Timestamp { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertStringRecordReq() { } - public TSInsertStringRecordReq(long sessionId, string deviceId, List measurements, List values, long timestamp) : this() + public TSInsertStringRecordReq(long sessionId, string prefixPath, List measurements, List values, long timestamp) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.Measurements = measurements; this.Values = values; this.Timestamp = timestamp; @@ -57,22 +78,27 @@ public TSInsertStringRecordReq(long sessionId, string deviceId, List mea public TSInsertStringRecordReq DeepCopy() { - var tmp95 = new TSInsertStringRecordReq(); - tmp95.SessionId = this.SessionId; - if((DeviceId != null)) + var tmp113 = new TSInsertStringRecordReq(); + tmp113.SessionId = this.SessionId; + if((PrefixPath != null)) { - tmp95.DeviceId = this.DeviceId; + tmp113.PrefixPath = this.PrefixPath; } if((Measurements != null)) { - tmp95.Measurements = this.Measurements.DeepCopy(); + tmp113.Measurements = this.Measurements.DeepCopy(); } if((Values != null)) { - tmp95.Values = this.Values.DeepCopy(); + tmp113.Values = this.Values.DeepCopy(); } - tmp95.Timestamp = this.Timestamp; - return tmp95; + tmp113.Timestamp = this.Timestamp; + if(__isset.isAligned) + { + tmp113.IsAligned = this.IsAligned; + } + tmp113.__isset.isAligned = this.__isset.isAligned; + return tmp113; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -81,7 +107,7 @@ public TSInsertStringRecordReq DeepCopy() try { bool isset_sessionId = false; - bool isset_deviceId = false; + bool isset_prefixPath = false; bool isset_measurements = false; bool isset_values = false; bool isset_timestamp = false; @@ -111,8 +137,8 @@ public TSInsertStringRecordReq DeepCopy() case 2: if (field.Type == TType.String) { - DeviceId = await iprot.ReadStringAsync(cancellationToken); - isset_deviceId = true; + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; } else { @@ -123,13 +149,13 @@ public TSInsertStringRecordReq DeepCopy() if (field.Type == TType.List) { { - TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list96.Count); - for(int _i97 = 0; _i97 < _list96.Count; ++_i97) + TList _list114 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list114.Count); + for(int _i115 = 0; _i115 < _list114.Count; ++_i115) { - string _elem98; - _elem98 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem98); + string _elem116; + _elem116 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem116); } await iprot.ReadListEndAsync(cancellationToken); } @@ -144,13 +170,13 @@ public TSInsertStringRecordReq DeepCopy() if (field.Type == TType.List) { { - TList _list99 = await iprot.ReadListBeginAsync(cancellationToken); - Values = new List(_list99.Count); - for(int _i100 = 0; _i100 < _list99.Count; ++_i100) + TList _list117 = await iprot.ReadListBeginAsync(cancellationToken); + Values = new List(_list117.Count); + for(int _i118 = 0; _i118 < _list117.Count; ++_i118) { - string _elem101; - _elem101 = await iprot.ReadStringAsync(cancellationToken); - Values.Add(_elem101); + string _elem119; + _elem119 = await iprot.ReadStringAsync(cancellationToken); + Values.Add(_elem119); } await iprot.ReadListEndAsync(cancellationToken); } @@ -172,6 +198,16 @@ public TSInsertStringRecordReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -185,7 +221,7 @@ public TSInsertStringRecordReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -222,13 +258,13 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((Measurements != null)) @@ -239,9 +275,9 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter102 in Measurements) + foreach (string _iter120 in Measurements) { - await oprot.WriteStringAsync(_iter102, cancellationToken); + await oprot.WriteStringAsync(_iter120, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -255,9 +291,9 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Values.Count), cancellationToken); - foreach (string _iter103 in Values) + foreach (string _iter121 in Values) { - await oprot.WriteStringAsync(_iter103, cancellationToken); + await oprot.WriteStringAsync(_iter121, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -269,6 +305,15 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(Timestamp, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -283,19 +328,20 @@ public override bool Equals(object that) if (!(that is TSInsertStringRecordReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) - && System.Object.Equals(Timestamp, other.Timestamp); + && System.Object.Equals(Timestamp, other.Timestamp) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((Measurements != null)) { @@ -306,6 +352,10 @@ public override int GetHashCode() { hashcode = (hashcode * 397) + TCollections.GetHashCode(Values); } hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -315,10 +365,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertStringRecordReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((Measurements != null)) { @@ -332,6 +382,11 @@ public override string ToString() } sb.Append(", Timestamp: "); Timestamp.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs new file mode 100644 index 0000000..6e5fefb --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertStringRecordsOfOneDeviceReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List> MeasurementsList { get; set; } + + public List> ValuesList { get; set; } + + public List Timestamps { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertStringRecordsOfOneDeviceReq() + { + } + + public TSInsertStringRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List> valuesList, List timestamps) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public TSInsertStringRecordsOfOneDeviceReq DeepCopy() + { + var tmp207 = new TSInsertStringRecordsOfOneDeviceReq(); + tmp207.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp207.PrefixPath = this.PrefixPath; + } + if((MeasurementsList != null)) + { + tmp207.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp207.ValuesList = this.ValuesList.DeepCopy(); + } + if((Timestamps != null)) + { + tmp207.Timestamps = this.Timestamps.DeepCopy(); + } + if(__isset.isAligned) + { + tmp207.IsAligned = this.IsAligned; + } + tmp207.__isset.isAligned = this.__isset.isAligned; + return tmp207; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list208 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list208.Count); + for(int _i209 = 0; _i209 < _list208.Count; ++_i209) + { + List _elem210; + { + TList _list211 = await iprot.ReadListBeginAsync(cancellationToken); + _elem210 = new List(_list211.Count); + for(int _i212 = 0; _i212 < _list211.Count; ++_i212) + { + string _elem213; + _elem213 = await iprot.ReadStringAsync(cancellationToken); + _elem210.Add(_elem213); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem210); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list214 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list214.Count); + for(int _i215 = 0; _i215 < _list214.Count; ++_i215) + { + List _elem216; + { + TList _list217 = await iprot.ReadListBeginAsync(cancellationToken); + _elem216 = new List(_list217.Count); + for(int _i218 = 0; _i218 < _list217.Count; ++_i218) + { + string _elem219; + _elem219 = await iprot.ReadStringAsync(cancellationToken); + _elem216.Add(_elem219); + } + await iprot.ReadListEndAsync(cancellationToken); + } + ValuesList.Add(_elem216); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list220 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list220.Count); + for(int _i221 = 0; _i221 < _list220.Count; ++_i221) + { + long _elem222; + _elem222 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem222); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertStringRecordsOfOneDeviceReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter223 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter223.Count), cancellationToken); + foreach (string _iter224 in _iter223) + { + await oprot.WriteStringAsync(_iter224, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); + foreach (List _iter225 in ValuesList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter225.Count), cancellationToken); + foreach (string _iter226 in _iter225) + { + await oprot.WriteStringAsync(_iter226, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter227 in Timestamps) + { + await oprot.WriteI64Async(_iter227, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordsOfOneDeviceReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordsOfOneDeviceReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs index 14e80b2..82dc577 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertStringRecordsReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public List DeviceIds { get; set; } + public List PrefixPaths { get; set; } public List> MeasurementsList { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertStringRecordsReq : TBase public List Timestamps { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertStringRecordsReq() { } - public TSInsertStringRecordsReq(long sessionId, List deviceIds, List> measurementsList, List> valuesList, List timestamps) : this() + public TSInsertStringRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List> valuesList, List timestamps) : this() { this.SessionId = sessionId; - this.DeviceIds = deviceIds; + this.PrefixPaths = prefixPaths; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.Timestamps = timestamps; @@ -57,25 +78,30 @@ public TSInsertStringRecordsReq(long sessionId, List deviceIds, List(_list190.Count); - for(int _i191 = 0; _i191 < _list190.Count; ++_i191) + TList _list230 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list230.Count); + for(int _i231 = 0; _i231 < _list230.Count; ++_i231) { - string _elem192; - _elem192 = await iprot.ReadStringAsync(cancellationToken); - DeviceIds.Add(_elem192); + string _elem232; + _elem232 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem232); } await iprot.ReadListEndAsync(cancellationToken); } - isset_deviceIds = true; + isset_prefixPaths = true; } else { @@ -136,23 +162,23 @@ public TSInsertStringRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list193.Count); - for(int _i194 = 0; _i194 < _list193.Count; ++_i194) + TList _list233 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list233.Count); + for(int _i234 = 0; _i234 < _list233.Count; ++_i234) { - List _elem195; + List _elem235; { - TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); - _elem195 = new List(_list196.Count); - for(int _i197 = 0; _i197 < _list196.Count; ++_i197) + TList _list236 = await iprot.ReadListBeginAsync(cancellationToken); + _elem235 = new List(_list236.Count); + for(int _i237 = 0; _i237 < _list236.Count; ++_i237) { - string _elem198; - _elem198 = await iprot.ReadStringAsync(cancellationToken); - _elem195.Add(_elem198); + string _elem238; + _elem238 = await iprot.ReadStringAsync(cancellationToken); + _elem235.Add(_elem238); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem195); + MeasurementsList.Add(_elem235); } await iprot.ReadListEndAsync(cancellationToken); } @@ -167,23 +193,23 @@ public TSInsertStringRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List>(_list199.Count); - for(int _i200 = 0; _i200 < _list199.Count; ++_i200) + TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list239.Count); + for(int _i240 = 0; _i240 < _list239.Count; ++_i240) { - List _elem201; + List _elem241; { - TList _list202 = await iprot.ReadListBeginAsync(cancellationToken); - _elem201 = new List(_list202.Count); - for(int _i203 = 0; _i203 < _list202.Count; ++_i203) + TList _list242 = await iprot.ReadListBeginAsync(cancellationToken); + _elem241 = new List(_list242.Count); + for(int _i243 = 0; _i243 < _list242.Count; ++_i243) { - string _elem204; - _elem204 = await iprot.ReadStringAsync(cancellationToken); - _elem201.Add(_elem204); + string _elem244; + _elem244 = await iprot.ReadStringAsync(cancellationToken); + _elem241.Add(_elem244); } await iprot.ReadListEndAsync(cancellationToken); } - ValuesList.Add(_elem201); + ValuesList.Add(_elem241); } await iprot.ReadListEndAsync(cancellationToken); } @@ -198,13 +224,13 @@ public TSInsertStringRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list205 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list205.Count); - for(int _i206 = 0; _i206 < _list205.Count; ++_i206) + TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list245.Count); + for(int _i246 = 0; _i246 < _list245.Count; ++_i246) { - long _elem207; - _elem207 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem207); + long _elem247; + _elem247 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem247); } await iprot.ReadListEndAsync(cancellationToken); } @@ -215,6 +241,16 @@ public TSInsertStringRecordsReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -228,7 +264,7 @@ public TSInsertStringRecordsReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceIds) + if (!isset_prefixPaths) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -265,17 +301,17 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - field.Name = "deviceIds"; + field.Name = "prefixPaths"; field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); { - await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); - foreach (string _iter208 in DeviceIds) + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter248 in PrefixPaths) { - await oprot.WriteStringAsync(_iter208, cancellationToken); + await oprot.WriteStringAsync(_iter248, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -289,13 +325,13 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter209 in MeasurementsList) + foreach (List _iter249 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter209.Count), cancellationToken); - foreach (string _iter210 in _iter209) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter249.Count), cancellationToken); + foreach (string _iter250 in _iter249) { - await oprot.WriteStringAsync(_iter210, cancellationToken); + await oprot.WriteStringAsync(_iter250, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -312,13 +348,13 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); - foreach (List _iter211 in ValuesList) + foreach (List _iter251 in ValuesList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter211.Count), cancellationToken); - foreach (string _iter212 in _iter211) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter251.Count), cancellationToken); + foreach (string _iter252 in _iter251) { - await oprot.WriteStringAsync(_iter212, cancellationToken); + await oprot.WriteStringAsync(_iter252, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -335,14 +371,23 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter213 in Timestamps) + foreach (long _iter253 in Timestamps) { - await oprot.WriteI64Async(_iter213, cancellationToken); + await oprot.WriteI64Async(_iter253, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -357,19 +402,20 @@ public override bool Equals(object that) if (!(that is TSInsertStringRecordsReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps); + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); } if((MeasurementsList != null)) { @@ -383,6 +429,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -392,10 +442,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertStringRecordsReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - sb.Append(", DeviceIds: "); - DeviceIds.ToString(sb); + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); } if((MeasurementsList != null)) { @@ -412,6 +462,11 @@ public override string ToString() sb.Append(", Timestamps: "); Timestamps.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs index 2782115..b57ef0c 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertTabletReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List Measurements { get; set; } @@ -46,14 +47,34 @@ public partial class TSInsertTabletReq : TBase public int Size { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertTabletReq() { } - public TSInsertTabletReq(long sessionId, string deviceId, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() + public TSInsertTabletReq(long sessionId, string prefixPath, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.Measurements = measurements; this.Values = values; this.Timestamps = timestamps; @@ -63,30 +84,35 @@ public TSInsertTabletReq(long sessionId, string deviceId, List measureme public TSInsertTabletReq DeepCopy() { - var tmp105 = new TSInsertTabletReq(); - tmp105.SessionId = this.SessionId; - if((DeviceId != null)) + var tmp123 = new TSInsertTabletReq(); + tmp123.SessionId = this.SessionId; + if((PrefixPath != null)) { - tmp105.DeviceId = this.DeviceId; + tmp123.PrefixPath = this.PrefixPath; } if((Measurements != null)) { - tmp105.Measurements = this.Measurements.DeepCopy(); + tmp123.Measurements = this.Measurements.DeepCopy(); } if((Values != null)) { - tmp105.Values = this.Values.ToArray(); + tmp123.Values = this.Values.ToArray(); } if((Timestamps != null)) { - tmp105.Timestamps = this.Timestamps.ToArray(); + tmp123.Timestamps = this.Timestamps.ToArray(); } if((Types != null)) { - tmp105.Types = this.Types.DeepCopy(); + tmp123.Types = this.Types.DeepCopy(); } - tmp105.Size = this.Size; - return tmp105; + tmp123.Size = this.Size; + if(__isset.isAligned) + { + tmp123.IsAligned = this.IsAligned; + } + tmp123.__isset.isAligned = this.__isset.isAligned; + return tmp123; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -95,7 +121,7 @@ public TSInsertTabletReq DeepCopy() try { bool isset_sessionId = false; - bool isset_deviceId = false; + bool isset_prefixPath = false; bool isset_measurements = false; bool isset_values = false; bool isset_timestamps = false; @@ -127,8 +153,8 @@ public TSInsertTabletReq DeepCopy() case 2: if (field.Type == TType.String) { - DeviceId = await iprot.ReadStringAsync(cancellationToken); - isset_deviceId = true; + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; } else { @@ -139,13 +165,13 @@ public TSInsertTabletReq DeepCopy() if (field.Type == TType.List) { { - TList _list106 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list106.Count); - for(int _i107 = 0; _i107 < _list106.Count; ++_i107) + TList _list124 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list124.Count); + for(int _i125 = 0; _i125 < _list124.Count; ++_i125) { - string _elem108; - _elem108 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem108); + string _elem126; + _elem126 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem126); } await iprot.ReadListEndAsync(cancellationToken); } @@ -182,13 +208,13 @@ public TSInsertTabletReq DeepCopy() if (field.Type == TType.List) { { - TList _list109 = await iprot.ReadListBeginAsync(cancellationToken); - Types = new List(_list109.Count); - for(int _i110 = 0; _i110 < _list109.Count; ++_i110) + TList _list127 = await iprot.ReadListBeginAsync(cancellationToken); + Types = new List(_list127.Count); + for(int _i128 = 0; _i128 < _list127.Count; ++_i128) { - int _elem111; - _elem111 = await iprot.ReadI32Async(cancellationToken); - Types.Add(_elem111); + int _elem129; + _elem129 = await iprot.ReadI32Async(cancellationToken); + Types.Add(_elem129); } await iprot.ReadListEndAsync(cancellationToken); } @@ -210,6 +236,16 @@ public TSInsertTabletReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -223,7 +259,7 @@ public TSInsertTabletReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -268,13 +304,13 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((Measurements != null)) @@ -285,9 +321,9 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter112 in Measurements) + foreach (string _iter130 in Measurements) { - await oprot.WriteStringAsync(_iter112, cancellationToken); + await oprot.WriteStringAsync(_iter130, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -319,9 +355,9 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, Types.Count), cancellationToken); - foreach (int _iter113 in Types) + foreach (int _iter131 in Types) { - await oprot.WriteI32Async(_iter113, cancellationToken); + await oprot.WriteI32Async(_iter131, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -333,6 +369,15 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI32Async(Size, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -347,21 +392,22 @@ public override bool Equals(object that) if (!(that is TSInsertTabletReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) && TCollections.Equals(Timestamps, other.Timestamps) && TCollections.Equals(Types, other.Types) - && System.Object.Equals(Size, other.Size); + && System.Object.Equals(Size, other.Size) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((Measurements != null)) { @@ -380,6 +426,10 @@ public override int GetHashCode() { hashcode = (hashcode * 397) + TCollections.GetHashCode(Types); } hashcode = (hashcode * 397) + Size.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -389,10 +439,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertTabletReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((Measurements != null)) { @@ -416,6 +466,11 @@ public override string ToString() } sb.Append(", Size: "); Size.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs index 8ad788e..b33fd9c 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertTabletsReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public List DeviceIds { get; set; } + public List PrefixPaths { get; set; } public List> MeasurementsList { get; set; } @@ -46,14 +47,34 @@ public partial class TSInsertTabletsReq : TBase public List SizeList { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertTabletsReq() { } - public TSInsertTabletsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() + public TSInsertTabletsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() { this.SessionId = sessionId; - this.DeviceIds = deviceIds; + this.PrefixPaths = prefixPaths; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.TimestampsList = timestampsList; @@ -63,33 +84,38 @@ public TSInsertTabletsReq(long sessionId, List deviceIds, List(_list116.Count); - for(int _i117 = 0; _i117 < _list116.Count; ++_i117) + TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list134.Count); + for(int _i135 = 0; _i135 < _list134.Count; ++_i135) { - string _elem118; - _elem118 = await iprot.ReadStringAsync(cancellationToken); - DeviceIds.Add(_elem118); + string _elem136; + _elem136 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem136); } await iprot.ReadListEndAsync(cancellationToken); } - isset_deviceIds = true; + isset_prefixPaths = true; } else { @@ -152,23 +178,23 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list119 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list119.Count); - for(int _i120 = 0; _i120 < _list119.Count; ++_i120) + TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list137.Count); + for(int _i138 = 0; _i138 < _list137.Count; ++_i138) { - List _elem121; + List _elem139; { - TList _list122 = await iprot.ReadListBeginAsync(cancellationToken); - _elem121 = new List(_list122.Count); - for(int _i123 = 0; _i123 < _list122.Count; ++_i123) + TList _list140 = await iprot.ReadListBeginAsync(cancellationToken); + _elem139 = new List(_list140.Count); + for(int _i141 = 0; _i141 < _list140.Count; ++_i141) { - string _elem124; - _elem124 = await iprot.ReadStringAsync(cancellationToken); - _elem121.Add(_elem124); + string _elem142; + _elem142 = await iprot.ReadStringAsync(cancellationToken); + _elem139.Add(_elem142); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem121); + MeasurementsList.Add(_elem139); } await iprot.ReadListEndAsync(cancellationToken); } @@ -183,13 +209,13 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list125 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list125.Count); - for(int _i126 = 0; _i126 < _list125.Count; ++_i126) + TList _list143 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list143.Count); + for(int _i144 = 0; _i144 < _list143.Count; ++_i144) { - byte[] _elem127; - _elem127 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem127); + byte[] _elem145; + _elem145 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem145); } await iprot.ReadListEndAsync(cancellationToken); } @@ -204,13 +230,13 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list128 = await iprot.ReadListBeginAsync(cancellationToken); - TimestampsList = new List(_list128.Count); - for(int _i129 = 0; _i129 < _list128.Count; ++_i129) + TList _list146 = await iprot.ReadListBeginAsync(cancellationToken); + TimestampsList = new List(_list146.Count); + for(int _i147 = 0; _i147 < _list146.Count; ++_i147) { - byte[] _elem130; - _elem130 = await iprot.ReadBinaryAsync(cancellationToken); - TimestampsList.Add(_elem130); + byte[] _elem148; + _elem148 = await iprot.ReadBinaryAsync(cancellationToken); + TimestampsList.Add(_elem148); } await iprot.ReadListEndAsync(cancellationToken); } @@ -225,23 +251,23 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list131 = await iprot.ReadListBeginAsync(cancellationToken); - TypesList = new List>(_list131.Count); - for(int _i132 = 0; _i132 < _list131.Count; ++_i132) + TList _list149 = await iprot.ReadListBeginAsync(cancellationToken); + TypesList = new List>(_list149.Count); + for(int _i150 = 0; _i150 < _list149.Count; ++_i150) { - List _elem133; + List _elem151; { - TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); - _elem133 = new List(_list134.Count); - for(int _i135 = 0; _i135 < _list134.Count; ++_i135) + TList _list152 = await iprot.ReadListBeginAsync(cancellationToken); + _elem151 = new List(_list152.Count); + for(int _i153 = 0; _i153 < _list152.Count; ++_i153) { - int _elem136; - _elem136 = await iprot.ReadI32Async(cancellationToken); - _elem133.Add(_elem136); + int _elem154; + _elem154 = await iprot.ReadI32Async(cancellationToken); + _elem151.Add(_elem154); } await iprot.ReadListEndAsync(cancellationToken); } - TypesList.Add(_elem133); + TypesList.Add(_elem151); } await iprot.ReadListEndAsync(cancellationToken); } @@ -256,13 +282,13 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); - SizeList = new List(_list137.Count); - for(int _i138 = 0; _i138 < _list137.Count; ++_i138) + TList _list155 = await iprot.ReadListBeginAsync(cancellationToken); + SizeList = new List(_list155.Count); + for(int _i156 = 0; _i156 < _list155.Count; ++_i156) { - int _elem139; - _elem139 = await iprot.ReadI32Async(cancellationToken); - SizeList.Add(_elem139); + int _elem157; + _elem157 = await iprot.ReadI32Async(cancellationToken); + SizeList.Add(_elem157); } await iprot.ReadListEndAsync(cancellationToken); } @@ -273,6 +299,16 @@ public TSInsertTabletsReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -286,7 +322,7 @@ public TSInsertTabletsReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceIds) + if (!isset_prefixPaths) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -331,17 +367,17 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - field.Name = "deviceIds"; + field.Name = "prefixPaths"; field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); { - await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); - foreach (string _iter140 in DeviceIds) + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter158 in PrefixPaths) { - await oprot.WriteStringAsync(_iter140, cancellationToken); + await oprot.WriteStringAsync(_iter158, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -355,13 +391,13 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter141 in MeasurementsList) + foreach (List _iter159 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter141.Count), cancellationToken); - foreach (string _iter142 in _iter141) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter159.Count), cancellationToken); + foreach (string _iter160 in _iter159) { - await oprot.WriteStringAsync(_iter142, cancellationToken); + await oprot.WriteStringAsync(_iter160, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -378,9 +414,9 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter143 in ValuesList) + foreach (byte[] _iter161 in ValuesList) { - await oprot.WriteBinaryAsync(_iter143, cancellationToken); + await oprot.WriteBinaryAsync(_iter161, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -394,9 +430,9 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, TimestampsList.Count), cancellationToken); - foreach (byte[] _iter144 in TimestampsList) + foreach (byte[] _iter162 in TimestampsList) { - await oprot.WriteBinaryAsync(_iter144, cancellationToken); + await oprot.WriteBinaryAsync(_iter162, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -410,13 +446,13 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, TypesList.Count), cancellationToken); - foreach (List _iter145 in TypesList) + foreach (List _iter163 in TypesList) { { - await oprot.WriteListBeginAsync(new TList(TType.I32, _iter145.Count), cancellationToken); - foreach (int _iter146 in _iter145) + await oprot.WriteListBeginAsync(new TList(TType.I32, _iter163.Count), cancellationToken); + foreach (int _iter164 in _iter163) { - await oprot.WriteI32Async(_iter146, cancellationToken); + await oprot.WriteI32Async(_iter164, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -433,14 +469,23 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, SizeList.Count), cancellationToken); - foreach (int _iter147 in SizeList) + foreach (int _iter165 in SizeList) { - await oprot.WriteI32Async(_iter147, cancellationToken); + await oprot.WriteI32Async(_iter165, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -455,21 +500,22 @@ public override bool Equals(object that) if (!(that is TSInsertTabletsReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) && TCollections.Equals(TimestampsList, other.TimestampsList) && TCollections.Equals(TypesList, other.TypesList) - && TCollections.Equals(SizeList, other.SizeList); + && TCollections.Equals(SizeList, other.SizeList) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); } if((MeasurementsList != null)) { @@ -491,6 +537,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(SizeList); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -500,10 +550,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertTabletsReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - sb.Append(", DeviceIds: "); - DeviceIds.ToString(sb); + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); } if((MeasurementsList != null)) { @@ -530,6 +580,11 @@ public override string ToString() sb.Append(", SizeList: "); SizeList.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs new file mode 100644 index 0000000..4f45324 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs @@ -0,0 +1,421 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSLastDataQueryReq : TBase +{ + private int _fetchSize; + private bool _enableRedirectQuery; + private bool _jdbcQuery; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long Time { get; set; } + + public long StatementId { get; set; } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool fetchSize; + public bool enableRedirectQuery; + public bool jdbcQuery; + } + + public TSLastDataQueryReq() + { + } + + public TSLastDataQueryReq(long sessionId, List paths, long time, long statementId) : this() + { + this.SessionId = sessionId; + this.Paths = paths; + this.Time = time; + this.StatementId = statementId; + } + + public TSLastDataQueryReq DeepCopy() + { + var tmp324 = new TSLastDataQueryReq(); + tmp324.SessionId = this.SessionId; + if((Paths != null)) + { + tmp324.Paths = this.Paths.DeepCopy(); + } + if(__isset.fetchSize) + { + tmp324.FetchSize = this.FetchSize; + } + tmp324.__isset.fetchSize = this.__isset.fetchSize; + tmp324.Time = this.Time; + tmp324.StatementId = this.StatementId; + if(__isset.enableRedirectQuery) + { + tmp324.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp324.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp324.JdbcQuery = this.JdbcQuery; + } + tmp324.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp324; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_time = false; + bool isset_statementId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list325 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list325.Count); + for(int _i326 = 0; _i326 < _list325.Count; ++_i326) + { + string _elem327; + _elem327 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem327); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_paths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I64) + { + Time = await iprot.ReadI64Async(cancellationToken); + isset_time = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + isset_statementId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_paths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_time) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statementId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSLastDataQueryReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) + { + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter328 in Paths) + { + await oprot.WriteStringAsync(_iter328, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.fetchSize) + { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "time"; + field.Type = TType.I64; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Time, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.enableRedirectQuery) + { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSLastDataQueryReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && System.Object.Equals(Time, other.Time) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + hashcode = (hashcode * 397) + Time.GetHashCode(); + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSLastDataQueryReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + } + sb.Append(", Time: "); + Time.ToString(sb); + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs index c1c6e3b..dc89624 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -104,28 +104,28 @@ public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this public TSOpenSessionReq DeepCopy() { - var tmp50 = new TSOpenSessionReq(); - tmp50.Client_protocol = this.Client_protocol; + var tmp68 = new TSOpenSessionReq(); + tmp68.Client_protocol = this.Client_protocol; if((ZoneId != null)) { - tmp50.ZoneId = this.ZoneId; + tmp68.ZoneId = this.ZoneId; } if((Username != null) && __isset.username) { - tmp50.Username = this.Username; + tmp68.Username = this.Username; } - tmp50.__isset.username = this.__isset.username; + tmp68.__isset.username = this.__isset.username; if((Password != null) && __isset.password) { - tmp50.Password = this.Password; + tmp68.Password = this.Password; } - tmp50.__isset.password = this.__isset.password; + tmp68.__isset.password = this.__isset.password; if((Configuration != null) && __isset.configuration) { - tmp50.Configuration = this.Configuration.DeepCopy(); + tmp68.Configuration = this.Configuration.DeepCopy(); } - tmp50.__isset.configuration = this.__isset.configuration; - return tmp50; + tmp68.__isset.configuration = this.__isset.configuration; + return tmp68; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -193,15 +193,15 @@ public TSOpenSessionReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map51 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map51.Count); - for(int _i52 = 0; _i52 < _map51.Count; ++_i52) + TMap _map69 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map69.Count); + for(int _i70 = 0; _i70 < _map69.Count; ++_i70) { - string _key53; - string _val54; - _key53 = await iprot.ReadStringAsync(cancellationToken); - _val54 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key53] = _val54; + string _key71; + string _val72; + _key71 = await iprot.ReadStringAsync(cancellationToken); + _val72 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key71] = _val72; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -284,10 +284,10 @@ public TSOpenSessionReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter55 in Configuration.Keys) + foreach (string _iter73 in Configuration.Keys) { - await oprot.WriteStringAsync(_iter55, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter55], cancellationToken); + await oprot.WriteStringAsync(_iter73, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter73], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs index 2d4b065..f1d2db2 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -89,23 +89,23 @@ public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersio public TSOpenSessionResp DeepCopy() { - var tmp43 = new TSOpenSessionResp(); + var tmp61 = new TSOpenSessionResp(); if((Status != null)) { - tmp43.Status = (TSStatus)this.Status.DeepCopy(); + tmp61.Status = (TSStatus)this.Status.DeepCopy(); } - tmp43.ServerProtocolVersion = this.ServerProtocolVersion; + tmp61.ServerProtocolVersion = this.ServerProtocolVersion; if(__isset.sessionId) { - tmp43.SessionId = this.SessionId; + tmp61.SessionId = this.SessionId; } - tmp43.__isset.sessionId = this.__isset.sessionId; + tmp61.__isset.sessionId = this.__isset.sessionId; if((Configuration != null) && __isset.configuration) { - tmp43.Configuration = this.Configuration.DeepCopy(); + tmp61.Configuration = this.Configuration.DeepCopy(); } - tmp43.__isset.configuration = this.__isset.configuration; - return tmp43; + tmp61.__isset.configuration = this.__isset.configuration; + return tmp61; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -164,15 +164,15 @@ public TSOpenSessionResp DeepCopy() if (field.Type == TType.Map) { { - TMap _map44 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map44.Count); - for(int _i45 = 0; _i45 < _map44.Count; ++_i45) + TMap _map62 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map62.Count); + for(int _i63 = 0; _i63 < _map62.Count; ++_i63) { - string _key46; - string _val47; - _key46 = await iprot.ReadStringAsync(cancellationToken); - _val47 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key46] = _val47; + string _key64; + string _val65; + _key64 = await iprot.ReadStringAsync(cancellationToken); + _val65 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key64] = _val65; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -246,10 +246,10 @@ public TSOpenSessionResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter48 in Configuration.Keys) + foreach (string _iter66 in Configuration.Keys) { - await oprot.WriteStringAsync(_iter48, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter48], cancellationToken); + await oprot.WriteStringAsync(_iter66, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter66], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs b/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs index c243719..02f3cba 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs new file mode 100644 index 0000000..00123f8 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSPruneSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public string Path { get; set; } + + public TSPruneSchemaTemplateReq() + { + } + + public TSPruneSchemaTemplateReq(long sessionId, string name, string path) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.Path = path; + } + + public TSPruneSchemaTemplateReq DeepCopy() + { + var tmp407 = new TSPruneSchemaTemplateReq(); + tmp407.SessionId = this.SessionId; + if((Name != null)) + { + tmp407.Name = this.Name; + } + if((Path != null)) + { + tmp407.Path = this.Path; + } + return tmp407; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_path = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + Path = await iprot.ReadStringAsync(cancellationToken); + isset_path = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_path) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSPruneSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null)) + { + field.Name = "path"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Path, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSPruneSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(Path, other.Path); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + if((Path != null)) + { + hashcode = (hashcode * 397) + Path.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSPruneSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + if((Path != null)) + { + sb.Append(", Path: "); + Path.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs index e50aac7..a3801cd 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs index 9e1db3c..dd69065 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs new file mode 100644 index 0000000..e3680ff --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs @@ -0,0 +1,276 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryTemplateReq : TBase +{ + private string _measurement; + + public long SessionId { get; set; } + + public string Name { get; set; } + + public int QueryType { get; set; } + + public string Measurement + { + get + { + return _measurement; + } + set + { + __isset.measurement = true; + this._measurement = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool measurement; + } + + public TSQueryTemplateReq() + { + } + + public TSQueryTemplateReq(long sessionId, string name, int queryType) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.QueryType = queryType; + } + + public TSQueryTemplateReq DeepCopy() + { + var tmp409 = new TSQueryTemplateReq(); + tmp409.SessionId = this.SessionId; + if((Name != null)) + { + tmp409.Name = this.Name; + } + tmp409.QueryType = this.QueryType; + if((Measurement != null) && __isset.measurement) + { + tmp409.Measurement = this.Measurement; + } + tmp409.__isset.measurement = this.__isset.measurement; + return tmp409; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_queryType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + QueryType = await iprot.ReadI32Async(cancellationToken); + isset_queryType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Measurement = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "queryType"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(QueryType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Measurement != null) && __isset.measurement) + { + field.Name = "measurement"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Measurement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(QueryType, other.QueryType) + && ((__isset.measurement == other.__isset.measurement) && ((!__isset.measurement) || (System.Object.Equals(Measurement, other.Measurement)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + hashcode = (hashcode * 397) + QueryType.GetHashCode(); + if((Measurement != null) && __isset.measurement) + { + hashcode = (hashcode * 397) + Measurement.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + sb.Append(", QueryType: "); + QueryType.ToString(sb); + if((Measurement != null) && __isset.measurement) + { + sb.Append(", Measurement: "); + Measurement.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs new file mode 100644 index 0000000..3b4bc97 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs @@ -0,0 +1,362 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryTemplateResp : TBase +{ + private bool _result; + private int _count; + private List _measurements; + + public TSStatus Status { get; set; } + + public int QueryType { get; set; } + + public bool Result + { + get + { + return _result; + } + set + { + __isset.result = true; + this._result = value; + } + } + + public int Count + { + get + { + return _count; + } + set + { + __isset.count = true; + this._count = value; + } + } + + public List Measurements + { + get + { + return _measurements; + } + set + { + __isset.measurements = true; + this._measurements = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool result; + public bool count; + public bool measurements; + } + + public TSQueryTemplateResp() + { + } + + public TSQueryTemplateResp(TSStatus status, int queryType) : this() + { + this.Status = status; + this.QueryType = queryType; + } + + public TSQueryTemplateResp DeepCopy() + { + var tmp411 = new TSQueryTemplateResp(); + if((Status != null)) + { + tmp411.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp411.QueryType = this.QueryType; + if(__isset.result) + { + tmp411.Result = this.Result; + } + tmp411.__isset.result = this.__isset.result; + if(__isset.count) + { + tmp411.Count = this.Count; + } + tmp411.__isset.count = this.__isset.count; + if((Measurements != null) && __isset.measurements) + { + tmp411.Measurements = this.Measurements.DeepCopy(); + } + tmp411.__isset.measurements = this.__isset.measurements; + return tmp411; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_queryType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + QueryType = await iprot.ReadI32Async(cancellationToken); + isset_queryType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + Result = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + Count = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list412 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list412.Count); + for(int _i413 = 0; _i413 < _list412.Count; ++_i413) + { + string _elem414; + _elem414 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem414); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryTemplateResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "queryType"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(QueryType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.result) + { + field.Name = "result"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(Result, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.count) + { + field.Name = "count"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Count, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null) && __isset.measurements) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter415 in Measurements) + { + await oprot.WriteStringAsync(_iter415, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryTemplateResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(QueryType, other.QueryType) + && ((__isset.result == other.__isset.result) && ((!__isset.result) || (System.Object.Equals(Result, other.Result)))) + && ((__isset.count == other.__isset.count) && ((!__isset.count) || (System.Object.Equals(Count, other.Count)))) + && ((__isset.measurements == other.__isset.measurements) && ((!__isset.measurements) || (TCollections.Equals(Measurements, other.Measurements)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + QueryType.GetHashCode(); + if(__isset.result) + { + hashcode = (hashcode * 397) + Result.GetHashCode(); + } + if(__isset.count) + { + hashcode = (hashcode * 397) + Count.GetHashCode(); + } + if((Measurements != null) && __isset.measurements) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryTemplateResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", QueryType: "); + QueryType.ToString(sb); + if(__isset.result) + { + sb.Append(", Result: "); + Result.ToString(sb); + } + if(__isset.count) + { + sb.Append(", Count: "); + Count.ToString(sb); + } + if((Measurements != null) && __isset.measurements) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs index 534dba7..91d4e23 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -33,6 +33,7 @@ public partial class TSRawDataQueryReq : TBase { private int _fetchSize; private bool _enableRedirectQuery; + private bool _jdbcQuery; public long SessionId { get; set; } @@ -70,12 +71,26 @@ public bool EnableRedirectQuery } } + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + public Isset __isset; public struct Isset { public bool fetchSize; public bool enableRedirectQuery; + public bool jdbcQuery; } public TSRawDataQueryReq() @@ -93,26 +108,31 @@ public TSRawDataQueryReq(long sessionId, List paths, long startTime, lon public TSRawDataQueryReq DeepCopy() { - var tmp238 = new TSRawDataQueryReq(); - tmp238.SessionId = this.SessionId; + var tmp318 = new TSRawDataQueryReq(); + tmp318.SessionId = this.SessionId; if((Paths != null)) { - tmp238.Paths = this.Paths.DeepCopy(); + tmp318.Paths = this.Paths.DeepCopy(); } if(__isset.fetchSize) { - tmp238.FetchSize = this.FetchSize; + tmp318.FetchSize = this.FetchSize; } - tmp238.__isset.fetchSize = this.__isset.fetchSize; - tmp238.StartTime = this.StartTime; - tmp238.EndTime = this.EndTime; - tmp238.StatementId = this.StatementId; + tmp318.__isset.fetchSize = this.__isset.fetchSize; + tmp318.StartTime = this.StartTime; + tmp318.EndTime = this.EndTime; + tmp318.StatementId = this.StatementId; if(__isset.enableRedirectQuery) { - tmp238.EnableRedirectQuery = this.EnableRedirectQuery; + tmp318.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp318.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp318.JdbcQuery = this.JdbcQuery; } - tmp238.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - return tmp238; + tmp318.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp318; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -152,13 +172,13 @@ public TSRawDataQueryReq DeepCopy() if (field.Type == TType.List) { { - TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list239.Count); - for(int _i240 = 0; _i240 < _list239.Count; ++_i240) + TList _list319 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list319.Count); + for(int _i320 = 0; _i320 < _list319.Count; ++_i320) { - string _elem241; - _elem241 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem241); + string _elem321; + _elem321 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem321); } await iprot.ReadListEndAsync(cancellationToken); } @@ -222,6 +242,16 @@ public TSRawDataQueryReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -280,9 +310,9 @@ public TSRawDataQueryReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter242 in Paths) + foreach (string _iter322 in Paths) { - await oprot.WriteStringAsync(_iter242, cancellationToken); + await oprot.WriteStringAsync(_iter322, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -324,6 +354,15 @@ public TSRawDataQueryReq DeepCopy() await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -343,7 +382,8 @@ public override bool Equals(object that) && System.Object.Equals(StartTime, other.StartTime) && System.Object.Equals(EndTime, other.EndTime) && System.Object.Equals(StatementId, other.StatementId) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))); + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); } public override int GetHashCode() { @@ -365,6 +405,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } } return hashcode; } @@ -395,6 +439,11 @@ public override string ToString() sb.Append(", EnableRedirectQuery: "); EnableRedirectQuery.ToString(sb); } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs new file mode 100644 index 0000000..4078cc6 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSSetSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string TemplateName { get; set; } + + public string PrefixPath { get; set; } + + public TSSetSchemaTemplateReq() + { + } + + public TSSetSchemaTemplateReq(long sessionId, string templateName, string prefixPath) : this() + { + this.SessionId = sessionId; + this.TemplateName = templateName; + this.PrefixPath = prefixPath; + } + + public TSSetSchemaTemplateReq DeepCopy() + { + var tmp385 = new TSSetSchemaTemplateReq(); + tmp385.SessionId = this.SessionId; + if((TemplateName != null)) + { + tmp385.TemplateName = this.TemplateName; + } + if((PrefixPath != null)) + { + tmp385.PrefixPath = this.PrefixPath; + } + return tmp385; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_templateName = false; + bool isset_prefixPath = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSSetSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSSetSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TemplateName, other.TemplateName) + && System.Object.Equals(PrefixPath, other.PrefixPath); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSSetSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs index 0853d11..7d36632 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,13 +48,13 @@ public TSSetTimeZoneReq(long sessionId, string timeZone) : this() public TSSetTimeZoneReq DeepCopy() { - var tmp87 = new TSSetTimeZoneReq(); - tmp87.SessionId = this.SessionId; + var tmp105 = new TSSetTimeZoneReq(); + tmp105.SessionId = this.SessionId; if((TimeZone != null)) { - tmp87.TimeZone = this.TimeZone; + tmp105.TimeZone = this.TimeZone; } - return tmp87; + return tmp105; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs b/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs index 80ccfbd..ceed36e 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs b/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs new file mode 100644 index 0000000..8b09f1f --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs @@ -0,0 +1,684 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSTracingInfo : TBase +{ + private int _seriesPathNum; + private int _seqFileNum; + private int _unSeqFileNum; + private int _sequenceChunkNum; + private long _sequenceChunkPointNum; + private int _unsequenceChunkNum; + private long _unsequenceChunkPointNum; + private int _totalPageNum; + private int _overlappedPageNum; + + public List ActivityList { get; set; } + + public List ElapsedTimeList { get; set; } + + public int SeriesPathNum + { + get + { + return _seriesPathNum; + } + set + { + __isset.seriesPathNum = true; + this._seriesPathNum = value; + } + } + + public int SeqFileNum + { + get + { + return _seqFileNum; + } + set + { + __isset.seqFileNum = true; + this._seqFileNum = value; + } + } + + public int UnSeqFileNum + { + get + { + return _unSeqFileNum; + } + set + { + __isset.unSeqFileNum = true; + this._unSeqFileNum = value; + } + } + + public int SequenceChunkNum + { + get + { + return _sequenceChunkNum; + } + set + { + __isset.sequenceChunkNum = true; + this._sequenceChunkNum = value; + } + } + + public long SequenceChunkPointNum + { + get + { + return _sequenceChunkPointNum; + } + set + { + __isset.sequenceChunkPointNum = true; + this._sequenceChunkPointNum = value; + } + } + + public int UnsequenceChunkNum + { + get + { + return _unsequenceChunkNum; + } + set + { + __isset.unsequenceChunkNum = true; + this._unsequenceChunkNum = value; + } + } + + public long UnsequenceChunkPointNum + { + get + { + return _unsequenceChunkPointNum; + } + set + { + __isset.unsequenceChunkPointNum = true; + this._unsequenceChunkPointNum = value; + } + } + + public int TotalPageNum + { + get + { + return _totalPageNum; + } + set + { + __isset.totalPageNum = true; + this._totalPageNum = value; + } + } + + public int OverlappedPageNum + { + get + { + return _overlappedPageNum; + } + set + { + __isset.overlappedPageNum = true; + this._overlappedPageNum = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool seriesPathNum; + public bool seqFileNum; + public bool unSeqFileNum; + public bool sequenceChunkNum; + public bool sequenceChunkPointNum; + public bool unsequenceChunkNum; + public bool unsequenceChunkPointNum; + public bool totalPageNum; + public bool overlappedPageNum; + } + + public TSTracingInfo() + { + } + + public TSTracingInfo(List activityList, List elapsedTimeList) : this() + { + this.ActivityList = activityList; + this.ElapsedTimeList = elapsedTimeList; + } + + public TSTracingInfo DeepCopy() + { + var tmp28 = new TSTracingInfo(); + if((ActivityList != null)) + { + tmp28.ActivityList = this.ActivityList.DeepCopy(); + } + if((ElapsedTimeList != null)) + { + tmp28.ElapsedTimeList = this.ElapsedTimeList.DeepCopy(); + } + if(__isset.seriesPathNum) + { + tmp28.SeriesPathNum = this.SeriesPathNum; + } + tmp28.__isset.seriesPathNum = this.__isset.seriesPathNum; + if(__isset.seqFileNum) + { + tmp28.SeqFileNum = this.SeqFileNum; + } + tmp28.__isset.seqFileNum = this.__isset.seqFileNum; + if(__isset.unSeqFileNum) + { + tmp28.UnSeqFileNum = this.UnSeqFileNum; + } + tmp28.__isset.unSeqFileNum = this.__isset.unSeqFileNum; + if(__isset.sequenceChunkNum) + { + tmp28.SequenceChunkNum = this.SequenceChunkNum; + } + tmp28.__isset.sequenceChunkNum = this.__isset.sequenceChunkNum; + if(__isset.sequenceChunkPointNum) + { + tmp28.SequenceChunkPointNum = this.SequenceChunkPointNum; + } + tmp28.__isset.sequenceChunkPointNum = this.__isset.sequenceChunkPointNum; + if(__isset.unsequenceChunkNum) + { + tmp28.UnsequenceChunkNum = this.UnsequenceChunkNum; + } + tmp28.__isset.unsequenceChunkNum = this.__isset.unsequenceChunkNum; + if(__isset.unsequenceChunkPointNum) + { + tmp28.UnsequenceChunkPointNum = this.UnsequenceChunkPointNum; + } + tmp28.__isset.unsequenceChunkPointNum = this.__isset.unsequenceChunkPointNum; + if(__isset.totalPageNum) + { + tmp28.TotalPageNum = this.TotalPageNum; + } + tmp28.__isset.totalPageNum = this.__isset.totalPageNum; + if(__isset.overlappedPageNum) + { + tmp28.OverlappedPageNum = this.OverlappedPageNum; + } + tmp28.__isset.overlappedPageNum = this.__isset.overlappedPageNum; + return tmp28; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_activityList = false; + bool isset_elapsedTimeList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.List) + { + { + TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); + ActivityList = new List(_list29.Count); + for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + { + string _elem31; + _elem31 = await iprot.ReadStringAsync(cancellationToken); + ActivityList.Add(_elem31); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_activityList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); + ElapsedTimeList = new List(_list32.Count); + for(int _i33 = 0; _i33 < _list32.Count; ++_i33) + { + long _elem34; + _elem34 = await iprot.ReadI64Async(cancellationToken); + ElapsedTimeList.Add(_elem34); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_elapsedTimeList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + SeriesPathNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + SeqFileNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I32) + { + UnSeqFileNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.I32) + { + SequenceChunkNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I64) + { + SequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.I32) + { + UnsequenceChunkNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.I64) + { + UnsequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.I32) + { + TotalPageNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 11: + if (field.Type == TType.I32) + { + OverlappedPageNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_activityList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_elapsedTimeList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSTracingInfo"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((ActivityList != null)) + { + field.Name = "activityList"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ActivityList.Count), cancellationToken); + foreach (string _iter35 in ActivityList) + { + await oprot.WriteStringAsync(_iter35, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ElapsedTimeList != null)) + { + field.Name = "elapsedTimeList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, ElapsedTimeList.Count), cancellationToken); + foreach (long _iter36 in ElapsedTimeList) + { + await oprot.WriteI64Async(_iter36, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.seriesPathNum) + { + field.Name = "seriesPathNum"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SeriesPathNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.seqFileNum) + { + field.Name = "seqFileNum"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SeqFileNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unSeqFileNum) + { + field.Name = "unSeqFileNum"; + field.Type = TType.I32; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(UnSeqFileNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.sequenceChunkNum) + { + field.Name = "sequenceChunkNum"; + field.Type = TType.I32; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SequenceChunkNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.sequenceChunkPointNum) + { + field.Name = "sequenceChunkPointNum"; + field.Type = TType.I64; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SequenceChunkPointNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unsequenceChunkNum) + { + field.Name = "unsequenceChunkNum"; + field.Type = TType.I32; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(UnsequenceChunkNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unsequenceChunkPointNum) + { + field.Name = "unsequenceChunkPointNum"; + field.Type = TType.I64; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(UnsequenceChunkPointNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.totalPageNum) + { + field.Name = "totalPageNum"; + field.Type = TType.I32; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(TotalPageNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.overlappedPageNum) + { + field.Name = "overlappedPageNum"; + field.Type = TType.I32; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(OverlappedPageNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSTracingInfo other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(ActivityList, other.ActivityList) + && TCollections.Equals(ElapsedTimeList, other.ElapsedTimeList) + && ((__isset.seriesPathNum == other.__isset.seriesPathNum) && ((!__isset.seriesPathNum) || (System.Object.Equals(SeriesPathNum, other.SeriesPathNum)))) + && ((__isset.seqFileNum == other.__isset.seqFileNum) && ((!__isset.seqFileNum) || (System.Object.Equals(SeqFileNum, other.SeqFileNum)))) + && ((__isset.unSeqFileNum == other.__isset.unSeqFileNum) && ((!__isset.unSeqFileNum) || (System.Object.Equals(UnSeqFileNum, other.UnSeqFileNum)))) + && ((__isset.sequenceChunkNum == other.__isset.sequenceChunkNum) && ((!__isset.sequenceChunkNum) || (System.Object.Equals(SequenceChunkNum, other.SequenceChunkNum)))) + && ((__isset.sequenceChunkPointNum == other.__isset.sequenceChunkPointNum) && ((!__isset.sequenceChunkPointNum) || (System.Object.Equals(SequenceChunkPointNum, other.SequenceChunkPointNum)))) + && ((__isset.unsequenceChunkNum == other.__isset.unsequenceChunkNum) && ((!__isset.unsequenceChunkNum) || (System.Object.Equals(UnsequenceChunkNum, other.UnsequenceChunkNum)))) + && ((__isset.unsequenceChunkPointNum == other.__isset.unsequenceChunkPointNum) && ((!__isset.unsequenceChunkPointNum) || (System.Object.Equals(UnsequenceChunkPointNum, other.UnsequenceChunkPointNum)))) + && ((__isset.totalPageNum == other.__isset.totalPageNum) && ((!__isset.totalPageNum) || (System.Object.Equals(TotalPageNum, other.TotalPageNum)))) + && ((__isset.overlappedPageNum == other.__isset.overlappedPageNum) && ((!__isset.overlappedPageNum) || (System.Object.Equals(OverlappedPageNum, other.OverlappedPageNum)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((ActivityList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ActivityList); + } + if((ElapsedTimeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ElapsedTimeList); + } + if(__isset.seriesPathNum) + { + hashcode = (hashcode * 397) + SeriesPathNum.GetHashCode(); + } + if(__isset.seqFileNum) + { + hashcode = (hashcode * 397) + SeqFileNum.GetHashCode(); + } + if(__isset.unSeqFileNum) + { + hashcode = (hashcode * 397) + UnSeqFileNum.GetHashCode(); + } + if(__isset.sequenceChunkNum) + { + hashcode = (hashcode * 397) + SequenceChunkNum.GetHashCode(); + } + if(__isset.sequenceChunkPointNum) + { + hashcode = (hashcode * 397) + SequenceChunkPointNum.GetHashCode(); + } + if(__isset.unsequenceChunkNum) + { + hashcode = (hashcode * 397) + UnsequenceChunkNum.GetHashCode(); + } + if(__isset.unsequenceChunkPointNum) + { + hashcode = (hashcode * 397) + UnsequenceChunkPointNum.GetHashCode(); + } + if(__isset.totalPageNum) + { + hashcode = (hashcode * 397) + TotalPageNum.GetHashCode(); + } + if(__isset.overlappedPageNum) + { + hashcode = (hashcode * 397) + OverlappedPageNum.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSTracingInfo("); + if((ActivityList != null)) + { + sb.Append(", ActivityList: "); + ActivityList.ToString(sb); + } + if((ElapsedTimeList != null)) + { + sb.Append(", ElapsedTimeList: "); + ElapsedTimeList.ToString(sb); + } + if(__isset.seriesPathNum) + { + sb.Append(", SeriesPathNum: "); + SeriesPathNum.ToString(sb); + } + if(__isset.seqFileNum) + { + sb.Append(", SeqFileNum: "); + SeqFileNum.ToString(sb); + } + if(__isset.unSeqFileNum) + { + sb.Append(", UnSeqFileNum: "); + UnSeqFileNum.ToString(sb); + } + if(__isset.sequenceChunkNum) + { + sb.Append(", SequenceChunkNum: "); + SequenceChunkNum.ToString(sb); + } + if(__isset.sequenceChunkPointNum) + { + sb.Append(", SequenceChunkPointNum: "); + SequenceChunkPointNum.ToString(sb); + } + if(__isset.unsequenceChunkNum) + { + sb.Append(", UnsequenceChunkNum: "); + UnsequenceChunkNum.ToString(sb); + } + if(__isset.unsequenceChunkPointNum) + { + sb.Append(", UnsequenceChunkPointNum: "); + UnsequenceChunkPointNum.ToString(sb); + } + if(__isset.totalPageNum) + { + sb.Append(", TotalPageNum: "); + TotalPageNum.ToString(sb); + } + if(__isset.overlappedPageNum) + { + sb.Append(", OverlappedPageNum: "); + OverlappedPageNum.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs new file mode 100644 index 0000000..1d99924 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSUnsetSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public string TemplateName { get; set; } + + public TSUnsetSchemaTemplateReq() + { + } + + public TSUnsetSchemaTemplateReq(long sessionId, string prefixPath, string templateName) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.TemplateName = templateName; + } + + public TSUnsetSchemaTemplateReq DeepCopy() + { + var tmp417 = new TSUnsetSchemaTemplateReq(); + tmp417.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp417.PrefixPath = this.PrefixPath; + } + if((TemplateName != null)) + { + tmp417.TemplateName = this.TemplateName; + } + return tmp417; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_templateName = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSUnsetSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSUnsetSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && System.Object.Equals(TemplateName, other.TemplateName); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSUnsetSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs b/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs index 26beb19..a4f5a93 100644 --- a/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs +++ b/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -42,10 +42,10 @@ public static Dictionary DeepCopy(this Dictionary sour if (source == null) return null; - var tmp447 = new Dictionary(source.Count); + var tmp609 = new Dictionary(source.Count); foreach (var pair in source) - tmp447.Add((pair.Key != null) ? pair.Key : null, pair.Value); - return tmp447; + tmp609.Add((pair.Key != null) ? pair.Key : null, pair.Value); + return tmp609; } @@ -69,10 +69,10 @@ public static Dictionary DeepCopy(this Dictionary(source.Count); + var tmp610 = new Dictionary(source.Count); foreach (var pair in source) - tmp448.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); - return tmp448; + tmp610.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); + return tmp610; } @@ -96,10 +96,10 @@ public static List> DeepCopy(this List>(source.Count); + var tmp611 = new List>(source.Count); foreach (var elem in source) - tmp449.Add((elem != null) ? elem.DeepCopy() : null); - return tmp449; + tmp611.Add((elem != null) ? elem.DeepCopy() : null); + return tmp611; } @@ -123,10 +123,10 @@ public static List> DeepCopy(this List> source) if (source == null) return null; - var tmp450 = new List>(source.Count); + var tmp612 = new List>(source.Count); foreach (var elem in source) - tmp450.Add((elem != null) ? elem.DeepCopy() : null); - return tmp450; + tmp612.Add((elem != null) ? elem.DeepCopy() : null); + return tmp612; } @@ -150,10 +150,10 @@ public static List> DeepCopy(this List> source) if (source == null) return null; - var tmp451 = new List>(source.Count); + var tmp613 = new List>(source.Count); foreach (var elem in source) - tmp451.Add((elem != null) ? elem.DeepCopy() : null); - return tmp451; + tmp613.Add((elem != null) ? elem.DeepCopy() : null); + return tmp613; } @@ -177,10 +177,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp452 = new List(source.Count); + var tmp614 = new List(source.Count); foreach (var elem in source) - tmp452.Add((elem != null) ? elem.DeepCopy() : null); - return tmp452; + tmp614.Add((elem != null) ? elem.DeepCopy() : null); + return tmp614; } @@ -204,10 +204,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp453 = new List(source.Count); + var tmp615 = new List(source.Count); foreach (var elem in source) - tmp453.Add((elem != null) ? elem.ToArray() : null); - return tmp453; + tmp615.Add((elem != null) ? elem.ToArray() : null); + return tmp615; } @@ -231,10 +231,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp454 = new List(source.Count); + var tmp616 = new List(source.Count); foreach (var elem in source) - tmp454.Add(elem); - return tmp454; + tmp616.Add(elem); + return tmp616; } @@ -258,10 +258,37 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp455 = new List(source.Count); + var tmp617 = new List(source.Count); foreach (var elem in source) - tmp455.Add(elem); - return tmp455; + tmp617.Add(elem); + return tmp617; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp618 = new List(source.Count); + foreach (var elem in source) + tmp618.Add(elem); + return tmp618; } @@ -285,10 +312,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp456 = new List(source.Count); + var tmp619 = new List(source.Count); foreach (var elem in source) - tmp456.Add((elem != null) ? elem : null); - return tmp456; + tmp619.Add((elem != null) ? elem : null); + return tmp619; } From 4e69eb772e0d8cc8ce8a18f689416fe895213dd5 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Wed, 6 Apr 2022 21:20:33 +0800 Subject: [PATCH 136/214] add insert aligned record and create aligned timeseries interfaces and tests --- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 155 +++++++--- src/Apache.IoTDB/SessionPool.cs | 280 +++++++++++------- 2 files changed, 294 insertions(+), 141 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index b7b2dee..ee17066 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -16,17 +16,20 @@ public class SessionPoolTest public bool debug = false; private int pool_size = 2; - public SessionPoolTest(string _host = "localhost"){ + public SessionPoolTest(string _host = "localhost") + { host = _host; } public void Test() { Task task; - + task = TestInsertAlignedRecord(); + task.Wait(); + task = TestCreateAlignedTimeseries(); + task.Wait(); task = TestInsertRecord(); task.Wait(); - task = TestCreateMultiTimeSeries(); task.Wait(); task = TestGetTimeZone(); @@ -84,7 +87,7 @@ public async Task TestInsertRecord() System.Diagnostics.Debug.Assert(status == 0); var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List {"test_text", true, (int) 123}; + var values = new List { "test_text", true, (int)123 }; var tasks = new List>(); var start_ms = DateTime.Now.Ticks / 10000; for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) @@ -97,12 +100,50 @@ public async Task TestInsertRecord() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + Console.WriteLine(string.Format("total insert aligned record time is {0}", end_ms - start_ms)); status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestInsertRecordAsync Passed"); } + public async Task TestInsertAlignedRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + + string prefixPath = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + var measurements = new List { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3" }; + var types = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var encodings = new List { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressors = new List { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurements, types, encodings, compressors); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List + {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.InsertAlignedRecordAsync( + "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + tasks.Add(task); + } + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecordAsync Passed"); + } + public async Task TestCreateMultiTimeSeries() { // by Luzhan @@ -220,8 +261,8 @@ public async Task TestInsertStrRecord() TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List {(int) 1, (int) 2}; + var measures = new List { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }; + var values = new List { (int)1, (int)2 }; var rowRecord = new RowRecord(1, values, measures); status = await session_pool.InsertRecordAsync( "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); @@ -301,7 +342,7 @@ public async Task TestInsertRecords() for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); var measurements_lst = new List>() { }; - measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" @@ -312,11 +353,11 @@ public async Task TestInsertRecords() "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" }); var values_lst = new List>() { }; - values_lst.Add(new List() {true, (int) 123}); - values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() {1, 2, 3}; + var timestamp_lst = new List() { 1, 2, 3 }; var rowRecords = new List() { }; for (var i = 0; i < 3; i++) { @@ -341,8 +382,8 @@ public async Task TestInsertRecords() for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, - new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); @@ -402,7 +443,7 @@ await session_pool.CreateTimeSeries( TSEncoding.PLAIN, Compressor.SNAPPY); var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; var measurements_lst = new List>() { }; - measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" @@ -413,11 +454,11 @@ await session_pool.CreateTimeSeries( "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" }); var values_lst = new List>() { }; - values_lst.Add(new List() {true, (int) 123}); - values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() {1, 2, 3}; + var timestamp_lst = new List() { 1, 2, 3 }; var rowRecords = new List() { }; for (var i = 0; i < 3; i++) { @@ -438,8 +479,8 @@ await session_pool.CreateTimeSeries( var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, - new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); @@ -483,7 +524,7 @@ public async Task TestInsertTablet() new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, new() {"client", true, (int) 14} }; - var timestamp_lst = new List {1, 2, 3}; + var timestamp_lst = new List { 1, 2, 3 }; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); status = await session_pool.InsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); @@ -501,7 +542,7 @@ public async Task TestInsertTablet() for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { timestamp_lst.Add(timestamp); - value_lst.Add(new List() {"iotdb", true, (int) timestamp}); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); if (timestamp % fetch_size == 0) { tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); @@ -597,8 +638,8 @@ public async Task TestInsertTablets() var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; var local_measurements = new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; - var local_timestamp = new List {timestamp}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); tablets.Add(tablet); if (timestamp % fetch_size == 0) @@ -673,6 +714,50 @@ public async Task TestCreateTimeSeries() Console.WriteLine("TestCreateTimeSeries Passed!"); } + public async Task TestCreateAlignedTimeseries() + { + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + + string prefixPath = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + var measurement_lst = new List() + { + "TEST_CSHARP_CLIENT_TS1", + "TEST_CSHARP_CLIENT_TS2", + "TEST_CSHARP_CLIENT_TS3", + "TEST_CSHARP_CLIENT_TS4", + "TEST_CSHARP_CLIENT_TS5", + "TEST_CSHARP_CLIENT_TS6" + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCreateAlignedimeSeries Passed!"); + + } + public async Task TestDeleteStorageGroups() { var session_pool = new SessionPool(host, port, pool_size); @@ -755,7 +840,7 @@ public async Task TestDeleteData() var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List {"test_text", true, (int) 123}; + var values = new List { "test_text", true, (int)123 }; status = await session_pool.InsertRecordAsync( "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); System.Diagnostics.Debug.Assert(status == 0); @@ -817,7 +902,7 @@ public async Task TestTestInsertRecord() System.Diagnostics.Debug.Assert(status == 0); var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List {"test_text", true, (int) 123}; + var values = new List { "test_text", true, (int)123 }; var tasks = new List>(); var start_ms = DateTime.Now.Ticks / 10000; for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) @@ -874,7 +959,7 @@ public async Task TestTestInsertRecords() for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); var measurements_lst = new List>() { }; - measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); + measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" @@ -885,11 +970,11 @@ public async Task TestTestInsertRecords() "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" }); var values_lst = new List>() { }; - values_lst.Add(new List() {true, (int) 123}); - values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() {1, 2, 3}; + var timestamp_lst = new List() { 1, 2, 3 }; var rowRecords = new List() { }; for (var i = 0; i < 3; i++) { @@ -913,8 +998,8 @@ public async Task TestTestInsertRecords() for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, - new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); @@ -961,7 +1046,7 @@ public async Task TestTestInsertTablet() new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, new() {"client", true, (int) 14} }; - var timestamp_lst = new List {2, 1, 3}; + var timestamp_lst = new List { 2, 1, 3 }; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); status = await session_pool.TestInsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); @@ -979,7 +1064,7 @@ public async Task TestTestInsertTablet() for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { timestamp_lst.Add(timestamp); - value_lst.Add(new List() {"iotdb", true, (int) timestamp}); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); if (timestamp % (fetch_size / 32) == 0) { tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); @@ -1074,8 +1159,8 @@ public async Task TestTestInsertTablets() var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; var local_measurements = new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; - var local_timestamp = new List {timestamp}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); tablets.Add(tablet); if (timestamp % fetch_size == 0) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 08fe62b..006b516 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -19,7 +19,7 @@ public class SessionPool { private static int SuccessCode => 200; private static readonly TSProtocolVersion ProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - + private readonly string _username; private readonly string _password; private string _zoneId; @@ -29,7 +29,7 @@ public class SessionPool private readonly int _poolSize = 4; private readonly Utils _utilFunctions = new Utils(); - + private bool _debugMode; private bool _isClose = true; private ConcurrentClientQueue _clients; @@ -48,10 +48,10 @@ public SessionPool(string host, int port, int poolSize) } public SessionPool( - string host, - int port, - string username, - string password, + string host, + int port, + string username, + string password, int poolSize = 8) { _host = host; @@ -65,11 +65,11 @@ public SessionPool( } public SessionPool( - string host, - int port, - string username, - string password, - int fetchSize, + string host, + int port, + string username, + string password, + int fetchSize, int poolSize = 8) { _host = host; @@ -83,12 +83,12 @@ public SessionPool( } public SessionPool( - string host, - int port, - string username = "root", + string host, + int port, + string username = "root", string password = "root", - int fetchSize = 1000, - string zoneId = "UTC+08:00", + int fetchSize = 1000, + string zoneId = "UTC+08:00", int poolSize = 8) { _host = host; @@ -109,7 +109,7 @@ public void OpenDebugMode(LoggingConfiguration config = null) config = new LoggingConfiguration(); config.AddRule(LogLevel.Debug, LogLevel.Fatal, new ConsoleTarget("logconsole")); } - + LogManager.Configuration = config; _logger = LogManager.GetCurrentClassLogger(); } @@ -122,7 +122,7 @@ public void CloseDebugMode() public async Task Open(bool enableRpcCompression) { _clients = new ConcurrentClientQueue(); - + for (var index = 0; index < _poolSize; index++) { _clients.Add(await CreateAndOpen(enableRpcCompression)); @@ -152,7 +152,7 @@ public async Task Close() finally { _isClose = true; - + client.Transport?.Close(); } } @@ -161,7 +161,7 @@ public async Task Close() public async Task SetTimeZone(string zoneId) { _zoneId = zoneId; - + foreach (var client in _clients.ClientQueue.AsEnumerable()) { var req = new TSSetTimeZoneReq(client.SessionId, zoneId); @@ -188,7 +188,7 @@ public async Task GetTimeZone() } var client = _clients.Take(); - + try { var response = await client.ServiceClient.getTimeZoneAsync(client.SessionId); @@ -201,7 +201,7 @@ public async Task GetTimeZone() } finally { - _clients.Add(client); + _clients.Add(client); } } @@ -210,26 +210,26 @@ private async Task CreateAndOpen(bool enableRpcCompression) var tcpClient = new TcpClient(_host, _port); var transport = new TFramedTransport(new TSocketTransport(tcpClient, null)); - + if (!transport.IsOpen) { await transport.OpenAsync(new CancellationToken()); } - var client = enableRpcCompression ? - new TSIService.Client(new TCompactProtocol(transport)) : + var client = enableRpcCompression ? + new TSIService.Client(new TCompactProtocol(transport)) : new TSIService.Client(new TBinaryProtocol(transport)); var openReq = new TSOpenSessionReq(ProtocolVersion, _zoneId) { - Username = _username, + Username = _username, Password = _password }; - + try { var openResp = await client.openSessionAsync(openReq); - + if (openResp.ServerProtocolVersion != ProtocolVersion) { throw new TException($"Protocol Differ, Client version is {ProtocolVersion} but Server version is {openResp.ServerProtocolVersion}", null); @@ -242,21 +242,21 @@ private async Task CreateAndOpen(bool enableRpcCompression) var sessionId = openResp.SessionId; var statementId = await client.requestStatementIdAsync(sessionId); - + _isClose = false; - + var returnClient = new Client( - client, - sessionId, - statementId, + client, + sessionId, + statementId, transport); - + return returnClient; } catch (Exception) { transport.Close(); - + throw; } } @@ -264,16 +264,16 @@ private async Task CreateAndOpen(bool enableRpcCompression) public async Task SetStorageGroup(string groupName) { var client = _clients.Take(); - + try { var status = await client.ServiceClient.setStorageGroupAsync(client.SessionId, groupName); - + if (_debugMode) { _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -287,22 +287,22 @@ public async Task SetStorageGroup(string groupName) } public async Task CreateTimeSeries( - string tsPath, - TSDataType dataType, + string tsPath, + TSDataType dataType, TSEncoding encoding, Compressor compressor) { var client = _clients.Take(); var req = new TSCreateTimeseriesReq( - client.SessionId, - tsPath, - (int) dataType, - (int) encoding, - (int) compressor); + client.SessionId, + tsPath, + (int)dataType, + (int)encoding, + (int)compressor); try { var status = await client.ServiceClient.createTimeseriesAsync(req); - + if (_debugMode) { _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); @@ -321,6 +321,46 @@ public async Task CreateTimeSeries( } + public async Task CreateAlignedTimeseriesAsync( + string prefixPath, + List measurements, + List dataTypeLst, + List encodingLst, + List compressorLst) + { + var client = _clients.Take(); + var dataTypes = dataTypeLst.ConvertAll(x => (int)x); + var encodings = encodingLst.ConvertAll(x => (int)x); + var compressors = compressorLst.ConvertAll(x => (int)x); + + var req = new TSCreateAlignedTimeseriesReq( + client.SessionId, + prefixPath, + measurements, + dataTypes, + encodings, + compressors); + try + { + var status = await client.ServiceClient.createAlignedTimeseriesAsync(req); + + if (_debugMode) + { + _logger.Info("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException($"create aligned time series {prefixPath} failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task DeleteStorageGroupAsync(string groupName) { var client = _clients.Take(); @@ -328,8 +368,8 @@ public async Task DeleteStorageGroupAsync(string groupName) { var status = await client.ServiceClient.deleteStorageGroupsAsync( client.SessionId, - new List {groupName}); - + new List { groupName }); + if (_debugMode) { _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); @@ -343,7 +383,7 @@ public async Task DeleteStorageGroupAsync(string groupName) } finally { - _clients.Add(client); + _clients.Add(client); } } @@ -354,11 +394,11 @@ public async Task DeleteStorageGroupsAsync(List groupNames) try { var status = await client.ServiceClient.deleteStorageGroupsAsync(client.SessionId, groupNames); - + if (_debugMode) { _logger.Info( - "delete storage group(s) {0} successfully, server message is {1}", + "delete storage group(s) {0} successfully, server message is {1}", groupNames, status.Message); } @@ -376,27 +416,27 @@ public async Task DeleteStorageGroupsAsync(List groupNames) } public async Task CreateMultiTimeSeriesAsync( - List tsPathLst, + List tsPathLst, List dataTypeLst, - List encodingLst, + List encodingLst, List compressorLst) { var client = _clients.Take(); - var dataTypes = dataTypeLst.ConvertAll(x => (int) x); - var encodings = encodingLst.ConvertAll(x => (int) x); - var compressors = compressorLst.ConvertAll(x => (int) x); + var dataTypes = dataTypeLst.ConvertAll(x => (int)x); + var encodings = encodingLst.ConvertAll(x => (int)x); + var compressors = compressorLst.ConvertAll(x => (int)x); var req = new TSCreateMultiTimeseriesReq(client.SessionId, tsPathLst, dataTypes, encodings, compressors); - + try { var status = await client.ServiceClient.createMultiTimeseriesAsync(req); - + if (_debugMode) { _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -412,16 +452,16 @@ public async Task CreateMultiTimeSeriesAsync( public async Task DeleteTimeSeriesAsync(List pathList) { var client = _clients.Take(); - + try { var status = await client.ServiceClient.deleteTimeseriesAsync(client.SessionId, pathList); - + if (_debugMode) { _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -436,7 +476,7 @@ public async Task DeleteTimeSeriesAsync(List pathList) public async Task DeleteTimeSeriesAsync(string tsPath) { - return await DeleteTimeSeriesAsync(new List {tsPath}); + return await DeleteTimeSeriesAsync(new List { tsPath }); } public async Task CheckTimeSeriesExistsAsync(string tsPath) @@ -458,16 +498,16 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l { var client = _clients.Take(); var req = new TSDeleteDataReq(client.SessionId, tsPathLst, startTime, endTime); - + try { var status = await client.ServiceClient.deleteDataAsync(req); - + if (_debugMode) { _logger.Info( "delete data from {0}, server message is {1}", - tsPathLst, + tsPathLst, status.Message); } @@ -509,6 +549,34 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) _clients.Add(client); } } + public async Task InsertAlignedRecordAsync(string deviceId, RowRecord record) + { + var client = _clients.Take(); + var req = new TSInsertRecordReq(client.SessionId, deviceId, record.Measurements, record.ToBytes(), + record.Timestamps); + req.IsAligned = true; + // ASSERT that the insert plan is aligned + System.Diagnostics.Debug.Assert(req.IsAligned == true); + try + { + var status = await client.ServiceClient.insertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Record insertion failed", e); + } + finally + { + _clients.Add(client); + } + } public TSInsertStringRecordReq GenInsertStrRecordReq(string deviceId, List measurements, List values, long timestamp, long sessionId) @@ -535,13 +603,13 @@ public TSInsertRecordsReq GenInsertRecordsReq(List deviceId, List InsertRecordsAsync(List deviceId, List rowRecords) { var client = _clients.Take(); - + var request = GenInsertRecordsReq(deviceId, rowRecords, client.SessionId); try { var status = await client.ServiceClient.insertRecordsAsync(request); - + if (_debugMode) { _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); @@ -562,12 +630,12 @@ public async Task InsertRecordsAsync(List deviceId, List public TSInsertTabletReq GenInsertTabletReq(Tablet tablet, long sessionId) { return new TSInsertTabletReq( - sessionId, - tablet.DeviceId, + sessionId, + tablet.DeviceId, tablet.Measurements, - tablet.GetBinaryValues(), - tablet.GetBinaryTimestamps(), - tablet.GetDataTypes(), + tablet.GetBinaryValues(), + tablet.GetBinaryTimestamps(), + tablet.GetDataTypes(), tablet.RowNumber); } @@ -575,11 +643,11 @@ public async Task InsertTabletAsync(Tablet tablet) { var client = _clients.Take(); var req = GenInsertTabletReq(tablet, client.SessionId); - + try { var status = await client.ServiceClient.insertTabletAsync(req); - + if (_debugMode) { _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); @@ -605,7 +673,7 @@ public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessi var timestampsLst = new List(); var typeLst = new List>(); var sizeLst = new List(); - + foreach (var tablet in tabletLst) { var dataTypeValues = tablet.GetDataTypes(); @@ -618,12 +686,12 @@ public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessi } return new TSInsertTabletsReq( - sessionId, - deviceIdLst, - measurementsLst, - valuesLst, + sessionId, + deviceIdLst, + measurementsLst, + valuesLst, timestampsLst, - typeLst, + typeLst, sizeLst); } @@ -631,16 +699,16 @@ public async Task InsertTabletsAsync(List tabletLst) { var client = _clients.Take(); var req = GenInsertTabletsReq(tabletLst, client.SessionId); - + try { var status = await client.ServiceClient.insertTabletsAsync(req); - + if (_debugMode) { _logger.Info("insert multiple tablets, message: {0}", status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -663,17 +731,17 @@ public async Task InsertRecordsOfOneDeviceAsync(string deviceId, List records, + List records, long sessionId) { var values = records.Select(row => row.ToBytes()); var measurementsLst = records.Select(x => x.Measurements).ToList(); var timestampLst = records.Select(x => x.Timestamps).ToList(); - + return new TSInsertRecordsOfOneDeviceReq( - sessionId, - deviceId, - measurementsLst, + sessionId, + deviceId, + measurementsLst, values.ToList(), timestampLst); } @@ -681,16 +749,16 @@ private TSInsertRecordsOfOneDeviceReq GenInsertRecordsOfOneDeviceRequest( public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List rowRecords) { var client = _clients.Take(); - + var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); - + if (!_utilFunctions.IsSorted(timestampLst)) { throw new TException("insert records of one device error: timestamp not sorted", null); } var req = GenInsertRecordsOfOneDeviceRequest(deviceId, rowRecords, client.SessionId); - + try { var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); @@ -699,7 +767,7 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List { _logger.Info("insert records of one device, message: {0}", status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -715,18 +783,18 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List public async Task TestInsertRecordAsync(string deviceId, RowRecord record) { var client = _clients.Take(); - + var req = new TSInsertRecordReq( - client.SessionId, - deviceId, - record.Measurements, + client.SessionId, + deviceId, + record.Measurements, record.ToBytes(), record.Timestamps); try { var status = await client.ServiceClient.testInsertRecordAsync(req); - + if (_debugMode) { _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); @@ -752,7 +820,7 @@ public async Task TestInsertRecordsAsync(List deviceId, List TestInsertRecordsAsync(List deviceId, List TestInsertTabletAsync(Tablet tablet) { var client = _clients.Take(); - + var req = GenInsertTabletReq(tablet, client.SessionId); try @@ -801,9 +869,9 @@ public async Task TestInsertTabletAsync(Tablet tablet) public async Task TestInsertTabletsAsync(List tabletLst) { var client = _clients.Take(); - + var req = GenInsertTabletsReq(tabletLst, client.SessionId); - + try { var status = await client.ServiceClient.testInsertTabletsAsync(req); @@ -842,14 +910,14 @@ public async Task ExecuteQueryStatementAsync(string sql) catch (TException e) { _clients.Add(client); - + throw new TException("could not execute query statement", e); } if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) { _clients.Add(client); - + throw new TException("execute query failed", null); } @@ -859,7 +927,7 @@ public async Task ExecuteQueryStatementAsync(string sql) { FetchSize = _fetchSize }; - + return sessionDataset; } @@ -867,7 +935,7 @@ public async Task ExecuteNonQueryStatementAsync(string sql) { var client = _clients.Take(); var req = new TSExecuteStatementReq(client.SessionId, sql, client.StatementId); - + try { var resp = await client.ServiceClient.executeUpdateStatementAsync(req); From c14a9abd532c5736411f69a2cc39330770e0c71c Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Wed, 6 Apr 2022 21:22:25 +0800 Subject: [PATCH 137/214] fix type --- samples/Apache.IoTDB.Samples/SessioonPoolTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index ee17066..0940bc2 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -139,7 +139,7 @@ public async Task TestInsertAlignedRecord() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordAsync Passed"); } From 7d8bdecf29c4d91766e10d112b70ab2ffc340a02 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Wed, 6 Apr 2022 22:20:40 +0800 Subject: [PATCH 138/214] add insert aligned records interface and test --- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 121 +++++++++++++++++- src/Apache.IoTDB/SessionPool.cs | 28 ++++ 2 files changed, 147 insertions(+), 2 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index 0940bc2..a9fb138 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -28,6 +28,8 @@ public void Test() task.Wait(); task = TestCreateAlignedTimeseries(); task.Wait(); + task = TestInsertAlignedReocrds(); + task.Wait(); task = TestInsertRecord(); task.Wait(); task = TestCreateMultiTimeSeries(); @@ -139,7 +141,7 @@ public async Task TestInsertAlignedRecord() Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordAsync Passed"); } @@ -414,6 +416,121 @@ public async Task TestInsertRecords() Console.WriteLine("TestInsertRecords Passed!"); } + public async Task TestInsertAlignedReocrds() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + + string prefixPath = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + var measurement_lst = new List() + { + "TEST_CSHARP_CLIENT_TS1", + "TEST_CSHARP_CLIENT_TS2", + "TEST_CSHARP_CLIENT_TS3", + "TEST_CSHARP_CLIENT_TS4", + "TEST_CSHARP_CLIENT_TS5", + "TEST_CSHARP_CLIENT_TS6" + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + }); + measurements_lst.Add(new List() + { + "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", + "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.InsertAlignedRecordsAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine(status); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + + // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecords Passed!"); + } + public async Task TestInsertRecordsOfOneDevice() { var session_pool = new SessionPool(host, port, pool_size); @@ -754,7 +871,7 @@ public async Task TestCreateAlignedTimeseries() status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); - Console.WriteLine("TestCreateAlignedimeSeries Passed!"); + Console.WriteLine("TestCreateAlignedTimeSeries Passed!"); } diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 006b516..a1554e8 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -626,7 +626,35 @@ public async Task InsertRecordsAsync(List deviceId, List _clients.Add(client); } } + public async Task InsertAlignedRecordsAsync(List deviceId, List rowRecords) + { + var client = _clients.Take(); + + var request = GenInsertRecordsReq(deviceId, rowRecords, client.SessionId); + request.IsAligned = true; + // ASSERT that the insert plan is aligned + System.Diagnostics.Debug.Assert(request.IsAligned == true); + + try + { + var status = await client.ServiceClient.insertRecordsAsync(request); + + if (_debugMode) + { + _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Multiple records insertion failed", e); + } + finally + { + _clients.Add(client); + } + } public TSInsertTabletReq GenInsertTabletReq(Tablet tablet, long sessionId) { return new TSInsertTabletReq( From 8b3022194bc616eafe693599f1b30336696bb271 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Thu, 7 Apr 2022 20:56:30 +0800 Subject: [PATCH 139/214] add aligned interfaces and template class --- .../SessionPoolTest.TestRecord.cs | 123 ++++ .../SessionPoolTest.TestTablet.cs | 174 ++++++ .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 548 ++++++++++-------- src/Apache.IoTDB/IoTDBConstants.cs | 32 +- src/Apache.IoTDB/SessionPool.cs | 104 ++++ src/Apache.IoTDB/Template/InternalNode.cs | 42 ++ src/Apache.IoTDB/Template/MeasurementNode.cs | 57 ++ src/Apache.IoTDB/Template/Template.cs | 129 +++++ src/Apache.IoTDB/Template/TemplateNode.cs | 41 ++ 9 files changed, 996 insertions(+), 254 deletions(-) create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.TestTablet.cs create mode 100644 src/Apache.IoTDB/Template/InternalNode.cs create mode 100644 src/Apache.IoTDB/Template/MeasurementNode.cs create mode 100644 src/Apache.IoTDB/Template/Template.cs create mode 100644 src/Apache.IoTDB/Template/TemplateNode.cs diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs new file mode 100644 index 0000000..423d896 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs @@ -0,0 +1,123 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertAlignedRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + status = await session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords)); + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + Thread.Sleep(20); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestTablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestTablet.cs new file mode 100644 index 0000000..ace48a4 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestTablet.cs @@ -0,0 +1,174 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertAlignedTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List + { test_measurements[1], + test_measurements[2], + test_measurements[3] + }; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List { 1, 2, 3 }; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.InsertAlignedTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); + if (timestamp % fetch_size == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.InsertAlignedTabletAsync(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + Console.WriteLine(tasks.Count); + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + // 这个地方为什么睡6毫秒就过了,注释掉就过不了……,而且好精确啊…… + Thread.Sleep(20); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + // status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedTablet Passed!"); + } + + public async Task TestInsertAlignedTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = new List() + { + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) + }; + var measurements_lst = new List>() + { + new() {test_measurements[1], test_measurements[2], test_measurements[3] }, + new() {test_measurements[1], test_measurements[2], test_measurements[3] } + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.InsertAlignedTabletsAsync(tablets); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + // large data test + var tasks = new List>(); + // tablets = new List() { }; + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); + var local_measurements = new List() + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + Console.WriteLine(string.Format("insert {0} tablets", tablets.Count)); + tasks.Add(session_pool.InsertAlignedTabletsAsync(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + Thread.Sleep(20); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedTablets Passed!"); + } + + } +} diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index a9fb138..964b5b8 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -1,11 +1,12 @@ using System; using System.Collections.Generic; +using System.Threading; using System.Threading.Tasks; using Apache.IoTDB.DataStructure; namespace Apache.IoTDB.Samples { - public class SessionPoolTest + public partial class SessionPoolTest { public string host = "localhost"; public int port = 6667; @@ -15,6 +16,18 @@ public class SessionPoolTest public int processed_size = 4; public bool debug = false; private int pool_size = 2; + public static string test_group_name = "root.GROUP_92709"; + public static string test_device = "device_"; + public static string test_measurement = "ts"; + public static List device_count = new List() { 0, 1, 2, 3 }; + public static List measurement_count = new List() { 0, 1, 2, 3, 4, 5, 6 }; + public static List test_devices = new List( + device_count.ConvertAll(x => test_device + x.ToString()).ToArray() + ); + public List test_measurements = new List( + measurement_count.ConvertAll(x => test_measurement + x.ToString()).ToArray() + ); + public SessionPoolTest(string _host = "localhost") { @@ -24,12 +37,18 @@ public SessionPoolTest(string _host = "localhost") public void Test() { Task task; - task = TestInsertAlignedRecord(); - task.Wait(); - task = TestCreateAlignedTimeseries(); - task.Wait(); - task = TestInsertAlignedReocrds(); - task.Wait(); + // task = TestInsertAlignedRecord(); + // task.Wait(); + // task = TestCreateAlignedTimeseries(); + // task.Wait(); + // task = TestInsertAlignedRecords(); + // task.Wait(); + // task = TestInsertAlignedRecordsOfOneDevice(); + // task.Wait(); + // task = TestInsertAlignedTablet(); + // task.Wait(); + // task = TestInsertAlignedTablets(); + // task.Wait(); task = TestInsertRecord(); task.Wait(); task = TestCreateMultiTimeSeries(); @@ -50,6 +69,8 @@ public void Test() task.Wait(); task = TestCreateTimeSeries(); task.Wait(); + task = TestDeleteTimeSeries(); + task.Wait(); task = TestDeleteStorageGroups(); task.Wait(); task = TestCheckTimeSeriesExists(); @@ -72,23 +93,23 @@ public async Task TestInsertRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + {test_measurements[1], test_measurements[2], test_measurements[3]}; var values = new List { "test_text", true, (int)123 }; var tasks = new List>(); var start_ms = DateTime.Now.Ticks / 10000; @@ -96,14 +117,14 @@ public async Task TestInsertRecord() { var rowRecord = new RowRecord(timestamp, values, measures); var task = session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert aligned record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); Console.WriteLine("TestInsertRecordAsync Passed"); } @@ -116,10 +137,10 @@ public async Task TestInsertAlignedRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); - string prefixPath = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; - var measurements = new List { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3" }; + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List { test_measurements[1], test_measurements[2], test_measurements[3] }; var types = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; var encodings = new List { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; var compressors = new List { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }; @@ -127,7 +148,7 @@ public async Task TestInsertAlignedRecord() System.Diagnostics.Debug.Assert(status == 0); var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + { test_measurements[1], test_measurements[2], test_measurements[3] }; var values = new List { "test_text", true, (int)123 }; var tasks = new List>(); var start_ms = DateTime.Now.Ticks / 10000; @@ -135,13 +156,13 @@ public async Task TestInsertAlignedRecord() { var rowRecord = new RowRecord(timestamp, values, measures); var task = session_pool.InsertAlignedRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordAsync Passed"); } @@ -154,16 +175,10 @@ public async Task TestCreateMultiTimeSeries() var status = 0; if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var ts_path_lst = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" - }; + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; + var ts_path_lst = new List(measurement_lst.ConvertAll( + (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); var data_type_lst = new List() { TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, @@ -182,7 +197,7 @@ public async Task TestCreateMultiTimeSeries() status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCreateMultiTimeSeries Passed!"); @@ -195,16 +210,10 @@ public async Task TestDeleteTimeSeries() var status = 0; if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var ts_path_lst = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" - }; + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; + var ts_path_lst = new List(measurement_lst.ConvertAll( + (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); var data_type_lst = new List() { TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, @@ -223,10 +232,10 @@ public async Task TestDeleteTimeSeries() status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupsAsync(ts_path_lst); + status = await session_pool.DeleteTimeSeriesAsync(ts_path_lst); System.Diagnostics.Debug.Assert(status == 0); Console.WriteLine("TestDeleteTimeSeries Passed!"); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); } @@ -236,7 +245,7 @@ public async Task TestGetTimeZone() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var time_zone = await session_pool.GetTimeZone(); System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); @@ -252,25 +261,25 @@ public async Task TestInsertStrRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); - var measures = new List { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }; + var measures = new List { test_measurements[1], test_measurements[2] }; var values = new List { (int)1, (int)2 }; var rowRecord = new RowRecord(1, values, measures); status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<2"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<2"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -285,13 +294,13 @@ public async Task TestInsertStrRecord() for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) { var task = session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp - 2]); + string.Format("{0}.{1}", test_group_name, test_device), rowRecords[timestamp - 2]); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); var res_count = 0; while (res.HasNext()) { @@ -300,8 +309,9 @@ public async Task TestInsertStrRecord() } await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); Console.WriteLine("TestInsertStrRecord Passed!"); } @@ -314,45 +324,52 @@ public async Task TestInsertRecords() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] }); var values_lst = new List>() { }; values_lst.Add(new List() { true, (int)123 }); @@ -370,7 +387,7 @@ public async Task TestInsertRecords() status = await session_pool.InsertRecordsAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -383,9 +400,9 @@ public async Task TestInsertRecords() var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); + new List() { test_measurements[1], test_measurements[2] })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); @@ -396,7 +413,7 @@ public async Task TestInsertRecords() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; @@ -410,13 +427,13 @@ public async Task TestInsertRecords() Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertRecords Passed!"); } - public async Task TestInsertAlignedReocrds() + public async Task TestInsertAlignedRecords() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); @@ -424,17 +441,17 @@ public async Task TestInsertAlignedReocrds() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); - string prefixPath = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); var measurement_lst = new List() { - "TEST_CSHARP_CLIENT_TS1", - "TEST_CSHARP_CLIENT_TS2", - "TEST_CSHARP_CLIENT_TS3", - "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", - "TEST_CSHARP_CLIENT_TS6" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] }; var data_type_lst = new List() { @@ -456,17 +473,24 @@ public async Task TestInsertAlignedReocrds() System.Diagnostics.Debug.Assert(status == 0); var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] }); var values_lst = new List>() { }; values_lst.Add(new List() { true, (int)123 }); @@ -484,7 +508,7 @@ public async Task TestInsertAlignedReocrds() status = await session_pool.InsertAlignedRecordsAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -497,9 +521,9 @@ public async Task TestInsertAlignedReocrds() var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); + new List() { test_measurements[1], test_measurements[2] })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.InsertAlignedRecordsAsync(device_id, rowRecords)); @@ -509,8 +533,9 @@ public async Task TestInsertAlignedReocrds() } Task.WaitAll(tasks.ToArray()); + // Thread.Sleep(20); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; @@ -525,7 +550,7 @@ public async Task TestInsertAlignedReocrds() System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); - // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + // status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecords Passed!"); @@ -539,36 +564,49 @@ public async Task TestInsertRecordsOfOneDevice() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); - var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + System.Diagnostics.Debug.Assert(status == 0); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] }); var values_lst = new List>() { }; values_lst.Add(new List() { true, (int)123 }); @@ -586,7 +624,7 @@ await session_pool.CreateTimeSeries( status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -597,7 +635,7 @@ await session_pool.CreateTimeSeries( for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); + new List() { test_measurements[1], test_measurements[2] })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); @@ -607,7 +645,7 @@ await session_pool.CreateTimeSeries( Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); var res_count = 0; while (res.HasNext()) { @@ -618,7 +656,7 @@ await session_pool.CreateTimeSeries( await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); @@ -632,10 +670,14 @@ public async Task TestInsertTablet() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); var measurement_lst = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + { + test_measurements[1], + test_measurements[2], + test_measurements[3] + }; var value_lst = new List> { new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, @@ -646,7 +688,7 @@ public async Task TestInsertTablet() status = await session_pool.InsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<15"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -673,7 +715,7 @@ public async Task TestInsertTablet() var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -685,7 +727,7 @@ public async Task TestInsertTablet() await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertTablet Passed!"); @@ -699,16 +741,16 @@ public async Task TestInsertTablets() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); var device_id = new List() { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2" + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) }; var measurements_lst = new List>() { - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"} + new() {test_measurements[1], test_measurements[2], test_measurements[3]}, + new() {test_measurements[1], test_measurements[2], test_measurements[3]} }; var values_lst = new List>>() { @@ -735,26 +777,19 @@ public async Task TestInsertTablets() status = await session_pool.InsertTabletsAsync(tablets); // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); - await res.Close(); - // large data test var tasks = new List>(); + // tablets = new List(); for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) { - var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); var local_measurements = new List() - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + {test_measurements[1], test_measurements[2], test_measurements[3]}; var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; var local_timestamp = new List { timestamp }; var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); @@ -767,8 +802,9 @@ public async Task TestInsertTablets() } Task.WaitAll(tasks.ToArray()); + Thread.Sleep(20); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -778,8 +814,9 @@ public async Task TestInsertTablets() } await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertTablets Passed!"); @@ -792,11 +829,11 @@ public async Task TestSetAndDeleteStorageGroup() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert( - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209") == 0); + await session_pool.SetStorageGroup(test_group_name) == 0); System.Diagnostics.Debug.Assert( - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209") == 0); + await session_pool.DeleteStorageGroupAsync(test_group_name) == 0); await session_pool.Close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } @@ -807,26 +844,26 @@ public async Task TestCreateTimeSeries() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); Console.WriteLine("TestCreateTimeSeries Passed!"); } @@ -838,17 +875,17 @@ public async Task TestCreateAlignedTimeseries() var status = 0; if (debug) session_pool.OpenDebugMode(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); - string prefixPath = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); var measurement_lst = new List() { - "TEST_CSHARP_CLIENT_TS1", - "TEST_CSHARP_CLIENT_TS2", - "TEST_CSHARP_CLIENT_TS3", - "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", - "TEST_CSHARP_CLIENT_TS6" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] }; var data_type_lst = new List() { @@ -868,7 +905,7 @@ public async Task TestCreateAlignedTimeseries() status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCreateAlignedTimeSeries Passed!"); @@ -881,15 +918,15 @@ public async Task TestDeleteStorageGroups() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_01"); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_02"); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_03"); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_04"); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_01")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_02")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_03")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_04")); var group_names = new List() { }; - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_01"); - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_02"); - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_03"); - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_04"); + group_names.Add(string.Format("{0}{1}", test_group_name, "_01")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_02")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_03")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_04")); System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); await session_pool.Close(); Console.WriteLine("TestDeleteStorageGroups Passed!"); @@ -903,16 +940,16 @@ public async Task TestCheckTimeSeriesExists() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1])); var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2])); System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestCheckTimeSeriesExists Passed!"); @@ -924,7 +961,7 @@ public async Task TestSetTimeZone() await session_pool.Open(false); if (debug) session_pool.OpenDebugMode(); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); await session_pool.SetTimeZone("GMT+8:00"); System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); @@ -940,55 +977,57 @@ public async Task TestDeleteData() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + { + test_measurements[1], test_measurements[2], test_measurements[3] + }; var values = new List { "test_text", true, (int)123 }; status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(1, values, measures)); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(2, values, measures)); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(3, values, measures)); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(4, values, measures)); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); var ts_path_lst = new List() { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2" + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), }; await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestDeleteData Passed!"); @@ -1002,23 +1041,25 @@ public async Task TestTestInsertRecord() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); System.Diagnostics.Debug.Assert(status == 0); var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + { + test_measurements[1], test_measurements[2], test_measurements[3] + }; var values = new List { "test_text", true, (int)123 }; var tasks = new List>(); var start_ms = DateTime.Now.Ticks / 10000; @@ -1026,14 +1067,14 @@ public async Task TestTestInsertRecord() { var rowRecord = new RowRecord(timestamp, values, measures); var task = session_pool.TestInsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); tasks.Add(task); } Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); Console.WriteLine("TestTestInsertRecordAsync Passed"); } @@ -1046,45 +1087,52 @@ public async Task TestTestInsertRecords() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); System.Diagnostics.Debug.Assert(status == 0); var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] }); measurements_lst.Add(new List() { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] }); var values_lst = new List>() { }; values_lst.Add(new List() { true, (int)123 }); @@ -1102,7 +1150,7 @@ public async Task TestTestInsertRecords() status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -1114,9 +1162,9 @@ public async Task TestTestInsertRecords() var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2" })); + new List() { test_measurements[1], test_measurements[2] })); if (timestamp % fetch_size == 0) { tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); @@ -1127,7 +1175,7 @@ public async Task TestTestInsertRecords() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); res.ShowTableNames(); var record_count = fetch_size * processed_size; var res_count = 0; @@ -1140,7 +1188,7 @@ public async Task TestTestInsertRecords() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertRecords Passed!"); @@ -1154,10 +1202,13 @@ public async Task TestTestInsertTablet() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); var measurement_lst = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + { test_measurements[1], + test_measurements[2], + test_measurements[3] + }; var value_lst = new List> { new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, @@ -1168,7 +1219,7 @@ public async Task TestTestInsertTablet() status = await session_pool.TestInsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<15"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -1195,7 +1246,7 @@ public async Task TestTestInsertTablet() var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -1206,7 +1257,7 @@ public async Task TestTestInsertTablet() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertTablet Passed!"); @@ -1220,16 +1271,16 @@ public async Task TestTestInsertTablets() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + await session_pool.DeleteStorageGroupAsync(test_group_name); var device_id = new List() { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2" + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) }; var measurements_lst = new List>() { - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"} + new() {test_measurements[1], test_measurements[2], test_measurements[3]}, + new() {test_measurements[1], test_measurements[2], test_measurements[3]} }; var values_lst = new List>>() { @@ -1256,16 +1307,9 @@ public async Task TestTestInsertTablets() status = await session_pool.TestInsertTabletsAsync(tablets); // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - await res.Close(); // large data test @@ -1273,9 +1317,9 @@ public async Task TestTestInsertTablets() var tasks = new List>(); for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) { - var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); var local_measurements = new List() - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; + {test_measurements[1], test_measurements[2], test_measurements[3]}; var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; var local_timestamp = new List { timestamp }; var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); @@ -1289,7 +1333,7 @@ public async Task TestTestInsertTablets() Task.WaitAll(tasks.ToArray()); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); res.ShowTableNames(); var res_count = 0; while (res.HasNext()) @@ -1300,7 +1344,7 @@ public async Task TestTestInsertTablets() await res.Close(); System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestTestInsertTablets Passed!"); @@ -1314,31 +1358,31 @@ public async Task TestNonSql() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); status = await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); System.Diagnostics.Debug.Assert(status == 0); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestNonSql Passed"); @@ -1352,23 +1396,23 @@ public async Task TestSqlQuery() if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); res.ShowTableNames(); @@ -1395,12 +1439,12 @@ await session_pool.ExecuteNonQueryStatementAsync( await res.Close(); Console.WriteLine("SELECT sql Passed"); res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("SELECT sql Passed"); diff --git a/src/Apache.IoTDB/IoTDBConstants.cs b/src/Apache.IoTDB/IoTDBConstants.cs index a528d7a..c21299b 100644 --- a/src/Apache.IoTDB/IoTDBConstants.cs +++ b/src/Apache.IoTDB/IoTDBConstants.cs @@ -8,7 +8,7 @@ public enum TSDataType FLOAT, DOUBLE, TEXT, - + // default value must be 0 NONE } @@ -24,7 +24,7 @@ public enum TSEncoding GORILLA_V1, REGULAR, GORILLA, - + // default value must be 0 NONE } @@ -40,4 +40,32 @@ public enum Compressor PLA, LZ4 } + public enum TemplateQueryType + { + COUNT_MEASUREMENTS, + IS_MEASUREMENT, + PATH_EXIST, + SHOW_MEASUREMENTS, + SHOW_TEMPLATES, + SHOW_SET_TEMPLATES, + SHOW_USING_TEMPLATES + } + public class TsFileConstant + { + + public static string TSFILE_SUFFIX = ".tsfile"; + public static string TSFILE_HOME = "TSFILE_HOME"; + public static string TSFILE_CONF = "TSFILE_CONF"; + public static string PATH_ROOT = "root"; + public static string TMP_SUFFIX = "tmp"; + public static string PATH_SEPARATOR = "."; + public static char PATH_SEPARATOR_CHAR = '.'; + public static string PATH_SEPARATER_NO_REGEX = "\\."; + public static char DOUBLE_QUOTE = '"'; + + public static byte TIME_COLUMN_MASK = (byte)0x80; + public static byte VALUE_COLUMN_MASK = (byte)0x40; + + private TsFileConstant() { } + } } \ No newline at end of file diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index a1554e8..ab27d58 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -692,6 +692,33 @@ public async Task InsertTabletAsync(Tablet tablet) _clients.Add(client); } } + public async Task InsertAlignedTabletAsync(Tablet tablet) + { + var client = _clients.Take(); + var req = GenInsertTabletReq(tablet, client.SessionId); + req.IsAligned = true; + + try + { + var status = await client.ServiceClient.insertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Aligned tablet insertion failed", e); + } + finally + { + _clients.Add(client); + } + } + public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessionId) { @@ -751,11 +778,45 @@ public async Task InsertTabletsAsync(List tabletLst) } } + public async Task InsertAlignedTabletsAsync(List tabletLst) + { + var client = _clients.Take(); + var req = GenInsertTabletsReq(tabletLst, client.SessionId); + req.IsAligned = true; + + try + { + var status = await client.ServiceClient.insertTabletsAsync(req); + + if (_debugMode) + { + _logger.Info("insert multiple aligned tablets, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + _clients.Add(client); + + throw new TException("Multiple aligned tablets insertion failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task InsertRecordsOfOneDeviceAsync(string deviceId, List rowRecords) { var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); return await InsertRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); } + public async Task InsertAlignedRecordsOfOneDeviceAsync(string deviceId, List rowRecords) + { + var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); + return await InsertAlignedRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); + } private TSInsertRecordsOfOneDeviceReq GenInsertRecordsOfOneDeviceRequest( string deviceId, @@ -807,6 +868,40 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List _clients.Add(client); } } + public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceId, List rowRecords) + { + var client = _clients.Take(); + + var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); + + if (!_utilFunctions.IsSorted(timestampLst)) + { + throw new TException("insert records of one device error: timestamp not sorted", null); + } + + var req = GenInsertRecordsOfOneDeviceRequest(deviceId, rowRecords, client.SessionId); + req.IsAligned = true; + + try + { + var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.Info("insert aligned records of one device, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Sorted aligned records of one device insertion failed", e); + } + finally + { + _clients.Add(client); + } + } public async Task TestInsertRecordAsync(string deviceId, RowRecord record) { @@ -985,5 +1080,14 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _clients.Add(client); } } + + // public async Task CreateSchemaTemplateAsync(Template template) + // { + + // } + + + + } } \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/InternalNode.cs b/src/Apache.IoTDB/Template/InternalNode.cs new file mode 100644 index 0000000..b90ffb1 --- /dev/null +++ b/src/Apache.IoTDB/Template/InternalNode.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using Thrift; + +namespace Apache.IoTDB +{ + public class InternalNode : TemplateNode + { + private Dictionary children; + private bool shareTime; + public InternalNode(string name, bool shareTime) : base(name) + { + this.children = new Dictionary(); + this.shareTime = shareTime; + } + public override void addChild(TemplateNode node) + { + if (this.children.ContainsKey(node.Name)) + { + throw new Exception("Duplicated child of node in template."); + } + this.children.Add(node.Name, node); + } + + public override void deleteChild(TemplateNode node) + { + if (this.children.ContainsKey(node.Name)) + { + this.children.Remove(node.Name); + } + } + + public override Dictionary getChildren() + { + return this.children; + } + public override bool isShareTime() + { + return this.shareTime; + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/MeasurementNode.cs b/src/Apache.IoTDB/Template/MeasurementNode.cs new file mode 100644 index 0000000..ceb4a5b --- /dev/null +++ b/src/Apache.IoTDB/Template/MeasurementNode.cs @@ -0,0 +1,57 @@ +using System.IO; +using Apache.IoTDB; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB +{ + public class MeasurementNode : TemplateNode + { + private TSDataType dataType; + private TSEncoding encoding; + private Compressor compressor; + public MeasurementNode(string name, TSDataType dataType, TSEncoding encoding, Compressor compressor) : base(name) + { + this.dataType = dataType; + this.encoding = encoding; + this.compressor = compressor; + } + public override bool isMeasurement() + { + return true; + } + public TSDataType DataType + { + get + { + return dataType; + } + } + public TSEncoding Encoding + { + get + { + return encoding; + } + } + public Compressor Compressor + { + get + { + return compressor; + } + } + + public override byte[] ToBytes() + { + var buffer = new ByteBuffer(); + buffer.AddStr(this.Name); + buffer.AddByte((byte)this.DataType); + buffer.AddByte((byte)this.Encoding); + buffer.AddByte((byte)this.Compressor); + return buffer.GetBuffer(); + } + + + + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/Template.cs b/src/Apache.IoTDB/Template/Template.cs new file mode 100644 index 0000000..4b2e3c8 --- /dev/null +++ b/src/Apache.IoTDB/Template/Template.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections.Generic; +using Apache.IoTDB.DataStructure; +using Thrift; +namespace Apache.IoTDB +{ + public class Template + { + private string name; + private Dictionary children; + private bool shareTime; + public Template(string name, bool shareTime) + { + this.name = name; + this.children = new Dictionary(); + this.shareTime = shareTime; + } + public Template(string name) + { + this.name = name; + this.shareTime = false; + } + public string Name + { + get + { + return name; + } + } + public bool ShareTime + { + get + { + return shareTime; + } + set + { + shareTime = value; + } + } + public void addToTemplate(TemplateNode child) + { + if (this.children.ContainsKey(child.Name)) + { + throw new Exception("Duplicated child of node in template."); + } + this.children.Add(child.Name, child); + } + + public void deleteFromTemplate(string name) + { + if (this.children.ContainsKey(name)) + { + this.children.Remove(name); + } + else + { + throw new Exception("It is not a direct child of the template: " + name); + } + } + + public byte[] ToBytes() + { + var buffer = new ByteBuffer(); + var stack = new Stack>(); + var alignedPrefix = new HashSet(); + buffer.AddStr(this.name); + buffer.AddBool(this.shareTime); + if (this.shareTime) + { + alignedPrefix.Add(""); + } + + foreach (var child in this.children.Values) + { + stack.Push(new KeyValuePair("", child)); + } + + while (stack.Count != 0) + { + var pair = stack.Pop(); + var prefix = pair.Key; + var curNode = pair.Value; + var fullPath = prefix; + + if (!curNode.isMeasurement()) + { + if (!"".Equals(prefix)) + { + fullPath += TsFileConstant.PATH_SEPARATOR; + } + fullPath += curNode.Name; + if (curNode.isShareTime()) + { + alignedPrefix.Add(fullPath); + } + + foreach (var child in curNode.getChildren().Values) + { + stack.Push(new KeyValuePair(fullPath, child)); + } + } + else + { + buffer.AddStr(prefix); + if (alignedPrefix.Contains(prefix)) + { + buffer.AddBool(true); + } + else + { + buffer.AddBool(false); + } + foreach (var singleByte in curNode.ToBytes()) + { + buffer.AddByte(singleByte); + } + } + } + return buffer.GetBuffer(); + + } + + + + + + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/TemplateNode.cs b/src/Apache.IoTDB/Template/TemplateNode.cs new file mode 100644 index 0000000..cfe6b00 --- /dev/null +++ b/src/Apache.IoTDB/Template/TemplateNode.cs @@ -0,0 +1,41 @@ +using System.Collections.Generic; +using System.IO; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB +{ + public abstract class TemplateNode + { + private string name; + public TemplateNode(string name) + { + this.name = name; + } + public string Name + { + get + { + return name; + } + } + + public virtual Dictionary getChildren() + { + return null; + } + + public virtual void addChild(TemplateNode node) { } + public virtual void deleteChild(TemplateNode node) { } + public virtual bool isMeasurement() + { + return false; + } + public virtual bool isShareTime() + { + return false; + } + public virtual byte[] ToBytes() + { + return null; + } + } +} \ No newline at end of file From 322e5d8c581b1d9a7c4fc2ccfbe96386cd81212e Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Fri, 8 Apr 2022 11:14:10 +0800 Subject: [PATCH 140/214] add template interfaces --- .../SessionPoolTest.Template.cs | 77 ++++ .../SessionPoolTest.TestRecord.cs | 2 +- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 73 ++-- src/Apache.IoTDB/SessionPool.cs | 368 +++++++++++++++++- src/Apache.IoTDB/Template/Template.cs | 1 + 5 files changed, 483 insertions(+), 38 deletions(-) create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs new file mode 100644 index 0000000..148a45c --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestCreateAndDropSchemaTemplate() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DropSchemaTemplateAsync("template"); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + Console.WriteLine("node1 name : {0}", node1.Name); + + Template template = new Template("template"); + template.addToTemplate(node1); + template.addToTemplate(node2); + template.addToTemplate(node3); + template.addToTemplate(node4); + + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestCreateSchemaTemplate Passed!"); + } + + public async Task TestSetAndUnsetSchemaTemplate() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), "template"); + await session_pool.DropSchemaTemplateAsync("t1"); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + Console.WriteLine("node1 name : {0}", node1.Name); + + Template template = new Template("t1"); + template.addToTemplate(node1); + template.addToTemplate(node2); + template.addToTemplate(node3); + template.addToTemplate(node4); + + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + + status = await session_pool.SetSchemaTemplateAsync("t1", string.Format("{0}.{1}", test_group_name, test_device)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), "t1"); + // status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestSetSchemaTemplate Passed!"); + + + } + } + +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs index 423d896..1fa47f7 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs @@ -114,7 +114,7 @@ public async Task TestInsertAlignedRecordsOfOneDevice() await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - // status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index 964b5b8..e0cbd8c 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -37,6 +37,11 @@ public SessionPoolTest(string _host = "localhost") public void Test() { Task task; + task = TestSetAndUnsetSchemaTemplate(); + task.Wait(); + + // task = TestCreateAndDropSchemaTemplate(); + // task.Wait(); // task = TestInsertAlignedRecord(); // task.Wait(); // task = TestCreateAlignedTimeseries(); @@ -49,40 +54,40 @@ public void Test() // task.Wait(); // task = TestInsertAlignedTablets(); // task.Wait(); - task = TestInsertRecord(); - task.Wait(); - task = TestCreateMultiTimeSeries(); - task.Wait(); - task = TestGetTimeZone(); - task.Wait(); - task = TestInsertStrRecord(); - task.Wait(); - task = TestInsertRecords(); - task.Wait(); - task = TestInsertRecordsOfOneDevice(); - task.Wait(); - task = TestInsertTablet(); - task.Wait(); - task = TestInsertTablets(); - task.Wait(); - task = TestSetAndDeleteStorageGroup(); - task.Wait(); - task = TestCreateTimeSeries(); - task.Wait(); - task = TestDeleteTimeSeries(); - task.Wait(); - task = TestDeleteStorageGroups(); - task.Wait(); - task = TestCheckTimeSeriesExists(); - task.Wait(); - task = TestSetTimeZone(); - task.Wait(); - task = TestDeleteData(); - task.Wait(); - task = TestNonSql(); - task.Wait(); - task = TestSqlQuery(); - task.Wait(); + // task = TestInsertRecord(); + // task.Wait(); + // task = TestCreateMultiTimeSeries(); + // task.Wait(); + // task = TestGetTimeZone(); + // task.Wait(); + // task = TestInsertStrRecord(); + // task.Wait(); + // task = TestInsertRecords(); + // task.Wait(); + // task = TestInsertRecordsOfOneDevice(); + // task.Wait(); + // task = TestInsertTablet(); + // task.Wait(); + // task = TestInsertTablets(); + // task.Wait(); + // task = TestSetAndDeleteStorageGroup(); + // task.Wait(); + // task = TestCreateTimeSeries(); + // task.Wait(); + // task = TestDeleteTimeSeries(); + // task.Wait(); + // task = TestDeleteStorageGroups(); + // task.Wait(); + // task = TestCheckTimeSeriesExists(); + // task.Wait(); + // task = TestSetTimeZone(); + // task.Wait(); + // task = TestDeleteData(); + // task.Wait(); + // task = TestNonSql(); + // task.Wait(); + // task = TestSqlQuery(); + // task.Wait(); } public async Task TestInsertRecord() diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index ab27d58..43b561f 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -1081,10 +1081,372 @@ public async Task ExecuteNonQueryStatementAsync(string sql) } } - // public async Task CreateSchemaTemplateAsync(Template template) - // { + public async Task CreateSchemaTemplateAsync(Template template) + { + var client = _clients.Take(); + var req = new TSCreateSchemaTemplateReq(client.SessionId, template.Name, template.ToBytes()); + try + { + var status = await client.ServiceClient.createSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("create schema template {0} message: {1}", template.Name, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template creation failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task DropSchemaTemplateAsync(string templateName) + { + var client = _clients.Take(); + var req = new TSDropSchemaTemplateReq(client.SessionId, templateName); + try + { + var status = await client.ServiceClient.dropSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("drop schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template drop failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task SetSchemaTemplateAsync(string templateName, string prefixPath) + { + var client = _clients.Take(); + var req = new TSSetSchemaTemplateReq(client.SessionId, templateName, prefixPath); + try + { + var status = await client.ServiceClient.setSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("set schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template setting failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task UnsetSchemaTemplateAsync(string prefixPath, string templateName) + { + var client = _clients.Take(); + var req = new TSUnsetSchemaTemplateReq(client.SessionId, prefixPath, templateName); + try + { + var status = await client.ServiceClient.unsetSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("unset schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template unsetting failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task AddAlignedMeasurementsInTemplateAsync(string templateName, List measurementNodes) + { + var client = _clients.Take(); + var measurements = measurementNodes.ConvertAll(m => m.Name); + var dataTypes = measurementNodes.ConvertAll(m => (int)m.DataType); + var encodings = measurementNodes.ConvertAll(m => (int)m.Encoding); + var compressors = measurementNodes.ConvertAll(m => (int)m.Compressor); + var req = new TSAppendSchemaTemplateReq(client.SessionId, templateName, true, measurements, dataTypes, encodings, compressors); + try + { + var status = await client.ServiceClient.appendSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("add aligned measurements in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("add aligned measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task AddUnalignedMeasurementsInTemplateAsync(string templateName, List measurementNodes) + { + var client = _clients.Take(); + var measurements = measurementNodes.ConvertAll(m => m.Name); + var dataTypes = measurementNodes.ConvertAll(m => (int)m.DataType); + var encodings = measurementNodes.ConvertAll(m => (int)m.Encoding); + var compressors = measurementNodes.ConvertAll(m => (int)m.Compressor); + var req = new TSAppendSchemaTemplateReq(client.SessionId, templateName, false, measurements, dataTypes, encodings, compressors); + try + { + var status = await client.ServiceClient.appendSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("add unaligned measurements in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("add unaligned measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task DeleteNodeInTemplateAsync(string templateName, string path) + { + var client = _clients.Take(); + var req = new TSPruneSchemaTemplateReq(client.SessionId, templateName, path); + try + { + var status = await client.ServiceClient.pruneSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("delete node in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("delete node in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task CountMeasurementsInTemplateAsync(string name) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, name, (int)TemplateQueryType.COUNT_MEASUREMENTS); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("count measurements in template {0} message: {1}", name, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Count; + } + catch (TException e) + { + throw new TException("count measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task IsMeasurementInTemplateAsync(string templateName, string path) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.IS_MEASUREMENT); + req.Measurement = path; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("is measurement in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Result; + } + catch (TException e) + { + throw new TException("is measurement in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task IsPathExistInTemplate(string templateName, string path) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.PATH_EXIST); + req.Measurement = path; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("is path exist in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Result; + } + catch (TException e) + { + throw new TException("is path exist in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task> ShowMeasurementsInTemplateAsync(string templateName, string pattern = "") + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.SHOW_MEASUREMENTS); + req.Measurement = pattern; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get measurements in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task> ShowAllTemplatesAsync() + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, "", (int)TemplateQueryType.SHOW_TEMPLATES); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get all templates message: {0}", status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get all templates failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task> ShowPathsTemplateSetOnAsync(string templateName) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.SHOW_SET_TEMPLATES); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get paths template set on {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get paths template set on failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task> ShowPathsTemplateUsingOnAsync(string templateName) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.SHOW_USING_TEMPLATES); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get paths template using on {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get paths template using on failed", e); + } + finally + { + _clients.Add(client); + } + } + + + + - // } diff --git a/src/Apache.IoTDB/Template/Template.cs b/src/Apache.IoTDB/Template/Template.cs index 4b2e3c8..dcc9467 100644 --- a/src/Apache.IoTDB/Template/Template.cs +++ b/src/Apache.IoTDB/Template/Template.cs @@ -18,6 +18,7 @@ public Template(string name, bool shareTime) public Template(string name) { this.name = name; + this.children = new Dictionary(); this.shareTime = false; } public string Name From 2b386da3493b1aec3879b1090b4ae9ea9b42a121 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Fri, 8 Apr 2022 16:30:48 +0800 Subject: [PATCH 141/214] add some schema test --- .../SessionPoolTest.Template.cs | 99 +++++++++++++++++-- .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 12 ++- src/Apache.IoTDB/Template/Template.cs | 5 - 3 files changed, 97 insertions(+), 19 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs index 148a45c..da7ee3d 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -15,7 +15,7 @@ public async Task TestCreateAndDropSchemaTemplate() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; - await session_pool.DropSchemaTemplateAsync("template"); + await session_pool.DropSchemaTemplateAsync(test_template_name); MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); @@ -23,7 +23,7 @@ public async Task TestCreateAndDropSchemaTemplate() MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); Console.WriteLine("node1 name : {0}", node1.Name); - Template template = new Template("template"); + Template template = new Template(test_template_name); template.addToTemplate(node1); template.addToTemplate(node2); template.addToTemplate(node3); @@ -31,9 +31,15 @@ public async Task TestCreateAndDropSchemaTemplate() status = await session_pool.CreateSchemaTemplateAsync(template); System.Diagnostics.Debug.Assert(status == 0); + var templates = await session_pool.ShowAllTemplatesAsync(); + foreach (var t in templates) + { + Console.WriteLine("template name :\t{0}", t); + } + status = await session_pool.DropSchemaTemplateAsync(test_template_name); status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); - Console.WriteLine("TestCreateSchemaTemplate Passed!"); + Console.WriteLine("TestCreateAndDropSchemaTemplate Passed!"); } public async Task TestSetAndUnsetSchemaTemplate() @@ -46,15 +52,14 @@ public async Task TestSetAndUnsetSchemaTemplate() var status = 0; await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), "template"); - await session_pool.DropSchemaTemplateAsync("t1"); + await session_pool.DropSchemaTemplateAsync(test_template_name); MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - Console.WriteLine("node1 name : {0}", node1.Name); - Template template = new Template("t1"); + Template template = new Template(test_template_name); template.addToTemplate(node1); template.addToTemplate(node2); template.addToTemplate(node3); @@ -62,15 +67,89 @@ public async Task TestSetAndUnsetSchemaTemplate() status = await session_pool.CreateSchemaTemplateAsync(template); System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); + System.Diagnostics.Debug.Assert(status == 0); + var paths = await session_pool.ShowPathsTemplateSetOnAsync(test_template_name); + foreach (var p in paths) + { + Console.WriteLine("path :\t{0}", p); + } + status = await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), test_template_name); + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestSetAndUnsetSchemaTemplate Passed!"); + } + public async Task TestAddAlignedMeasurements() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); - status = await session_pool.SetSchemaTemplateAsync("t1", string.Format("{0}.{1}", test_group_name, test_device)); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + var measurements = new List() { node3, node4 }; + + Template template = new Template(test_template_name, true); + template.addToTemplate(node1); + template.addToTemplate(node2); + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.AddAlignedMeasurementsInTemplateAsync(test_template_name, measurements); + System.Diagnostics.Debug.Assert(status == 0); + var measurements_get = await session_pool.ShowMeasurementsInTemplateAsync(test_template_name); + foreach (var m in measurements_get) + { + Console.WriteLine("measurement :\t{0}", m); + } + // status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); + // System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DropSchemaTemplateAsync(test_template_name); System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), "t1"); - // status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); - Console.WriteLine("TestSetSchemaTemplate Passed!"); + Console.WriteLine("TestAddAlignedMeasurements Passed!"); + } + public async Task TestAddUnalignedMeasurements() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.DropSchemaTemplateAsync(test_template_name); + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + var measurements = new List() { node1, node2, node3, node4 }; + + Template template = new Template(test_template_name); + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); + System.Diagnostics.Debug.Assert(status == 0); + var measurements_get = await session_pool.ShowMeasurementsInTemplateAsync(test_template_name); + foreach (var m in measurements_get) + { + Console.WriteLine("measurement :\t{0}", m); + } + // status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); + // System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestAddUnalignedMeasurements Passed!"); } } diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs index e0cbd8c..8aaaf59 100644 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs @@ -16,6 +16,7 @@ public partial class SessionPoolTest public int processed_size = 4; public bool debug = false; private int pool_size = 2; + public static string test_template_name = "TEST_CSHARP_CLIENT_TEMPLATE_97209"; public static string test_group_name = "root.GROUP_92709"; public static string test_device = "device_"; public static string test_measurement = "ts"; @@ -23,10 +24,10 @@ public partial class SessionPoolTest public static List measurement_count = new List() { 0, 1, 2, 3, 4, 5, 6 }; public static List test_devices = new List( device_count.ConvertAll(x => test_device + x.ToString()).ToArray() - ); + ); public List test_measurements = new List( measurement_count.ConvertAll(x => test_measurement + x.ToString()).ToArray() - ); + ); public SessionPoolTest(string _host = "localhost") @@ -37,9 +38,12 @@ public SessionPoolTest(string _host = "localhost") public void Test() { Task task; - task = TestSetAndUnsetSchemaTemplate(); + task = TestAddAlignedMeasurements(); task.Wait(); - + // task = TestAddUnalignedMeasurements(); + // task.Wait(); + // task = TestSetAndUnsetSchemaTemplate(); + // task.Wait(); // task = TestCreateAndDropSchemaTemplate(); // task.Wait(); // task = TestInsertAlignedRecord(); diff --git a/src/Apache.IoTDB/Template/Template.cs b/src/Apache.IoTDB/Template/Template.cs index dcc9467..fc37278 100644 --- a/src/Apache.IoTDB/Template/Template.cs +++ b/src/Apache.IoTDB/Template/Template.cs @@ -121,10 +121,5 @@ public byte[] ToBytes() return buffer.GetBuffer(); } - - - - - } } \ No newline at end of file From 911edb28e677d1569e49ac8380e665e00586f62d Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Fri, 8 Apr 2022 16:39:03 +0800 Subject: [PATCH 142/214] change file name --- .../{SessionPoolTest.TestRecord.cs => SessionPoolTest.Record.cs} | 0 .../{SessionPoolTest.TestTablet.cs => SessionPoolTest.Tablet.cs} | 0 samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs | 1 + 3 files changed, 1 insertion(+) rename samples/Apache.IoTDB.Samples/{SessionPoolTest.TestRecord.cs => SessionPoolTest.Record.cs} (100%) rename samples/Apache.IoTDB.Samples/{SessionPoolTest.TestTablet.cs => SessionPoolTest.Tablet.cs} (100%) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs similarity index 100% rename from samples/Apache.IoTDB.Samples/SessionPoolTest.TestRecord.cs rename to samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestTablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs similarity index 100% rename from samples/Apache.IoTDB.Samples/SessionPoolTest.TestTablet.cs rename to samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs index da7ee3d..cffa333 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -37,6 +37,7 @@ public async Task TestCreateAndDropSchemaTemplate() Console.WriteLine("template name :\t{0}", t); } status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.DeleteStorageGroupAsync(test_group_name); await session_pool.Close(); Console.WriteLine("TestCreateAndDropSchemaTemplate Passed!"); From 98be04398780f49e43488393d6cd6d22a9f0c87f Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Wed, 13 Apr 2022 16:53:12 +0800 Subject: [PATCH 143/214] add tests for all interfaces --- .../SessionPoolTest.AlignedRecord.cs | 279 ++++ .../SessionPoolTest.AlignedTablet.cs | 169 ++ .../SessionPoolTest.Record.cs | 260 ++- .../SessionPoolTest.Tablet.cs | 40 +- .../SessionPoolTest.Template.cs | 50 +- .../SessionPoolTest.TestNetwork.cs | 328 ++++ .../SessionPoolTest.TimeSeries.cs | 178 ++ .../Apache.IoTDB.Samples/SessionPoolTest.cs | 332 ++++ .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 1462 ----------------- 9 files changed, 1581 insertions(+), 1517 deletions(-) create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.cs delete mode 100644 samples/Apache.IoTDB.Samples/SessioonPoolTest.cs diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs new file mode 100644 index 0000000..4893036 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs @@ -0,0 +1,279 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertAlignedRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List { test_measurements[1], test_measurements[2], test_measurements[3] }; + var types = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var encodings = new List { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressors = new List { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurements, types, encodings, compressors); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List + { test_measurements[1], test_measurements[2], test_measurements[3] }; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.InsertAlignedRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + tasks.Add(task); + } + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecordAsync Passed"); + } + public async Task TestInsertAlignedRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.InsertAlignedRecordsAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine(status); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecords Passed!"); + } + public async Task TestInsertAlignedRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + status = await session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords)); + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs new file mode 100644 index 0000000..a648b72 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs @@ -0,0 +1,169 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertAlignedTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List + { test_measurements[1], + test_measurements[2], + test_measurements[3] + }; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List { 1, 2, 3 }; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.InsertAlignedTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); + if (timestamp % fetch_size == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.InsertAlignedTabletAsync(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + Console.WriteLine(tasks.Count); + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedTablet Passed!"); + } + + public async Task TestInsertAlignedTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = new List() + { + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) + }; + var measurements_lst = new List>() + { + new() {test_measurements[1], test_measurements[2], test_measurements[3] }, + new() {test_measurements[1], test_measurements[2], test_measurements[3] } + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.InsertAlignedTabletsAsync(tablets); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + // large data test + var tasks = new List>(); + // tablets = new List() { }; + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); + var local_measurements = new List() + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedTabletsAsync(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedTablets Passed!"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs index 1fa47f7..42b680a 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs @@ -8,7 +8,113 @@ namespace Apache.IoTDB.Samples { public partial class SessionPoolTest { - public async Task TestInsertAlignedRecordsOfOneDevice() + + public async Task TestInsertRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert aligned record time is {0}", end_ms - start_ms)); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertRecordAsync Passed"); + } + public async Task TestInsertStrRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List { test_measurements[1], test_measurements[2] }; + var values = new List { (int)1, (int)2 }; + var rowRecord = new RowRecord(1, values, measures); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<2"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + + var tasks = new List>(); + // large data test + var rowRecords = new List() { }; + for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) + rowRecords.Add(new RowRecord(timestamp, values, measures)); + + for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) + { + var task = session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecords[timestamp - 2]); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertStrRecord Passed!"); + } + public async Task TestInsertRecords() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); @@ -17,9 +123,44 @@ public async Task TestInsertAlignedRecordsOfOneDevice() System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); - string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); - var measurement_lst = new List() + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2], @@ -27,27 +168,101 @@ public async Task TestInsertAlignedRecordsOfOneDevice() test_measurements[4], test_measurements[5], test_measurements[6] - }; - var data_type_lst = new List() + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, - TSDataType.TEXT - }; - var encoding_lst = new List() + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.InsertRecordsAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine(status); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; + res.Next(); + res_count += 1; + } - status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, - compressor_lst); + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertRecords Passed!"); + } + public async Task TestInsertRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); var device_id = string.Format("{0}.{1}", test_group_name, test_device); var measurements_lst = new List>() { }; measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); @@ -79,7 +294,8 @@ public async Task TestInsertAlignedRecordsOfOneDevice() var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); rowRecords.Add(rowRecord); } - status = await session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords); + + status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); @@ -87,6 +303,7 @@ public async Task TestInsertAlignedRecordsOfOneDevice() while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); + // large data test rowRecords = new List() { }; var tasks = new List>(); for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) @@ -95,13 +312,12 @@ public async Task TestInsertAlignedRecordsOfOneDevice() new List() { test_measurements[1], test_measurements[2] })); if (timestamp % fetch_size == 0) { - tasks.Add(session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords)); + tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); rowRecords = new List() { }; } } Task.WaitAll(tasks.ToArray()); - Thread.Sleep(20); res = await session_pool.ExecuteQueryStatementAsync( "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); var res_count = 0; @@ -117,7 +333,7 @@ public async Task TestInsertAlignedRecordsOfOneDevice() status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); - Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); + Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); } } } \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs index ace48a4..f6c16f0 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs @@ -8,7 +8,7 @@ namespace Apache.IoTDB.Samples { public partial class SessionPoolTest { - public async Task TestInsertAlignedTablet() + public async Task TestInsertTablet() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; @@ -19,10 +19,11 @@ public async Task TestInsertAlignedTablet() await session_pool.DeleteStorageGroupAsync(test_group_name); var device_id = string.Format("{0}.{1}", test_group_name, test_device); var measurement_lst = new List - { test_measurements[1], + { + test_measurements[1], test_measurements[2], test_measurements[3] - }; + }; var value_lst = new List> { new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, @@ -30,10 +31,10 @@ public async Task TestInsertAlignedTablet() }; var timestamp_lst = new List { 1, 2, 3 }; var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.InsertAlignedTabletAsync(tablet); + status = await session_pool.InsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); @@ -50,18 +51,15 @@ public async Task TestInsertAlignedTablet() if (timestamp % fetch_size == 0) { tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.InsertAlignedTabletAsync(tablet)); + tasks.Add(session_pool.InsertTabletAsync(tablet)); value_lst = new List>() { }; timestamp_lst = new List() { }; } } - Console.WriteLine(tasks.Count); Task.WaitAll(tasks.ToArray()); var end_ms = DateTime.Now.Ticks / 10000; Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - // 这个地方为什么睡6毫秒就过了,注释掉就过不了……,而且好精确啊…… - Thread.Sleep(20); res = await session_pool.ExecuteQueryStatementAsync( "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); res.ShowTableNames(); @@ -75,13 +73,13 @@ public async Task TestInsertAlignedTablet() await res.Close(); Console.WriteLine(res_count + " " + fetch_size * processed_size); System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - // status = await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); - Console.WriteLine("TestInsertAlignedTablet Passed!"); + Console.WriteLine("TestInsertTablet Passed!"); } - public async Task TestInsertAlignedTablets() + public async Task TestInsertTablets() { var session_pool = new SessionPool(host, port, pool_size); var status = 0; @@ -97,8 +95,8 @@ public async Task TestInsertAlignedTablets() }; var measurements_lst = new List>() { - new() {test_measurements[1], test_measurements[2], test_measurements[3] }, - new() {test_measurements[1], test_measurements[2], test_measurements[3] } + new() {test_measurements[1], test_measurements[2], test_measurements[3]}, + new() {test_measurements[1], test_measurements[2], test_measurements[3]} }; var values_lst = new List>>() { @@ -122,16 +120,17 @@ public async Task TestInsertAlignedTablets() tablets.Add(tablet); } - status = await session_pool.InsertAlignedTabletsAsync(tablets); - System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertTabletsAsync(tablets); + // System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); res.ShowTableNames(); while (res.HasNext()) Console.WriteLine(res.Next()); // large data test + var tasks = new List>(); - // tablets = new List() { }; + // tablets = new List(); for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) { var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); @@ -143,14 +142,12 @@ public async Task TestInsertAlignedTablets() tablets.Add(tablet); if (timestamp % fetch_size == 0) { - Console.WriteLine(string.Format("insert {0} tablets", tablets.Count)); - tasks.Add(session_pool.InsertAlignedTabletsAsync(tablets)); + tasks.Add(session_pool.InsertTabletsAsync(tablets)); tablets = new List() { }; } } Task.WaitAll(tasks.ToArray()); - Thread.Sleep(20); res = await session_pool.ExecuteQueryStatementAsync( "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); res.ShowTableNames(); @@ -167,8 +164,7 @@ public async Task TestInsertAlignedTablets() status = await session_pool.DeleteStorageGroupAsync(test_group_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); - Console.WriteLine("TestInsertAlignedTablets Passed!"); + Console.WriteLine("TestInsertTablets Passed!"); } - } } diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs index cffa333..b43856f 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -21,7 +21,6 @@ public async Task TestCreateAndDropSchemaTemplate() MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - Console.WriteLine("node1 name : {0}", node1.Name); Template template = new Template(test_template_name); template.addToTemplate(node1); @@ -106,13 +105,12 @@ public async Task TestAddAlignedMeasurements() System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.AddAlignedMeasurementsInTemplateAsync(test_template_name, measurements); System.Diagnostics.Debug.Assert(status == 0); - var measurements_get = await session_pool.ShowMeasurementsInTemplateAsync(test_template_name); - foreach (var m in measurements_get) + var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(measurements_count == 4); + foreach (var m in measurements) { - Console.WriteLine("measurement :\t{0}", m); + System.Diagnostics.Debug.Assert(await session_pool.IsMeasurementInTemplateAsync(test_template_name, m.Name)); } - // status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); - // System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.DropSchemaTemplateAsync(test_template_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); @@ -140,18 +138,48 @@ public async Task TestAddUnalignedMeasurements() System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); System.Diagnostics.Debug.Assert(status == 0); - var measurements_get = await session_pool.ShowMeasurementsInTemplateAsync(test_template_name); - foreach (var m in measurements_get) + var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(measurements_count == 4); + foreach (var m in measurements) { - Console.WriteLine("measurement :\t{0}", m); + System.Diagnostics.Debug.Assert(await session_pool.IsPathExistInTemplate(test_template_name, m.Name)); } - // status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); - // System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.DropSchemaTemplateAsync(test_template_name); System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestAddUnalignedMeasurements Passed!"); } + public async Task TestDeleteNodeInTemplate() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + var measurements = new List() { node1, node2, node3, node4 }; + + Template template = new Template(test_template_name); + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); + + status = await session_pool.DeleteNodeInTemplateAsync(test_template_name, test_measurements[1]); + var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(measurements_count == 3); + System.Diagnostics.Debug.Assert(!await session_pool.IsPathExistInTemplate(test_template_name, test_measurements[1])); + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestDeleteNodeInTemplate Passed!"); + } } } \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs new file mode 100644 index 0000000..be18392 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs @@ -0,0 +1,328 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestTestInsertRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List + { + test_measurements[1], test_measurements[2], test_measurements[3] + }; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.TestInsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestTestInsertRecordAsync Passed"); + } + + public async Task TestTestInsertRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + System.Diagnostics.Debug.Assert(res_count == 0); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestTestInsertRecords Passed!"); + } + + public async Task TestTestInsertTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List + { test_measurements[1], + test_measurements[2], + test_measurements[3] + }; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List { 2, 1, 3 }; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.TestInsertTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); + if (timestamp % (fetch_size / 32) == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.TestInsertTabletAsync(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestTestInsertTablet Passed!"); + } + + public async Task TestTestInsertTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = new List() + { + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) + }; + var measurements_lst = new List>() + { + new() {test_measurements[1], test_measurements[2], test_measurements[3]}, + new() {test_measurements[1], test_measurements[2], test_measurements[3]} + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.TestInsertTabletsAsync(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + await res.Close(); + + // large data test + + var tasks = new List>(); + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); + var local_measurements = new List() + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.TestInsertTabletsAsync(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestTestInsertTablets Passed!"); + } + + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs new file mode 100644 index 0000000..1fd6197 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs @@ -0,0 +1,178 @@ + +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestCreateMultiTimeSeries() + { + // by Luzhan + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; + var ts_path_lst = new List(measurement_lst.ConvertAll( + (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCreateMultiTimeSeries Passed!"); + } + + public async Task TestDeleteTimeSeries() + { + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; + var ts_path_lst = new List(measurement_lst.ConvertAll( + (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteTimeSeriesAsync(ts_path_lst); + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestDeleteTimeSeries Passed!"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + } + public async Task TestCreateTimeSeries() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestCreateTimeSeries Passed!"); + } + + public async Task TestCreateAlignedTimeseries() + { + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCreateAlignedTimeSeries Passed!"); + } + public async Task TestCheckTimeSeriesExists() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1])); + var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2])); + System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCheckTimeSeriesExists Passed!"); + } + } + +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs new file mode 100644 index 0000000..5a24a22 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -0,0 +1,332 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public string host = "localhost"; + public int port = 6667; + public string user = "root"; + public string passwd = "root"; + public int fetch_size = 500; + public int processed_size = 4; + public bool debug = false; + private int pool_size = 2; + public static string test_template_name = "TEST_CSHARP_CLIENT_TEMPLATE_97209"; + public static string test_group_name = "root.TEST_CSHARP_CLIENT_GROUP_97209"; + public static string test_device = "TEST_CSHARP_CLIENT_DEVICE"; + public static string test_measurement = "TEST_CSHARP_CLIENT_TS"; + public static List device_count = new List() { 0, 1, 2, 3 }; + public static List measurement_count = new List() { 0, 1, 2, 3, 4, 5, 6 }; + public static List test_devices = new List( + device_count.ConvertAll(x => test_device + x.ToString()).ToArray() + ); + public List test_measurements = new List( + measurement_count.ConvertAll(x => test_measurement + x.ToString()).ToArray() + ); + + + public SessionPoolTest(string _host = "localhost") + { + host = _host; + } + + public void Test() + { + Task task; + + task = TestInsertAlignedRecord(); + task.Wait(); + task = TestInsertAlignedRecords(); + task.Wait(); + task = TestInsertAlignedRecordsOfOneDevice(); + task.Wait(); + task = TestInsertAlignedTablet(); + task.Wait(); + task = TestInsertAlignedTablets(); + task.Wait(); + task = TestInsertRecord(); + task.Wait(); + task = TestCreateMultiTimeSeries(); + task.Wait(); + task = TestInsertStrRecord(); + task.Wait(); + task = TestInsertRecords(); + task.Wait(); + task = TestInsertRecordsOfOneDevice(); + task.Wait(); + task = TestInsertTablet(); + task.Wait(); + task = TestInsertTablets(); + task.Wait(); + task = TestAddAlignedMeasurements(); + task.Wait(); + task = TestAddUnalignedMeasurements(); + task.Wait(); + task = TestSetAndUnsetSchemaTemplate(); + task.Wait(); + task = TestCreateAlignedTimeseries(); + task.Wait(); + task = TestCreateAndDropSchemaTemplate(); + task.Wait(); + task = TestDeleteNodeInTemplate(); + task.Wait(); + task = TestGetTimeZone(); + task.Wait(); + task = TestSetAndDeleteStorageGroup(); + task.Wait(); + task = TestCreateTimeSeries(); + task.Wait(); + task = TestDeleteTimeSeries(); + task.Wait(); + task = TestDeleteStorageGroups(); + task.Wait(); + task = TestCheckTimeSeriesExists(); + task.Wait(); + task = TestSetTimeZone(); + task.Wait(); + task = TestDeleteData(); + task.Wait(); + task = TestNonSql(); + task.Wait(); + task = TestSqlQuery(); + task.Wait(); + } + + public async Task TestGetTimeZone() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var time_zone = await session_pool.GetTimeZone(); + System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); + await session_pool.Close(); + Console.WriteLine("TestGetTimeZone Passed!"); + } + + + + public async Task TestSetAndDeleteStorageGroup() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert( + await session_pool.SetStorageGroup(test_group_name) == 0); + System.Diagnostics.Debug.Assert( + await session_pool.DeleteStorageGroupAsync(test_group_name) == 0); + await session_pool.Close(); + Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); + } + + + public async Task TestDeleteStorageGroups() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_01")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_02")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_03")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_04")); + var group_names = new List() { }; + group_names.Add(string.Format("{0}{1}", test_group_name, "_01")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_02")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_03")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_04")); + System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); + await session_pool.Close(); + Console.WriteLine("TestDeleteStorageGroups Passed!"); + } + + + public async Task TestSetTimeZone() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.SetTimeZone("GMT+8:00"); + System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); + await session_pool.Close(); + Console.WriteLine("TestSetTimeZone Passed!"); + } + + public async Task TestDeleteData() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List + { + test_measurements[1], test_measurements[2], test_measurements[3] + }; + var values = new List { "test_text", true, (int)123 }; + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(1, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(2, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(3, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(4, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + var ts_path_lst = new List() + { + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + }; + await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestDeleteData Passed!"); + } + + public async Task TestNonSql() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); + status = await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestNonSql Passed"); + } + + public async Task TestSqlQuery() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + + var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); + res = await session_pool.ExecuteQueryStatementAsync("show devices"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("SHOW DEVICES sql passed!"); + res = await session_pool.ExecuteQueryStatementAsync("COUNT TIMESERIES root"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("COUNT TIMESERIES root sql Passed"); + res = await session_pool.ExecuteQueryStatementAsync("select * from root.ln.wf01 where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("SELECT sql Passed"); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("SELECT sql Passed"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs deleted file mode 100644 index 8aaaf59..0000000 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ /dev/null @@ -1,1462 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using Apache.IoTDB.DataStructure; - -namespace Apache.IoTDB.Samples -{ - public partial class SessionPoolTest - { - public string host = "localhost"; - public int port = 6667; - public string user = "root"; - public string passwd = "root"; - public int fetch_size = 50000; - public int processed_size = 4; - public bool debug = false; - private int pool_size = 2; - public static string test_template_name = "TEST_CSHARP_CLIENT_TEMPLATE_97209"; - public static string test_group_name = "root.GROUP_92709"; - public static string test_device = "device_"; - public static string test_measurement = "ts"; - public static List device_count = new List() { 0, 1, 2, 3 }; - public static List measurement_count = new List() { 0, 1, 2, 3, 4, 5, 6 }; - public static List test_devices = new List( - device_count.ConvertAll(x => test_device + x.ToString()).ToArray() - ); - public List test_measurements = new List( - measurement_count.ConvertAll(x => test_measurement + x.ToString()).ToArray() - ); - - - public SessionPoolTest(string _host = "localhost") - { - host = _host; - } - - public void Test() - { - Task task; - task = TestAddAlignedMeasurements(); - task.Wait(); - // task = TestAddUnalignedMeasurements(); - // task.Wait(); - // task = TestSetAndUnsetSchemaTemplate(); - // task.Wait(); - // task = TestCreateAndDropSchemaTemplate(); - // task.Wait(); - // task = TestInsertAlignedRecord(); - // task.Wait(); - // task = TestCreateAlignedTimeseries(); - // task.Wait(); - // task = TestInsertAlignedRecords(); - // task.Wait(); - // task = TestInsertAlignedRecordsOfOneDevice(); - // task.Wait(); - // task = TestInsertAlignedTablet(); - // task.Wait(); - // task = TestInsertAlignedTablets(); - // task.Wait(); - // task = TestInsertRecord(); - // task.Wait(); - // task = TestCreateMultiTimeSeries(); - // task.Wait(); - // task = TestGetTimeZone(); - // task.Wait(); - // task = TestInsertStrRecord(); - // task.Wait(); - // task = TestInsertRecords(); - // task.Wait(); - // task = TestInsertRecordsOfOneDevice(); - // task.Wait(); - // task = TestInsertTablet(); - // task.Wait(); - // task = TestInsertTablets(); - // task.Wait(); - // task = TestSetAndDeleteStorageGroup(); - // task.Wait(); - // task = TestCreateTimeSeries(); - // task.Wait(); - // task = TestDeleteTimeSeries(); - // task.Wait(); - // task = TestDeleteStorageGroups(); - // task.Wait(); - // task = TestCheckTimeSeriesExists(); - // task.Wait(); - // task = TestSetTimeZone(); - // task.Wait(); - // task = TestDeleteData(); - // task.Wait(); - // task = TestNonSql(); - // task.Wait(); - // task = TestSqlQuery(); - // task.Wait(); - } - - public async Task TestInsertRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List - {test_measurements[1], test_measurements[2], test_measurements[3]}; - var values = new List { "test_text", true, (int)123 }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) - { - var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), rowRecord); - tasks.Add(task); - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total insert aligned record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.Close(); - Console.WriteLine("TestInsertRecordAsync Passed"); - } - - public async Task TestInsertAlignedRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - - string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); - var measurements = new List { test_measurements[1], test_measurements[2], test_measurements[3] }; - var types = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; - var encodings = new List { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; - var compressors = new List { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }; - status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurements, types, encodings, compressors); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List - { test_measurements[1], test_measurements[2], test_measurements[3] }; - var values = new List { "test_text", true, (int)123 }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) - { - var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.InsertAlignedRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), rowRecord); - tasks.Add(task); - } - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.Close(); - Console.WriteLine("TestInsertAlignedRecordAsync Passed"); - } - - public async Task TestCreateMultiTimeSeries() - { - // by Luzhan - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.Open(false); - var status = 0; - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; - var ts_path_lst = new List(measurement_lst.ConvertAll( - (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); - var data_type_lst = new List() - { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, - TSDataType.TEXT - }; - var encoding_lst = new List() - { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() - { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; - status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, - compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestCreateMultiTimeSeries Passed!"); - } - - public async Task TestDeleteTimeSeries() - { - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.Open(false); - var status = 0; - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; - var ts_path_lst = new List(measurement_lst.ConvertAll( - (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); - var data_type_lst = new List() - { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, - TSDataType.TEXT - }; - var encoding_lst = new List() - { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() - { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; - status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, - compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteTimeSeriesAsync(ts_path_lst); - System.Diagnostics.Debug.Assert(status == 0); - Console.WriteLine("TestDeleteTimeSeries Passed!"); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.Close(); - } - - public async Task TestGetTimeZone() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var time_zone = await session_pool.GetTimeZone(); - System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); - await session_pool.Close(); - Console.WriteLine("TestGetTimeZone Passed!"); - } - - public async Task TestInsertStrRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync(test_group_name); - - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List { test_measurements[1], test_measurements[2] }; - var values = new List { (int)1, (int)2 }; - var rowRecord = new RowRecord(1, values, measures); - status = await session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), rowRecord); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<2"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - - var tasks = new List>(); - // large data test - var rowRecords = new List() { }; - for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) - rowRecords.Add(new RowRecord(timestamp, values, measures)); - - for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) - { - var task = session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), rowRecords[timestamp - 2]); - tasks.Add(task); - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.Close(); - Console.WriteLine("TestInsertStrRecord Passed!"); - } - - public async Task TestInsertRecords() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); - - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4] - }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4], - test_measurements[5], - test_measurements[6] - }); - var values_lst = new List>() { }; - values_lst.Add(new List() { true, (int)123 }); - values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() { 1, 2, 3 }; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.InsertRecordsAsync(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine(status); - - // large data test - device_id = new List() { }; - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); - rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { test_measurements[1], test_measurements[2] })); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); - device_id = new List() { }; - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - res.ShowTableNames(); - var record_count = fetch_size * processed_size; - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == record_count); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertRecords Passed!"); - } - - public async Task TestInsertAlignedRecords() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - - string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); - var measurement_lst = new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4], - test_measurements[5], - test_measurements[6] - }; - var data_type_lst = new List() - { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, - TSDataType.TEXT - }; - var encoding_lst = new List() - { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() - { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; - status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, - compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - - var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4] - }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4], - test_measurements[5], - test_measurements[6] - }); - var values_lst = new List>() { }; - values_lst.Add(new List() { true, (int)123 }); - values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() { 1, 2, 3 }; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.InsertAlignedRecordsAsync(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine(status); - - // large data test - device_id = new List() { }; - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); - rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { test_measurements[1], test_measurements[2] })); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertAlignedRecordsAsync(device_id, rowRecords)); - device_id = new List() { }; - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - // Thread.Sleep(20); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - res.ShowTableNames(); - var record_count = fetch_size * processed_size; - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == record_count); - System.Diagnostics.Debug.Assert(status == 0); - - // status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertAlignedRecords Passed!"); - } - - public async Task TestInsertRecordsOfOneDevice() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - var device_id = string.Format("{0}.{1}", test_group_name, test_device); - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4] - }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4], - test_measurements[5], - test_measurements[6] - }); - var values_lst = new List>() { }; - values_lst.Add(new List() { true, (int)123 }); - values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() { 1, 2, 3 }; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - // large data test - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { test_measurements[1], test_measurements[2] })); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); - } - - public async Task TestInsertTablet() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync(test_group_name); - var device_id = string.Format("{0}.{1}", test_group_name, test_device); - var measurement_lst = new List - { - test_measurements[1], - test_measurements[2], - test_measurements[3] - }; - var value_lst = new List> - { - new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, - new() {"client", true, (int) 14} - }; - var timestamp_lst = new List { 1, 2, 3 }; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.InsertTabletAsync(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - // large data test - value_lst = new List>() { }; - timestamp_lst = new List() { }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - timestamp_lst.Add(timestamp); - value_lst.Add(new List() { "iotdb", true, (int)timestamp }); - if (timestamp % fetch_size == 0) - { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.InsertTabletAsync(tablet)); - value_lst = new List>() { }; - timestamp_lst = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertTablet Passed!"); - } - - public async Task TestInsertTablets() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync(test_group_name); - var device_id = new List() - { - string.Format("{0}.{1}", test_group_name, test_devices[1]), - string.Format("{0}.{1}", test_group_name, test_devices[2]) - }; - var measurements_lst = new List>() - { - new() {test_measurements[1], test_measurements[2], test_measurements[3]}, - new() {test_measurements[1], test_measurements[2], test_measurements[3]} - }; - var values_lst = new List>>() - { - new() - { - new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, - new List() {"client", true, (int) 14} - }, - new() - { - new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, - new List() {"client_2", true, (int) 3} - } - }; - var timestamp_lst = new List>() - {new() {2, 1, 3}, new() {3, 1, 2}}; - var tablets = new List() { }; - for (var i = 0; i < device_id.Count; i++) - { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - - status = await session_pool.InsertTabletsAsync(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - // large data test - - var tasks = new List>(); - // tablets = new List(); - for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) - { - var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); - var local_measurements = new List() - {test_measurements[1], test_measurements[2], test_measurements[3]}; - var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; - var local_timestamp = new List { timestamp }; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); - tablets.Add(tablet); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertTabletsAsync(tablets)); - tablets = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - Thread.Sleep(20); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertTablets Passed!"); - } - - public async Task TestSetAndDeleteStorageGroup() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert( - await session_pool.SetStorageGroup(test_group_name) == 0); - System.Diagnostics.Debug.Assert( - await session_pool.DeleteStorageGroupAsync(test_group_name) == 0); - await session_pool.Close(); - Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); - } - - public async Task TestCreateTimeSeries() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), - TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.Close(); - Console.WriteLine("TestCreateTimeSeries Passed!"); - } - - public async Task TestCreateAlignedTimeseries() - { - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.Open(false); - var status = 0; - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - - string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); - var measurement_lst = new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4], - test_measurements[5], - test_measurements[6] - }; - var data_type_lst = new List() - { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, - TSDataType.TEXT - }; - var encoding_lst = new List() - { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() - { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; - status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, - compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestCreateAlignedTimeSeries Passed!"); - - } - - public async Task TestDeleteStorageGroups() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_01")); - await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_02")); - await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_03")); - await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_04")); - var group_names = new List() { }; - group_names.Add(string.Format("{0}{1}", test_group_name, "_01")); - group_names.Add(string.Format("{0}{1}", test_group_name, "_02")); - group_names.Add(string.Format("{0}{1}", test_group_name, "_03")); - group_names.Add(string.Format("{0}{1}", test_group_name, "_04")); - System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); - await session_pool.Close(); - Console.WriteLine("TestDeleteStorageGroups Passed!"); - } - - public async Task TestCheckTimeSeriesExists() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1])); - var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2])); - System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestCheckTimeSeriesExists Passed!"); - } - - public async Task TestSetTimeZone() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.SetTimeZone("GMT+8:00"); - System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); - await session_pool.Close(); - Console.WriteLine("TestSetTimeZone Passed!"); - } - - public async Task TestDeleteData() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List - { - test_measurements[1], test_measurements[2], test_measurements[3] - }; - var values = new List { "test_text", true, (int)123 }; - status = await session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(1, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(2, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(3, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.InsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(4, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - var ts_path_lst = new List() - { - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - }; - await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestDeleteData Passed!"); - } - - public async Task TestTestInsertRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List - { - test_measurements[1], test_measurements[2], test_measurements[3] - }; - var values = new List { "test_text", true, (int)123 }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) - { - var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.TestInsertRecordAsync( - string.Format("{0}.{1}", test_group_name, test_device), rowRecord); - tasks.Add(task); - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.Close(); - Console.WriteLine("TestTestInsertRecordAsync Passed"); - } - - public async Task TestTestInsertRecords() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); - - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4] - }); - measurements_lst.Add(new List() - { - test_measurements[1], - test_measurements[2], - test_measurements[3], - test_measurements[4], - test_measurements[5], - test_measurements[6] - }); - var values_lst = new List>() { }; - values_lst.Add(new List() { true, (int)123 }); - values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() { 1, 2, 3 }; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); - // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - - // large data test - device_id = new List() { }; - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); - rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, - new List() { test_measurements[1], test_measurements[2] })); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); - device_id = new List() { }; - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - res.ShowTableNames(); - var record_count = fetch_size * processed_size; - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == 0); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestTestInsertRecords Passed!"); - } - - public async Task TestTestInsertTablet() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync(test_group_name); - var device_id = string.Format("{0}.{1}", test_group_name, test_device); - var measurement_lst = new List - { test_measurements[1], - test_measurements[2], - test_measurements[3] - }; - var value_lst = new List> - { - new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, - new() {"client", true, (int) 14} - }; - var timestamp_lst = new List { 2, 1, 3 }; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.TestInsertTabletAsync(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - // large data test - value_lst = new List>() { }; - timestamp_lst = new List() { }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - timestamp_lst.Add(timestamp); - value_lst.Add(new List() { "iotdb", true, (int)timestamp }); - if (timestamp % (fetch_size / 32) == 0) - { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.TestInsertTabletAsync(tablet)); - value_lst = new List>() { }; - timestamp_lst = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestTestInsertTablet Passed!"); - } - - public async Task TestTestInsertTablets() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync(test_group_name); - var device_id = new List() - { - string.Format("{0}.{1}", test_group_name, test_devices[1]), - string.Format("{0}.{1}", test_group_name, test_devices[2]) - }; - var measurements_lst = new List>() - { - new() {test_measurements[1], test_measurements[2], test_measurements[3]}, - new() {test_measurements[1], test_measurements[2], test_measurements[3]} - }; - var values_lst = new List>>() - { - new() - { - new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, - new List() {"client", true, (int) 14} - }, - new() - { - new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, - new List() {"client_2", true, (int) 3} - } - }; - var timestamp_lst = new List>() - {new() {2, 1, 3}, new() {3, 1, 2}}; - var tablets = new List() { }; - for (var i = 0; i < device_id.Count; i++) - { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - - status = await session_pool.TestInsertTabletsAsync(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - await res.Close(); - - // large data test - - var tasks = new List>(); - for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) - { - var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); - var local_measurements = new List() - {test_measurements[1], test_measurements[2], test_measurements[3]}; - var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; - var local_timestamp = new List { timestamp }; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); - tablets.Add(tablet); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.TestInsertTabletsAsync(tablets)); - tablets = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestTestInsertTablets Passed!"); - } - - public async Task TestNonSql() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); - status = await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestNonSql Passed"); - } - - public async Task TestSqlQuery() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); - - var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); - res = await session_pool.ExecuteQueryStatementAsync("show devices"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("SHOW DEVICES sql passed!"); - res = await session_pool.ExecuteQueryStatementAsync("COUNT TIMESERIES root"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("COUNT TIMESERIES root sql Passed"); - res = await session_pool.ExecuteQueryStatementAsync("select * from root.ln.wf01 where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("SELECT sql Passed"); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - status = await session_pool.DeleteStorageGroupAsync(test_group_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("SELECT sql Passed"); - } - } -} \ No newline at end of file From 7216d9e2d5ee881ce4d3dec3e711ce12bf4fe792 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Wed, 13 Apr 2022 16:54:40 +0800 Subject: [PATCH 144/214] add CI for dev branches --- .github/workflows/dotnet.yml | 2 +- .github/workflows/e2e.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index 659168f..50a7bfe 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -2,7 +2,7 @@ name: .NET on: push: - branches: [ main ] + branches: [ main, dev/* ] pull_request: branches: [ main ] diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 92655a9..8688820 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -2,7 +2,7 @@ name: E2E Tests on: push: - branches: [ main ] + branches: [ main, dev/* ] pull_request: branches: [ main ] From 70f1add487a5201f0b48b98abdb077bad4521aa2 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Thu, 14 Apr 2022 11:38:41 +0800 Subject: [PATCH 145/214] Dev/0.13 (#66) * add thrift generated files * add insert aligned record and create aligned timeseries interfaces and tests * fix type * add insert aligned records interface and test * add aligned interfaces and template class * add template interfaces * add some schema test * change file name * add tests for all interfaces * add CI for dev branches --- .github/workflows/dotnet.yml | 2 +- .github/workflows/e2e.yml | 2 +- .../SessionPoolTest.AlignedRecord.cs | 279 + .../SessionPoolTest.AlignedTablet.cs | 169 + .../SessionPoolTest.Record.cs | 339 + .../SessionPoolTest.Tablet.cs | 170 + .../SessionPoolTest.Template.cs | 185 + .../SessionPoolTest.TestNetwork.cs | 328 + .../SessionPoolTest.TimeSeries.cs | 178 + .../Apache.IoTDB.Samples/SessionPoolTest.cs | 332 + .../Apache.IoTDB.Samples/SessioonPoolTest.cs | 1207 --- src/Apache.IoTDB.Rpc.Generated/EndPoint.cs | 2 +- .../ServerProperties.cs | 379 +- .../TSAppendSchemaTemplateReq.cs | 457 ++ .../TSCancelOperationReq.cs | 10 +- .../TSCloseOperationReq.cs | 16 +- .../TSCloseSessionReq.cs | 8 +- .../TSCreateAlignedTimeseriesReq.cs | 671 ++ .../TSCreateMultiTimeseriesReq.cs | 220 +- .../TSCreateSchemaTemplateReq.cs | 233 + .../TSCreateTimeseriesReq.cs | 98 +- .../TSDeleteDataReq.cs | 30 +- .../TSDropSchemaTemplateReq.cs | 191 + .../TSExecuteBatchStatementReq.cs | 26 +- .../TSExecuteStatementReq.cs | 75 +- .../TSExecuteStatementResp.cs | 278 +- .../TSFetchMetadataReq.cs | 14 +- .../TSFetchMetadataResp.cs | 36 +- .../TSFetchResultsReq.cs | 20 +- .../TSFetchResultsResp.cs | 20 +- .../TSGetOperationStatusReq.cs | 10 +- .../TSGetTimeZoneResp.cs | 10 +- src/Apache.IoTDB.Rpc.Generated/TSIService.cs | 6746 +++++++++++++---- .../TSInsertRecordReq.cs | 123 +- .../TSInsertRecordsOfOneDeviceReq.cs | 169 +- .../TSInsertRecordsReq.cs | 183 +- .../TSInsertStringRecordReq.cs | 139 +- .../TSInsertStringRecordsOfOneDeviceReq.cs | 457 ++ .../TSInsertStringRecordsReq.cs | 197 +- .../TSInsertTabletReq.cs | 143 +- .../TSInsertTabletsReq.cs | 233 +- .../TSLastDataQueryReq.cs | 421 + .../TSOpenSessionReq.cs | 44 +- .../TSOpenSessionResp.cs | 40 +- .../TSProtocolVersion.cs | 2 +- .../TSPruneSchemaTemplateReq.cs | 233 + .../TSQueryDataSet.cs | 2 +- .../TSQueryNonAlignDataSet.cs | 2 +- .../TSQueryTemplateReq.cs | 276 + .../TSQueryTemplateResp.cs | 362 + .../TSRawDataQueryReq.cs | 91 +- .../TSSetSchemaTemplateReq.cs | 233 + .../TSSetTimeZoneReq.cs | 10 +- src/Apache.IoTDB.Rpc.Generated/TSStatus.cs | 2 +- .../TSTracingInfo.cs | 684 ++ .../TSUnsetSchemaTemplateReq.cs | 233 + .../rpc.Extensions.cs | 89 +- src/Apache.IoTDB/IoTDBConstants.cs | 32 +- src/Apache.IoTDB/SessionPool.cs | 774 +- src/Apache.IoTDB/Template/InternalNode.cs | 42 + src/Apache.IoTDB/Template/MeasurementNode.cs | 57 + src/Apache.IoTDB/Template/Template.cs | 125 + src/Apache.IoTDB/Template/TemplateNode.cs | 41 + 63 files changed, 14420 insertions(+), 3760 deletions(-) create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs create mode 100644 samples/Apache.IoTDB.Samples/SessionPoolTest.cs delete mode 100644 samples/Apache.IoTDB.Samples/SessioonPoolTest.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs create mode 100644 src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Template/InternalNode.cs create mode 100644 src/Apache.IoTDB/Template/MeasurementNode.cs create mode 100644 src/Apache.IoTDB/Template/Template.cs create mode 100644 src/Apache.IoTDB/Template/TemplateNode.cs diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index 659168f..50a7bfe 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -2,7 +2,7 @@ name: .NET on: push: - branches: [ main ] + branches: [ main, dev/* ] pull_request: branches: [ main ] diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 92655a9..8688820 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -2,7 +2,7 @@ name: E2E Tests on: push: - branches: [ main ] + branches: [ main, dev/* ] pull_request: branches: [ main ] diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs new file mode 100644 index 0000000..4893036 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs @@ -0,0 +1,279 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertAlignedRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List { test_measurements[1], test_measurements[2], test_measurements[3] }; + var types = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var encodings = new List { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressors = new List { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurements, types, encodings, compressors); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List + { test_measurements[1], test_measurements[2], test_measurements[3] }; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.InsertAlignedRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + tasks.Add(task); + } + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecordAsync Passed"); + } + public async Task TestInsertAlignedRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.InsertAlignedRecordsAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine(status); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecords Passed!"); + } + public async Task TestInsertAlignedRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.DOUBLE, TSDataType.FLOAT, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + status = await session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedRecordsOfOneDeviceAsync(device_id, rowRecords)); + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs new file mode 100644 index 0000000..a648b72 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs @@ -0,0 +1,169 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertAlignedTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List + { test_measurements[1], + test_measurements[2], + test_measurements[3] + }; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List { 1, 2, 3 }; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.InsertAlignedTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); + if (timestamp % fetch_size == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.InsertAlignedTabletAsync(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + Console.WriteLine(tasks.Count); + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedTablet Passed!"); + } + + public async Task TestInsertAlignedTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = new List() + { + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) + }; + var measurements_lst = new List>() + { + new() {test_measurements[1], test_measurements[2], test_measurements[3] }, + new() {test_measurements[1], test_measurements[2], test_measurements[3] } + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.InsertAlignedTabletsAsync(tablets); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + // large data test + var tasks = new List>(); + // tablets = new List() { }; + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); + var local_measurements = new List() + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedTabletsAsync(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedTablets Passed!"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs new file mode 100644 index 0000000..42b680a --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs @@ -0,0 +1,339 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + + public async Task TestInsertRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert aligned record time is {0}", end_ms - start_ms)); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertRecordAsync Passed"); + } + public async Task TestInsertStrRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List { test_measurements[1], test_measurements[2] }; + var values = new List { (int)1, (int)2 }; + var rowRecord = new RowRecord(1, values, measures); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<2"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + + var tasks = new List>(); + // large data test + var rowRecords = new List() { }; + for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) + rowRecords.Add(new RowRecord(timestamp, values, measures)); + + for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) + { + var task = session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecords[timestamp - 2]); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertStrRecord Passed!"); + } + public async Task TestInsertRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.InsertRecordsAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine(status); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertRecords Passed!"); + } + public async Task TestInsertRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs new file mode 100644 index 0000000..f6c16f0 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs @@ -0,0 +1,170 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestInsertTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List + { + test_measurements[1], + test_measurements[2], + test_measurements[3] + }; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List { 1, 2, 3 }; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.InsertTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); + if (timestamp % fetch_size == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.InsertTabletAsync(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertTablet Passed!"); + } + + public async Task TestInsertTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = new List() + { + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) + }; + var measurements_lst = new List>() + { + new() {test_measurements[1], test_measurements[2], test_measurements[3]}, + new() {test_measurements[1], test_measurements[2], test_measurements[3]} + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.InsertTabletsAsync(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + // large data test + + var tasks = new List>(); + // tablets = new List(); + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); + var local_measurements = new List() + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertTabletsAsync(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertTablets Passed!"); + } + } +} diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs new file mode 100644 index 0000000..b43856f --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -0,0 +1,185 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestCreateAndDropSchemaTemplate() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + + Template template = new Template(test_template_name); + template.addToTemplate(node1); + template.addToTemplate(node2); + template.addToTemplate(node3); + template.addToTemplate(node4); + + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + var templates = await session_pool.ShowAllTemplatesAsync(); + foreach (var t in templates) + { + Console.WriteLine("template name :\t{0}", t); + } + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestCreateAndDropSchemaTemplate Passed!"); + } + + public async Task TestSetAndUnsetSchemaTemplate() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), "template"); + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + + Template template = new Template(test_template_name); + template.addToTemplate(node1); + template.addToTemplate(node2); + template.addToTemplate(node3); + template.addToTemplate(node4); + + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); + System.Diagnostics.Debug.Assert(status == 0); + var paths = await session_pool.ShowPathsTemplateSetOnAsync(test_template_name); + foreach (var p in paths) + { + Console.WriteLine("path :\t{0}", p); + } + status = await session_pool.UnsetSchemaTemplateAsync(string.Format("{0}.{1}", test_group_name, test_device), test_template_name); + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestSetAndUnsetSchemaTemplate Passed!"); + } + public async Task TestAddAlignedMeasurements() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + var measurements = new List() { node3, node4 }; + + Template template = new Template(test_template_name, true); + template.addToTemplate(node1); + template.addToTemplate(node2); + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.AddAlignedMeasurementsInTemplateAsync(test_template_name, measurements); + System.Diagnostics.Debug.Assert(status == 0); + var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(measurements_count == 4); + foreach (var m in measurements) + { + System.Diagnostics.Debug.Assert(await session_pool.IsMeasurementInTemplateAsync(test_template_name, m.Name)); + } + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestAddAlignedMeasurements Passed!"); + } + public async Task TestAddUnalignedMeasurements() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + var measurements = new List() { node1, node2, node3, node4 }; + + Template template = new Template(test_template_name); + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); + System.Diagnostics.Debug.Assert(status == 0); + var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(measurements_count == 4); + foreach (var m in measurements) + { + System.Diagnostics.Debug.Assert(await session_pool.IsPathExistInTemplate(test_template_name, m.Name)); + } + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestAddUnalignedMeasurements Passed!"); + } + public async Task TestDeleteNodeInTemplate() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.DropSchemaTemplateAsync(test_template_name); + + MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + var measurements = new List() { node1, node2, node3, node4 }; + + Template template = new Template(test_template_name); + status = await session_pool.CreateSchemaTemplateAsync(template); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); + + status = await session_pool.DeleteNodeInTemplateAsync(test_template_name, test_measurements[1]); + var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(measurements_count == 3); + System.Diagnostics.Debug.Assert(!await session_pool.IsPathExistInTemplate(test_template_name, test_measurements[1])); + status = await session_pool.DropSchemaTemplateAsync(test_template_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestDeleteNodeInTemplate Passed!"); + } + } + +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs new file mode 100644 index 0000000..be18392 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs @@ -0,0 +1,328 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestTestInsertRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + int status; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measures = new List + { + test_measurements[1], test_measurements[2], test_measurements[3] + }; + var values = new List { "test_text", true, (int)123 }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var rowRecord = new RowRecord(timestamp, values, measures); + var task = session_pool.TestInsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), rowRecord); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestTestInsertRecordAsync Passed"); + } + + public async Task TestTestInsertRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4] + }); + measurements_lst.Add(new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }); + var values_lst = new List>() { }; + values_lst.Add(new List() { true, (int)123 }); + values_lst.Add(new List() { true, (int)123, (long)456, (double)1.1 }); + values_lst.Add(new List() + {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); + var timestamp_lst = new List() { 1, 2, 3 }; + var rowRecords = new List() { }; + for (var i = 0; i < 3; i++) + { + var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); + rowRecords.Add(rowRecord); + } + + status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + + // large data test + device_id = new List() { }; + rowRecords = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + rowRecords.Add(new RowRecord(timestamp, new List() { true, (int)123 }, + new List() { test_measurements[1], test_measurements[2] })); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); + device_id = new List() { }; + rowRecords = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + System.Diagnostics.Debug.Assert(res_count == 0); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestTestInsertRecords Passed!"); + } + + public async Task TestTestInsertTablet() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List + { test_measurements[1], + test_measurements[2], + test_measurements[3] + }; + var value_lst = new List> + { + new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, + new() {"client", true, (int) 14} + }; + var timestamp_lst = new List { 2, 1, 3 }; + var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + status = await session_pool.TestInsertTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + value_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + timestamp_lst.Add(timestamp); + value_lst.Add(new List() { "iotdb", true, (int)timestamp }); + if (timestamp % (fetch_size / 32) == 0) + { + tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tasks.Add(session_pool.TestInsertTabletAsync(tablet)); + value_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestTestInsertTablet Passed!"); + } + + public async Task TestTestInsertTablets() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = new List() + { + string.Format("{0}.{1}", test_group_name, test_devices[1]), + string.Format("{0}.{1}", test_group_name, test_devices[2]) + }; + var measurements_lst = new List>() + { + new() {test_measurements[1], test_measurements[2], test_measurements[3]}, + new() {test_measurements[1], test_measurements[2], test_measurements[3]} + }; + var values_lst = new List>>() + { + new() + { + new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, + new List() {"client", true, (int) 14} + }, + new() + { + new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, + new List() {"client_2", true, (int) 3} + } + }; + var timestamp_lst = new List>() + {new() {2, 1, 3}, new() {3, 1, 2}}; + var tablets = new List() { }; + for (var i = 0; i < device_id.Count; i++) + { + var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + tablets.Add(tablet); + } + + status = await session_pool.TestInsertTabletsAsync(tablets); + // System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1]) + " where time<15"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + await res.Close(); + + // large data test + + var tasks = new List>(); + for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) + { + var local_device_id = string.Format("{0}.{1}", test_group_name, test_devices[1]); + var local_measurements = new List() + {test_measurements[1], test_measurements[2], test_measurements[3]}; + var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_timestamp = new List { timestamp }; + var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + tablets.Add(tablet); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.TestInsertTabletsAsync(tablets)); + tablets = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_devices[1])); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + System.Diagnostics.Debug.Assert(res_count == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestTestInsertTablets Passed!"); + } + + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs new file mode 100644 index 0000000..1fd6197 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TimeSeries.cs @@ -0,0 +1,178 @@ + +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public async Task TestCreateMultiTimeSeries() + { + // by Luzhan + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; + var ts_path_lst = new List(measurement_lst.ConvertAll( + (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCreateMultiTimeSeries Passed!"); + } + + public async Task TestDeleteTimeSeries() + { + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + var measurement_lst = new List { 1, 2, 3, 4, 5, 6 }; + var ts_path_lst = new List(measurement_lst.ConvertAll( + (measurement) => string.Format("{0}.{1}.{2}{3}", test_group_name, test_device, test_measurement, measurement))); + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteTimeSeriesAsync(ts_path_lst); + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestDeleteTimeSeries Passed!"); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + } + public async Task TestCreateTimeSeries() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[4]), + TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[5]), + TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[6]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestCreateTimeSeries Passed!"); + } + + public async Task TestCreateAlignedTimeseries() + { + var session_pool = new SessionPool(host, port, user, passwd, pool_size); + await session_pool.Open(false); + var status = 0; + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() + { + test_measurements[1], + test_measurements[2], + test_measurements[3], + test_measurements[4], + test_measurements[5], + test_measurements[6] + }; + var data_type_lst = new List() + { + TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, + TSDataType.TEXT + }; + var encoding_lst = new List() + { + TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, + TSEncoding.PLAIN + }; + var compressor_lst = new List() + { + Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, + Compressor.SNAPPY + }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCreateAlignedTimeSeries Passed!"); + } + public async Task TestCheckTimeSeriesExists() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); + var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1])); + var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2])); + System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestCheckTimeSeriesExists Passed!"); + } + } + +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs new file mode 100644 index 0000000..5a24a22 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -0,0 +1,332 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB.Samples +{ + public partial class SessionPoolTest + { + public string host = "localhost"; + public int port = 6667; + public string user = "root"; + public string passwd = "root"; + public int fetch_size = 500; + public int processed_size = 4; + public bool debug = false; + private int pool_size = 2; + public static string test_template_name = "TEST_CSHARP_CLIENT_TEMPLATE_97209"; + public static string test_group_name = "root.TEST_CSHARP_CLIENT_GROUP_97209"; + public static string test_device = "TEST_CSHARP_CLIENT_DEVICE"; + public static string test_measurement = "TEST_CSHARP_CLIENT_TS"; + public static List device_count = new List() { 0, 1, 2, 3 }; + public static List measurement_count = new List() { 0, 1, 2, 3, 4, 5, 6 }; + public static List test_devices = new List( + device_count.ConvertAll(x => test_device + x.ToString()).ToArray() + ); + public List test_measurements = new List( + measurement_count.ConvertAll(x => test_measurement + x.ToString()).ToArray() + ); + + + public SessionPoolTest(string _host = "localhost") + { + host = _host; + } + + public void Test() + { + Task task; + + task = TestInsertAlignedRecord(); + task.Wait(); + task = TestInsertAlignedRecords(); + task.Wait(); + task = TestInsertAlignedRecordsOfOneDevice(); + task.Wait(); + task = TestInsertAlignedTablet(); + task.Wait(); + task = TestInsertAlignedTablets(); + task.Wait(); + task = TestInsertRecord(); + task.Wait(); + task = TestCreateMultiTimeSeries(); + task.Wait(); + task = TestInsertStrRecord(); + task.Wait(); + task = TestInsertRecords(); + task.Wait(); + task = TestInsertRecordsOfOneDevice(); + task.Wait(); + task = TestInsertTablet(); + task.Wait(); + task = TestInsertTablets(); + task.Wait(); + task = TestAddAlignedMeasurements(); + task.Wait(); + task = TestAddUnalignedMeasurements(); + task.Wait(); + task = TestSetAndUnsetSchemaTemplate(); + task.Wait(); + task = TestCreateAlignedTimeseries(); + task.Wait(); + task = TestCreateAndDropSchemaTemplate(); + task.Wait(); + task = TestDeleteNodeInTemplate(); + task.Wait(); + task = TestGetTimeZone(); + task.Wait(); + task = TestSetAndDeleteStorageGroup(); + task.Wait(); + task = TestCreateTimeSeries(); + task.Wait(); + task = TestDeleteTimeSeries(); + task.Wait(); + task = TestDeleteStorageGroups(); + task.Wait(); + task = TestCheckTimeSeriesExists(); + task.Wait(); + task = TestSetTimeZone(); + task.Wait(); + task = TestDeleteData(); + task.Wait(); + task = TestNonSql(); + task.Wait(); + task = TestSqlQuery(); + task.Wait(); + } + + public async Task TestGetTimeZone() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var time_zone = await session_pool.GetTimeZone(); + System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); + await session_pool.Close(); + Console.WriteLine("TestGetTimeZone Passed!"); + } + + + + public async Task TestSetAndDeleteStorageGroup() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert( + await session_pool.SetStorageGroup(test_group_name) == 0); + System.Diagnostics.Debug.Assert( + await session_pool.DeleteStorageGroupAsync(test_group_name) == 0); + await session_pool.Close(); + Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); + } + + + public async Task TestDeleteStorageGroups() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_01")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_02")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_03")); + await session_pool.SetStorageGroup(string.Format("{0}{1}", test_group_name, "_04")); + var group_names = new List() { }; + group_names.Add(string.Format("{0}{1}", test_group_name, "_01")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_02")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_03")); + group_names.Add(string.Format("{0}{1}", test_group_name, "_04")); + System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); + await session_pool.Close(); + Console.WriteLine("TestDeleteStorageGroups Passed!"); + } + + + public async Task TestSetTimeZone() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.SetTimeZone("GMT+8:00"); + System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); + await session_pool.Close(); + Console.WriteLine("TestSetTimeZone Passed!"); + } + + public async Task TestDeleteData() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[3]), + TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + + var measures = new List + { + test_measurements[1], test_measurements[2], test_measurements[3] + }; + var values = new List { "test_text", true, (int)123 }; + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(1, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(2, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(3, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.InsertRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), new RowRecord(4, values, measures)); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + var ts_path_lst = new List() + { + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + }; + await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestDeleteData Passed!"); + } + + public async Task TestNonSql() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); + status = await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestNonSql Passed"); + } + + public async Task TestSqlQuery() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + await session_pool.ExecuteNonQueryStatementAsync( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')"); + + var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); + res = await session_pool.ExecuteQueryStatementAsync("show devices"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("SHOW DEVICES sql passed!"); + res = await session_pool.ExecuteQueryStatementAsync("COUNT TIMESERIES root"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("COUNT TIMESERIES root sql Passed"); + res = await session_pool.ExecuteQueryStatementAsync("select * from root.ln.wf01 where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + Console.WriteLine("SELECT sql Passed"); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("SELECT sql Passed"); + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs b/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs deleted file mode 100644 index b7b2dee..0000000 --- a/samples/Apache.IoTDB.Samples/SessioonPoolTest.cs +++ /dev/null @@ -1,1207 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using Apache.IoTDB.DataStructure; - -namespace Apache.IoTDB.Samples -{ - public class SessionPoolTest - { - public string host = "localhost"; - public int port = 6667; - public string user = "root"; - public string passwd = "root"; - public int fetch_size = 50000; - public int processed_size = 4; - public bool debug = false; - private int pool_size = 2; - - public SessionPoolTest(string _host = "localhost"){ - host = _host; - } - - public void Test() - { - Task task; - - task = TestInsertRecord(); - task.Wait(); - - task = TestCreateMultiTimeSeries(); - task.Wait(); - task = TestGetTimeZone(); - task.Wait(); - task = TestInsertStrRecord(); - task.Wait(); - task = TestInsertRecords(); - task.Wait(); - task = TestInsertRecordsOfOneDevice(); - task.Wait(); - task = TestInsertTablet(); - task.Wait(); - task = TestInsertTablets(); - task.Wait(); - task = TestSetAndDeleteStorageGroup(); - task.Wait(); - task = TestCreateTimeSeries(); - task.Wait(); - task = TestDeleteStorageGroups(); - task.Wait(); - task = TestCheckTimeSeriesExists(); - task.Wait(); - task = TestSetTimeZone(); - task.Wait(); - task = TestDeleteData(); - task.Wait(); - task = TestNonSql(); - task.Wait(); - task = TestSqlQuery(); - task.Wait(); - } - - public async Task TestInsertRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List {"test_text", true, (int) 123}; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) - { - var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); - tasks.Add(task); - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.Close(); - Console.WriteLine("TestInsertRecordAsync Passed"); - } - - public async Task TestCreateMultiTimeSeries() - { - // by Luzhan - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.Open(false); - var status = 0; - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var ts_path_lst = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" - }; - var data_type_lst = new List() - { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, - TSDataType.TEXT - }; - var encoding_lst = new List() - { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() - { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; - status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, - compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestCreateMultiTimeSeries Passed!"); - } - - public async Task TestDeleteTimeSeries() - { - var session_pool = new SessionPool(host, port, user, passwd, pool_size); - await session_pool.Open(false); - var status = 0; - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var ts_path_lst = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6" - }; - var data_type_lst = new List() - { - TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64, TSDataType.FLOAT, TSDataType.DOUBLE, - TSDataType.TEXT - }; - var encoding_lst = new List() - { - TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN, - TSEncoding.PLAIN - }; - var compressor_lst = new List() - { - Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY, - Compressor.SNAPPY - }; - status = await session_pool.CreateMultiTimeSeriesAsync(ts_path_lst, data_type_lst, encoding_lst, - compressor_lst); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupsAsync(ts_path_lst); - System.Diagnostics.Debug.Assert(status == 0); - Console.WriteLine("TestDeleteTimeSeries Passed!"); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.Close(); - } - - public async Task TestGetTimeZone() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var time_zone = await session_pool.GetTimeZone(); - System.Diagnostics.Debug.Assert(time_zone == "UTC+08:00"); - await session_pool.Close(); - Console.WriteLine("TestGetTimeZone Passed!"); - } - - public async Task TestInsertStrRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}; - var values = new List {(int) 1, (int) 2}; - var rowRecord = new RowRecord(1, values, measures); - status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<2"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - - var tasks = new List>(); - // large data test - var rowRecords = new List() { }; - for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) - rowRecords.Add(new RowRecord(timestamp, values, measures)); - - for (var timestamp = 2; timestamp <= fetch_size * processed_size; timestamp++) - { - var task = session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecords[timestamp - 2]); - tasks.Add(task); - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.Close(); - Console.WriteLine("TestInsertStrRecord Passed!"); - } - - public async Task TestInsertRecords() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List() - { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" - }); - measurements_lst.Add(new List() - { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" - }); - var values_lst = new List>() { }; - values_lst.Add(new List() {true, (int) 123}); - values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() {1, 2, 3}; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.InsertRecordsAsync(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine(status); - - // large data test - device_id = new List() { }; - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, - new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertRecordsAsync(device_id, rowRecords)); - device_id = new List() { }; - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - res.ShowTableNames(); - var record_count = fetch_size * processed_size; - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == record_count); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertRecords Passed!"); - } - - public async Task TestInsertRecordsOfOneDevice() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.SNAPPY); - var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List() - { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" - }); - measurements_lst.Add(new List() - { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" - }); - var values_lst = new List>() { }; - values_lst.Add(new List() {true, (int) 123}); - values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() {1, 2, 3}; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - // large data test - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, - new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords)); - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); - } - - public async Task TestInsertTablet() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; - var measurement_lst = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var value_lst = new List> - { - new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, - new() {"client", true, (int) 14} - }; - var timestamp_lst = new List {1, 2, 3}; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.InsertTabletAsync(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - // large data test - value_lst = new List>() { }; - timestamp_lst = new List() { }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - timestamp_lst.Add(timestamp); - value_lst.Add(new List() {"iotdb", true, (int) timestamp}); - if (timestamp % fetch_size == 0) - { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.InsertTabletAsync(tablet)); - value_lst = new List>() { }; - timestamp_lst = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - Console.WriteLine(res_count + " " + fetch_size * processed_size); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertTablet Passed!"); - } - - public async Task TestInsertTablets() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var device_id = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2" - }; - var measurements_lst = new List>() - { - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"} - }; - var values_lst = new List>>() - { - new() - { - new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, - new List() {"client", true, (int) 14} - }, - new() - { - new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, - new List() {"client_2", true, (int) 3} - } - }; - var timestamp_lst = new List>() - {new() {2, 1, 3}, new() {3, 1, 2}}; - var tablets = new List() { }; - for (var i = 0; i < device_id.Count; i++) - { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - - status = await session_pool.InsertTabletsAsync(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - - // large data test - - var tasks = new List>(); - for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) - { - var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; - var local_measurements = new List() - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; - var local_timestamp = new List {timestamp}; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); - tablets.Add(tablet); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.InsertTabletsAsync(tablets)); - tablets = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestInsertTablets Passed!"); - } - - public async Task TestSetAndDeleteStorageGroup() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert( - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209") == 0); - System.Diagnostics.Debug.Assert( - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209") == 0); - await session_pool.Close(); - Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); - } - - public async Task TestCreateTimeSeries() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", - TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.Close(); - Console.WriteLine("TestCreateTimeSeries Passed!"); - } - - public async Task TestDeleteStorageGroups() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_01"); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_02"); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_03"); - await session_pool.SetStorageGroup("root.TEST_CSHARP_CLIENT_GROUP_97209_04"); - var group_names = new List() { }; - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_01"); - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_02"); - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_03"); - group_names.Add("root.TEST_CSHARP_CLIENT_GROUP_97209_04"); - System.Diagnostics.Debug.Assert(await session_pool.DeleteStorageGroupsAsync(group_names) == 0); - await session_pool.Close(); - Console.WriteLine("TestDeleteStorageGroups Passed!"); - } - - public async Task TestCheckTimeSeriesExists() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - var ifExist_1 = await session_pool.CheckTimeSeriesExistsAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1"); - var ifExist_2 = await session_pool.CheckTimeSeriesExistsAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2"); - System.Diagnostics.Debug.Assert(ifExist_1 == true && ifExist_2 == false); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestCheckTimeSeriesExists Passed!"); - } - - public async Task TestSetTimeZone() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.SetTimeZone("GMT+8:00"); - System.Diagnostics.Debug.Assert(await session_pool.GetTimeZone() == "GMT+8:00"); - await session_pool.Close(); - Console.WriteLine("TestSetTimeZone Passed!"); - } - - public async Task TestDeleteData() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - - var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List {"test_text", true, (int) 123}; - status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(1, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(2, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(3, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.InsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", new RowRecord(4, values, measures)); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - var ts_path_lst = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2" - }; - await session_pool.DeleteDataAsync(ts_path_lst, 2, 3); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestDeleteData Passed!"); - } - - public async Task TestTestInsertRecord() - { - var session_pool = new SessionPool(host, port, pool_size); - int status; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); - System.Diagnostics.Debug.Assert(status == 0); - var measures = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var values = new List {"test_text", true, (int) 123}; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) - { - var rowRecord = new RowRecord(timestamp, values, measures); - var task = session_pool.TestInsertRecordAsync( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE", rowRecord); - tasks.Add(task); - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total insert record time is {0}", end_ms - start_ms)); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.Close(); - Console.WriteLine("TestTestInsertRecordAsync Passed"); - } - - public async Task TestTestInsertRecords() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS1", - TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS2", - TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS3", - TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS4", - TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS5", - TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.CreateTimeSeries( - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.TEST_CSHARP_CLIENT_TS6", TSDataType.TEXT, - TSEncoding.PLAIN, Compressor.SNAPPY); - System.Diagnostics.Debug.Assert(status == 0); - - var device_id = new List() { }; - for (var i = 0; i < 3; i++) device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - - var measurements_lst = new List>() { }; - measurements_lst.Add(new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"}); - measurements_lst.Add(new List() - { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4" - }); - measurements_lst.Add(new List() - { - "TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3", "TEST_CSHARP_CLIENT_TS4", - "TEST_CSHARP_CLIENT_TS5", "TEST_CSHARP_CLIENT_TS6" - }); - var values_lst = new List>() { }; - values_lst.Add(new List() {true, (int) 123}); - values_lst.Add(new List() {true, (int) 123, (long) 456, (double) 1.1}); - values_lst.Add(new List() - {true, (int) 123, (long) 456, (double) 1.1, (float) 10001.1, "test_record"}); - var timestamp_lst = new List() {1, 2, 3}; - var rowRecords = new List() { }; - for (var i = 0; i < 3; i++) - { - var rowRecord = new RowRecord(timestamp_lst[i], values_lst[i], measurements_lst[i]); - rowRecords.Add(rowRecord); - } - - status = await session_pool.TestInsertRecordsAsync(device_id, rowRecords); - // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - - // large data test - device_id = new List() { }; - rowRecords = new List() { }; - var tasks = new List>(); - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - device_id.Add("root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - rowRecords.Add(new RowRecord(timestamp, new List() {true, (int) 123}, - new List() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2"})); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.TestInsertRecordsAsync(device_id, rowRecords)); - device_id = new List() { }; - rowRecords = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - res.ShowTableNames(); - var record_count = fetch_size * processed_size; - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == 0); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestTestInsertRecords Passed!"); - } - - public async Task TestTestInsertTablet() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"; - var measurement_lst = new List - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var value_lst = new List> - { - new() {"iotdb", true, (int) 12}, new() {"c#", false, (int) 13}, - new() {"client", true, (int) 14} - }; - var timestamp_lst = new List {2, 1, 3}; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - status = await session_pool.TestInsertTabletAsync(tablet); - System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - // large data test - value_lst = new List>() { }; - timestamp_lst = new List() { }; - var tasks = new List>(); - var start_ms = DateTime.Now.Ticks / 10000; - for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) - { - timestamp_lst.Add(timestamp); - value_lst.Add(new List() {"iotdb", true, (int) timestamp}); - if (timestamp % (fetch_size / 32) == 0) - { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); - tasks.Add(session_pool.TestInsertTabletAsync(tablet)); - value_lst = new List>() { }; - timestamp_lst = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - var end_ms = DateTime.Now.Ticks / 10000; - Console.WriteLine(string.Format("total tablet insert time is {0}", end_ms - start_ms)); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE"); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestTestInsertTablet Passed!"); - } - - public async Task TestTestInsertTablets() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - var device_id = new List() - { - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1", - "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2" - }; - var measurements_lst = new List>() - { - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}, - new() {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"} - }; - var values_lst = new List>>() - { - new() - { - new List() {"iotdb", true, (int) 12}, new List() {"c#", false, (int) 13}, - new List() {"client", true, (int) 14} - }, - new() - { - new List() {"iotdb_2", true, (int) 1}, new List() {"c#_2", false, (int) 2}, - new List() {"client_2", true, (int) 3} - } - }; - var timestamp_lst = new List>() - {new() {2, 1, 3}, new() {3, 1, 2}}; - var tablets = new List() { }; - for (var i = 0; i < device_id.Count; i++) - { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); - tablets.Add(tablet); - } - - status = await session_pool.TestInsertTabletsAsync(tablets); - // System.Diagnostics.Debug.Assert(status == 0); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1 where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE2 where time<15"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - - // large data test - - var tasks = new List>(); - for (var timestamp = 4; timestamp <= processed_size * fetch_size; timestamp++) - { - var local_device_id = "root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"; - var local_measurements = new List() - {"TEST_CSHARP_CLIENT_TS1", "TEST_CSHARP_CLIENT_TS2", "TEST_CSHARP_CLIENT_TS3"}; - var local_value = new List>() {new() {"iotdb", true, (int) timestamp}}; - var local_timestamp = new List {timestamp}; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); - tablets.Add(tablet); - if (timestamp % fetch_size == 0) - { - tasks.Add(session_pool.TestInsertTabletsAsync(tablets)); - tablets = new List() { }; - } - } - - Task.WaitAll(tasks.ToArray()); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE1"); - res.ShowTableNames(); - var res_count = 0; - while (res.HasNext()) - { - res.Next(); - res_count += 1; - } - - await res.Close(); - System.Diagnostics.Debug.Assert(res_count == 0); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestTestInsertTablets Passed!"); - } - - public async Task TestNonSql() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - status = await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - var res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestNonSql Passed"); - } - - public async Task TestSqlQuery() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.status with datatype=BOOLEAN,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.temperature with datatype=FLOAT,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "create timeseries root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE.hardware with datatype=TEXT,encoding=PLAIN"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - await session_pool.ExecuteNonQueryStatementAsync( - "insert into root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE(timestamp, status, hardware) VALUES (7, true,'lz')"); - - var res = await session_pool.ExecuteQueryStatementAsync("show timeseries root"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("SHOW TIMESERIES ROOT sql passed!"); - res = await session_pool.ExecuteQueryStatementAsync("show devices"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("SHOW DEVICES sql passed!"); - res = await session_pool.ExecuteQueryStatementAsync("COUNT TIMESERIES root"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("COUNT TIMESERIES root sql Passed"); - res = await session_pool.ExecuteQueryStatementAsync("select * from root.ln.wf01 where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - Console.WriteLine("SELECT sql Passed"); - res = await session_pool.ExecuteQueryStatementAsync( - "select * from root.TEST_CSHARP_CLIENT_GROUP_97209.TEST_CSHARP_CLIENT_DEVICE where time<10"); - res.ShowTableNames(); - while (res.HasNext()) Console.WriteLine(res.Next()); - - await res.Close(); - status = await session_pool.DeleteStorageGroupAsync("root.TEST_CSHARP_CLIENT_GROUP_97209"); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("SELECT sql Passed"); - } - } -} \ No newline at end of file diff --git a/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs b/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs index 228785d..4f701b2 100644 --- a/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs +++ b/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs b/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs index fcb5984..6653d70 100644 --- a/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs +++ b/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,6 +31,13 @@ public partial class ServerProperties : TBase { + private int _maxConcurrentClientNum; + private string _watermarkSecretKey; + private string _watermarkBitString; + private int _watermarkParamMarkRate; + private int _watermarkParamMaxRightBit; + private int _thriftMaxFrameSize; + private bool _isReadOnly; public string Version { get; set; } @@ -38,6 +45,110 @@ public partial class ServerProperties : TBase public string TimestampPrecision { get; set; } + public int MaxConcurrentClientNum + { + get + { + return _maxConcurrentClientNum; + } + set + { + __isset.maxConcurrentClientNum = true; + this._maxConcurrentClientNum = value; + } + } + + public string WatermarkSecretKey + { + get + { + return _watermarkSecretKey; + } + set + { + __isset.watermarkSecretKey = true; + this._watermarkSecretKey = value; + } + } + + public string WatermarkBitString + { + get + { + return _watermarkBitString; + } + set + { + __isset.watermarkBitString = true; + this._watermarkBitString = value; + } + } + + public int WatermarkParamMarkRate + { + get + { + return _watermarkParamMarkRate; + } + set + { + __isset.watermarkParamMarkRate = true; + this._watermarkParamMarkRate = value; + } + } + + public int WatermarkParamMaxRightBit + { + get + { + return _watermarkParamMaxRightBit; + } + set + { + __isset.watermarkParamMaxRightBit = true; + this._watermarkParamMaxRightBit = value; + } + } + + public int ThriftMaxFrameSize + { + get + { + return _thriftMaxFrameSize; + } + set + { + __isset.thriftMaxFrameSize = true; + this._thriftMaxFrameSize = value; + } + } + + public bool IsReadOnly + { + get + { + return _isReadOnly; + } + set + { + __isset.isReadOnly = true; + this._isReadOnly = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool maxConcurrentClientNum; + public bool watermarkSecretKey; + public bool watermarkBitString; + public bool watermarkParamMarkRate; + public bool watermarkParamMaxRightBit; + public bool thriftMaxFrameSize; + public bool isReadOnly; + } + public ServerProperties() { } @@ -51,20 +162,55 @@ public ServerProperties(string version, List supportedTimeAggregationOpe public ServerProperties DeepCopy() { - var tmp293 = new ServerProperties(); + var tmp379 = new ServerProperties(); if((Version != null)) { - tmp293.Version = this.Version; + tmp379.Version = this.Version; } if((SupportedTimeAggregationOperations != null)) { - tmp293.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); + tmp379.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); } if((TimestampPrecision != null)) { - tmp293.TimestampPrecision = this.TimestampPrecision; + tmp379.TimestampPrecision = this.TimestampPrecision; + } + if(__isset.maxConcurrentClientNum) + { + tmp379.MaxConcurrentClientNum = this.MaxConcurrentClientNum; + } + tmp379.__isset.maxConcurrentClientNum = this.__isset.maxConcurrentClientNum; + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + tmp379.WatermarkSecretKey = this.WatermarkSecretKey; + } + tmp379.__isset.watermarkSecretKey = this.__isset.watermarkSecretKey; + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + tmp379.WatermarkBitString = this.WatermarkBitString; + } + tmp379.__isset.watermarkBitString = this.__isset.watermarkBitString; + if(__isset.watermarkParamMarkRate) + { + tmp379.WatermarkParamMarkRate = this.WatermarkParamMarkRate; + } + tmp379.__isset.watermarkParamMarkRate = this.__isset.watermarkParamMarkRate; + if(__isset.watermarkParamMaxRightBit) + { + tmp379.WatermarkParamMaxRightBit = this.WatermarkParamMaxRightBit; + } + tmp379.__isset.watermarkParamMaxRightBit = this.__isset.watermarkParamMaxRightBit; + if(__isset.thriftMaxFrameSize) + { + tmp379.ThriftMaxFrameSize = this.ThriftMaxFrameSize; + } + tmp379.__isset.thriftMaxFrameSize = this.__isset.thriftMaxFrameSize; + if(__isset.isReadOnly) + { + tmp379.IsReadOnly = this.IsReadOnly; } - return tmp293; + tmp379.__isset.isReadOnly = this.__isset.isReadOnly; + return tmp379; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -102,13 +248,13 @@ public ServerProperties DeepCopy() if (field.Type == TType.List) { { - TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); - SupportedTimeAggregationOperations = new List(_list294.Count); - for(int _i295 = 0; _i295 < _list294.Count; ++_i295) + TList _list380 = await iprot.ReadListBeginAsync(cancellationToken); + SupportedTimeAggregationOperations = new List(_list380.Count); + for(int _i381 = 0; _i381 < _list380.Count; ++_i381) { - string _elem296; - _elem296 = await iprot.ReadStringAsync(cancellationToken); - SupportedTimeAggregationOperations.Add(_elem296); + string _elem382; + _elem382 = await iprot.ReadStringAsync(cancellationToken); + SupportedTimeAggregationOperations.Add(_elem382); } await iprot.ReadListEndAsync(cancellationToken); } @@ -130,6 +276,76 @@ public ServerProperties DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 4: + if (field.Type == TType.I32) + { + MaxConcurrentClientNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.String) + { + WatermarkSecretKey = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.String) + { + WatermarkBitString = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I32) + { + WatermarkParamMarkRate = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.I32) + { + WatermarkParamMaxRightBit = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.I32) + { + ThriftMaxFrameSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.Bool) + { + IsReadOnly = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -183,9 +399,9 @@ public ServerProperties DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, SupportedTimeAggregationOperations.Count), cancellationToken); - foreach (string _iter297 in SupportedTimeAggregationOperations) + foreach (string _iter383 in SupportedTimeAggregationOperations) { - await oprot.WriteStringAsync(_iter297, cancellationToken); + await oprot.WriteStringAsync(_iter383, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -200,6 +416,69 @@ public ServerProperties DeepCopy() await oprot.WriteStringAsync(TimestampPrecision, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.maxConcurrentClientNum) + { + field.Name = "maxConcurrentClientNum"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(MaxConcurrentClientNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + field.Name = "watermarkSecretKey"; + field.Type = TType.String; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(WatermarkSecretKey, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + field.Name = "watermarkBitString"; + field.Type = TType.String; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(WatermarkBitString, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.watermarkParamMarkRate) + { + field.Name = "watermarkParamMarkRate"; + field.Type = TType.I32; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(WatermarkParamMarkRate, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.watermarkParamMaxRightBit) + { + field.Name = "watermarkParamMaxRightBit"; + field.Type = TType.I32; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(WatermarkParamMaxRightBit, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.thriftMaxFrameSize) + { + field.Name = "thriftMaxFrameSize"; + field.Type = TType.I32; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(ThriftMaxFrameSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isReadOnly) + { + field.Name = "isReadOnly"; + field.Type = TType.Bool; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsReadOnly, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -215,7 +494,14 @@ public override bool Equals(object that) if (ReferenceEquals(this, other)) return true; return System.Object.Equals(Version, other.Version) && TCollections.Equals(SupportedTimeAggregationOperations, other.SupportedTimeAggregationOperations) - && System.Object.Equals(TimestampPrecision, other.TimestampPrecision); + && System.Object.Equals(TimestampPrecision, other.TimestampPrecision) + && ((__isset.maxConcurrentClientNum == other.__isset.maxConcurrentClientNum) && ((!__isset.maxConcurrentClientNum) || (System.Object.Equals(MaxConcurrentClientNum, other.MaxConcurrentClientNum)))) + && ((__isset.watermarkSecretKey == other.__isset.watermarkSecretKey) && ((!__isset.watermarkSecretKey) || (System.Object.Equals(WatermarkSecretKey, other.WatermarkSecretKey)))) + && ((__isset.watermarkBitString == other.__isset.watermarkBitString) && ((!__isset.watermarkBitString) || (System.Object.Equals(WatermarkBitString, other.WatermarkBitString)))) + && ((__isset.watermarkParamMarkRate == other.__isset.watermarkParamMarkRate) && ((!__isset.watermarkParamMarkRate) || (System.Object.Equals(WatermarkParamMarkRate, other.WatermarkParamMarkRate)))) + && ((__isset.watermarkParamMaxRightBit == other.__isset.watermarkParamMaxRightBit) && ((!__isset.watermarkParamMaxRightBit) || (System.Object.Equals(WatermarkParamMaxRightBit, other.WatermarkParamMaxRightBit)))) + && ((__isset.thriftMaxFrameSize == other.__isset.thriftMaxFrameSize) && ((!__isset.thriftMaxFrameSize) || (System.Object.Equals(ThriftMaxFrameSize, other.ThriftMaxFrameSize)))) + && ((__isset.isReadOnly == other.__isset.isReadOnly) && ((!__isset.isReadOnly) || (System.Object.Equals(IsReadOnly, other.IsReadOnly)))); } public override int GetHashCode() { @@ -233,6 +519,34 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TimestampPrecision.GetHashCode(); } + if(__isset.maxConcurrentClientNum) + { + hashcode = (hashcode * 397) + MaxConcurrentClientNum.GetHashCode(); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + hashcode = (hashcode * 397) + WatermarkSecretKey.GetHashCode(); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + hashcode = (hashcode * 397) + WatermarkBitString.GetHashCode(); + } + if(__isset.watermarkParamMarkRate) + { + hashcode = (hashcode * 397) + WatermarkParamMarkRate.GetHashCode(); + } + if(__isset.watermarkParamMaxRightBit) + { + hashcode = (hashcode * 397) + WatermarkParamMaxRightBit.GetHashCode(); + } + if(__isset.thriftMaxFrameSize) + { + hashcode = (hashcode * 397) + ThriftMaxFrameSize.GetHashCode(); + } + if(__isset.isReadOnly) + { + hashcode = (hashcode * 397) + IsReadOnly.GetHashCode(); + } } return hashcode; } @@ -255,6 +569,41 @@ public override string ToString() sb.Append(", TimestampPrecision: "); TimestampPrecision.ToString(sb); } + if(__isset.maxConcurrentClientNum) + { + sb.Append(", MaxConcurrentClientNum: "); + MaxConcurrentClientNum.ToString(sb); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + sb.Append(", WatermarkSecretKey: "); + WatermarkSecretKey.ToString(sb); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + sb.Append(", WatermarkBitString: "); + WatermarkBitString.ToString(sb); + } + if(__isset.watermarkParamMarkRate) + { + sb.Append(", WatermarkParamMarkRate: "); + WatermarkParamMarkRate.ToString(sb); + } + if(__isset.watermarkParamMaxRightBit) + { + sb.Append(", WatermarkParamMaxRightBit: "); + WatermarkParamMaxRightBit.ToString(sb); + } + if(__isset.thriftMaxFrameSize) + { + sb.Append(", ThriftMaxFrameSize: "); + ThriftMaxFrameSize.ToString(sb); + } + if(__isset.isReadOnly) + { + sb.Append(", IsReadOnly: "); + IsReadOnly.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs new file mode 100644 index 0000000..ed9994e --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSAppendSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public bool IsAligned { get; set; } + + public List Measurements { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public TSAppendSchemaTemplateReq() + { + } + + public TSAppendSchemaTemplateReq(long sessionId, string name, bool isAligned, List measurements, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.IsAligned = isAligned; + this.Measurements = measurements; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSAppendSchemaTemplateReq DeepCopy() + { + var tmp389 = new TSAppendSchemaTemplateReq(); + tmp389.SessionId = this.SessionId; + if((Name != null)) + { + tmp389.Name = this.Name; + } + tmp389.IsAligned = this.IsAligned; + if((Measurements != null)) + { + tmp389.Measurements = this.Measurements.DeepCopy(); + } + if((DataTypes != null)) + { + tmp389.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp389.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp389.Compressors = this.Compressors.DeepCopy(); + } + return tmp389; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_isAligned = false; + bool isset_measurements = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + isset_isAligned = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list390 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list390.Count); + for(int _i391 = 0; _i391 < _list390.Count; ++_i391) + { + string _elem392; + _elem392 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem392); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list393 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list393.Count); + for(int _i394 = 0; _i394 < _list393.Count; ++_i394) + { + int _elem395; + _elem395 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem395); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list396 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list396.Count); + for(int _i397 = 0; _i397 < _list396.Count; ++_i397) + { + int _elem398; + _elem398 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem398); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list399 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list399.Count); + for(int _i400 = 0; _i400 < _list399.Count; ++_i400) + { + int _elem401; + _elem401 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem401); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_isAligned) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSAppendSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter402 in Measurements) + { + await oprot.WriteStringAsync(_iter402, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter403 in DataTypes) + { + await oprot.WriteI32Async(_iter403, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter404 in Encodings) + { + await oprot.WriteI32Async(_iter404, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter405 in Compressors) + { + await oprot.WriteI32Async(_iter405, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSAppendSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(IsAligned, other.IsAligned) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSAppendSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs index 46f4ec6..ed59e75 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,10 +48,10 @@ public TSCancelOperationReq(long sessionId, long queryId) : this() public TSCancelOperationReq DeepCopy() { - var tmp69 = new TSCancelOperationReq(); - tmp69.SessionId = this.SessionId; - tmp69.QueryId = this.QueryId; - return tmp69; + var tmp87 = new TSCancelOperationReq(); + tmp87.SessionId = this.SessionId; + tmp87.QueryId = this.QueryId; + return tmp87; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs index 0e95fc9..7b5d173 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -81,19 +81,19 @@ public TSCloseOperationReq(long sessionId) : this() public TSCloseOperationReq DeepCopy() { - var tmp71 = new TSCloseOperationReq(); - tmp71.SessionId = this.SessionId; + var tmp89 = new TSCloseOperationReq(); + tmp89.SessionId = this.SessionId; if(__isset.queryId) { - tmp71.QueryId = this.QueryId; + tmp89.QueryId = this.QueryId; } - tmp71.__isset.queryId = this.__isset.queryId; + tmp89.__isset.queryId = this.__isset.queryId; if(__isset.statementId) { - tmp71.StatementId = this.StatementId; + tmp89.StatementId = this.StatementId; } - tmp71.__isset.statementId = this.__isset.statementId; - return tmp71; + tmp89.__isset.statementId = this.__isset.statementId; + return tmp89; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs index 3b73ab3..1d97b91 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -45,9 +45,9 @@ public TSCloseSessionReq(long sessionId) : this() public TSCloseSessionReq DeepCopy() { - var tmp57 = new TSCloseSessionReq(); - tmp57.SessionId = this.SessionId; - return tmp57; + var tmp75 = new TSCloseSessionReq(); + tmp75.SessionId = this.SessionId; + return tmp75; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs new file mode 100644 index 0000000..7aa50fa --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs @@ -0,0 +1,671 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateAlignedTimeseriesReq : TBase +{ + private List _measurementAlias; + private List> _tagsList; + private List> _attributesList; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List Measurements { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public List MeasurementAlias + { + get + { + return _measurementAlias; + } + set + { + __isset.measurementAlias = true; + this._measurementAlias = value; + } + } + + public List> TagsList + { + get + { + return _tagsList; + } + set + { + __isset.tagsList = true; + this._tagsList = value; + } + } + + public List> AttributesList + { + get + { + return _attributesList; + } + set + { + __isset.attributesList = true; + this._attributesList = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool measurementAlias; + public bool tagsList; + public bool attributesList; + } + + public TSCreateAlignedTimeseriesReq() + { + } + + public TSCreateAlignedTimeseriesReq(long sessionId, string prefixPath, List measurements, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.Measurements = measurements; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSCreateAlignedTimeseriesReq DeepCopy() + { + var tmp278 = new TSCreateAlignedTimeseriesReq(); + tmp278.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp278.PrefixPath = this.PrefixPath; + } + if((Measurements != null)) + { + tmp278.Measurements = this.Measurements.DeepCopy(); + } + if((DataTypes != null)) + { + tmp278.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp278.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp278.Compressors = this.Compressors.DeepCopy(); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + tmp278.MeasurementAlias = this.MeasurementAlias.DeepCopy(); + } + tmp278.__isset.measurementAlias = this.__isset.measurementAlias; + if((TagsList != null) && __isset.tagsList) + { + tmp278.TagsList = this.TagsList.DeepCopy(); + } + tmp278.__isset.tagsList = this.__isset.tagsList; + if((AttributesList != null) && __isset.attributesList) + { + tmp278.AttributesList = this.AttributesList.DeepCopy(); + } + tmp278.__isset.attributesList = this.__isset.attributesList; + return tmp278; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurements = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list279 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list279.Count); + for(int _i280 = 0; _i280 < _list279.Count; ++_i280) + { + string _elem281; + _elem281 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem281); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list282 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list282.Count); + for(int _i283 = 0; _i283 < _list282.Count; ++_i283) + { + int _elem284; + _elem284 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem284); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list285 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list285.Count); + for(int _i286 = 0; _i286 < _list285.Count; ++_i286) + { + int _elem287; + _elem287 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem287); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list288 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list288.Count); + for(int _i289 = 0; _i289 < _list288.Count; ++_i289) + { + int _elem290; + _elem290 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem290); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list291 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAlias = new List(_list291.Count); + for(int _i292 = 0; _i292 < _list291.Count; ++_i292) + { + string _elem293; + _elem293 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAlias.Add(_elem293); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.List) + { + { + TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list294.Count); + for(int _i295 = 0; _i295 < _list294.Count; ++_i295) + { + Dictionary _elem296; + { + TMap _map297 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem296 = new Dictionary(_map297.Count); + for(int _i298 = 0; _i298 < _map297.Count; ++_i298) + { + string _key299; + string _val300; + _key299 = await iprot.ReadStringAsync(cancellationToken); + _val300 = await iprot.ReadStringAsync(cancellationToken); + _elem296[_key299] = _val300; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + TagsList.Add(_elem296); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.List) + { + { + TList _list301 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list301.Count); + for(int _i302 = 0; _i302 < _list301.Count; ++_i302) + { + Dictionary _elem303; + { + TMap _map304 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem303 = new Dictionary(_map304.Count); + for(int _i305 = 0; _i305 < _map304.Count; ++_i305) + { + string _key306; + string _val307; + _key306 = await iprot.ReadStringAsync(cancellationToken); + _val307 = await iprot.ReadStringAsync(cancellationToken); + _elem303[_key306] = _val307; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + AttributesList.Add(_elem303); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateAlignedTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter308 in Measurements) + { + await oprot.WriteStringAsync(_iter308, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter309 in DataTypes) + { + await oprot.WriteI32Async(_iter309, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter310 in Encodings) + { + await oprot.WriteI32Async(_iter310, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter311 in Compressors) + { + await oprot.WriteI32Async(_iter311, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + field.Name = "measurementAlias"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAlias.Count), cancellationToken); + foreach (string _iter312 in MeasurementAlias) + { + await oprot.WriteStringAsync(_iter312, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TagsList != null) && __isset.tagsList) + { + field.Name = "tagsList"; + field.Type = TType.List; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); + foreach (Dictionary _iter313 in TagsList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter313.Count), cancellationToken); + foreach (string _iter314 in _iter313.Keys) + { + await oprot.WriteStringAsync(_iter314, cancellationToken); + await oprot.WriteStringAsync(_iter313[_iter314], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AttributesList != null) && __isset.attributesList) + { + field.Name = "attributesList"; + field.Type = TType.List; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); + foreach (Dictionary _iter315 in AttributesList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter315.Count), cancellationToken); + foreach (string _iter316 in _iter315.Keys) + { + await oprot.WriteStringAsync(_iter316, cancellationToken); + await oprot.WriteStringAsync(_iter315[_iter316], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateAlignedTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors) + && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (TCollections.Equals(MeasurementAlias, other.MeasurementAlias)))) + && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) + && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAlias); + } + if((TagsList != null) && __isset.tagsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); + } + if((AttributesList != null) && __isset.attributesList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateAlignedTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + sb.Append(", MeasurementAlias: "); + MeasurementAlias.ToString(sb); + } + if((TagsList != null) && __isset.tagsList) + { + sb.Append(", TagsList: "); + TagsList.ToString(sb); + } + if((AttributesList != null) && __isset.attributesList) + { + sb.Append(", AttributesList: "); + AttributesList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs index e833703..64f9e17 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -123,45 +123,45 @@ public TSCreateMultiTimeseriesReq(long sessionId, List paths, List public TSCreateMultiTimeseriesReq DeepCopy() { - var tmp244 = new TSCreateMultiTimeseriesReq(); - tmp244.SessionId = this.SessionId; + var tmp330 = new TSCreateMultiTimeseriesReq(); + tmp330.SessionId = this.SessionId; if((Paths != null)) { - tmp244.Paths = this.Paths.DeepCopy(); + tmp330.Paths = this.Paths.DeepCopy(); } if((DataTypes != null)) { - tmp244.DataTypes = this.DataTypes.DeepCopy(); + tmp330.DataTypes = this.DataTypes.DeepCopy(); } if((Encodings != null)) { - tmp244.Encodings = this.Encodings.DeepCopy(); + tmp330.Encodings = this.Encodings.DeepCopy(); } if((Compressors != null)) { - tmp244.Compressors = this.Compressors.DeepCopy(); + tmp330.Compressors = this.Compressors.DeepCopy(); } if((PropsList != null) && __isset.propsList) { - tmp244.PropsList = this.PropsList.DeepCopy(); + tmp330.PropsList = this.PropsList.DeepCopy(); } - tmp244.__isset.propsList = this.__isset.propsList; + tmp330.__isset.propsList = this.__isset.propsList; if((TagsList != null) && __isset.tagsList) { - tmp244.TagsList = this.TagsList.DeepCopy(); + tmp330.TagsList = this.TagsList.DeepCopy(); } - tmp244.__isset.tagsList = this.__isset.tagsList; + tmp330.__isset.tagsList = this.__isset.tagsList; if((AttributesList != null) && __isset.attributesList) { - tmp244.AttributesList = this.AttributesList.DeepCopy(); + tmp330.AttributesList = this.AttributesList.DeepCopy(); } - tmp244.__isset.attributesList = this.__isset.attributesList; + tmp330.__isset.attributesList = this.__isset.attributesList; if((MeasurementAliasList != null) && __isset.measurementAliasList) { - tmp244.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); + tmp330.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); } - tmp244.__isset.measurementAliasList = this.__isset.measurementAliasList; - return tmp244; + tmp330.__isset.measurementAliasList = this.__isset.measurementAliasList; + return tmp330; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -201,13 +201,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list245.Count); - for(int _i246 = 0; _i246 < _list245.Count; ++_i246) + TList _list331 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list331.Count); + for(int _i332 = 0; _i332 < _list331.Count; ++_i332) { - string _elem247; - _elem247 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem247); + string _elem333; + _elem333 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem333); } await iprot.ReadListEndAsync(cancellationToken); } @@ -222,13 +222,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list248 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypes = new List(_list248.Count); - for(int _i249 = 0; _i249 < _list248.Count; ++_i249) + TList _list334 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list334.Count); + for(int _i335 = 0; _i335 < _list334.Count; ++_i335) { - int _elem250; - _elem250 = await iprot.ReadI32Async(cancellationToken); - DataTypes.Add(_elem250); + int _elem336; + _elem336 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem336); } await iprot.ReadListEndAsync(cancellationToken); } @@ -243,13 +243,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list251 = await iprot.ReadListBeginAsync(cancellationToken); - Encodings = new List(_list251.Count); - for(int _i252 = 0; _i252 < _list251.Count; ++_i252) + TList _list337 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list337.Count); + for(int _i338 = 0; _i338 < _list337.Count; ++_i338) { - int _elem253; - _elem253 = await iprot.ReadI32Async(cancellationToken); - Encodings.Add(_elem253); + int _elem339; + _elem339 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem339); } await iprot.ReadListEndAsync(cancellationToken); } @@ -264,13 +264,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list254 = await iprot.ReadListBeginAsync(cancellationToken); - Compressors = new List(_list254.Count); - for(int _i255 = 0; _i255 < _list254.Count; ++_i255) + TList _list340 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list340.Count); + for(int _i341 = 0; _i341 < _list340.Count; ++_i341) { - int _elem256; - _elem256 = await iprot.ReadI32Async(cancellationToken); - Compressors.Add(_elem256); + int _elem342; + _elem342 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem342); } await iprot.ReadListEndAsync(cancellationToken); } @@ -285,25 +285,25 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list257 = await iprot.ReadListBeginAsync(cancellationToken); - PropsList = new List>(_list257.Count); - for(int _i258 = 0; _i258 < _list257.Count; ++_i258) + TList _list343 = await iprot.ReadListBeginAsync(cancellationToken); + PropsList = new List>(_list343.Count); + for(int _i344 = 0; _i344 < _list343.Count; ++_i344) { - Dictionary _elem259; + Dictionary _elem345; { - TMap _map260 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem259 = new Dictionary(_map260.Count); - for(int _i261 = 0; _i261 < _map260.Count; ++_i261) + TMap _map346 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem345 = new Dictionary(_map346.Count); + for(int _i347 = 0; _i347 < _map346.Count; ++_i347) { - string _key262; - string _val263; - _key262 = await iprot.ReadStringAsync(cancellationToken); - _val263 = await iprot.ReadStringAsync(cancellationToken); - _elem259[_key262] = _val263; + string _key348; + string _val349; + _key348 = await iprot.ReadStringAsync(cancellationToken); + _val349 = await iprot.ReadStringAsync(cancellationToken); + _elem345[_key348] = _val349; } await iprot.ReadMapEndAsync(cancellationToken); } - PropsList.Add(_elem259); + PropsList.Add(_elem345); } await iprot.ReadListEndAsync(cancellationToken); } @@ -317,25 +317,25 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list264 = await iprot.ReadListBeginAsync(cancellationToken); - TagsList = new List>(_list264.Count); - for(int _i265 = 0; _i265 < _list264.Count; ++_i265) + TList _list350 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list350.Count); + for(int _i351 = 0; _i351 < _list350.Count; ++_i351) { - Dictionary _elem266; + Dictionary _elem352; { - TMap _map267 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem266 = new Dictionary(_map267.Count); - for(int _i268 = 0; _i268 < _map267.Count; ++_i268) + TMap _map353 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem352 = new Dictionary(_map353.Count); + for(int _i354 = 0; _i354 < _map353.Count; ++_i354) { - string _key269; - string _val270; - _key269 = await iprot.ReadStringAsync(cancellationToken); - _val270 = await iprot.ReadStringAsync(cancellationToken); - _elem266[_key269] = _val270; + string _key355; + string _val356; + _key355 = await iprot.ReadStringAsync(cancellationToken); + _val356 = await iprot.ReadStringAsync(cancellationToken); + _elem352[_key355] = _val356; } await iprot.ReadMapEndAsync(cancellationToken); } - TagsList.Add(_elem266); + TagsList.Add(_elem352); } await iprot.ReadListEndAsync(cancellationToken); } @@ -349,25 +349,25 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list271 = await iprot.ReadListBeginAsync(cancellationToken); - AttributesList = new List>(_list271.Count); - for(int _i272 = 0; _i272 < _list271.Count; ++_i272) + TList _list357 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list357.Count); + for(int _i358 = 0; _i358 < _list357.Count; ++_i358) { - Dictionary _elem273; + Dictionary _elem359; { - TMap _map274 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem273 = new Dictionary(_map274.Count); - for(int _i275 = 0; _i275 < _map274.Count; ++_i275) + TMap _map360 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem359 = new Dictionary(_map360.Count); + for(int _i361 = 0; _i361 < _map360.Count; ++_i361) { - string _key276; - string _val277; - _key276 = await iprot.ReadStringAsync(cancellationToken); - _val277 = await iprot.ReadStringAsync(cancellationToken); - _elem273[_key276] = _val277; + string _key362; + string _val363; + _key362 = await iprot.ReadStringAsync(cancellationToken); + _val363 = await iprot.ReadStringAsync(cancellationToken); + _elem359[_key362] = _val363; } await iprot.ReadMapEndAsync(cancellationToken); } - AttributesList.Add(_elem273); + AttributesList.Add(_elem359); } await iprot.ReadListEndAsync(cancellationToken); } @@ -381,13 +381,13 @@ public TSCreateMultiTimeseriesReq DeepCopy() if (field.Type == TType.List) { { - TList _list278 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementAliasList = new List(_list278.Count); - for(int _i279 = 0; _i279 < _list278.Count; ++_i279) + TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAliasList = new List(_list364.Count); + for(int _i365 = 0; _i365 < _list364.Count; ++_i365) { - string _elem280; - _elem280 = await iprot.ReadStringAsync(cancellationToken); - MeasurementAliasList.Add(_elem280); + string _elem366; + _elem366 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAliasList.Add(_elem366); } await iprot.ReadListEndAsync(cancellationToken); } @@ -455,9 +455,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter281 in Paths) + foreach (string _iter367 in Paths) { - await oprot.WriteStringAsync(_iter281, cancellationToken); + await oprot.WriteStringAsync(_iter367, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -471,9 +471,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); - foreach (int _iter282 in DataTypes) + foreach (int _iter368 in DataTypes) { - await oprot.WriteI32Async(_iter282, cancellationToken); + await oprot.WriteI32Async(_iter368, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -487,9 +487,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); - foreach (int _iter283 in Encodings) + foreach (int _iter369 in Encodings) { - await oprot.WriteI32Async(_iter283, cancellationToken); + await oprot.WriteI32Async(_iter369, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -503,9 +503,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); - foreach (int _iter284 in Compressors) + foreach (int _iter370 in Compressors) { - await oprot.WriteI32Async(_iter284, cancellationToken); + await oprot.WriteI32Async(_iter370, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -519,14 +519,14 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Map, PropsList.Count), cancellationToken); - foreach (Dictionary _iter285 in PropsList) + foreach (Dictionary _iter371 in PropsList) { { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter285.Count), cancellationToken); - foreach (string _iter286 in _iter285.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter371.Count), cancellationToken); + foreach (string _iter372 in _iter371.Keys) { - await oprot.WriteStringAsync(_iter286, cancellationToken); - await oprot.WriteStringAsync(_iter285[_iter286], cancellationToken); + await oprot.WriteStringAsync(_iter372, cancellationToken); + await oprot.WriteStringAsync(_iter371[_iter372], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -543,14 +543,14 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); - foreach (Dictionary _iter287 in TagsList) + foreach (Dictionary _iter373 in TagsList) { { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter287.Count), cancellationToken); - foreach (string _iter288 in _iter287.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter373.Count), cancellationToken); + foreach (string _iter374 in _iter373.Keys) { - await oprot.WriteStringAsync(_iter288, cancellationToken); - await oprot.WriteStringAsync(_iter287[_iter288], cancellationToken); + await oprot.WriteStringAsync(_iter374, cancellationToken); + await oprot.WriteStringAsync(_iter373[_iter374], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -567,14 +567,14 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); - foreach (Dictionary _iter289 in AttributesList) + foreach (Dictionary _iter375 in AttributesList) { { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter289.Count), cancellationToken); - foreach (string _iter290 in _iter289.Keys) + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter375.Count), cancellationToken); + foreach (string _iter376 in _iter375.Keys) { - await oprot.WriteStringAsync(_iter290, cancellationToken); - await oprot.WriteStringAsync(_iter289[_iter290], cancellationToken); + await oprot.WriteStringAsync(_iter376, cancellationToken); + await oprot.WriteStringAsync(_iter375[_iter376], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -591,9 +591,9 @@ public TSCreateMultiTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAliasList.Count), cancellationToken); - foreach (string _iter291 in MeasurementAliasList) + foreach (string _iter377 in MeasurementAliasList) { - await oprot.WriteStringAsync(_iter291, cancellationToken); + await oprot.WriteStringAsync(_iter377, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs new file mode 100644 index 0000000..7ad6092 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public byte[] SerializedTemplate { get; set; } + + public TSCreateSchemaTemplateReq() + { + } + + public TSCreateSchemaTemplateReq(long sessionId, string name, byte[] serializedTemplate) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.SerializedTemplate = serializedTemplate; + } + + public TSCreateSchemaTemplateReq DeepCopy() + { + var tmp387 = new TSCreateSchemaTemplateReq(); + tmp387.SessionId = this.SessionId; + if((Name != null)) + { + tmp387.Name = this.Name; + } + if((SerializedTemplate != null)) + { + tmp387.SerializedTemplate = this.SerializedTemplate.ToArray(); + } + return tmp387; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_serializedTemplate = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + SerializedTemplate = await iprot.ReadBinaryAsync(cancellationToken); + isset_serializedTemplate = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_serializedTemplate) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SerializedTemplate != null)) + { + field.Name = "serializedTemplate"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(SerializedTemplate, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && TCollections.Equals(SerializedTemplate, other.SerializedTemplate); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + if((SerializedTemplate != null)) + { + hashcode = (hashcode * 397) + SerializedTemplate.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + if((SerializedTemplate != null)) + { + sb.Append(", SerializedTemplate: "); + SerializedTemplate.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs index 367492b..d2c2f7c 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -123,36 +123,36 @@ public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int enco public TSCreateTimeseriesReq DeepCopy() { - var tmp221 = new TSCreateTimeseriesReq(); - tmp221.SessionId = this.SessionId; + var tmp261 = new TSCreateTimeseriesReq(); + tmp261.SessionId = this.SessionId; if((Path != null)) { - tmp221.Path = this.Path; + tmp261.Path = this.Path; } - tmp221.DataType = this.DataType; - tmp221.Encoding = this.Encoding; - tmp221.Compressor = this.Compressor; + tmp261.DataType = this.DataType; + tmp261.Encoding = this.Encoding; + tmp261.Compressor = this.Compressor; if((Props != null) && __isset.props) { - tmp221.Props = this.Props.DeepCopy(); + tmp261.Props = this.Props.DeepCopy(); } - tmp221.__isset.props = this.__isset.props; + tmp261.__isset.props = this.__isset.props; if((Tags != null) && __isset.tags) { - tmp221.Tags = this.Tags.DeepCopy(); + tmp261.Tags = this.Tags.DeepCopy(); } - tmp221.__isset.tags = this.__isset.tags; + tmp261.__isset.tags = this.__isset.tags; if((Attributes != null) && __isset.attributes) { - tmp221.Attributes = this.Attributes.DeepCopy(); + tmp261.Attributes = this.Attributes.DeepCopy(); } - tmp221.__isset.attributes = this.__isset.attributes; + tmp261.__isset.attributes = this.__isset.attributes; if((MeasurementAlias != null) && __isset.measurementAlias) { - tmp221.MeasurementAlias = this.MeasurementAlias; + tmp261.MeasurementAlias = this.MeasurementAlias; } - tmp221.__isset.measurementAlias = this.__isset.measurementAlias; - return tmp221; + tmp261.__isset.measurementAlias = this.__isset.measurementAlias; + return tmp261; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -236,15 +236,15 @@ public TSCreateTimeseriesReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map222 = await iprot.ReadMapBeginAsync(cancellationToken); - Props = new Dictionary(_map222.Count); - for(int _i223 = 0; _i223 < _map222.Count; ++_i223) + TMap _map262 = await iprot.ReadMapBeginAsync(cancellationToken); + Props = new Dictionary(_map262.Count); + for(int _i263 = 0; _i263 < _map262.Count; ++_i263) { - string _key224; - string _val225; - _key224 = await iprot.ReadStringAsync(cancellationToken); - _val225 = await iprot.ReadStringAsync(cancellationToken); - Props[_key224] = _val225; + string _key264; + string _val265; + _key264 = await iprot.ReadStringAsync(cancellationToken); + _val265 = await iprot.ReadStringAsync(cancellationToken); + Props[_key264] = _val265; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -258,15 +258,15 @@ public TSCreateTimeseriesReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map226 = await iprot.ReadMapBeginAsync(cancellationToken); - Tags = new Dictionary(_map226.Count); - for(int _i227 = 0; _i227 < _map226.Count; ++_i227) + TMap _map266 = await iprot.ReadMapBeginAsync(cancellationToken); + Tags = new Dictionary(_map266.Count); + for(int _i267 = 0; _i267 < _map266.Count; ++_i267) { - string _key228; - string _val229; - _key228 = await iprot.ReadStringAsync(cancellationToken); - _val229 = await iprot.ReadStringAsync(cancellationToken); - Tags[_key228] = _val229; + string _key268; + string _val269; + _key268 = await iprot.ReadStringAsync(cancellationToken); + _val269 = await iprot.ReadStringAsync(cancellationToken); + Tags[_key268] = _val269; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -280,15 +280,15 @@ public TSCreateTimeseriesReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map230 = await iprot.ReadMapBeginAsync(cancellationToken); - Attributes = new Dictionary(_map230.Count); - for(int _i231 = 0; _i231 < _map230.Count; ++_i231) + TMap _map270 = await iprot.ReadMapBeginAsync(cancellationToken); + Attributes = new Dictionary(_map270.Count); + for(int _i271 = 0; _i271 < _map270.Count; ++_i271) { - string _key232; - string _val233; - _key232 = await iprot.ReadStringAsync(cancellationToken); - _val233 = await iprot.ReadStringAsync(cancellationToken); - Attributes[_key232] = _val233; + string _key272; + string _val273; + _key272 = await iprot.ReadStringAsync(cancellationToken); + _val273 = await iprot.ReadStringAsync(cancellationToken); + Attributes[_key272] = _val273; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -393,10 +393,10 @@ public TSCreateTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Props.Count), cancellationToken); - foreach (string _iter234 in Props.Keys) + foreach (string _iter274 in Props.Keys) { - await oprot.WriteStringAsync(_iter234, cancellationToken); - await oprot.WriteStringAsync(Props[_iter234], cancellationToken); + await oprot.WriteStringAsync(_iter274, cancellationToken); + await oprot.WriteStringAsync(Props[_iter274], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -410,10 +410,10 @@ public TSCreateTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Tags.Count), cancellationToken); - foreach (string _iter235 in Tags.Keys) + foreach (string _iter275 in Tags.Keys) { - await oprot.WriteStringAsync(_iter235, cancellationToken); - await oprot.WriteStringAsync(Tags[_iter235], cancellationToken); + await oprot.WriteStringAsync(_iter275, cancellationToken); + await oprot.WriteStringAsync(Tags[_iter275], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -427,10 +427,10 @@ public TSCreateTimeseriesReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Attributes.Count), cancellationToken); - foreach (string _iter236 in Attributes.Keys) + foreach (string _iter276 in Attributes.Keys) { - await oprot.WriteStringAsync(_iter236, cancellationToken); - await oprot.WriteStringAsync(Attributes[_iter236], cancellationToken); + await oprot.WriteStringAsync(_iter276, cancellationToken); + await oprot.WriteStringAsync(Attributes[_iter276], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs index b8a00cd..c3e9977 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -54,15 +54,15 @@ public TSDeleteDataReq(long sessionId, List paths, long startTime, long public TSDeleteDataReq DeepCopy() { - var tmp215 = new TSDeleteDataReq(); - tmp215.SessionId = this.SessionId; + var tmp255 = new TSDeleteDataReq(); + tmp255.SessionId = this.SessionId; if((Paths != null)) { - tmp215.Paths = this.Paths.DeepCopy(); + tmp255.Paths = this.Paths.DeepCopy(); } - tmp215.StartTime = this.StartTime; - tmp215.EndTime = this.EndTime; - return tmp215; + tmp255.StartTime = this.StartTime; + tmp255.EndTime = this.EndTime; + return tmp255; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -101,13 +101,13 @@ public TSDeleteDataReq DeepCopy() if (field.Type == TType.List) { { - TList _list216 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list216.Count); - for(int _i217 = 0; _i217 < _list216.Count; ++_i217) + TList _list256 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list256.Count); + for(int _i257 = 0; _i257 < _list256.Count; ++_i257) { - string _elem218; - _elem218 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem218); + string _elem258; + _elem258 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem258); } await iprot.ReadListEndAsync(cancellationToken); } @@ -194,9 +194,9 @@ public TSDeleteDataReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter219 in Paths) + foreach (string _iter259 in Paths) { - await oprot.WriteStringAsync(_iter219, cancellationToken); + await oprot.WriteStringAsync(_iter259, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs new file mode 100644 index 0000000..7d8b01c --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSDropSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string TemplateName { get; set; } + + public TSDropSchemaTemplateReq() + { + } + + public TSDropSchemaTemplateReq(long sessionId, string templateName) : this() + { + this.SessionId = sessionId; + this.TemplateName = templateName; + } + + public TSDropSchemaTemplateReq DeepCopy() + { + var tmp419 = new TSDropSchemaTemplateReq(); + tmp419.SessionId = this.SessionId; + if((TemplateName != null)) + { + tmp419.TemplateName = this.TemplateName; + } + return tmp419; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_templateName = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSDropSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSDropSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TemplateName, other.TemplateName); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSDropSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs index 126d1ce..f6f3cf4 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,13 +48,13 @@ public TSExecuteBatchStatementReq(long sessionId, List statements) : thi public TSExecuteBatchStatementReq DeepCopy() { - var tmp61 = new TSExecuteBatchStatementReq(); - tmp61.SessionId = this.SessionId; + var tmp79 = new TSExecuteBatchStatementReq(); + tmp79.SessionId = this.SessionId; if((Statements != null)) { - tmp61.Statements = this.Statements.DeepCopy(); + tmp79.Statements = this.Statements.DeepCopy(); } - return tmp61; + return tmp79; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -91,13 +91,13 @@ public TSExecuteBatchStatementReq DeepCopy() if (field.Type == TType.List) { { - TList _list62 = await iprot.ReadListBeginAsync(cancellationToken); - Statements = new List(_list62.Count); - for(int _i63 = 0; _i63 < _list62.Count; ++_i63) + TList _list80 = await iprot.ReadListBeginAsync(cancellationToken); + Statements = new List(_list80.Count); + for(int _i81 = 0; _i81 < _list80.Count; ++_i81) { - string _elem64; - _elem64 = await iprot.ReadStringAsync(cancellationToken); - Statements.Add(_elem64); + string _elem82; + _elem82 = await iprot.ReadStringAsync(cancellationToken); + Statements.Add(_elem82); } await iprot.ReadListEndAsync(cancellationToken); } @@ -154,9 +154,9 @@ public TSExecuteBatchStatementReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Statements.Count), cancellationToken); - foreach (string _iter65 in Statements) + foreach (string _iter83 in Statements) { - await oprot.WriteStringAsync(_iter65, cancellationToken); + await oprot.WriteStringAsync(_iter83, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs index 7d0b092..71c6ef0 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -34,6 +34,7 @@ public partial class TSExecuteStatementReq : TBase private int _fetchSize; private long _timeout; private bool _enableRedirectQuery; + private bool _jdbcQuery; public long SessionId { get; set; } @@ -80,6 +81,19 @@ public bool EnableRedirectQuery } } + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + public Isset __isset; public struct Isset @@ -87,6 +101,7 @@ public struct Isset public bool fetchSize; public bool timeout; public bool enableRedirectQuery; + public bool jdbcQuery; } public TSExecuteStatementReq() @@ -102,29 +117,34 @@ public TSExecuteStatementReq(long sessionId, string statement, long statementId) public TSExecuteStatementReq DeepCopy() { - var tmp59 = new TSExecuteStatementReq(); - tmp59.SessionId = this.SessionId; + var tmp77 = new TSExecuteStatementReq(); + tmp77.SessionId = this.SessionId; if((Statement != null)) { - tmp59.Statement = this.Statement; + tmp77.Statement = this.Statement; } - tmp59.StatementId = this.StatementId; + tmp77.StatementId = this.StatementId; if(__isset.fetchSize) { - tmp59.FetchSize = this.FetchSize; + tmp77.FetchSize = this.FetchSize; } - tmp59.__isset.fetchSize = this.__isset.fetchSize; + tmp77.__isset.fetchSize = this.__isset.fetchSize; if(__isset.timeout) { - tmp59.Timeout = this.Timeout; + tmp77.Timeout = this.Timeout; } - tmp59.__isset.timeout = this.__isset.timeout; + tmp77.__isset.timeout = this.__isset.timeout; if(__isset.enableRedirectQuery) { - tmp59.EnableRedirectQuery = this.EnableRedirectQuery; + tmp77.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp77.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp77.JdbcQuery = this.JdbcQuery; } - tmp59.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - return tmp59; + tmp77.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp77; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -210,6 +230,16 @@ public TSExecuteStatementReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 7: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -294,6 +324,15 @@ public TSExecuteStatementReq DeepCopy() await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -312,7 +351,8 @@ public override bool Equals(object that) && System.Object.Equals(StatementId, other.StatementId) && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))); + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); } public override int GetHashCode() { @@ -336,6 +376,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } } return hashcode; } @@ -367,6 +411,11 @@ public override string ToString() sb.Append(", EnableRedirectQuery: "); EnableRedirectQuery.ToString(sb); } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs index 75e8a94..62aaecd 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -39,6 +39,9 @@ public partial class TSExecuteStatementResp : TBase private TSQueryDataSet _queryDataSet; private TSQueryNonAlignDataSet _nonAlignQueryDataSet; private Dictionary _columnNameIndexMap; + private List _sgColumns; + private List _aliasColumns; + private TSTracingInfo _tracingInfo; public TSStatus Status { get; set; } @@ -146,6 +149,45 @@ public Dictionary ColumnNameIndexMap } } + public List SgColumns + { + get + { + return _sgColumns; + } + set + { + __isset.sgColumns = true; + this._sgColumns = value; + } + } + + public List AliasColumns + { + get + { + return _aliasColumns; + } + set + { + __isset.aliasColumns = true; + this._aliasColumns = value; + } + } + + public TSTracingInfo TracingInfo + { + get + { + return _tracingInfo; + } + set + { + __isset.tracingInfo = true; + this._tracingInfo = value; + } + } + public Isset __isset; public struct Isset @@ -158,6 +200,9 @@ public struct Isset public bool queryDataSet; public bool nonAlignQueryDataSet; public bool columnNameIndexMap; + public bool sgColumns; + public bool aliasColumns; + public bool tracingInfo; } public TSExecuteStatementResp() @@ -171,52 +216,67 @@ public TSExecuteStatementResp(TSStatus status) : this() public TSExecuteStatementResp DeepCopy() { - var tmp28 = new TSExecuteStatementResp(); + var tmp38 = new TSExecuteStatementResp(); if((Status != null)) { - tmp28.Status = (TSStatus)this.Status.DeepCopy(); + tmp38.Status = (TSStatus)this.Status.DeepCopy(); } if(__isset.queryId) { - tmp28.QueryId = this.QueryId; + tmp38.QueryId = this.QueryId; } - tmp28.__isset.queryId = this.__isset.queryId; + tmp38.__isset.queryId = this.__isset.queryId; if((Columns != null) && __isset.columns) { - tmp28.Columns = this.Columns.DeepCopy(); + tmp38.Columns = this.Columns.DeepCopy(); } - tmp28.__isset.columns = this.__isset.columns; + tmp38.__isset.columns = this.__isset.columns; if((OperationType != null) && __isset.operationType) { - tmp28.OperationType = this.OperationType; + tmp38.OperationType = this.OperationType; } - tmp28.__isset.operationType = this.__isset.operationType; + tmp38.__isset.operationType = this.__isset.operationType; if(__isset.ignoreTimeStamp) { - tmp28.IgnoreTimeStamp = this.IgnoreTimeStamp; + tmp38.IgnoreTimeStamp = this.IgnoreTimeStamp; } - tmp28.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; + tmp38.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; if((DataTypeList != null) && __isset.dataTypeList) { - tmp28.DataTypeList = this.DataTypeList.DeepCopy(); + tmp38.DataTypeList = this.DataTypeList.DeepCopy(); } - tmp28.__isset.dataTypeList = this.__isset.dataTypeList; + tmp38.__isset.dataTypeList = this.__isset.dataTypeList; if((QueryDataSet != null) && __isset.queryDataSet) { - tmp28.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + tmp38.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); } - tmp28.__isset.queryDataSet = this.__isset.queryDataSet; + tmp38.__isset.queryDataSet = this.__isset.queryDataSet; if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) { - tmp28.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + tmp38.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); } - tmp28.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + tmp38.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) { - tmp28.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + tmp38.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + } + tmp38.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; + if((SgColumns != null) && __isset.sgColumns) + { + tmp38.SgColumns = this.SgColumns.DeepCopy(); + } + tmp38.__isset.sgColumns = this.__isset.sgColumns; + if((AliasColumns != null) && __isset.aliasColumns) + { + tmp38.AliasColumns = this.AliasColumns.DeepCopy(); + } + tmp38.__isset.aliasColumns = this.__isset.aliasColumns; + if((TracingInfo != null) && __isset.tracingInfo) + { + tmp38.TracingInfo = (TSTracingInfo)this.TracingInfo.DeepCopy(); } - tmp28.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; - return tmp28; + tmp38.__isset.tracingInfo = this.__isset.tracingInfo; + return tmp38; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -263,13 +323,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); - Columns = new List(_list29.Count); - for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + TList _list39 = await iprot.ReadListBeginAsync(cancellationToken); + Columns = new List(_list39.Count); + for(int _i40 = 0; _i40 < _list39.Count; ++_i40) { - string _elem31; - _elem31 = await iprot.ReadStringAsync(cancellationToken); - Columns.Add(_elem31); + string _elem41; + _elem41 = await iprot.ReadStringAsync(cancellationToken); + Columns.Add(_elem41); } await iprot.ReadListEndAsync(cancellationToken); } @@ -303,13 +363,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypeList = new List(_list32.Count); - for(int _i33 = 0; _i33 < _list32.Count; ++_i33) + TList _list42 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypeList = new List(_list42.Count); + for(int _i43 = 0; _i43 < _list42.Count; ++_i43) { - string _elem34; - _elem34 = await iprot.ReadStringAsync(cancellationToken); - DataTypeList.Add(_elem34); + string _elem44; + _elem44 = await iprot.ReadStringAsync(cancellationToken); + DataTypeList.Add(_elem44); } await iprot.ReadListEndAsync(cancellationToken); } @@ -345,15 +405,15 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.Map) { { - TMap _map35 = await iprot.ReadMapBeginAsync(cancellationToken); - ColumnNameIndexMap = new Dictionary(_map35.Count); - for(int _i36 = 0; _i36 < _map35.Count; ++_i36) + TMap _map45 = await iprot.ReadMapBeginAsync(cancellationToken); + ColumnNameIndexMap = new Dictionary(_map45.Count); + for(int _i46 = 0; _i46 < _map45.Count; ++_i46) { - string _key37; - int _val38; - _key37 = await iprot.ReadStringAsync(cancellationToken); - _val38 = await iprot.ReadI32Async(cancellationToken); - ColumnNameIndexMap[_key37] = _val38; + string _key47; + int _val48; + _key47 = await iprot.ReadStringAsync(cancellationToken); + _val48 = await iprot.ReadI32Async(cancellationToken); + ColumnNameIndexMap[_key47] = _val48; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -363,6 +423,57 @@ public TSExecuteStatementResp DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 10: + if (field.Type == TType.List) + { + { + TList _list49 = await iprot.ReadListBeginAsync(cancellationToken); + SgColumns = new List(_list49.Count); + for(int _i50 = 0; _i50 < _list49.Count; ++_i50) + { + string _elem51; + _elem51 = await iprot.ReadStringAsync(cancellationToken); + SgColumns.Add(_elem51); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 11: + if (field.Type == TType.List) + { + { + TList _list52 = await iprot.ReadListBeginAsync(cancellationToken); + AliasColumns = new List(_list52.Count); + for(int _i53 = 0; _i53 < _list52.Count; ++_i53) + { + sbyte _elem54; + _elem54 = await iprot.ReadByteAsync(cancellationToken); + AliasColumns.Add(_elem54); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 12: + if (field.Type == TType.Struct) + { + TracingInfo = new TSTracingInfo(); + await TracingInfo.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -417,9 +528,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Columns.Count), cancellationToken); - foreach (string _iter39 in Columns) + foreach (string _iter55 in Columns) { - await oprot.WriteStringAsync(_iter39, cancellationToken); + await oprot.WriteStringAsync(_iter55, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -451,9 +562,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, DataTypeList.Count), cancellationToken); - foreach (string _iter40 in DataTypeList) + foreach (string _iter56 in DataTypeList) { - await oprot.WriteStringAsync(_iter40, cancellationToken); + await oprot.WriteStringAsync(_iter56, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -485,15 +596,56 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count), cancellationToken); - foreach (string _iter41 in ColumnNameIndexMap.Keys) + foreach (string _iter57 in ColumnNameIndexMap.Keys) { - await oprot.WriteStringAsync(_iter41, cancellationToken); - await oprot.WriteI32Async(ColumnNameIndexMap[_iter41], cancellationToken); + await oprot.WriteStringAsync(_iter57, cancellationToken); + await oprot.WriteI32Async(ColumnNameIndexMap[_iter57], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if((SgColumns != null) && __isset.sgColumns) + { + field.Name = "sgColumns"; + field.Type = TType.List; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, SgColumns.Count), cancellationToken); + foreach (string _iter58 in SgColumns) + { + await oprot.WriteStringAsync(_iter58, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + field.Name = "aliasColumns"; + field.Type = TType.List; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Byte, AliasColumns.Count), cancellationToken); + foreach (sbyte _iter59 in AliasColumns) + { + await oprot.WriteByteAsync(_iter59, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + field.Name = "tracingInfo"; + field.Type = TType.Struct; + field.ID = 12; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await TracingInfo.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -515,7 +667,10 @@ public override bool Equals(object that) && ((__isset.dataTypeList == other.__isset.dataTypeList) && ((!__isset.dataTypeList) || (TCollections.Equals(DataTypeList, other.DataTypeList)))) && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))) - && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))); + && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))) + && ((__isset.sgColumns == other.__isset.sgColumns) && ((!__isset.sgColumns) || (TCollections.Equals(SgColumns, other.SgColumns)))) + && ((__isset.aliasColumns == other.__isset.aliasColumns) && ((!__isset.aliasColumns) || (TCollections.Equals(AliasColumns, other.AliasColumns)))) + && ((__isset.tracingInfo == other.__isset.tracingInfo) && ((!__isset.tracingInfo) || (System.Object.Equals(TracingInfo, other.TracingInfo)))); } public override int GetHashCode() { @@ -557,6 +712,18 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnNameIndexMap); } + if((SgColumns != null) && __isset.sgColumns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SgColumns); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AliasColumns); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + hashcode = (hashcode * 397) + TracingInfo.GetHashCode(); + } } return hashcode; } @@ -609,6 +776,21 @@ public override string ToString() sb.Append(", ColumnNameIndexMap: "); ColumnNameIndexMap.ToString(sb); } + if((SgColumns != null) && __isset.sgColumns) + { + sb.Append(", SgColumns: "); + SgColumns.ToString(sb); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + sb.Append(", AliasColumns: "); + AliasColumns.ToString(sb); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + sb.Append(", TracingInfo: "); + TracingInfo.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs index b0a6a54..4b998c3 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -69,18 +69,18 @@ public TSFetchMetadataReq(long sessionId, string type) : this() public TSFetchMetadataReq DeepCopy() { - var tmp83 = new TSFetchMetadataReq(); - tmp83.SessionId = this.SessionId; + var tmp101 = new TSFetchMetadataReq(); + tmp101.SessionId = this.SessionId; if((Type != null)) { - tmp83.Type = this.Type; + tmp101.Type = this.Type; } if((ColumnPath != null) && __isset.columnPath) { - tmp83.ColumnPath = this.ColumnPath; + tmp101.ColumnPath = this.ColumnPath; } - tmp83.__isset.columnPath = this.__isset.columnPath; - return tmp83; + tmp101.__isset.columnPath = this.__isset.columnPath; + return tmp101; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs index f34d1f1..751f6d9 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -96,27 +96,27 @@ public TSFetchMetadataResp(TSStatus status) : this() public TSFetchMetadataResp DeepCopy() { - var tmp77 = new TSFetchMetadataResp(); + var tmp95 = new TSFetchMetadataResp(); if((Status != null)) { - tmp77.Status = (TSStatus)this.Status.DeepCopy(); + tmp95.Status = (TSStatus)this.Status.DeepCopy(); } if((MetadataInJson != null) && __isset.metadataInJson) { - tmp77.MetadataInJson = this.MetadataInJson; + tmp95.MetadataInJson = this.MetadataInJson; } - tmp77.__isset.metadataInJson = this.__isset.metadataInJson; + tmp95.__isset.metadataInJson = this.__isset.metadataInJson; if((ColumnsList != null) && __isset.columnsList) { - tmp77.ColumnsList = this.ColumnsList.DeepCopy(); + tmp95.ColumnsList = this.ColumnsList.DeepCopy(); } - tmp77.__isset.columnsList = this.__isset.columnsList; + tmp95.__isset.columnsList = this.__isset.columnsList; if((DataType != null) && __isset.dataType) { - tmp77.DataType = this.DataType; + tmp95.DataType = this.DataType; } - tmp77.__isset.dataType = this.__isset.dataType; - return tmp77; + tmp95.__isset.dataType = this.__isset.dataType; + return tmp95; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -163,13 +163,13 @@ public TSFetchMetadataResp DeepCopy() if (field.Type == TType.List) { { - TList _list78 = await iprot.ReadListBeginAsync(cancellationToken); - ColumnsList = new List(_list78.Count); - for(int _i79 = 0; _i79 < _list78.Count; ++_i79) + TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); + ColumnsList = new List(_list96.Count); + for(int _i97 = 0; _i97 < _list96.Count; ++_i97) { - string _elem80; - _elem80 = await iprot.ReadStringAsync(cancellationToken); - ColumnsList.Add(_elem80); + string _elem98; + _elem98 = await iprot.ReadStringAsync(cancellationToken); + ColumnsList.Add(_elem98); } await iprot.ReadListEndAsync(cancellationToken); } @@ -243,9 +243,9 @@ public TSFetchMetadataResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ColumnsList.Count), cancellationToken); - foreach (string _iter81 in ColumnsList) + foreach (string _iter99 in ColumnsList) { - await oprot.WriteStringAsync(_iter81, cancellationToken); + await oprot.WriteStringAsync(_iter99, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs index e180731..9ef28d6 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -78,21 +78,21 @@ public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long q public TSFetchResultsReq DeepCopy() { - var tmp73 = new TSFetchResultsReq(); - tmp73.SessionId = this.SessionId; + var tmp91 = new TSFetchResultsReq(); + tmp91.SessionId = this.SessionId; if((Statement != null)) { - tmp73.Statement = this.Statement; + tmp91.Statement = this.Statement; } - tmp73.FetchSize = this.FetchSize; - tmp73.QueryId = this.QueryId; - tmp73.IsAlign = this.IsAlign; + tmp91.FetchSize = this.FetchSize; + tmp91.QueryId = this.QueryId; + tmp91.IsAlign = this.IsAlign; if(__isset.timeout) { - tmp73.Timeout = this.Timeout; + tmp91.Timeout = this.Timeout; } - tmp73.__isset.timeout = this.__isset.timeout; - return tmp73; + tmp91.__isset.timeout = this.__isset.timeout; + return tmp91; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs index 93584f7..6b178c5 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -87,24 +87,24 @@ public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : th public TSFetchResultsResp DeepCopy() { - var tmp75 = new TSFetchResultsResp(); + var tmp93 = new TSFetchResultsResp(); if((Status != null)) { - tmp75.Status = (TSStatus)this.Status.DeepCopy(); + tmp93.Status = (TSStatus)this.Status.DeepCopy(); } - tmp75.HasResultSet = this.HasResultSet; - tmp75.IsAlign = this.IsAlign; + tmp93.HasResultSet = this.HasResultSet; + tmp93.IsAlign = this.IsAlign; if((QueryDataSet != null) && __isset.queryDataSet) { - tmp75.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + tmp93.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); } - tmp75.__isset.queryDataSet = this.__isset.queryDataSet; + tmp93.__isset.queryDataSet = this.__isset.queryDataSet; if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) { - tmp75.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + tmp93.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); } - tmp75.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; - return tmp75; + tmp93.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + return tmp93; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs index e32437d..27718fb 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,10 +48,10 @@ public TSGetOperationStatusReq(long sessionId, long queryId) : this() public TSGetOperationStatusReq DeepCopy() { - var tmp67 = new TSGetOperationStatusReq(); - tmp67.SessionId = this.SessionId; - tmp67.QueryId = this.QueryId; - return tmp67; + var tmp85 = new TSGetOperationStatusReq(); + tmp85.SessionId = this.SessionId; + tmp85.QueryId = this.QueryId; + return tmp85; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs index d22b52f..4dca3ad 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,16 +48,16 @@ public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() public TSGetTimeZoneResp DeepCopy() { - var tmp85 = new TSGetTimeZoneResp(); + var tmp103 = new TSGetTimeZoneResp(); if((Status != null)) { - tmp85.Status = (TSStatus)this.Status.DeepCopy(); + tmp103.Status = (TSStatus)this.Status.DeepCopy(); } if((TimeZone != null)) { - tmp85.TimeZone = this.TimeZone; + tmp103.TimeZone = this.TimeZone; } - return tmp85; + return tmp103; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSIService.cs b/src/Apache.IoTDB.Rpc.Generated/TSIService.cs index ca6bcbd..964e1aa 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSIService.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSIService.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -23,7 +23,7 @@ using Thrift.Transport.Client; using Thrift.Transport.Server; using Thrift.Processor; - + #pragma warning disable IDE0079 // remove unnecessary pragmas #pragma warning disable IDE1006 // parts of the code use IDL spelling @@ -62,6 +62,8 @@ public interface IAsync global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default); global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default); @@ -80,6 +82,8 @@ public interface IAsync global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); @@ -100,8 +104,24 @@ public interface IAsync global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default); + } @@ -563,6 +583,36 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); } + public async global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createAlignedTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.createAlignedTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createAlignedTimeseries failed: unknown result"); + } + public async global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Call, SeqId), cancellationToken); @@ -835,6 +885,36 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); } + public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecordsOfOneDevice failed: unknown result"); + } + public async global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Call, SeqId), cancellationToken); @@ -1135,6 +1215,36 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); } + public async global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeLastDataQueryArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeLastDataQueryResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeLastDataQuery failed: unknown result"); + } + public async global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Call, SeqId), cancellationToken); @@ -1165,141 +1275,361 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); } - } - - public class AsyncProcessor : ITAsyncProcessor - { - private readonly IAsync _iAsync; - private readonly ILogger _logger; - - public AsyncProcessor(IAsync iAsync, ILogger logger = default) - { - _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); - _logger = logger; - processMap_["openSession"] = openSession_ProcessAsync; - processMap_["closeSession"] = closeSession_ProcessAsync; - processMap_["executeStatement"] = executeStatement_ProcessAsync; - processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; - processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; - processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; - processMap_["fetchResults"] = fetchResults_ProcessAsync; - processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; - processMap_["cancelOperation"] = cancelOperation_ProcessAsync; - processMap_["closeOperation"] = closeOperation_ProcessAsync; - processMap_["getTimeZone"] = getTimeZone_ProcessAsync; - processMap_["setTimeZone"] = setTimeZone_ProcessAsync; - processMap_["getProperties"] = getProperties_ProcessAsync; - processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; - processMap_["createTimeseries"] = createTimeseries_ProcessAsync; - processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; - processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; - processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; - processMap_["insertRecord"] = insertRecord_ProcessAsync; - processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; - processMap_["insertTablet"] = insertTablet_ProcessAsync; - processMap_["insertTablets"] = insertTablets_ProcessAsync; - processMap_["insertRecords"] = insertRecords_ProcessAsync; - processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; - processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; - processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; - processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; - processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; - processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; - processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; - processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; - processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; - processMap_["deleteData"] = deleteData_ProcessAsync; - processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; - processMap_["requestStatementId"] = requestStatementId_ProcessAsync; - } - - protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); - protected Dictionary processMap_ = new Dictionary(); - - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) - { - return await ProcessAsync(iprot, oprot, CancellationToken.None); - } - - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default) { - try + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - var msg = await iprot.ReadMessageBeginAsync(cancellationToken); - - processMap_.TryGetValue(msg.Name, out ProcessFunction fn); - - if (fn == null) - { - await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); - await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - return true; - } - - await fn(msg.SeqID, iprot, oprot, cancellationToken); - + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; } - catch (IOException) + + var result = new InternalStructs.createSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) { - return false; + return result.Success; } - - return true; + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createSchemaTemplate failed: unknown result"); } - public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default) { - var args = new InternalStructs.openSessionArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.openSessionResult(); - try - { - result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) + await OutputProtocol.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.appendSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - throw; + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; } - catch (Exception ex) + + var result = new InternalStructs.appendSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); + return result.Success; } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "appendSchemaTemplate failed: unknown result"); } - public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default) { - var args = new InternalStructs.closeSessionArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.closeSessionResult(); - try + await OutputProtocol.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.pruneSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; } - catch (TTransportException) + + var result = new InternalStructs.pruneSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) { - throw; + return result.Success; } - catch (Exception ex) + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "pruneSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.querySchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.querySchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "querySchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.setSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.unsetSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.unsetSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "unsetSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.dropSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.dropSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "dropSchemaTemplate failed: unknown result"); + } + + } + + public class AsyncProcessor : ITAsyncProcessor + { + private readonly IAsync _iAsync; + private readonly ILogger _logger; + + public AsyncProcessor(IAsync iAsync, ILogger logger = default) + { + _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); + _logger = logger; + processMap_["openSession"] = openSession_ProcessAsync; + processMap_["closeSession"] = closeSession_ProcessAsync; + processMap_["executeStatement"] = executeStatement_ProcessAsync; + processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; + processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; + processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; + processMap_["fetchResults"] = fetchResults_ProcessAsync; + processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; + processMap_["cancelOperation"] = cancelOperation_ProcessAsync; + processMap_["closeOperation"] = closeOperation_ProcessAsync; + processMap_["getTimeZone"] = getTimeZone_ProcessAsync; + processMap_["setTimeZone"] = setTimeZone_ProcessAsync; + processMap_["getProperties"] = getProperties_ProcessAsync; + processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; + processMap_["createTimeseries"] = createTimeseries_ProcessAsync; + processMap_["createAlignedTimeseries"] = createAlignedTimeseries_ProcessAsync; + processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; + processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; + processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; + processMap_["insertRecord"] = insertRecord_ProcessAsync; + processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; + processMap_["insertTablet"] = insertTablet_ProcessAsync; + processMap_["insertTablets"] = insertTablets_ProcessAsync; + processMap_["insertRecords"] = insertRecords_ProcessAsync; + processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecordsOfOneDevice"] = insertStringRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; + processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; + processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; + processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; + processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; + processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; + processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; + processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; + processMap_["deleteData"] = deleteData_ProcessAsync; + processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; + processMap_["executeLastDataQuery"] = executeLastDataQuery_ProcessAsync; + processMap_["requestStatementId"] = requestStatementId_ProcessAsync; + processMap_["createSchemaTemplate"] = createSchemaTemplate_ProcessAsync; + processMap_["appendSchemaTemplate"] = appendSchemaTemplate_ProcessAsync; + processMap_["pruneSchemaTemplate"] = pruneSchemaTemplate_ProcessAsync; + processMap_["querySchemaTemplate"] = querySchemaTemplate_ProcessAsync; + processMap_["setSchemaTemplate"] = setSchemaTemplate_ProcessAsync; + processMap_["unsetSchemaTemplate"] = unsetSchemaTemplate_ProcessAsync; + processMap_["dropSchemaTemplate"] = dropSchemaTemplate_ProcessAsync; + } + + protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); + protected Dictionary processMap_ = new Dictionary(); + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) + { + return await ProcessAsync(iprot, oprot, CancellationToken.None); + } + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + try + { + var msg = await iprot.ReadMessageBeginAsync(cancellationToken); + + processMap_.TryGetValue(msg.Name, out ProcessFunction fn); + + if (fn == null) + { + await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); + await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + return true; + } + + await fn(msg.SeqID, iprot, oprot, cancellationToken); + + } + catch (IOException) + { + return false; + } + + return true; + } + + public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.openSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.openSessionResult(); + try + { + result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.closeSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeSessionResult(); + try + { + result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) { var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; if(_logger != null) @@ -1717,16 +2047,16 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task createAlignedTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.createMultiTimeseriesArgs(); + var args = new InternalStructs.createAlignedTimeseriesArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.createMultiTimeseriesResult(); + var result = new InternalStructs.createAlignedTimeseriesResult(); try { - result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.createAlignedTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1741,23 +2071,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.deleteTimeseriesArgs(); + var args = new InternalStructs.createMultiTimeseriesArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.deleteTimeseriesResult(); + var result = new InternalStructs.createMultiTimeseriesResult(); try { - result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1772,14 +2102,45 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.deleteTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteTimeseriesResult(); + try + { + result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { var args = new InternalStructs.deleteStorageGroupsArgs(); await args.ReadAsync(iprot, cancellationToken); @@ -1996,6 +2357,37 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } + public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); + try + { + result.Success = await _iAsync.insertStringRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + public async global::System.Threading.Tasks.Task insertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { var args = new InternalStructs.insertStringRecordsArgs(); @@ -2306,6 +2698,37 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } + public async global::System.Threading.Tasks.Task executeLastDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeLastDataQueryArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeLastDataQueryResult(); + try + { + result.Success = await _iAsync.executeLastDataQueryAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + public async global::System.Threading.Tasks.Task requestStatementId_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { var args = new InternalStructs.requestStatementIdArgs(); @@ -2337,109 +2760,3225 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } - } - - public class InternalStructs - { - - public partial class openSessionArgs : TBase + public async global::System.Threading.Tasks.Task createSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - private TSOpenSessionReq _req; - - public TSOpenSessionReq Req + var args = new InternalStructs.createSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createSchemaTemplateResult(); + try { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } + result.Success = await _iAsync.createSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - - - public Isset __isset; - public struct Isset + catch (TTransportException) { - public bool req; + throw; } - - public openSessionArgs() + catch (Exception ex) { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - public openSessionArgs DeepCopy() + public async global::System.Threading.Tasks.Task appendSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.appendSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.appendSchemaTemplateResult(); + try { - var tmp299 = new openSessionArgs(); - if((Req != null) && __isset.req) - { - tmp299.Req = (TSOpenSessionReq)this.Req.DeepCopy(); - } - tmp299.__isset.req = this.__isset.req; - return tmp299; + result.Success = await _iAsync.appendSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + catch (TTransportException) { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSOpenSessionReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - await iprot.ReadFieldEndAsync(cancellationToken); - } + public async global::System.Threading.Tasks.Task pruneSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.pruneSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.pruneSchemaTemplateResult(); + try + { + result.Success = await _iAsync.pruneSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } + public async global::System.Threading.Tasks.Task querySchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.querySchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.querySchemaTemplateResult(); + try + { + result.Success = await _iAsync.querySchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task setSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setSchemaTemplateResult(); + try { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("openSession_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; + result.Success = await _iAsync.setSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.unsetSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.unsetSchemaTemplateResult(); + try + { + result.Success = await _iAsync.unsetSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.dropSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.dropSchemaTemplateResult(); + try + { + result.Success = await _iAsync.dropSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + } + + public class InternalStructs + { + + public partial class openSessionArgs : TBase + { + private TSOpenSessionReq _req; + + public TSOpenSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public openSessionArgs() + { + } + + public openSessionArgs DeepCopy() + { + var tmp421 = new openSessionArgs(); + if((Req != null) && __isset.req) + { + tmp421.Req = (TSOpenSessionReq)this.Req.DeepCopy(); + } + tmp421.__isset.req = this.__isset.req; + return tmp421; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSOpenSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_args("); + int tmp422 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp422++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class openSessionResult : TBase + { + private TSOpenSessionResp _success; + + public TSOpenSessionResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public openSessionResult() + { + } + + public openSessionResult DeepCopy() + { + var tmp423 = new openSessionResult(); + if((Success != null) && __isset.success) + { + tmp423.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + } + tmp423.__isset.success = this.__isset.success; + return tmp423; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSOpenSessionResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_result("); + int tmp424 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp424++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionArgs : TBase + { + private TSCloseSessionReq _req; + + public TSCloseSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeSessionArgs() + { + } + + public closeSessionArgs DeepCopy() + { + var tmp425 = new closeSessionArgs(); + if((Req != null) && __isset.req) + { + tmp425.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + } + tmp425.__isset.req = this.__isset.req; + return tmp425; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_args("); + int tmp426 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp426++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeSessionResult() + { + } + + public closeSessionResult DeepCopy() + { + var tmp427 = new closeSessionResult(); + if((Success != null) && __isset.success) + { + tmp427.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp427.__isset.success = this.__isset.success; + return tmp427; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_result("); + int tmp428 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp428++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeStatementArgs() + { + } + + public executeStatementArgs DeepCopy() + { + var tmp429 = new executeStatementArgs(); + if((Req != null) && __isset.req) + { + tmp429.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp429.__isset.req = this.__isset.req; + return tmp429; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_args("); + int tmp430 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp430++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeStatementResult() + { + } + + public executeStatementResult DeepCopy() + { + var tmp431 = new executeStatementResult(); + if((Success != null) && __isset.success) + { + tmp431.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp431.__isset.success = this.__isset.success; + return tmp431; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_result("); + int tmp432 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp432++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementArgs : TBase + { + private TSExecuteBatchStatementReq _req; + + public TSExecuteBatchStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeBatchStatementArgs() + { + } + + public executeBatchStatementArgs DeepCopy() + { + var tmp433 = new executeBatchStatementArgs(); + if((Req != null) && __isset.req) + { + tmp433.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + } + tmp433.__isset.req = this.__isset.req; + return tmp433; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteBatchStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_args("); + int tmp434 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp434++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeBatchStatementResult() + { + } + + public executeBatchStatementResult DeepCopy() + { + var tmp435 = new executeBatchStatementResult(); + if((Success != null) && __isset.success) + { + tmp435.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp435.__isset.success = this.__isset.success; + return tmp435; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_result("); + int tmp436 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp436++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeQueryStatementArgs() + { + } + + public executeQueryStatementArgs DeepCopy() + { + var tmp437 = new executeQueryStatementArgs(); + if((Req != null) && __isset.req) + { + tmp437.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp437.__isset.req = this.__isset.req; + return tmp437; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_args("); + int tmp438 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp438++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeQueryStatementResult() + { + } + + public executeQueryStatementResult DeepCopy() + { + var tmp439 = new executeQueryStatementResult(); + if((Success != null) && __isset.success) + { + tmp439.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp439.__isset.success = this.__isset.success; + return tmp439; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_result("); + int tmp440 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp440++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeUpdateStatementArgs() + { + } + + public executeUpdateStatementArgs DeepCopy() + { + var tmp441 = new executeUpdateStatementArgs(); + if((Req != null) && __isset.req) + { + tmp441.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp441.__isset.req = this.__isset.req; + return tmp441; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatement_args("); + int tmp442 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp442++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeUpdateStatementResult() + { + } + + public executeUpdateStatementResult DeepCopy() + { + var tmp443 = new executeUpdateStatementResult(); + if((Success != null) && __isset.success) + { + tmp443.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp443.__isset.success = this.__isset.success; + return tmp443; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatement_result("); + int tmp444 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp444++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsArgs : TBase + { + private TSFetchResultsReq _req; + + public TSFetchResultsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchResultsArgs() + { + } + + public fetchResultsArgs DeepCopy() + { + var tmp445 = new fetchResultsArgs(); + if((Req != null) && __isset.req) + { + tmp445.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + } + tmp445.__isset.req = this.__isset.req; + return tmp445; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchResultsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResults_args("); + int tmp446 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp446++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsResult : TBase + { + private TSFetchResultsResp _success; + + public TSFetchResultsResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchResultsResult() + { + } + + public fetchResultsResult DeepCopy() + { + var tmp447 = new fetchResultsResult(); + if((Success != null) && __isset.success) + { + tmp447.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + } + tmp447.__isset.success = this.__isset.success; + return tmp447; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchResultsResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResults_result("); + int tmp448 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp448++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchMetadataArgs : TBase + { + private TSFetchMetadataReq _req; + + public TSFetchMetadataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchMetadataArgs() + { + } + + public fetchMetadataArgs DeepCopy() + { + var tmp449 = new fetchMetadataArgs(); + if((Req != null) && __isset.req) + { + tmp449.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); + } + tmp449.__isset.req = this.__isset.req; + return tmp449; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchMetadataReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchMetadataArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchMetadata_args("); + int tmp450 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp450++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchMetadataResult : TBase + { + private TSFetchMetadataResp _success; + + public TSFetchMetadataResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchMetadataResult() + { + } + + public fetchMetadataResult DeepCopy() + { + var tmp451 = new fetchMetadataResult(); + if((Success != null) && __isset.success) + { + tmp451.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + } + tmp451.__isset.success = this.__isset.success; + return tmp451; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchMetadataResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchMetadataResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchMetadata_result("); + int tmp452 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp452++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class cancelOperationArgs : TBase + { + private TSCancelOperationReq _req; + + public TSCancelOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public cancelOperationArgs() + { + } + + public cancelOperationArgs DeepCopy() + { + var tmp453 = new cancelOperationArgs(); + if((Req != null) && __isset.req) + { + tmp453.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + } + tmp453.__isset.req = this.__isset.req; + return tmp453; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCancelOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is cancelOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("cancelOperation_args("); + int tmp454 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp454++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class cancelOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public cancelOperationResult() + { + } + + public cancelOperationResult DeepCopy() + { + var tmp455 = new cancelOperationResult(); + if((Success != null) && __isset.success) + { + tmp455.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp455.__isset.success = this.__isset.success; + return tmp455; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is cancelOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("cancelOperation_result("); + int tmp456 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp456++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeOperationArgs : TBase + { + private TSCloseOperationReq _req; + + public TSCloseOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeOperationArgs() + { + } + + public closeOperationArgs DeepCopy() + { + var tmp457 = new closeOperationArgs(); + if((Req != null) && __isset.req) + { + tmp457.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + } + tmp457.__isset.req = this.__isset.req; + return tmp457; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeOperation_args("); + int tmp458 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp458++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeOperationResult() + { + } + + public closeOperationResult DeepCopy() + { + var tmp459 = new closeOperationResult(); + if((Success != null) && __isset.success) + { + tmp459.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp459.__isset.success = this.__isset.success; + return tmp459; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeOperation_result("); + int tmp460 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp460++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class getTimeZoneArgs : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + } + + public getTimeZoneArgs() + { + } + + public getTimeZoneArgs DeepCopy() + { + var tmp461 = new getTimeZoneArgs(); + if(__isset.sessionId) + { + tmp461.SessionId = this.SessionId; + } + tmp461.__isset.sessionId = this.__isset.sessionId; + return tmp461; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getTimeZone_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -2453,17 +5992,17 @@ public openSessionArgs DeepCopy() public override bool Equals(object that) { - if (!(that is openSessionArgs other)) return false; + if (!(that is getTimeZoneArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); } } return hashcode; @@ -2471,13 +6010,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("openSession_args("); - int tmp300 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("getTimeZone_args("); + int tmp462 = 0; + if(__isset.sessionId) { - if(0 < tmp300++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp462++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -2485,11 +6024,11 @@ public override string ToString() } - public partial class openSessionResult : TBase + public partial class getTimeZoneResult : TBase { - private TSOpenSessionResp _success; + private TSGetTimeZoneResp _success; - public TSOpenSessionResp Success + public TSGetTimeZoneResp Success { get { @@ -2509,19 +6048,19 @@ public struct Isset public bool success; } - public openSessionResult() + public getTimeZoneResult() { } - public openSessionResult DeepCopy() + public getTimeZoneResult DeepCopy() { - var tmp301 = new openSessionResult(); + var tmp463 = new getTimeZoneResult(); if((Success != null) && __isset.success) { - tmp301.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + tmp463.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); } - tmp301.__isset.success = this.__isset.success; - return tmp301; + tmp463.__isset.success = this.__isset.success; + return tmp463; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2544,7 +6083,7 @@ public openSessionResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSOpenSessionResp(); + Success = new TSGetTimeZoneResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -2573,7 +6112,7 @@ public openSessionResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("openSession_result"); + var struc = new TStruct("getTimeZone_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -2600,7 +6139,7 @@ public openSessionResult DeepCopy() public override bool Equals(object that) { - if (!(that is openSessionResult other)) return false; + if (!(that is getTimeZoneResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -2618,11 +6157,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("openSession_result("); - int tmp302 = 0; + var sb = new StringBuilder("getTimeZone_result("); + int tmp464 = 0; if((Success != null) && __isset.success) { - if(0 < tmp302++) { sb.Append(", "); } + if(0 < tmp464++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -2632,11 +6171,11 @@ public override string ToString() } - public partial class closeSessionArgs : TBase + public partial class setTimeZoneArgs : TBase { - private TSCloseSessionReq _req; + private TSSetTimeZoneReq _req; - public TSCloseSessionReq Req + public TSSetTimeZoneReq Req { get { @@ -2656,19 +6195,19 @@ public struct Isset public bool req; } - public closeSessionArgs() + public setTimeZoneArgs() { } - public closeSessionArgs DeepCopy() + public setTimeZoneArgs DeepCopy() { - var tmp303 = new closeSessionArgs(); + var tmp465 = new setTimeZoneArgs(); if((Req != null) && __isset.req) { - tmp303.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + tmp465.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); } - tmp303.__isset.req = this.__isset.req; - return tmp303; + tmp465.__isset.req = this.__isset.req; + return tmp465; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2691,7 +6230,7 @@ public closeSessionArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCloseSessionReq(); + Req = new TSSetTimeZoneReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -2720,7 +6259,7 @@ public closeSessionArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeSession_args"); + var struc = new TStruct("setTimeZone_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -2743,7 +6282,7 @@ public closeSessionArgs DeepCopy() public override bool Equals(object that) { - if (!(that is closeSessionArgs other)) return false; + if (!(that is setTimeZoneArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -2761,11 +6300,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeSession_args("); - int tmp304 = 0; + var sb = new StringBuilder("setTimeZone_args("); + int tmp466 = 0; if((Req != null) && __isset.req) { - if(0 < tmp304++) { sb.Append(", "); } + if(0 < tmp466++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -2775,7 +6314,7 @@ public override string ToString() } - public partial class closeSessionResult : TBase + public partial class setTimeZoneResult : TBase { private TSStatus _success; @@ -2799,19 +6338,19 @@ public struct Isset public bool success; } - public closeSessionResult() + public setTimeZoneResult() { } - public closeSessionResult DeepCopy() + public setTimeZoneResult DeepCopy() { - var tmp305 = new closeSessionResult(); + var tmp467 = new setTimeZoneResult(); if((Success != null) && __isset.success) { - tmp305.Success = (TSStatus)this.Success.DeepCopy(); + tmp467.Success = (TSStatus)this.Success.DeepCopy(); } - tmp305.__isset.success = this.__isset.success; - return tmp305; + tmp467.__isset.success = this.__isset.success; + return tmp467; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2863,7 +6402,7 @@ public closeSessionResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeSession_result"); + var struc = new TStruct("setTimeZone_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -2890,7 +6429,7 @@ public closeSessionResult DeepCopy() public override bool Equals(object that) { - if (!(that is closeSessionResult other)) return false; + if (!(that is setTimeZoneResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -2908,11 +6447,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeSession_result("); - int tmp306 = 0; + var sb = new StringBuilder("setTimeZone_result("); + int tmp468 = 0; if((Success != null) && __isset.success) { - if(0 < tmp306++) { sb.Append(", "); } + if(0 < tmp468++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -2922,43 +6461,17 @@ public override string ToString() } - public partial class executeStatementArgs : TBase + public partial class getPropertiesArgs : TBase { - private TSExecuteStatementReq _req; - - public TSExecuteStatementReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - public executeStatementArgs() + public getPropertiesArgs() { } - public executeStatementArgs DeepCopy() + public getPropertiesArgs DeepCopy() { - var tmp307 = new executeStatementArgs(); - if((Req != null) && __isset.req) - { - tmp307.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); - } - tmp307.__isset.req = this.__isset.req; - return tmp307; + var tmp469 = new getPropertiesArgs(); + return tmp469; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -2978,17 +6491,6 @@ public executeStatementArgs DeepCopy() switch (field.ID) { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSExecuteStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -3010,18 +6512,8 @@ public executeStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeStatement_args"); + var struc = new TStruct("getProperties_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -3033,43 +6525,32 @@ public executeStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeStatementArgs other)) return false; + if (!(that is getPropertiesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return true; } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("executeStatement_args("); - int tmp308 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp308++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } + var sb = new StringBuilder("getProperties_args("); sb.Append(')'); return sb.ToString(); } } - public partial class executeStatementResult : TBase + public partial class getPropertiesResult : TBase { - private TSExecuteStatementResp _success; + private ServerProperties _success; - public TSExecuteStatementResp Success + public ServerProperties Success { get { @@ -3089,19 +6570,19 @@ public struct Isset public bool success; } - public executeStatementResult() + public getPropertiesResult() { } - public executeStatementResult DeepCopy() + public getPropertiesResult DeepCopy() { - var tmp309 = new executeStatementResult(); + var tmp471 = new getPropertiesResult(); if((Success != null) && __isset.success) { - tmp309.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp471.Success = (ServerProperties)this.Success.DeepCopy(); } - tmp309.__isset.success = this.__isset.success; - return tmp309; + tmp471.__isset.success = this.__isset.success; + return tmp471; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3124,7 +6605,7 @@ public executeStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new ServerProperties(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3153,7 +6634,7 @@ public executeStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeStatement_result"); + var struc = new TStruct("getProperties_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3180,7 +6661,7 @@ public executeStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeStatementResult other)) return false; + if (!(that is getPropertiesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3198,11 +6679,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeStatement_result("); - int tmp310 = 0; + var sb = new StringBuilder("getProperties_result("); + int tmp472 = 0; if((Success != null) && __isset.success) { - if(0 < tmp310++) { sb.Append(", "); } + if(0 < tmp472++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3212,20 +6693,34 @@ public override string ToString() } - public partial class executeBatchStatementArgs : TBase + public partial class setStorageGroupArgs : TBase { - private TSExecuteBatchStatementReq _req; + private long _sessionId; + private string _storageGroup; - public TSExecuteBatchStatementReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public string StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; } } @@ -3233,22 +6728,28 @@ public TSExecuteBatchStatementReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool storageGroup; } - public executeBatchStatementArgs() + public setStorageGroupArgs() { } - public executeBatchStatementArgs DeepCopy() + public setStorageGroupArgs DeepCopy() { - var tmp311 = new executeBatchStatementArgs(); - if((Req != null) && __isset.req) + var tmp473 = new setStorageGroupArgs(); + if(__isset.sessionId) + { + tmp473.SessionId = this.SessionId; + } + tmp473.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) { - tmp311.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + tmp473.StorageGroup = this.StorageGroup; } - tmp311.__isset.req = this.__isset.req; - return tmp311; + tmp473.__isset.storageGroup = this.__isset.storageGroup; + return tmp473; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3269,10 +6770,19 @@ public executeBatchStatementArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSExecuteBatchStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + StorageGroup = await iprot.ReadStringAsync(cancellationToken); } else { @@ -3300,16 +6810,25 @@ public executeBatchStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeBatchStatement_args"); + var struc = new TStruct("setStorageGroup_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(StorageGroup, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -3323,17 +6842,22 @@ public executeBatchStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeBatchStatementArgs other)) return false; + if (!(that is setStorageGroupArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); } } return hashcode; @@ -3341,13 +6865,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeBatchStatement_args("); - int tmp312 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("setStorageGroup_args("); + int tmp474 = 0; + if(__isset.sessionId) { - if(0 < tmp312++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -3355,7 +6885,7 @@ public override string ToString() } - public partial class executeBatchStatementResult : TBase + public partial class setStorageGroupResult : TBase { private TSStatus _success; @@ -3379,19 +6909,19 @@ public struct Isset public bool success; } - public executeBatchStatementResult() + public setStorageGroupResult() { } - public executeBatchStatementResult DeepCopy() + public setStorageGroupResult DeepCopy() { - var tmp313 = new executeBatchStatementResult(); + var tmp475 = new setStorageGroupResult(); if((Success != null) && __isset.success) { - tmp313.Success = (TSStatus)this.Success.DeepCopy(); + tmp475.Success = (TSStatus)this.Success.DeepCopy(); } - tmp313.__isset.success = this.__isset.success; - return tmp313; + tmp475.__isset.success = this.__isset.success; + return tmp475; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3443,7 +6973,7 @@ public executeBatchStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeBatchStatement_result"); + var struc = new TStruct("setStorageGroup_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3470,7 +7000,7 @@ public executeBatchStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeBatchStatementResult other)) return false; + if (!(that is setStorageGroupResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3488,11 +7018,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeBatchStatement_result("); - int tmp314 = 0; + var sb = new StringBuilder("setStorageGroup_result("); + int tmp476 = 0; if((Success != null) && __isset.success) { - if(0 < tmp314++) { sb.Append(", "); } + if(0 < tmp476++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3502,11 +7032,11 @@ public override string ToString() } - public partial class executeQueryStatementArgs : TBase + public partial class createTimeseriesArgs : TBase { - private TSExecuteStatementReq _req; + private TSCreateTimeseriesReq _req; - public TSExecuteStatementReq Req + public TSCreateTimeseriesReq Req { get { @@ -3526,19 +7056,19 @@ public struct Isset public bool req; } - public executeQueryStatementArgs() + public createTimeseriesArgs() { } - public executeQueryStatementArgs DeepCopy() + public createTimeseriesArgs DeepCopy() { - var tmp315 = new executeQueryStatementArgs(); + var tmp477 = new createTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp315.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp477.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); } - tmp315.__isset.req = this.__isset.req; - return tmp315; + tmp477.__isset.req = this.__isset.req; + return tmp477; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3561,7 +7091,7 @@ public executeQueryStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); + Req = new TSCreateTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3590,7 +7120,7 @@ public executeQueryStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeQueryStatement_args"); + var struc = new TStruct("createTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3613,7 +7143,7 @@ public executeQueryStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeQueryStatementArgs other)) return false; + if (!(that is createTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3631,11 +7161,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeQueryStatement_args("); - int tmp316 = 0; + var sb = new StringBuilder("createTimeseries_args("); + int tmp478 = 0; if((Req != null) && __isset.req) { - if(0 < tmp316++) { sb.Append(", "); } + if(0 < tmp478++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3645,11 +7175,11 @@ public override string ToString() } - public partial class executeQueryStatementResult : TBase + public partial class createTimeseriesResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -3669,19 +7199,19 @@ public struct Isset public bool success; } - public executeQueryStatementResult() + public createTimeseriesResult() { } - public executeQueryStatementResult DeepCopy() + public createTimeseriesResult DeepCopy() { - var tmp317 = new executeQueryStatementResult(); + var tmp479 = new createTimeseriesResult(); if((Success != null) && __isset.success) { - tmp317.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp479.Success = (TSStatus)this.Success.DeepCopy(); } - tmp317.__isset.success = this.__isset.success; - return tmp317; + tmp479.__isset.success = this.__isset.success; + return tmp479; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3704,7 +7234,7 @@ public executeQueryStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3733,7 +7263,7 @@ public executeQueryStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeQueryStatement_result"); + var struc = new TStruct("createTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3760,7 +7290,7 @@ public executeQueryStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeQueryStatementResult other)) return false; + if (!(that is createTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3778,11 +7308,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeQueryStatement_result("); - int tmp318 = 0; + var sb = new StringBuilder("createTimeseries_result("); + int tmp480 = 0; if((Success != null) && __isset.success) { - if(0 < tmp318++) { sb.Append(", "); } + if(0 < tmp480++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3792,11 +7322,11 @@ public override string ToString() } - public partial class executeUpdateStatementArgs : TBase + public partial class createAlignedTimeseriesArgs : TBase { - private TSExecuteStatementReq _req; + private TSCreateAlignedTimeseriesReq _req; - public TSExecuteStatementReq Req + public TSCreateAlignedTimeseriesReq Req { get { @@ -3816,19 +7346,19 @@ public struct Isset public bool req; } - public executeUpdateStatementArgs() + public createAlignedTimeseriesArgs() { } - public executeUpdateStatementArgs DeepCopy() + public createAlignedTimeseriesArgs DeepCopy() { - var tmp319 = new executeUpdateStatementArgs(); + var tmp481 = new createAlignedTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp319.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp481.Req = (TSCreateAlignedTimeseriesReq)this.Req.DeepCopy(); } - tmp319.__isset.req = this.__isset.req; - return tmp319; + tmp481.__isset.req = this.__isset.req; + return tmp481; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3851,7 +7381,7 @@ public executeUpdateStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); + Req = new TSCreateAlignedTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3880,7 +7410,7 @@ public executeUpdateStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeUpdateStatement_args"); + var struc = new TStruct("createAlignedTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3903,7 +7433,7 @@ public executeUpdateStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeUpdateStatementArgs other)) return false; + if (!(that is createAlignedTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3921,11 +7451,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeUpdateStatement_args("); - int tmp320 = 0; + var sb = new StringBuilder("createAlignedTimeseries_args("); + int tmp482 = 0; if((Req != null) && __isset.req) { - if(0 < tmp320++) { sb.Append(", "); } + if(0 < tmp482++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3935,11 +7465,11 @@ public override string ToString() } - public partial class executeUpdateStatementResult : TBase + public partial class createAlignedTimeseriesResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -3959,19 +7489,19 @@ public struct Isset public bool success; } - public executeUpdateStatementResult() + public createAlignedTimeseriesResult() { } - public executeUpdateStatementResult DeepCopy() + public createAlignedTimeseriesResult DeepCopy() { - var tmp321 = new executeUpdateStatementResult(); + var tmp483 = new createAlignedTimeseriesResult(); if((Success != null) && __isset.success) { - tmp321.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp483.Success = (TSStatus)this.Success.DeepCopy(); } - tmp321.__isset.success = this.__isset.success; - return tmp321; + tmp483.__isset.success = this.__isset.success; + return tmp483; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3994,7 +7524,7 @@ public executeUpdateStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4023,7 +7553,7 @@ public executeUpdateStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeUpdateStatement_result"); + var struc = new TStruct("createAlignedTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4050,7 +7580,7 @@ public executeUpdateStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeUpdateStatementResult other)) return false; + if (!(that is createAlignedTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4068,11 +7598,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeUpdateStatement_result("); - int tmp322 = 0; + var sb = new StringBuilder("createAlignedTimeseries_result("); + int tmp484 = 0; if((Success != null) && __isset.success) { - if(0 < tmp322++) { sb.Append(", "); } + if(0 < tmp484++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4082,11 +7612,11 @@ public override string ToString() } - public partial class fetchResultsArgs : TBase + public partial class createMultiTimeseriesArgs : TBase { - private TSFetchResultsReq _req; + private TSCreateMultiTimeseriesReq _req; - public TSFetchResultsReq Req + public TSCreateMultiTimeseriesReq Req { get { @@ -4106,19 +7636,19 @@ public struct Isset public bool req; } - public fetchResultsArgs() + public createMultiTimeseriesArgs() { } - public fetchResultsArgs DeepCopy() + public createMultiTimeseriesArgs DeepCopy() { - var tmp323 = new fetchResultsArgs(); + var tmp485 = new createMultiTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp323.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + tmp485.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); } - tmp323.__isset.req = this.__isset.req; - return tmp323; + tmp485.__isset.req = this.__isset.req; + return tmp485; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4141,7 +7671,7 @@ public fetchResultsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSFetchResultsReq(); + Req = new TSCreateMultiTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -4170,7 +7700,7 @@ public fetchResultsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchResults_args"); + var struc = new TStruct("createMultiTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -4193,7 +7723,7 @@ public fetchResultsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is fetchResultsArgs other)) return false; + if (!(that is createMultiTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -4211,11 +7741,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchResults_args("); - int tmp324 = 0; + var sb = new StringBuilder("createMultiTimeseries_args("); + int tmp486 = 0; if((Req != null) && __isset.req) { - if(0 < tmp324++) { sb.Append(", "); } + if(0 < tmp486++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -4225,11 +7755,11 @@ public override string ToString() } - public partial class fetchResultsResult : TBase + public partial class createMultiTimeseriesResult : TBase { - private TSFetchResultsResp _success; + private TSStatus _success; - public TSFetchResultsResp Success + public TSStatus Success { get { @@ -4249,19 +7779,19 @@ public struct Isset public bool success; } - public fetchResultsResult() + public createMultiTimeseriesResult() { } - public fetchResultsResult DeepCopy() + public createMultiTimeseriesResult DeepCopy() { - var tmp325 = new fetchResultsResult(); + var tmp487 = new createMultiTimeseriesResult(); if((Success != null) && __isset.success) { - tmp325.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + tmp487.Success = (TSStatus)this.Success.DeepCopy(); } - tmp325.__isset.success = this.__isset.success; - return tmp325; + tmp487.__isset.success = this.__isset.success; + return tmp487; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4284,7 +7814,7 @@ public fetchResultsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSFetchResultsResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4313,7 +7843,7 @@ public fetchResultsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchResults_result"); + var struc = new TStruct("createMultiTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4340,7 +7870,7 @@ public fetchResultsResult DeepCopy() public override bool Equals(object that) { - if (!(that is fetchResultsResult other)) return false; + if (!(that is createMultiTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4358,11 +7888,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchResults_result("); - int tmp326 = 0; + var sb = new StringBuilder("createMultiTimeseries_result("); + int tmp488 = 0; if((Success != null) && __isset.success) { - if(0 < tmp326++) { sb.Append(", "); } + if(0 < tmp488++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4372,20 +7902,34 @@ public override string ToString() } - public partial class fetchMetadataArgs : TBase + public partial class deleteTimeseriesArgs : TBase { - private TSFetchMetadataReq _req; + private long _sessionId; + private List _path; - public TSFetchMetadataReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List Path + { + get + { + return _path; + } + set + { + __isset.path = true; + this._path = value; } } @@ -4393,22 +7937,28 @@ public TSFetchMetadataReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool path; } - public fetchMetadataArgs() + public deleteTimeseriesArgs() { } - public fetchMetadataArgs DeepCopy() + public deleteTimeseriesArgs DeepCopy() { - var tmp327 = new fetchMetadataArgs(); - if((Req != null) && __isset.req) + var tmp489 = new deleteTimeseriesArgs(); + if(__isset.sessionId) + { + tmp489.SessionId = this.SessionId; + } + tmp489.__isset.sessionId = this.__isset.sessionId; + if((Path != null) && __isset.path) { - tmp327.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); + tmp489.Path = this.Path.DeepCopy(); } - tmp327.__isset.req = this.__isset.req; - return tmp327; + tmp489.__isset.path = this.__isset.path; + return tmp489; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4429,10 +7979,29 @@ public fetchMetadataArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSFetchMetadataReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list490 = await iprot.ReadListBeginAsync(cancellationToken); + Path = new List(_list490.Count); + for(int _i491 = 0; _i491 < _list490.Count; ++_i491) + { + string _elem492; + _elem492 = await iprot.ReadStringAsync(cancellationToken); + Path.Add(_elem492); + } + await iprot.ReadListEndAsync(cancellationToken); + } } else { @@ -4460,16 +8029,32 @@ public fetchMetadataArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchMetadata_args"); + var struc = new TStruct("deleteTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null) && __isset.path) + { + field.Name = "path"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); + foreach (string _iter493 in Path) + { + await oprot.WriteStringAsync(_iter493, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -4483,17 +8068,22 @@ public fetchMetadataArgs DeepCopy() public override bool Equals(object that) { - if (!(that is fetchMetadataArgs other)) return false; + if (!(that is deleteTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Path != null) && __isset.path) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); } } return hashcode; @@ -4501,13 +8091,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchMetadata_args("); - int tmp328 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("deleteTimeseries_args("); + int tmp494 = 0; + if(__isset.sessionId) { - if(0 < tmp328++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp494++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((Path != null) && __isset.path) + { + if(0 < tmp494++) { sb.Append(", "); } + sb.Append("Path: "); + Path.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -4515,11 +8111,11 @@ public override string ToString() } - public partial class fetchMetadataResult : TBase + public partial class deleteTimeseriesResult : TBase { - private TSFetchMetadataResp _success; + private TSStatus _success; - public TSFetchMetadataResp Success + public TSStatus Success { get { @@ -4539,19 +8135,19 @@ public struct Isset public bool success; } - public fetchMetadataResult() + public deleteTimeseriesResult() { } - public fetchMetadataResult DeepCopy() + public deleteTimeseriesResult DeepCopy() { - var tmp329 = new fetchMetadataResult(); + var tmp495 = new deleteTimeseriesResult(); if((Success != null) && __isset.success) { - tmp329.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + tmp495.Success = (TSStatus)this.Success.DeepCopy(); } - tmp329.__isset.success = this.__isset.success; - return tmp329; + tmp495.__isset.success = this.__isset.success; + return tmp495; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4574,7 +8170,7 @@ public fetchMetadataResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSFetchMetadataResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4603,7 +8199,7 @@ public fetchMetadataResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchMetadata_result"); + var struc = new TStruct("deleteTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4630,7 +8226,7 @@ public fetchMetadataResult DeepCopy() public override bool Equals(object that) { - if (!(that is fetchMetadataResult other)) return false; + if (!(that is deleteTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4648,11 +8244,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchMetadata_result("); - int tmp330 = 0; + var sb = new StringBuilder("deleteTimeseries_result("); + int tmp496 = 0; if((Success != null) && __isset.success) { - if(0 < tmp330++) { sb.Append(", "); } + if(0 < tmp496++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4662,20 +8258,34 @@ public override string ToString() } - public partial class cancelOperationArgs : TBase + public partial class deleteStorageGroupsArgs : TBase { - private TSCancelOperationReq _req; + private long _sessionId; + private List _storageGroup; - public TSCancelOperationReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; } } @@ -4683,22 +8293,28 @@ public TSCancelOperationReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool storageGroup; } - public cancelOperationArgs() + public deleteStorageGroupsArgs() { } - public cancelOperationArgs DeepCopy() + public deleteStorageGroupsArgs DeepCopy() { - var tmp331 = new cancelOperationArgs(); - if((Req != null) && __isset.req) + var tmp497 = new deleteStorageGroupsArgs(); + if(__isset.sessionId) + { + tmp497.SessionId = this.SessionId; + } + tmp497.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) { - tmp331.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + tmp497.StorageGroup = this.StorageGroup.DeepCopy(); } - tmp331.__isset.req = this.__isset.req; - return tmp331; + tmp497.__isset.storageGroup = this.__isset.storageGroup; + return tmp497; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4719,10 +8335,29 @@ public cancelOperationArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSCancelOperationReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list498 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroup = new List(_list498.Count); + for(int _i499 = 0; _i499 < _list498.Count; ++_i499) + { + string _elem500; + _elem500 = await iprot.ReadStringAsync(cancellationToken); + StorageGroup.Add(_elem500); + } + await iprot.ReadListEndAsync(cancellationToken); + } } else { @@ -4750,16 +8385,32 @@ public cancelOperationArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("cancelOperation_args"); + var struc = new TStruct("deleteStorageGroups_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); + foreach (string _iter501 in StorageGroup) + { + await oprot.WriteStringAsync(_iter501, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -4773,17 +8424,22 @@ public cancelOperationArgs DeepCopy() public override bool Equals(object that) { - if (!(that is cancelOperationArgs other)) return false; + if (!(that is deleteStorageGroupsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); } } return hashcode; @@ -4791,13 +8447,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("cancelOperation_args("); - int tmp332 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("deleteStorageGroups_args("); + int tmp502 = 0; + if(__isset.sessionId) { - if(0 < tmp332++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp502++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp502++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -4805,7 +8467,7 @@ public override string ToString() } - public partial class cancelOperationResult : TBase + public partial class deleteStorageGroupsResult : TBase { private TSStatus _success; @@ -4829,19 +8491,19 @@ public struct Isset public bool success; } - public cancelOperationResult() + public deleteStorageGroupsResult() { } - public cancelOperationResult DeepCopy() + public deleteStorageGroupsResult DeepCopy() { - var tmp333 = new cancelOperationResult(); + var tmp503 = new deleteStorageGroupsResult(); if((Success != null) && __isset.success) { - tmp333.Success = (TSStatus)this.Success.DeepCopy(); + tmp503.Success = (TSStatus)this.Success.DeepCopy(); } - tmp333.__isset.success = this.__isset.success; - return tmp333; + tmp503.__isset.success = this.__isset.success; + return tmp503; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4893,7 +8555,7 @@ public cancelOperationResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("cancelOperation_result"); + var struc = new TStruct("deleteStorageGroups_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4920,7 +8582,7 @@ public cancelOperationResult DeepCopy() public override bool Equals(object that) { - if (!(that is cancelOperationResult other)) return false; + if (!(that is deleteStorageGroupsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4938,11 +8600,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("cancelOperation_result("); - int tmp334 = 0; + var sb = new StringBuilder("deleteStorageGroups_result("); + int tmp504 = 0; if((Success != null) && __isset.success) { - if(0 < tmp334++) { sb.Append(", "); } + if(0 < tmp504++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4952,11 +8614,11 @@ public override string ToString() } - public partial class closeOperationArgs : TBase + public partial class insertRecordArgs : TBase { - private TSCloseOperationReq _req; + private TSInsertRecordReq _req; - public TSCloseOperationReq Req + public TSInsertRecordReq Req { get { @@ -4976,19 +8638,19 @@ public struct Isset public bool req; } - public closeOperationArgs() + public insertRecordArgs() { } - public closeOperationArgs DeepCopy() + public insertRecordArgs DeepCopy() { - var tmp335 = new closeOperationArgs(); + var tmp505 = new insertRecordArgs(); if((Req != null) && __isset.req) { - tmp335.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + tmp505.Req = (TSInsertRecordReq)this.Req.DeepCopy(); } - tmp335.__isset.req = this.__isset.req; - return tmp335; + tmp505.__isset.req = this.__isset.req; + return tmp505; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5011,7 +8673,7 @@ public closeOperationArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCloseOperationReq(); + Req = new TSInsertRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -5040,7 +8702,7 @@ public closeOperationArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeOperation_args"); + var struc = new TStruct("insertRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -5063,7 +8725,7 @@ public closeOperationArgs DeepCopy() public override bool Equals(object that) { - if (!(that is closeOperationArgs other)) return false; + if (!(that is insertRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -5081,11 +8743,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeOperation_args("); - int tmp336 = 0; + var sb = new StringBuilder("insertRecord_args("); + int tmp506 = 0; if((Req != null) && __isset.req) { - if(0 < tmp336++) { sb.Append(", "); } + if(0 < tmp506++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -5095,7 +8757,7 @@ public override string ToString() } - public partial class closeOperationResult : TBase + public partial class insertRecordResult : TBase { private TSStatus _success; @@ -5119,19 +8781,19 @@ public struct Isset public bool success; } - public closeOperationResult() + public insertRecordResult() { } - public closeOperationResult DeepCopy() + public insertRecordResult DeepCopy() { - var tmp337 = new closeOperationResult(); + var tmp507 = new insertRecordResult(); if((Success != null) && __isset.success) { - tmp337.Success = (TSStatus)this.Success.DeepCopy(); + tmp507.Success = (TSStatus)this.Success.DeepCopy(); } - tmp337.__isset.success = this.__isset.success; - return tmp337; + tmp507.__isset.success = this.__isset.success; + return tmp507; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5183,7 +8845,7 @@ public closeOperationResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeOperation_result"); + var struc = new TStruct("insertRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5210,7 +8872,7 @@ public closeOperationResult DeepCopy() public override bool Equals(object that) { - if (!(that is closeOperationResult other)) return false; + if (!(that is insertRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5228,11 +8890,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeOperation_result("); - int tmp338 = 0; + var sb = new StringBuilder("insertRecord_result("); + int tmp508 = 0; if((Success != null) && __isset.success) { - if(0 < tmp338++) { sb.Append(", "); } + if(0 < tmp508++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5242,20 +8904,20 @@ public override string ToString() } - public partial class getTimeZoneArgs : TBase + public partial class insertStringRecordArgs : TBase { - private long _sessionId; + private TSInsertStringRecordReq _req; - public long SessionId + public TSInsertStringRecordReq Req { get { - return _sessionId; + return _req; } set { - __isset.sessionId = true; - this._sessionId = value; + __isset.req = true; + this._req = value; } } @@ -5263,22 +8925,22 @@ public long SessionId public Isset __isset; public struct Isset { - public bool sessionId; + public bool req; } - public getTimeZoneArgs() + public insertStringRecordArgs() { } - public getTimeZoneArgs DeepCopy() + public insertStringRecordArgs DeepCopy() { - var tmp339 = new getTimeZoneArgs(); - if(__isset.sessionId) + var tmp509 = new insertStringRecordArgs(); + if((Req != null) && __isset.req) { - tmp339.SessionId = this.SessionId; + tmp509.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); } - tmp339.__isset.sessionId = this.__isset.sessionId; - return tmp339; + tmp509.__isset.req = this.__isset.req; + return tmp509; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5299,9 +8961,10 @@ public getTimeZoneArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - SessionId = await iprot.ReadI64Async(cancellationToken); + Req = new TSInsertStringRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -5329,16 +8992,16 @@ public getTimeZoneArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getTimeZone_args"); + var struc = new TStruct("insertStringRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -5352,17 +9015,17 @@ public getTimeZoneArgs DeepCopy() public override bool Equals(object that) { - if (!(that is getTimeZoneArgs other)) return false; + if (!(that is insertStringRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -5370,13 +9033,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getTimeZone_args("); - int tmp340 = 0; - if(__isset.sessionId) + var sb = new StringBuilder("insertStringRecord_args("); + int tmp510 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp340++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); + if(0 < tmp510++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -5384,11 +9047,11 @@ public override string ToString() } - public partial class getTimeZoneResult : TBase + public partial class insertStringRecordResult : TBase { - private TSGetTimeZoneResp _success; + private TSStatus _success; - public TSGetTimeZoneResp Success + public TSStatus Success { get { @@ -5408,19 +9071,19 @@ public struct Isset public bool success; } - public getTimeZoneResult() + public insertStringRecordResult() { } - public getTimeZoneResult DeepCopy() + public insertStringRecordResult DeepCopy() { - var tmp341 = new getTimeZoneResult(); + var tmp511 = new insertStringRecordResult(); if((Success != null) && __isset.success) { - tmp341.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); + tmp511.Success = (TSStatus)this.Success.DeepCopy(); } - tmp341.__isset.success = this.__isset.success; - return tmp341; + tmp511.__isset.success = this.__isset.success; + return tmp511; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5443,7 +9106,7 @@ public getTimeZoneResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSGetTimeZoneResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -5472,7 +9135,7 @@ public getTimeZoneResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getTimeZone_result"); + var struc = new TStruct("insertStringRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5499,7 +9162,7 @@ public getTimeZoneResult DeepCopy() public override bool Equals(object that) { - if (!(that is getTimeZoneResult other)) return false; + if (!(that is insertStringRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5517,11 +9180,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getTimeZone_result("); - int tmp342 = 0; + var sb = new StringBuilder("insertStringRecord_result("); + int tmp512 = 0; if((Success != null) && __isset.success) { - if(0 < tmp342++) { sb.Append(", "); } + if(0 < tmp512++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5531,11 +9194,11 @@ public override string ToString() } - public partial class setTimeZoneArgs : TBase + public partial class insertTabletArgs : TBase { - private TSSetTimeZoneReq _req; + private TSInsertTabletReq _req; - public TSSetTimeZoneReq Req + public TSInsertTabletReq Req { get { @@ -5555,19 +9218,19 @@ public struct Isset public bool req; } - public setTimeZoneArgs() + public insertTabletArgs() { } - public setTimeZoneArgs DeepCopy() + public insertTabletArgs DeepCopy() { - var tmp343 = new setTimeZoneArgs(); + var tmp513 = new insertTabletArgs(); if((Req != null) && __isset.req) { - tmp343.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); + tmp513.Req = (TSInsertTabletReq)this.Req.DeepCopy(); } - tmp343.__isset.req = this.__isset.req; - return tmp343; + tmp513.__isset.req = this.__isset.req; + return tmp513; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5590,7 +9253,7 @@ public setTimeZoneArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSSetTimeZoneReq(); + Req = new TSInsertTabletReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -5619,7 +9282,7 @@ public setTimeZoneArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setTimeZone_args"); + var struc = new TStruct("insertTablet_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -5642,7 +9305,7 @@ public setTimeZoneArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setTimeZoneArgs other)) return false; + if (!(that is insertTabletArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -5660,11 +9323,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setTimeZone_args("); - int tmp344 = 0; + var sb = new StringBuilder("insertTablet_args("); + int tmp514 = 0; if((Req != null) && __isset.req) { - if(0 < tmp344++) { sb.Append(", "); } + if(0 < tmp514++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -5674,7 +9337,7 @@ public override string ToString() } - public partial class setTimeZoneResult : TBase + public partial class insertTabletResult : TBase { private TSStatus _success; @@ -5698,19 +9361,19 @@ public struct Isset public bool success; } - public setTimeZoneResult() + public insertTabletResult() { } - public setTimeZoneResult DeepCopy() + public insertTabletResult DeepCopy() { - var tmp345 = new setTimeZoneResult(); + var tmp515 = new insertTabletResult(); if((Success != null) && __isset.success) { - tmp345.Success = (TSStatus)this.Success.DeepCopy(); + tmp515.Success = (TSStatus)this.Success.DeepCopy(); } - tmp345.__isset.success = this.__isset.success; - return tmp345; + tmp515.__isset.success = this.__isset.success; + return tmp515; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5762,7 +9425,7 @@ public setTimeZoneResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setTimeZone_result"); + var struc = new TStruct("insertTablet_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5789,7 +9452,7 @@ public setTimeZoneResult DeepCopy() public override bool Equals(object that) { - if (!(that is setTimeZoneResult other)) return false; + if (!(that is insertTabletResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5807,11 +9470,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setTimeZone_result("); - int tmp346 = 0; + var sb = new StringBuilder("insertTablet_result("); + int tmp516 = 0; if((Success != null) && __isset.success) { - if(0 < tmp346++) { sb.Append(", "); } + if(0 < tmp516++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5821,17 +9484,43 @@ public override string ToString() } - public partial class getPropertiesArgs : TBase + public partial class insertTabletsArgs : TBase { + private TSInsertTabletsReq _req; - public getPropertiesArgs() + public TSInsertTabletsReq Req { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } } - public getPropertiesArgs DeepCopy() + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertTabletsArgs() + { + } + + public insertTabletsArgs DeepCopy() { - var tmp347 = new getPropertiesArgs(); - return tmp347; + var tmp517 = new insertTabletsArgs(); + if((Req != null) && __isset.req) + { + tmp517.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + } + tmp517.__isset.req = this.__isset.req; + return tmp517; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5851,6 +9540,17 @@ public getPropertiesArgs DeepCopy() switch (field.ID) { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -5872,8 +9572,18 @@ public getPropertiesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getProperties_args"); + var struc = new TStruct("insertTablets_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -5885,32 +9595,43 @@ public getPropertiesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is getPropertiesArgs other)) return false; + if (!(that is insertTabletsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("getProperties_args("); + var sb = new StringBuilder("insertTablets_args("); + int tmp518 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp518++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } sb.Append(')'); return sb.ToString(); } } - public partial class getPropertiesResult : TBase + public partial class insertTabletsResult : TBase { - private ServerProperties _success; + private TSStatus _success; - public ServerProperties Success + public TSStatus Success { get { @@ -5930,19 +9651,19 @@ public struct Isset public bool success; } - public getPropertiesResult() + public insertTabletsResult() { } - public getPropertiesResult DeepCopy() + public insertTabletsResult DeepCopy() { - var tmp349 = new getPropertiesResult(); + var tmp519 = new insertTabletsResult(); if((Success != null) && __isset.success) { - tmp349.Success = (ServerProperties)this.Success.DeepCopy(); + tmp519.Success = (TSStatus)this.Success.DeepCopy(); } - tmp349.__isset.success = this.__isset.success; - return tmp349; + tmp519.__isset.success = this.__isset.success; + return tmp519; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5965,7 +9686,7 @@ public getPropertiesResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new ServerProperties(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -5994,7 +9715,7 @@ public getPropertiesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getProperties_result"); + var struc = new TStruct("insertTablets_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6021,7 +9742,7 @@ public getPropertiesResult DeepCopy() public override bool Equals(object that) { - if (!(that is getPropertiesResult other)) return false; + if (!(that is insertTabletsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6039,11 +9760,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getProperties_result("); - int tmp350 = 0; + var sb = new StringBuilder("insertTablets_result("); + int tmp520 = 0; if((Success != null) && __isset.success) { - if(0 < tmp350++) { sb.Append(", "); } + if(0 < tmp520++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6053,34 +9774,20 @@ public override string ToString() } - public partial class setStorageGroupArgs : TBase + public partial class insertRecordsArgs : TBase { - private long _sessionId; - private string _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertRecordsReq _req; - public string StorageGroup + public TSInsertRecordsReq Req { get { - return _storageGroup; + return _req; } set { - __isset.storageGroup = true; - this._storageGroup = value; + __isset.req = true; + this._req = value; } } @@ -6088,28 +9795,22 @@ public string StorageGroup public Isset __isset; public struct Isset { - public bool sessionId; - public bool storageGroup; + public bool req; } - public setStorageGroupArgs() + public insertRecordsArgs() { } - public setStorageGroupArgs DeepCopy() + public insertRecordsArgs DeepCopy() { - var tmp351 = new setStorageGroupArgs(); - if(__isset.sessionId) - { - tmp351.SessionId = this.SessionId; - } - tmp351.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) + var tmp521 = new insertRecordsArgs(); + if((Req != null) && __isset.req) { - tmp351.StorageGroup = this.StorageGroup; + tmp521.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); } - tmp351.__isset.storageGroup = this.__isset.storageGroup; - return tmp351; + tmp521.__isset.req = this.__isset.req; + return tmp521; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6130,19 +9831,10 @@ public setStorageGroupArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) + if (field.Type == TType.Struct) { - StorageGroup = await iprot.ReadStringAsync(cancellationToken); + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -6170,25 +9862,16 @@ public setStorageGroupArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setStorageGroup_args"); + var struc = new TStruct("insertRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(StorageGroup, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -6202,22 +9885,17 @@ public setStorageGroupArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setStorageGroupArgs other)) return false; + if (!(that is insertRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -6225,19 +9903,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setStorageGroup_args("); - int tmp352 = 0; - if(__isset.sessionId) - { - if(0 < tmp352++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) + var sb = new StringBuilder("insertRecords_args("); + int tmp522 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp352++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); + if(0 < tmp522++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -6245,7 +9917,7 @@ public override string ToString() } - public partial class setStorageGroupResult : TBase + public partial class insertRecordsResult : TBase { private TSStatus _success; @@ -6269,19 +9941,19 @@ public struct Isset public bool success; } - public setStorageGroupResult() + public insertRecordsResult() { } - public setStorageGroupResult DeepCopy() + public insertRecordsResult DeepCopy() { - var tmp353 = new setStorageGroupResult(); + var tmp523 = new insertRecordsResult(); if((Success != null) && __isset.success) { - tmp353.Success = (TSStatus)this.Success.DeepCopy(); + tmp523.Success = (TSStatus)this.Success.DeepCopy(); } - tmp353.__isset.success = this.__isset.success; - return tmp353; + tmp523.__isset.success = this.__isset.success; + return tmp523; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6333,7 +10005,7 @@ public setStorageGroupResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setStorageGroup_result"); + var struc = new TStruct("insertRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6360,7 +10032,7 @@ public setStorageGroupResult DeepCopy() public override bool Equals(object that) { - if (!(that is setStorageGroupResult other)) return false; + if (!(that is insertRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6378,11 +10050,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setStorageGroup_result("); - int tmp354 = 0; + var sb = new StringBuilder("insertRecords_result("); + int tmp524 = 0; if((Success != null) && __isset.success) { - if(0 < tmp354++) { sb.Append(", "); } + if(0 < tmp524++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6392,11 +10064,11 @@ public override string ToString() } - public partial class createTimeseriesArgs : TBase + public partial class insertRecordsOfOneDeviceArgs : TBase { - private TSCreateTimeseriesReq _req; + private TSInsertRecordsOfOneDeviceReq _req; - public TSCreateTimeseriesReq Req + public TSInsertRecordsOfOneDeviceReq Req { get { @@ -6416,19 +10088,19 @@ public struct Isset public bool req; } - public createTimeseriesArgs() + public insertRecordsOfOneDeviceArgs() { } - public createTimeseriesArgs DeepCopy() + public insertRecordsOfOneDeviceArgs DeepCopy() { - var tmp355 = new createTimeseriesArgs(); + var tmp525 = new insertRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp355.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); + tmp525.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp355.__isset.req = this.__isset.req; - return tmp355; + tmp525.__isset.req = this.__isset.req; + return tmp525; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6451,7 +10123,7 @@ public createTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateTimeseriesReq(); + Req = new TSInsertRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -6480,7 +10152,7 @@ public createTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createTimeseries_args"); + var struc = new TStruct("insertRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -6503,7 +10175,7 @@ public createTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createTimeseriesArgs other)) return false; + if (!(that is insertRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -6521,11 +10193,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createTimeseries_args("); - int tmp356 = 0; + var sb = new StringBuilder("insertRecordsOfOneDevice_args("); + int tmp526 = 0; if((Req != null) && __isset.req) { - if(0 < tmp356++) { sb.Append(", "); } + if(0 < tmp526++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -6535,7 +10207,7 @@ public override string ToString() } - public partial class createTimeseriesResult : TBase + public partial class insertRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -6559,19 +10231,19 @@ public struct Isset public bool success; } - public createTimeseriesResult() + public insertRecordsOfOneDeviceResult() { } - public createTimeseriesResult DeepCopy() + public insertRecordsOfOneDeviceResult DeepCopy() { - var tmp357 = new createTimeseriesResult(); + var tmp527 = new insertRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp357.Success = (TSStatus)this.Success.DeepCopy(); + tmp527.Success = (TSStatus)this.Success.DeepCopy(); } - tmp357.__isset.success = this.__isset.success; - return tmp357; + tmp527.__isset.success = this.__isset.success; + return tmp527; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6623,7 +10295,7 @@ public createTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createTimeseries_result"); + var struc = new TStruct("insertRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6650,7 +10322,7 @@ public createTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createTimeseriesResult other)) return false; + if (!(that is insertRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6668,11 +10340,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createTimeseries_result("); - int tmp358 = 0; + var sb = new StringBuilder("insertRecordsOfOneDevice_result("); + int tmp528 = 0; if((Success != null) && __isset.success) { - if(0 < tmp358++) { sb.Append(", "); } + if(0 < tmp528++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6682,11 +10354,11 @@ public override string ToString() } - public partial class createMultiTimeseriesArgs : TBase + public partial class insertStringRecordsOfOneDeviceArgs : TBase { - private TSCreateMultiTimeseriesReq _req; + private TSInsertStringRecordsOfOneDeviceReq _req; - public TSCreateMultiTimeseriesReq Req + public TSInsertStringRecordsOfOneDeviceReq Req { get { @@ -6706,19 +10378,19 @@ public struct Isset public bool req; } - public createMultiTimeseriesArgs() + public insertStringRecordsOfOneDeviceArgs() { } - public createMultiTimeseriesArgs DeepCopy() + public insertStringRecordsOfOneDeviceArgs DeepCopy() { - var tmp359 = new createMultiTimeseriesArgs(); + var tmp529 = new insertStringRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp359.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); + tmp529.Req = (TSInsertStringRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp359.__isset.req = this.__isset.req; - return tmp359; + tmp529.__isset.req = this.__isset.req; + return tmp529; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6741,7 +10413,7 @@ public createMultiTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateMultiTimeseriesReq(); + Req = new TSInsertStringRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -6770,7 +10442,7 @@ public createMultiTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createMultiTimeseries_args"); + var struc = new TStruct("insertStringRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -6793,7 +10465,7 @@ public createMultiTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createMultiTimeseriesArgs other)) return false; + if (!(that is insertStringRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -6811,11 +10483,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createMultiTimeseries_args("); - int tmp360 = 0; + var sb = new StringBuilder("insertStringRecordsOfOneDevice_args("); + int tmp530 = 0; if((Req != null) && __isset.req) { - if(0 < tmp360++) { sb.Append(", "); } + if(0 < tmp530++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -6825,7 +10497,7 @@ public override string ToString() } - public partial class createMultiTimeseriesResult : TBase + public partial class insertStringRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -6849,19 +10521,19 @@ public struct Isset public bool success; } - public createMultiTimeseriesResult() + public insertStringRecordsOfOneDeviceResult() { } - public createMultiTimeseriesResult DeepCopy() + public insertStringRecordsOfOneDeviceResult DeepCopy() { - var tmp361 = new createMultiTimeseriesResult(); + var tmp531 = new insertStringRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp361.Success = (TSStatus)this.Success.DeepCopy(); + tmp531.Success = (TSStatus)this.Success.DeepCopy(); } - tmp361.__isset.success = this.__isset.success; - return tmp361; + tmp531.__isset.success = this.__isset.success; + return tmp531; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6913,7 +10585,7 @@ public createMultiTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createMultiTimeseries_result"); + var struc = new TStruct("insertStringRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6940,7 +10612,7 @@ public createMultiTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createMultiTimeseriesResult other)) return false; + if (!(that is insertStringRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6958,11 +10630,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createMultiTimeseries_result("); - int tmp362 = 0; + var sb = new StringBuilder("insertStringRecordsOfOneDevice_result("); + int tmp532 = 0; if((Success != null) && __isset.success) { - if(0 < tmp362++) { sb.Append(", "); } + if(0 < tmp532++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6972,34 +10644,20 @@ public override string ToString() } - public partial class deleteTimeseriesArgs : TBase + public partial class insertStringRecordsArgs : TBase { - private long _sessionId; - private List _path; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertStringRecordsReq _req; - public List Path + public TSInsertStringRecordsReq Req { get { - return _path; + return _req; } set { - __isset.path = true; - this._path = value; + __isset.req = true; + this._req = value; } } @@ -7007,28 +10665,22 @@ public List Path public Isset __isset; public struct Isset { - public bool sessionId; - public bool path; + public bool req; } - public deleteTimeseriesArgs() + public insertStringRecordsArgs() { } - public deleteTimeseriesArgs DeepCopy() + public insertStringRecordsArgs DeepCopy() { - var tmp363 = new deleteTimeseriesArgs(); - if(__isset.sessionId) - { - tmp363.SessionId = this.SessionId; - } - tmp363.__isset.sessionId = this.__isset.sessionId; - if((Path != null) && __isset.path) + var tmp533 = new insertStringRecordsArgs(); + if((Req != null) && __isset.req) { - tmp363.Path = this.Path.DeepCopy(); + tmp533.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); } - tmp363.__isset.path = this.__isset.path; - return tmp363; + tmp533.__isset.req = this.__isset.req; + return tmp533; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7046,32 +10698,13 @@ public deleteTimeseriesArgs DeepCopy() break; } - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) { - { - TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); - Path = new List(_list364.Count); - for(int _i365 = 0; _i365 < _list364.Count; ++_i365) - { - string _elem366; - _elem366 = await iprot.ReadStringAsync(cancellationToken); - Path.Add(_elem366); - } - await iprot.ReadListEndAsync(cancellationToken); - } + Req = new TSInsertStringRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -7099,32 +10732,16 @@ public deleteTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteTimeseries_args"); + var struc = new TStruct("insertStringRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Path != null) && __isset.path) - { - field.Name = "path"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); - foreach (string _iter367 in Path) - { - await oprot.WriteStringAsync(_iter367, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -7138,22 +10755,17 @@ public deleteTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteTimeseriesArgs other)) return false; + if (!(that is insertStringRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((Path != null) && __isset.path) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -7161,19 +10773,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteTimeseries_args("); - int tmp368 = 0; - if(__isset.sessionId) - { - if(0 < tmp368++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((Path != null) && __isset.path) + var sb = new StringBuilder("insertStringRecords_args("); + int tmp534 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp368++) { sb.Append(", "); } - sb.Append("Path: "); - Path.ToString(sb); + if(0 < tmp534++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -7181,7 +10787,7 @@ public override string ToString() } - public partial class deleteTimeseriesResult : TBase + public partial class insertStringRecordsResult : TBase { private TSStatus _success; @@ -7205,19 +10811,19 @@ public struct Isset public bool success; } - public deleteTimeseriesResult() + public insertStringRecordsResult() { } - public deleteTimeseriesResult DeepCopy() + public insertStringRecordsResult DeepCopy() { - var tmp369 = new deleteTimeseriesResult(); + var tmp535 = new insertStringRecordsResult(); if((Success != null) && __isset.success) { - tmp369.Success = (TSStatus)this.Success.DeepCopy(); + tmp535.Success = (TSStatus)this.Success.DeepCopy(); } - tmp369.__isset.success = this.__isset.success; - return tmp369; + tmp535.__isset.success = this.__isset.success; + return tmp535; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7269,7 +10875,7 @@ public deleteTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteTimeseries_result"); + var struc = new TStruct("insertStringRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7296,7 +10902,7 @@ public deleteTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteTimeseriesResult other)) return false; + if (!(that is insertStringRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7314,11 +10920,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteTimeseries_result("); - int tmp370 = 0; + var sb = new StringBuilder("insertStringRecords_result("); + int tmp536 = 0; if((Success != null) && __isset.success) { - if(0 < tmp370++) { sb.Append(", "); } + if(0 < tmp536++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7328,34 +10934,20 @@ public override string ToString() } - public partial class deleteStorageGroupsArgs : TBase + public partial class testInsertTabletArgs : TBase { - private long _sessionId; - private List _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertTabletReq _req; - public List StorageGroup + public TSInsertTabletReq Req { get { - return _storageGroup; + return _req; } set { - __isset.storageGroup = true; - this._storageGroup = value; + __isset.req = true; + this._req = value; } } @@ -7363,28 +10955,22 @@ public List StorageGroup public Isset __isset; public struct Isset { - public bool sessionId; - public bool storageGroup; + public bool req; } - public deleteStorageGroupsArgs() + public testInsertTabletArgs() { } - public deleteStorageGroupsArgs DeepCopy() + public testInsertTabletArgs DeepCopy() { - var tmp371 = new deleteStorageGroupsArgs(); - if(__isset.sessionId) - { - tmp371.SessionId = this.SessionId; - } - tmp371.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) + var tmp537 = new testInsertTabletArgs(); + if((Req != null) && __isset.req) { - tmp371.StorageGroup = this.StorageGroup.DeepCopy(); + tmp537.Req = (TSInsertTabletReq)this.Req.DeepCopy(); } - tmp371.__isset.storageGroup = this.__isset.storageGroup; - return tmp371; + tmp537.__isset.req = this.__isset.req; + return tmp537; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7405,29 +10991,10 @@ public deleteStorageGroupsArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) + if (field.Type == TType.Struct) { - { - TList _list372 = await iprot.ReadListBeginAsync(cancellationToken); - StorageGroup = new List(_list372.Count); - for(int _i373 = 0; _i373 < _list372.Count; ++_i373) - { - string _elem374; - _elem374 = await iprot.ReadStringAsync(cancellationToken); - StorageGroup.Add(_elem374); - } - await iprot.ReadListEndAsync(cancellationToken); - } + Req = new TSInsertTabletReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -7455,32 +11022,16 @@ public deleteStorageGroupsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteStorageGroups_args"); + var struc = new TStruct("testInsertTablet_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); - foreach (string _iter375 in StorageGroup) - { - await oprot.WriteStringAsync(_iter375, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -7494,22 +11045,17 @@ public deleteStorageGroupsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteStorageGroupsArgs other)) return false; + if (!(that is testInsertTabletArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -7517,19 +11063,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteStorageGroups_args("); - int tmp376 = 0; - if(__isset.sessionId) - { - if(0 < tmp376++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) + var sb = new StringBuilder("testInsertTablet_args("); + int tmp538 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp376++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); + if(0 < tmp538++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -7537,7 +11077,7 @@ public override string ToString() } - public partial class deleteStorageGroupsResult : TBase + public partial class testInsertTabletResult : TBase { private TSStatus _success; @@ -7561,19 +11101,19 @@ public struct Isset public bool success; } - public deleteStorageGroupsResult() + public testInsertTabletResult() { } - public deleteStorageGroupsResult DeepCopy() + public testInsertTabletResult DeepCopy() { - var tmp377 = new deleteStorageGroupsResult(); + var tmp539 = new testInsertTabletResult(); if((Success != null) && __isset.success) { - tmp377.Success = (TSStatus)this.Success.DeepCopy(); + tmp539.Success = (TSStatus)this.Success.DeepCopy(); } - tmp377.__isset.success = this.__isset.success; - return tmp377; + tmp539.__isset.success = this.__isset.success; + return tmp539; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7625,7 +11165,7 @@ public deleteStorageGroupsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteStorageGroups_result"); + var struc = new TStruct("testInsertTablet_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7652,7 +11192,7 @@ public deleteStorageGroupsResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteStorageGroupsResult other)) return false; + if (!(that is testInsertTabletResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7670,11 +11210,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteStorageGroups_result("); - int tmp378 = 0; + var sb = new StringBuilder("testInsertTablet_result("); + int tmp540 = 0; if((Success != null) && __isset.success) { - if(0 < tmp378++) { sb.Append(", "); } + if(0 < tmp540++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7684,11 +11224,11 @@ public override string ToString() } - public partial class insertRecordArgs : TBase + public partial class testInsertTabletsArgs : TBase { - private TSInsertRecordReq _req; + private TSInsertTabletsReq _req; - public TSInsertRecordReq Req + public TSInsertTabletsReq Req { get { @@ -7708,19 +11248,19 @@ public struct Isset public bool req; } - public insertRecordArgs() + public testInsertTabletsArgs() { } - public insertRecordArgs DeepCopy() + public testInsertTabletsArgs DeepCopy() { - var tmp379 = new insertRecordArgs(); + var tmp541 = new testInsertTabletsArgs(); if((Req != null) && __isset.req) { - tmp379.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + tmp541.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); } - tmp379.__isset.req = this.__isset.req; - return tmp379; + tmp541.__isset.req = this.__isset.req; + return tmp541; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7743,7 +11283,7 @@ public insertRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordReq(); + Req = new TSInsertTabletsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -7772,7 +11312,7 @@ public insertRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecord_args"); + var struc = new TStruct("testInsertTablets_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -7795,7 +11335,7 @@ public insertRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordArgs other)) return false; + if (!(that is testInsertTabletsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -7813,11 +11353,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecord_args("); - int tmp380 = 0; + var sb = new StringBuilder("testInsertTablets_args("); + int tmp542 = 0; if((Req != null) && __isset.req) { - if(0 < tmp380++) { sb.Append(", "); } + if(0 < tmp542++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -7827,7 +11367,7 @@ public override string ToString() } - public partial class insertRecordResult : TBase + public partial class testInsertTabletsResult : TBase { private TSStatus _success; @@ -7851,19 +11391,19 @@ public struct Isset public bool success; } - public insertRecordResult() + public testInsertTabletsResult() { } - public insertRecordResult DeepCopy() + public testInsertTabletsResult DeepCopy() { - var tmp381 = new insertRecordResult(); + var tmp543 = new testInsertTabletsResult(); if((Success != null) && __isset.success) { - tmp381.Success = (TSStatus)this.Success.DeepCopy(); + tmp543.Success = (TSStatus)this.Success.DeepCopy(); } - tmp381.__isset.success = this.__isset.success; - return tmp381; + tmp543.__isset.success = this.__isset.success; + return tmp543; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7915,7 +11455,7 @@ public insertRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecord_result"); + var struc = new TStruct("testInsertTablets_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7942,7 +11482,7 @@ public insertRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordResult other)) return false; + if (!(that is testInsertTabletsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7960,11 +11500,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecord_result("); - int tmp382 = 0; + var sb = new StringBuilder("testInsertTablets_result("); + int tmp544 = 0; if((Success != null) && __isset.success) { - if(0 < tmp382++) { sb.Append(", "); } + if(0 < tmp544++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7974,11 +11514,11 @@ public override string ToString() } - public partial class insertStringRecordArgs : TBase + public partial class testInsertRecordArgs : TBase { - private TSInsertStringRecordReq _req; + private TSInsertRecordReq _req; - public TSInsertStringRecordReq Req + public TSInsertRecordReq Req { get { @@ -7998,19 +11538,19 @@ public struct Isset public bool req; } - public insertStringRecordArgs() + public testInsertRecordArgs() { } - public insertStringRecordArgs DeepCopy() + public testInsertRecordArgs DeepCopy() { - var tmp383 = new insertStringRecordArgs(); + var tmp545 = new testInsertRecordArgs(); if((Req != null) && __isset.req) { - tmp383.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + tmp545.Req = (TSInsertRecordReq)this.Req.DeepCopy(); } - tmp383.__isset.req = this.__isset.req; - return tmp383; + tmp545.__isset.req = this.__isset.req; + return tmp545; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8033,7 +11573,7 @@ public insertStringRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); + Req = new TSInsertRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8062,7 +11602,7 @@ public insertStringRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecord_args"); + var struc = new TStruct("testInsertRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8085,7 +11625,7 @@ public insertStringRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordArgs other)) return false; + if (!(that is testInsertRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8103,11 +11643,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecord_args("); - int tmp384 = 0; + var sb = new StringBuilder("testInsertRecord_args("); + int tmp546 = 0; if((Req != null) && __isset.req) { - if(0 < tmp384++) { sb.Append(", "); } + if(0 < tmp546++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8117,7 +11657,7 @@ public override string ToString() } - public partial class insertStringRecordResult : TBase + public partial class testInsertRecordResult : TBase { private TSStatus _success; @@ -8141,19 +11681,19 @@ public struct Isset public bool success; } - public insertStringRecordResult() + public testInsertRecordResult() { } - public insertStringRecordResult DeepCopy() + public testInsertRecordResult DeepCopy() { - var tmp385 = new insertStringRecordResult(); + var tmp547 = new testInsertRecordResult(); if((Success != null) && __isset.success) { - tmp385.Success = (TSStatus)this.Success.DeepCopy(); + tmp547.Success = (TSStatus)this.Success.DeepCopy(); } - tmp385.__isset.success = this.__isset.success; - return tmp385; + tmp547.__isset.success = this.__isset.success; + return tmp547; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8205,7 +11745,7 @@ public insertStringRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecord_result"); + var struc = new TStruct("testInsertRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8232,7 +11772,7 @@ public insertStringRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordResult other)) return false; + if (!(that is testInsertRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8250,11 +11790,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecord_result("); - int tmp386 = 0; + var sb = new StringBuilder("testInsertRecord_result("); + int tmp548 = 0; if((Success != null) && __isset.success) { - if(0 < tmp386++) { sb.Append(", "); } + if(0 < tmp548++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8264,11 +11804,11 @@ public override string ToString() } - public partial class insertTabletArgs : TBase + public partial class testInsertStringRecordArgs : TBase { - private TSInsertTabletReq _req; + private TSInsertStringRecordReq _req; - public TSInsertTabletReq Req + public TSInsertStringRecordReq Req { get { @@ -8288,19 +11828,19 @@ public struct Isset public bool req; } - public insertTabletArgs() + public testInsertStringRecordArgs() { } - public insertTabletArgs DeepCopy() + public testInsertStringRecordArgs DeepCopy() { - var tmp387 = new insertTabletArgs(); + var tmp549 = new testInsertStringRecordArgs(); if((Req != null) && __isset.req) { - tmp387.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + tmp549.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); } - tmp387.__isset.req = this.__isset.req; - return tmp387; + tmp549.__isset.req = this.__isset.req; + return tmp549; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8323,7 +11863,7 @@ public insertTabletArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); + Req = new TSInsertStringRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8352,7 +11892,7 @@ public insertTabletArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablet_args"); + var struc = new TStruct("testInsertStringRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8375,7 +11915,7 @@ public insertTabletArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletArgs other)) return false; + if (!(that is testInsertStringRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8393,11 +11933,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablet_args("); - int tmp388 = 0; + var sb = new StringBuilder("testInsertStringRecord_args("); + int tmp550 = 0; if((Req != null) && __isset.req) { - if(0 < tmp388++) { sb.Append(", "); } + if(0 < tmp550++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8407,7 +11947,7 @@ public override string ToString() } - public partial class insertTabletResult : TBase + public partial class testInsertStringRecordResult : TBase { private TSStatus _success; @@ -8431,19 +11971,19 @@ public struct Isset public bool success; } - public insertTabletResult() + public testInsertStringRecordResult() { } - public insertTabletResult DeepCopy() + public testInsertStringRecordResult DeepCopy() { - var tmp389 = new insertTabletResult(); + var tmp551 = new testInsertStringRecordResult(); if((Success != null) && __isset.success) { - tmp389.Success = (TSStatus)this.Success.DeepCopy(); + tmp551.Success = (TSStatus)this.Success.DeepCopy(); } - tmp389.__isset.success = this.__isset.success; - return tmp389; + tmp551.__isset.success = this.__isset.success; + return tmp551; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8495,7 +12035,7 @@ public insertTabletResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablet_result"); + var struc = new TStruct("testInsertStringRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8522,7 +12062,7 @@ public insertTabletResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletResult other)) return false; + if (!(that is testInsertStringRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8540,11 +12080,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablet_result("); - int tmp390 = 0; + var sb = new StringBuilder("testInsertStringRecord_result("); + int tmp552 = 0; if((Success != null) && __isset.success) { - if(0 < tmp390++) { sb.Append(", "); } + if(0 < tmp552++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8554,11 +12094,11 @@ public override string ToString() } - public partial class insertTabletsArgs : TBase + public partial class testInsertRecordsArgs : TBase { - private TSInsertTabletsReq _req; + private TSInsertRecordsReq _req; - public TSInsertTabletsReq Req + public TSInsertRecordsReq Req { get { @@ -8578,19 +12118,19 @@ public struct Isset public bool req; } - public insertTabletsArgs() + public testInsertRecordsArgs() { } - public insertTabletsArgs DeepCopy() + public testInsertRecordsArgs DeepCopy() { - var tmp391 = new insertTabletsArgs(); + var tmp553 = new testInsertRecordsArgs(); if((Req != null) && __isset.req) { - tmp391.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + tmp553.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); } - tmp391.__isset.req = this.__isset.req; - return tmp391; + tmp553.__isset.req = this.__isset.req; + return tmp553; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8613,7 +12153,7 @@ public insertTabletsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); + Req = new TSInsertRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8642,7 +12182,7 @@ public insertTabletsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablets_args"); + var struc = new TStruct("testInsertRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8665,7 +12205,7 @@ public insertTabletsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletsArgs other)) return false; + if (!(that is testInsertRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8683,11 +12223,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablets_args("); - int tmp392 = 0; + var sb = new StringBuilder("testInsertRecords_args("); + int tmp554 = 0; if((Req != null) && __isset.req) { - if(0 < tmp392++) { sb.Append(", "); } + if(0 < tmp554++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8697,7 +12237,7 @@ public override string ToString() } - public partial class insertTabletsResult : TBase + public partial class testInsertRecordsResult : TBase { private TSStatus _success; @@ -8721,19 +12261,19 @@ public struct Isset public bool success; } - public insertTabletsResult() + public testInsertRecordsResult() { } - public insertTabletsResult DeepCopy() + public testInsertRecordsResult DeepCopy() { - var tmp393 = new insertTabletsResult(); + var tmp555 = new testInsertRecordsResult(); if((Success != null) && __isset.success) { - tmp393.Success = (TSStatus)this.Success.DeepCopy(); + tmp555.Success = (TSStatus)this.Success.DeepCopy(); } - tmp393.__isset.success = this.__isset.success; - return tmp393; + tmp555.__isset.success = this.__isset.success; + return tmp555; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8785,7 +12325,7 @@ public insertTabletsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablets_result"); + var struc = new TStruct("testInsertRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8812,7 +12352,7 @@ public insertTabletsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletsResult other)) return false; + if (!(that is testInsertRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8830,11 +12370,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablets_result("); - int tmp394 = 0; + var sb = new StringBuilder("testInsertRecords_result("); + int tmp556 = 0; if((Success != null) && __isset.success) { - if(0 < tmp394++) { sb.Append(", "); } + if(0 < tmp556++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8844,11 +12384,11 @@ public override string ToString() } - public partial class insertRecordsArgs : TBase + public partial class testInsertRecordsOfOneDeviceArgs : TBase { - private TSInsertRecordsReq _req; + private TSInsertRecordsOfOneDeviceReq _req; - public TSInsertRecordsReq Req + public TSInsertRecordsOfOneDeviceReq Req { get { @@ -8868,19 +12408,19 @@ public struct Isset public bool req; } - public insertRecordsArgs() + public testInsertRecordsOfOneDeviceArgs() { } - public insertRecordsArgs DeepCopy() + public testInsertRecordsOfOneDeviceArgs DeepCopy() { - var tmp395 = new insertRecordsArgs(); + var tmp557 = new testInsertRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp395.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + tmp557.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp395.__isset.req = this.__isset.req; - return tmp395; + tmp557.__isset.req = this.__isset.req; + return tmp557; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8903,7 +12443,7 @@ public insertRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); + Req = new TSInsertRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8932,7 +12472,7 @@ public insertRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecords_args"); + var struc = new TStruct("testInsertRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8955,7 +12495,7 @@ public insertRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsArgs other)) return false; + if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8973,11 +12513,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecords_args("); - int tmp396 = 0; + var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); + int tmp558 = 0; if((Req != null) && __isset.req) { - if(0 < tmp396++) { sb.Append(", "); } + if(0 < tmp558++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8987,7 +12527,7 @@ public override string ToString() } - public partial class insertRecordsResult : TBase + public partial class testInsertRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -9011,19 +12551,19 @@ public struct Isset public bool success; } - public insertRecordsResult() + public testInsertRecordsOfOneDeviceResult() { } - public insertRecordsResult DeepCopy() + public testInsertRecordsOfOneDeviceResult DeepCopy() { - var tmp397 = new insertRecordsResult(); + var tmp559 = new testInsertRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp397.Success = (TSStatus)this.Success.DeepCopy(); + tmp559.Success = (TSStatus)this.Success.DeepCopy(); } - tmp397.__isset.success = this.__isset.success; - return tmp397; + tmp559.__isset.success = this.__isset.success; + return tmp559; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9075,7 +12615,7 @@ public insertRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecords_result"); + var struc = new TStruct("testInsertRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9102,7 +12642,7 @@ public insertRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsResult other)) return false; + if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9120,11 +12660,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecords_result("); - int tmp398 = 0; + var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); + int tmp560 = 0; if((Success != null) && __isset.success) { - if(0 < tmp398++) { sb.Append(", "); } + if(0 < tmp560++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9134,11 +12674,11 @@ public override string ToString() } - public partial class insertRecordsOfOneDeviceArgs : TBase + public partial class testInsertStringRecordsArgs : TBase { - private TSInsertRecordsOfOneDeviceReq _req; + private TSInsertStringRecordsReq _req; - public TSInsertRecordsOfOneDeviceReq Req + public TSInsertStringRecordsReq Req { get { @@ -9158,19 +12698,19 @@ public struct Isset public bool req; } - public insertRecordsOfOneDeviceArgs() + public testInsertStringRecordsArgs() { } - public insertRecordsOfOneDeviceArgs DeepCopy() + public testInsertStringRecordsArgs DeepCopy() { - var tmp399 = new insertRecordsOfOneDeviceArgs(); + var tmp561 = new testInsertStringRecordsArgs(); if((Req != null) && __isset.req) { - tmp399.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp561.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); } - tmp399.__isset.req = this.__isset.req; - return tmp399; + tmp561.__isset.req = this.__isset.req; + return tmp561; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9193,7 +12733,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); + Req = new TSInsertStringRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9222,7 +12762,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecordsOfOneDevice_args"); + var struc = new TStruct("testInsertStringRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9245,7 +12785,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsOfOneDeviceArgs other)) return false; + if (!(that is testInsertStringRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9263,11 +12803,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecordsOfOneDevice_args("); - int tmp400 = 0; + var sb = new StringBuilder("testInsertStringRecords_args("); + int tmp562 = 0; if((Req != null) && __isset.req) { - if(0 < tmp400++) { sb.Append(", "); } + if(0 < tmp562++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9277,7 +12817,7 @@ public override string ToString() } - public partial class insertRecordsOfOneDeviceResult : TBase + public partial class testInsertStringRecordsResult : TBase { private TSStatus _success; @@ -9301,19 +12841,19 @@ public struct Isset public bool success; } - public insertRecordsOfOneDeviceResult() + public testInsertStringRecordsResult() { } - public insertRecordsOfOneDeviceResult DeepCopy() + public testInsertStringRecordsResult DeepCopy() { - var tmp401 = new insertRecordsOfOneDeviceResult(); + var tmp563 = new testInsertStringRecordsResult(); if((Success != null) && __isset.success) { - tmp401.Success = (TSStatus)this.Success.DeepCopy(); + tmp563.Success = (TSStatus)this.Success.DeepCopy(); } - tmp401.__isset.success = this.__isset.success; - return tmp401; + tmp563.__isset.success = this.__isset.success; + return tmp563; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9365,7 +12905,7 @@ public insertRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecordsOfOneDevice_result"); + var struc = new TStruct("testInsertStringRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9392,7 +12932,7 @@ public insertRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsOfOneDeviceResult other)) return false; + if (!(that is testInsertStringRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9410,11 +12950,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecordsOfOneDevice_result("); - int tmp402 = 0; + var sb = new StringBuilder("testInsertStringRecords_result("); + int tmp564 = 0; if((Success != null) && __isset.success) { - if(0 < tmp402++) { sb.Append(", "); } + if(0 < tmp564++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9424,11 +12964,11 @@ public override string ToString() } - public partial class insertStringRecordsArgs : TBase + public partial class deleteDataArgs : TBase { - private TSInsertStringRecordsReq _req; + private TSDeleteDataReq _req; - public TSInsertStringRecordsReq Req + public TSDeleteDataReq Req { get { @@ -9448,19 +12988,19 @@ public struct Isset public bool req; } - public insertStringRecordsArgs() + public deleteDataArgs() { } - public insertStringRecordsArgs DeepCopy() + public deleteDataArgs DeepCopy() { - var tmp403 = new insertStringRecordsArgs(); + var tmp565 = new deleteDataArgs(); if((Req != null) && __isset.req) { - tmp403.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + tmp565.Req = (TSDeleteDataReq)this.Req.DeepCopy(); } - tmp403.__isset.req = this.__isset.req; - return tmp403; + tmp565.__isset.req = this.__isset.req; + return tmp565; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9483,7 +13023,7 @@ public insertStringRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); + Req = new TSDeleteDataReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9512,7 +13052,7 @@ public insertStringRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecords_args"); + var struc = new TStruct("deleteData_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9535,7 +13075,7 @@ public insertStringRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsArgs other)) return false; + if (!(that is deleteDataArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9553,11 +13093,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecords_args("); - int tmp404 = 0; + var sb = new StringBuilder("deleteData_args("); + int tmp566 = 0; if((Req != null) && __isset.req) { - if(0 < tmp404++) { sb.Append(", "); } + if(0 < tmp566++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9567,7 +13107,7 @@ public override string ToString() } - public partial class insertStringRecordsResult : TBase + public partial class deleteDataResult : TBase { private TSStatus _success; @@ -9591,19 +13131,19 @@ public struct Isset public bool success; } - public insertStringRecordsResult() + public deleteDataResult() { } - public insertStringRecordsResult DeepCopy() + public deleteDataResult DeepCopy() { - var tmp405 = new insertStringRecordsResult(); + var tmp567 = new deleteDataResult(); if((Success != null) && __isset.success) { - tmp405.Success = (TSStatus)this.Success.DeepCopy(); + tmp567.Success = (TSStatus)this.Success.DeepCopy(); } - tmp405.__isset.success = this.__isset.success; - return tmp405; + tmp567.__isset.success = this.__isset.success; + return tmp567; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9655,7 +13195,7 @@ public insertStringRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecords_result"); + var struc = new TStruct("deleteData_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9682,7 +13222,7 @@ public insertStringRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsResult other)) return false; + if (!(that is deleteDataResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9700,11 +13240,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecords_result("); - int tmp406 = 0; + var sb = new StringBuilder("deleteData_result("); + int tmp568 = 0; if((Success != null) && __isset.success) { - if(0 < tmp406++) { sb.Append(", "); } + if(0 < tmp568++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9714,11 +13254,11 @@ public override string ToString() } - public partial class testInsertTabletArgs : TBase + public partial class executeRawDataQueryArgs : TBase { - private TSInsertTabletReq _req; + private TSRawDataQueryReq _req; - public TSInsertTabletReq Req + public TSRawDataQueryReq Req { get { @@ -9738,19 +13278,19 @@ public struct Isset public bool req; } - public testInsertTabletArgs() + public executeRawDataQueryArgs() { } - public testInsertTabletArgs DeepCopy() + public executeRawDataQueryArgs DeepCopy() { - var tmp407 = new testInsertTabletArgs(); + var tmp569 = new executeRawDataQueryArgs(); if((Req != null) && __isset.req) { - tmp407.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + tmp569.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); } - tmp407.__isset.req = this.__isset.req; - return tmp407; + tmp569.__isset.req = this.__isset.req; + return tmp569; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9773,7 +13313,7 @@ public testInsertTabletArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); + Req = new TSRawDataQueryReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9802,7 +13342,7 @@ public testInsertTabletArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablet_args"); + var struc = new TStruct("executeRawDataQuery_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9825,7 +13365,7 @@ public testInsertTabletArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletArgs other)) return false; + if (!(that is executeRawDataQueryArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9843,11 +13383,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablet_args("); - int tmp408 = 0; + var sb = new StringBuilder("executeRawDataQuery_args("); + int tmp570 = 0; if((Req != null) && __isset.req) { - if(0 < tmp408++) { sb.Append(", "); } + if(0 < tmp570++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9857,11 +13397,11 @@ public override string ToString() } - public partial class testInsertTabletResult : TBase + public partial class executeRawDataQueryResult : TBase { - private TSStatus _success; + private TSExecuteStatementResp _success; - public TSStatus Success + public TSExecuteStatementResp Success { get { @@ -9881,19 +13421,19 @@ public struct Isset public bool success; } - public testInsertTabletResult() + public executeRawDataQueryResult() { } - public testInsertTabletResult DeepCopy() + public executeRawDataQueryResult DeepCopy() { - var tmp409 = new testInsertTabletResult(); + var tmp571 = new executeRawDataQueryResult(); if((Success != null) && __isset.success) { - tmp409.Success = (TSStatus)this.Success.DeepCopy(); + tmp571.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp409.__isset.success = this.__isset.success; - return tmp409; + tmp571.__isset.success = this.__isset.success; + return tmp571; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9916,7 +13456,7 @@ public testInsertTabletResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -9945,7 +13485,7 @@ public testInsertTabletResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablet_result"); + var struc = new TStruct("executeRawDataQuery_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9972,7 +13512,7 @@ public testInsertTabletResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletResult other)) return false; + if (!(that is executeRawDataQueryResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9990,11 +13530,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablet_result("); - int tmp410 = 0; + var sb = new StringBuilder("executeRawDataQuery_result("); + int tmp572 = 0; if((Success != null) && __isset.success) { - if(0 < tmp410++) { sb.Append(", "); } + if(0 < tmp572++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10004,11 +13544,11 @@ public override string ToString() } - public partial class testInsertTabletsArgs : TBase + public partial class executeLastDataQueryArgs : TBase { - private TSInsertTabletsReq _req; + private TSLastDataQueryReq _req; - public TSInsertTabletsReq Req + public TSLastDataQueryReq Req { get { @@ -10028,19 +13568,19 @@ public struct Isset public bool req; } - public testInsertTabletsArgs() + public executeLastDataQueryArgs() { } - public testInsertTabletsArgs DeepCopy() + public executeLastDataQueryArgs DeepCopy() { - var tmp411 = new testInsertTabletsArgs(); + var tmp573 = new executeLastDataQueryArgs(); if((Req != null) && __isset.req) { - tmp411.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + tmp573.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); } - tmp411.__isset.req = this.__isset.req; - return tmp411; + tmp573.__isset.req = this.__isset.req; + return tmp573; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10063,7 +13603,7 @@ public testInsertTabletsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); + Req = new TSLastDataQueryReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10092,7 +13632,7 @@ public testInsertTabletsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablets_args"); + var struc = new TStruct("executeLastDataQuery_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10115,7 +13655,7 @@ public testInsertTabletsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletsArgs other)) return false; + if (!(that is executeLastDataQueryArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10133,11 +13673,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablets_args("); - int tmp412 = 0; + var sb = new StringBuilder("executeLastDataQuery_args("); + int tmp574 = 0; if((Req != null) && __isset.req) { - if(0 < tmp412++) { sb.Append(", "); } + if(0 < tmp574++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10147,11 +13687,11 @@ public override string ToString() } - public partial class testInsertTabletsResult : TBase + public partial class executeLastDataQueryResult : TBase { - private TSStatus _success; + private TSExecuteStatementResp _success; - public TSStatus Success + public TSExecuteStatementResp Success { get { @@ -10171,19 +13711,19 @@ public struct Isset public bool success; } - public testInsertTabletsResult() + public executeLastDataQueryResult() { } - public testInsertTabletsResult DeepCopy() + public executeLastDataQueryResult DeepCopy() { - var tmp413 = new testInsertTabletsResult(); + var tmp575 = new executeLastDataQueryResult(); if((Success != null) && __isset.success) { - tmp413.Success = (TSStatus)this.Success.DeepCopy(); + tmp575.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp413.__isset.success = this.__isset.success; - return tmp413; + tmp575.__isset.success = this.__isset.success; + return tmp575; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10206,7 +13746,7 @@ public testInsertTabletsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -10235,7 +13775,7 @@ public testInsertTabletsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablets_result"); + var struc = new TStruct("executeLastDataQuery_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10262,7 +13802,7 @@ public testInsertTabletsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletsResult other)) return false; + if (!(that is executeLastDataQueryResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10280,11 +13820,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablets_result("); - int tmp414 = 0; + var sb = new StringBuilder("executeLastDataQuery_result("); + int tmp576 = 0; if((Success != null) && __isset.success) { - if(0 < tmp414++) { sb.Append(", "); } + if(0 < tmp576++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10294,20 +13834,20 @@ public override string ToString() } - public partial class testInsertRecordArgs : TBase + public partial class requestStatementIdArgs : TBase { - private TSInsertRecordReq _req; + private long _sessionId; - public TSInsertRecordReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; } } @@ -10315,22 +13855,22 @@ public TSInsertRecordReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; } - public testInsertRecordArgs() + public requestStatementIdArgs() { } - public testInsertRecordArgs DeepCopy() + public requestStatementIdArgs DeepCopy() { - var tmp415 = new testInsertRecordArgs(); - if((Req != null) && __isset.req) + var tmp577 = new requestStatementIdArgs(); + if(__isset.sessionId) { - tmp415.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + tmp577.SessionId = this.SessionId; } - tmp415.__isset.req = this.__isset.req; - return tmp415; + tmp577.__isset.sessionId = this.__isset.sessionId; + return tmp577; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10351,10 +13891,9 @@ public testInsertRecordArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSInsertRecordReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); } else { @@ -10382,16 +13921,16 @@ public testInsertRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecord_args"); + var struc = new TStruct("requestStatementId_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -10405,17 +13944,17 @@ public testInsertRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordArgs other)) return false; + if (!(that is requestStatementIdArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); } } return hashcode; @@ -10423,13 +13962,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecord_args("); - int tmp416 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("requestStatementId_args("); + int tmp578 = 0; + if(__isset.sessionId) { - if(0 < tmp416++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp578++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -10437,11 +13976,11 @@ public override string ToString() } - public partial class testInsertRecordResult : TBase + public partial class requestStatementIdResult : TBase { - private TSStatus _success; + private long _success; - public TSStatus Success + public long Success { get { @@ -10461,19 +14000,19 @@ public struct Isset public bool success; } - public testInsertRecordResult() + public requestStatementIdResult() { } - public testInsertRecordResult DeepCopy() + public requestStatementIdResult DeepCopy() { - var tmp417 = new testInsertRecordResult(); - if((Success != null) && __isset.success) + var tmp579 = new requestStatementIdResult(); + if(__isset.success) { - tmp417.Success = (TSStatus)this.Success.DeepCopy(); + tmp579.Success = this.Success; } - tmp417.__isset.success = this.__isset.success; - return tmp417; + tmp579.__isset.success = this.__isset.success; + return tmp579; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10494,10 +14033,9 @@ public testInsertRecordResult DeepCopy() switch (field.ID) { case 0: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); + Success = await iprot.ReadI64Async(cancellationToken); } else { @@ -10525,21 +14063,18 @@ public testInsertRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecord_result"); + var struc = new TStruct("requestStatementId_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(this.__isset.success) { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } + field.Name = "Success"; + field.Type = TType.I64; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Success, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -10552,7 +14087,7 @@ public testInsertRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordResult other)) return false; + if (!(that is requestStatementIdResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10560,7 +14095,7 @@ public override bool Equals(object that) public override int GetHashCode() { int hashcode = 157; unchecked { - if((Success != null) && __isset.success) + if(__isset.success) { hashcode = (hashcode * 397) + Success.GetHashCode(); } @@ -10570,11 +14105,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecord_result("); - int tmp418 = 0; - if((Success != null) && __isset.success) + var sb = new StringBuilder("requestStatementId_result("); + int tmp580 = 0; + if(__isset.success) { - if(0 < tmp418++) { sb.Append(", "); } + if(0 < tmp580++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10584,11 +14119,11 @@ public override string ToString() } - public partial class testInsertStringRecordArgs : TBase + public partial class createSchemaTemplateArgs : TBase { - private TSInsertStringRecordReq _req; + private TSCreateSchemaTemplateReq _req; - public TSInsertStringRecordReq Req + public TSCreateSchemaTemplateReq Req { get { @@ -10608,19 +14143,19 @@ public struct Isset public bool req; } - public testInsertStringRecordArgs() + public createSchemaTemplateArgs() { } - public testInsertStringRecordArgs DeepCopy() + public createSchemaTemplateArgs DeepCopy() { - var tmp419 = new testInsertStringRecordArgs(); + var tmp581 = new createSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp419.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + tmp581.Req = (TSCreateSchemaTemplateReq)this.Req.DeepCopy(); } - tmp419.__isset.req = this.__isset.req; - return tmp419; + tmp581.__isset.req = this.__isset.req; + return tmp581; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10643,7 +14178,7 @@ public testInsertStringRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); + Req = new TSCreateSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10672,7 +14207,7 @@ public testInsertStringRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecord_args"); + var struc = new TStruct("createSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10695,7 +14230,7 @@ public testInsertStringRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordArgs other)) return false; + if (!(that is createSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10713,11 +14248,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecord_args("); - int tmp420 = 0; + var sb = new StringBuilder("createSchemaTemplate_args("); + int tmp582 = 0; if((Req != null) && __isset.req) { - if(0 < tmp420++) { sb.Append(", "); } + if(0 < tmp582++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10727,7 +14262,7 @@ public override string ToString() } - public partial class testInsertStringRecordResult : TBase + public partial class createSchemaTemplateResult : TBase { private TSStatus _success; @@ -10751,19 +14286,19 @@ public struct Isset public bool success; } - public testInsertStringRecordResult() + public createSchemaTemplateResult() { } - public testInsertStringRecordResult DeepCopy() + public createSchemaTemplateResult DeepCopy() { - var tmp421 = new testInsertStringRecordResult(); + var tmp583 = new createSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp421.Success = (TSStatus)this.Success.DeepCopy(); + tmp583.Success = (TSStatus)this.Success.DeepCopy(); } - tmp421.__isset.success = this.__isset.success; - return tmp421; + tmp583.__isset.success = this.__isset.success; + return tmp583; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10815,7 +14350,7 @@ public testInsertStringRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecord_result"); + var struc = new TStruct("createSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10842,7 +14377,7 @@ public testInsertStringRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordResult other)) return false; + if (!(that is createSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10860,11 +14395,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecord_result("); - int tmp422 = 0; + var sb = new StringBuilder("createSchemaTemplate_result("); + int tmp584 = 0; if((Success != null) && __isset.success) { - if(0 < tmp422++) { sb.Append(", "); } + if(0 < tmp584++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10874,11 +14409,11 @@ public override string ToString() } - public partial class testInsertRecordsArgs : TBase + public partial class appendSchemaTemplateArgs : TBase { - private TSInsertRecordsReq _req; + private TSAppendSchemaTemplateReq _req; - public TSInsertRecordsReq Req + public TSAppendSchemaTemplateReq Req { get { @@ -10898,19 +14433,19 @@ public struct Isset public bool req; } - public testInsertRecordsArgs() + public appendSchemaTemplateArgs() { } - public testInsertRecordsArgs DeepCopy() + public appendSchemaTemplateArgs DeepCopy() { - var tmp423 = new testInsertRecordsArgs(); + var tmp585 = new appendSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp423.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + tmp585.Req = (TSAppendSchemaTemplateReq)this.Req.DeepCopy(); } - tmp423.__isset.req = this.__isset.req; - return tmp423; + tmp585.__isset.req = this.__isset.req; + return tmp585; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10933,7 +14468,7 @@ public testInsertRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); + Req = new TSAppendSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10962,7 +14497,7 @@ public testInsertRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecords_args"); + var struc = new TStruct("appendSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10985,7 +14520,7 @@ public testInsertRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsArgs other)) return false; + if (!(that is appendSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11003,11 +14538,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecords_args("); - int tmp424 = 0; + var sb = new StringBuilder("appendSchemaTemplate_args("); + int tmp586 = 0; if((Req != null) && __isset.req) { - if(0 < tmp424++) { sb.Append(", "); } + if(0 < tmp586++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11017,7 +14552,7 @@ public override string ToString() } - public partial class testInsertRecordsResult : TBase + public partial class appendSchemaTemplateResult : TBase { private TSStatus _success; @@ -11041,19 +14576,19 @@ public struct Isset public bool success; } - public testInsertRecordsResult() + public appendSchemaTemplateResult() { } - public testInsertRecordsResult DeepCopy() + public appendSchemaTemplateResult DeepCopy() { - var tmp425 = new testInsertRecordsResult(); + var tmp587 = new appendSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp425.Success = (TSStatus)this.Success.DeepCopy(); + tmp587.Success = (TSStatus)this.Success.DeepCopy(); } - tmp425.__isset.success = this.__isset.success; - return tmp425; + tmp587.__isset.success = this.__isset.success; + return tmp587; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11105,7 +14640,7 @@ public testInsertRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecords_result"); + var struc = new TStruct("appendSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11132,7 +14667,7 @@ public testInsertRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsResult other)) return false; + if (!(that is appendSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11150,11 +14685,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecords_result("); - int tmp426 = 0; + var sb = new StringBuilder("appendSchemaTemplate_result("); + int tmp588 = 0; if((Success != null) && __isset.success) { - if(0 < tmp426++) { sb.Append(", "); } + if(0 < tmp588++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11164,11 +14699,11 @@ public override string ToString() } - public partial class testInsertRecordsOfOneDeviceArgs : TBase + public partial class pruneSchemaTemplateArgs : TBase { - private TSInsertRecordsOfOneDeviceReq _req; + private TSPruneSchemaTemplateReq _req; - public TSInsertRecordsOfOneDeviceReq Req + public TSPruneSchemaTemplateReq Req { get { @@ -11188,19 +14723,19 @@ public struct Isset public bool req; } - public testInsertRecordsOfOneDeviceArgs() + public pruneSchemaTemplateArgs() { } - public testInsertRecordsOfOneDeviceArgs DeepCopy() + public pruneSchemaTemplateArgs DeepCopy() { - var tmp427 = new testInsertRecordsOfOneDeviceArgs(); + var tmp589 = new pruneSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp427.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp589.Req = (TSPruneSchemaTemplateReq)this.Req.DeepCopy(); } - tmp427.__isset.req = this.__isset.req; - return tmp427; + tmp589.__isset.req = this.__isset.req; + return tmp589; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11223,7 +14758,7 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); + Req = new TSPruneSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11252,7 +14787,7 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecordsOfOneDevice_args"); + var struc = new TStruct("pruneSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11275,7 +14810,7 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; + if (!(that is pruneSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11293,11 +14828,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); - int tmp428 = 0; + var sb = new StringBuilder("pruneSchemaTemplate_args("); + int tmp590 = 0; if((Req != null) && __isset.req) { - if(0 < tmp428++) { sb.Append(", "); } + if(0 < tmp590++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11307,7 +14842,7 @@ public override string ToString() } - public partial class testInsertRecordsOfOneDeviceResult : TBase + public partial class pruneSchemaTemplateResult : TBase { private TSStatus _success; @@ -11331,19 +14866,19 @@ public struct Isset public bool success; } - public testInsertRecordsOfOneDeviceResult() + public pruneSchemaTemplateResult() { } - public testInsertRecordsOfOneDeviceResult DeepCopy() + public pruneSchemaTemplateResult DeepCopy() { - var tmp429 = new testInsertRecordsOfOneDeviceResult(); + var tmp591 = new pruneSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp429.Success = (TSStatus)this.Success.DeepCopy(); + tmp591.Success = (TSStatus)this.Success.DeepCopy(); } - tmp429.__isset.success = this.__isset.success; - return tmp429; + tmp591.__isset.success = this.__isset.success; + return tmp591; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11395,7 +14930,7 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecordsOfOneDevice_result"); + var struc = new TStruct("pruneSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11422,7 +14957,7 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; + if (!(that is pruneSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11440,11 +14975,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); - int tmp430 = 0; + var sb = new StringBuilder("pruneSchemaTemplate_result("); + int tmp592 = 0; if((Success != null) && __isset.success) { - if(0 < tmp430++) { sb.Append(", "); } + if(0 < tmp592++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11454,11 +14989,11 @@ public override string ToString() } - public partial class testInsertStringRecordsArgs : TBase + public partial class querySchemaTemplateArgs : TBase { - private TSInsertStringRecordsReq _req; + private TSQueryTemplateReq _req; - public TSInsertStringRecordsReq Req + public TSQueryTemplateReq Req { get { @@ -11478,19 +15013,19 @@ public struct Isset public bool req; } - public testInsertStringRecordsArgs() + public querySchemaTemplateArgs() { } - public testInsertStringRecordsArgs DeepCopy() + public querySchemaTemplateArgs DeepCopy() { - var tmp431 = new testInsertStringRecordsArgs(); + var tmp593 = new querySchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp431.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + tmp593.Req = (TSQueryTemplateReq)this.Req.DeepCopy(); } - tmp431.__isset.req = this.__isset.req; - return tmp431; + tmp593.__isset.req = this.__isset.req; + return tmp593; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11513,7 +15048,7 @@ public testInsertStringRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); + Req = new TSQueryTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11542,7 +15077,7 @@ public testInsertStringRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecords_args"); + var struc = new TStruct("querySchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11565,7 +15100,7 @@ public testInsertStringRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordsArgs other)) return false; + if (!(that is querySchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11583,11 +15118,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecords_args("); - int tmp432 = 0; + var sb = new StringBuilder("querySchemaTemplate_args("); + int tmp594 = 0; if((Req != null) && __isset.req) { - if(0 < tmp432++) { sb.Append(", "); } + if(0 < tmp594++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11597,11 +15132,11 @@ public override string ToString() } - public partial class testInsertStringRecordsResult : TBase + public partial class querySchemaTemplateResult : TBase { - private TSStatus _success; + private TSQueryTemplateResp _success; - public TSStatus Success + public TSQueryTemplateResp Success { get { @@ -11621,19 +15156,19 @@ public struct Isset public bool success; } - public testInsertStringRecordsResult() + public querySchemaTemplateResult() { } - public testInsertStringRecordsResult DeepCopy() + public querySchemaTemplateResult DeepCopy() { - var tmp433 = new testInsertStringRecordsResult(); + var tmp595 = new querySchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp433.Success = (TSStatus)this.Success.DeepCopy(); + tmp595.Success = (TSQueryTemplateResp)this.Success.DeepCopy(); } - tmp433.__isset.success = this.__isset.success; - return tmp433; + tmp595.__isset.success = this.__isset.success; + return tmp595; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11656,7 +15191,7 @@ public testInsertStringRecordsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSQueryTemplateResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -11685,7 +15220,7 @@ public testInsertStringRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecords_result"); + var struc = new TStruct("querySchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11712,7 +15247,7 @@ public testInsertStringRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordsResult other)) return false; + if (!(that is querySchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11730,11 +15265,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecords_result("); - int tmp434 = 0; + var sb = new StringBuilder("querySchemaTemplate_result("); + int tmp596 = 0; if((Success != null) && __isset.success) { - if(0 < tmp434++) { sb.Append(", "); } + if(0 < tmp596++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11744,11 +15279,11 @@ public override string ToString() } - public partial class deleteDataArgs : TBase + public partial class setSchemaTemplateArgs : TBase { - private TSDeleteDataReq _req; + private TSSetSchemaTemplateReq _req; - public TSDeleteDataReq Req + public TSSetSchemaTemplateReq Req { get { @@ -11768,19 +15303,19 @@ public struct Isset public bool req; } - public deleteDataArgs() + public setSchemaTemplateArgs() { } - public deleteDataArgs DeepCopy() + public setSchemaTemplateArgs DeepCopy() { - var tmp435 = new deleteDataArgs(); + var tmp597 = new setSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp435.Req = (TSDeleteDataReq)this.Req.DeepCopy(); + tmp597.Req = (TSSetSchemaTemplateReq)this.Req.DeepCopy(); } - tmp435.__isset.req = this.__isset.req; - return tmp435; + tmp597.__isset.req = this.__isset.req; + return tmp597; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11803,7 +15338,7 @@ public deleteDataArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSDeleteDataReq(); + Req = new TSSetSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11832,7 +15367,7 @@ public deleteDataArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteData_args"); + var struc = new TStruct("setSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11855,7 +15390,7 @@ public deleteDataArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteDataArgs other)) return false; + if (!(that is setSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11873,11 +15408,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteData_args("); - int tmp436 = 0; + var sb = new StringBuilder("setSchemaTemplate_args("); + int tmp598 = 0; if((Req != null) && __isset.req) { - if(0 < tmp436++) { sb.Append(", "); } + if(0 < tmp598++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11887,7 +15422,7 @@ public override string ToString() } - public partial class deleteDataResult : TBase + public partial class setSchemaTemplateResult : TBase { private TSStatus _success; @@ -11911,19 +15446,19 @@ public struct Isset public bool success; } - public deleteDataResult() + public setSchemaTemplateResult() { } - public deleteDataResult DeepCopy() + public setSchemaTemplateResult DeepCopy() { - var tmp437 = new deleteDataResult(); + var tmp599 = new setSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp437.Success = (TSStatus)this.Success.DeepCopy(); + tmp599.Success = (TSStatus)this.Success.DeepCopy(); } - tmp437.__isset.success = this.__isset.success; - return tmp437; + tmp599.__isset.success = this.__isset.success; + return tmp599; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11975,7 +15510,7 @@ public deleteDataResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteData_result"); + var struc = new TStruct("setSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12002,7 +15537,7 @@ public deleteDataResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteDataResult other)) return false; + if (!(that is setSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12020,11 +15555,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteData_result("); - int tmp438 = 0; + var sb = new StringBuilder("setSchemaTemplate_result("); + int tmp600 = 0; if((Success != null) && __isset.success) { - if(0 < tmp438++) { sb.Append(", "); } + if(0 < tmp600++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12034,11 +15569,11 @@ public override string ToString() } - public partial class executeRawDataQueryArgs : TBase + public partial class unsetSchemaTemplateArgs : TBase { - private TSRawDataQueryReq _req; + private TSUnsetSchemaTemplateReq _req; - public TSRawDataQueryReq Req + public TSUnsetSchemaTemplateReq Req { get { @@ -12058,19 +15593,19 @@ public struct Isset public bool req; } - public executeRawDataQueryArgs() + public unsetSchemaTemplateArgs() { } - public executeRawDataQueryArgs DeepCopy() + public unsetSchemaTemplateArgs DeepCopy() { - var tmp439 = new executeRawDataQueryArgs(); + var tmp601 = new unsetSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp439.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); + tmp601.Req = (TSUnsetSchemaTemplateReq)this.Req.DeepCopy(); } - tmp439.__isset.req = this.__isset.req; - return tmp439; + tmp601.__isset.req = this.__isset.req; + return tmp601; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12093,7 +15628,7 @@ public executeRawDataQueryArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSRawDataQueryReq(); + Req = new TSUnsetSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -12122,7 +15657,7 @@ public executeRawDataQueryArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeRawDataQuery_args"); + var struc = new TStruct("unsetSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -12145,7 +15680,7 @@ public executeRawDataQueryArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeRawDataQueryArgs other)) return false; + if (!(that is unsetSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -12163,11 +15698,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeRawDataQuery_args("); - int tmp440 = 0; + var sb = new StringBuilder("unsetSchemaTemplate_args("); + int tmp602 = 0; if((Req != null) && __isset.req) { - if(0 < tmp440++) { sb.Append(", "); } + if(0 < tmp602++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -12177,11 +15712,11 @@ public override string ToString() } - public partial class executeRawDataQueryResult : TBase + public partial class unsetSchemaTemplateResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -12201,19 +15736,19 @@ public struct Isset public bool success; } - public executeRawDataQueryResult() + public unsetSchemaTemplateResult() { } - public executeRawDataQueryResult DeepCopy() + public unsetSchemaTemplateResult DeepCopy() { - var tmp441 = new executeRawDataQueryResult(); + var tmp603 = new unsetSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp441.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp603.Success = (TSStatus)this.Success.DeepCopy(); } - tmp441.__isset.success = this.__isset.success; - return tmp441; + tmp603.__isset.success = this.__isset.success; + return tmp603; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12236,7 +15771,7 @@ public executeRawDataQueryResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -12265,7 +15800,7 @@ public executeRawDataQueryResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeRawDataQuery_result"); + var struc = new TStruct("unsetSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12292,7 +15827,7 @@ public executeRawDataQueryResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeRawDataQueryResult other)) return false; + if (!(that is unsetSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12310,11 +15845,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeRawDataQuery_result("); - int tmp442 = 0; + var sb = new StringBuilder("unsetSchemaTemplate_result("); + int tmp604 = 0; if((Success != null) && __isset.success) { - if(0 < tmp442++) { sb.Append(", "); } + if(0 < tmp604++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12324,20 +15859,20 @@ public override string ToString() } - public partial class requestStatementIdArgs : TBase + public partial class dropSchemaTemplateArgs : TBase { - private long _sessionId; + private TSDropSchemaTemplateReq _req; - public long SessionId + public TSDropSchemaTemplateReq Req { get { - return _sessionId; + return _req; } set { - __isset.sessionId = true; - this._sessionId = value; + __isset.req = true; + this._req = value; } } @@ -12345,22 +15880,22 @@ public long SessionId public Isset __isset; public struct Isset { - public bool sessionId; + public bool req; } - public requestStatementIdArgs() + public dropSchemaTemplateArgs() { } - public requestStatementIdArgs DeepCopy() + public dropSchemaTemplateArgs DeepCopy() { - var tmp443 = new requestStatementIdArgs(); - if(__isset.sessionId) + var tmp605 = new dropSchemaTemplateArgs(); + if((Req != null) && __isset.req) { - tmp443.SessionId = this.SessionId; + tmp605.Req = (TSDropSchemaTemplateReq)this.Req.DeepCopy(); } - tmp443.__isset.sessionId = this.__isset.sessionId; - return tmp443; + tmp605.__isset.req = this.__isset.req; + return tmp605; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12381,9 +15916,10 @@ public requestStatementIdArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - SessionId = await iprot.ReadI64Async(cancellationToken); + Req = new TSDropSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -12411,16 +15947,16 @@ public requestStatementIdArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("requestStatementId_args"); + var struc = new TStruct("dropSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -12434,17 +15970,17 @@ public requestStatementIdArgs DeepCopy() public override bool Equals(object that) { - if (!(that is requestStatementIdArgs other)) return false; + if (!(that is dropSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -12452,13 +15988,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("requestStatementId_args("); - int tmp444 = 0; - if(__isset.sessionId) + var sb = new StringBuilder("dropSchemaTemplate_args("); + int tmp606 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp444++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); + if(0 < tmp606++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -12466,11 +16002,11 @@ public override string ToString() } - public partial class requestStatementIdResult : TBase + public partial class dropSchemaTemplateResult : TBase { - private long _success; + private TSStatus _success; - public long Success + public TSStatus Success { get { @@ -12490,19 +16026,19 @@ public struct Isset public bool success; } - public requestStatementIdResult() + public dropSchemaTemplateResult() { } - public requestStatementIdResult DeepCopy() + public dropSchemaTemplateResult DeepCopy() { - var tmp445 = new requestStatementIdResult(); - if(__isset.success) + var tmp607 = new dropSchemaTemplateResult(); + if((Success != null) && __isset.success) { - tmp445.Success = this.Success; + tmp607.Success = (TSStatus)this.Success.DeepCopy(); } - tmp445.__isset.success = this.__isset.success; - return tmp445; + tmp607.__isset.success = this.__isset.success; + return tmp607; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12523,9 +16059,10 @@ public requestStatementIdResult DeepCopy() switch (field.ID) { case 0: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - Success = await iprot.ReadI64Async(cancellationToken); + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); } else { @@ -12553,18 +16090,21 @@ public requestStatementIdResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("requestStatementId_result"); + var struc = new TStruct("dropSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(this.__isset.success) { - field.Name = "Success"; - field.Type = TType.I64; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Success, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -12577,7 +16117,7 @@ public requestStatementIdResult DeepCopy() public override bool Equals(object that) { - if (!(that is requestStatementIdResult other)) return false; + if (!(that is dropSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12585,7 +16125,7 @@ public override bool Equals(object that) public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.success) + if((Success != null) && __isset.success) { hashcode = (hashcode * 397) + Success.GetHashCode(); } @@ -12595,11 +16135,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("requestStatementId_result("); - int tmp446 = 0; - if(__isset.success) + var sb = new StringBuilder("dropSchemaTemplate_result("); + int tmp608 = 0; + if((Success != null) && __isset.success) { - if(0 < tmp446++) { sb.Append(", "); } + if(0 < tmp608++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs index cb66120..ebd4a21 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertRecordReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List Measurements { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertRecordReq : TBase public long Timestamp { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertRecordReq() { } - public TSInsertRecordReq(long sessionId, string deviceId, List measurements, byte[] values, long timestamp) : this() + public TSInsertRecordReq(long sessionId, string prefixPath, List measurements, byte[] values, long timestamp) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.Measurements = measurements; this.Values = values; this.Timestamp = timestamp; @@ -57,22 +78,27 @@ public TSInsertRecordReq(long sessionId, string deviceId, List measureme public TSInsertRecordReq DeepCopy() { - var tmp89 = new TSInsertRecordReq(); - tmp89.SessionId = this.SessionId; - if((DeviceId != null)) + var tmp107 = new TSInsertRecordReq(); + tmp107.SessionId = this.SessionId; + if((PrefixPath != null)) { - tmp89.DeviceId = this.DeviceId; + tmp107.PrefixPath = this.PrefixPath; } if((Measurements != null)) { - tmp89.Measurements = this.Measurements.DeepCopy(); + tmp107.Measurements = this.Measurements.DeepCopy(); } if((Values != null)) { - tmp89.Values = this.Values.ToArray(); + tmp107.Values = this.Values.ToArray(); } - tmp89.Timestamp = this.Timestamp; - return tmp89; + tmp107.Timestamp = this.Timestamp; + if(__isset.isAligned) + { + tmp107.IsAligned = this.IsAligned; + } + tmp107.__isset.isAligned = this.__isset.isAligned; + return tmp107; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -81,7 +107,7 @@ public TSInsertRecordReq DeepCopy() try { bool isset_sessionId = false; - bool isset_deviceId = false; + bool isset_prefixPath = false; bool isset_measurements = false; bool isset_values = false; bool isset_timestamp = false; @@ -111,8 +137,8 @@ public TSInsertRecordReq DeepCopy() case 2: if (field.Type == TType.String) { - DeviceId = await iprot.ReadStringAsync(cancellationToken); - isset_deviceId = true; + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; } else { @@ -123,13 +149,13 @@ public TSInsertRecordReq DeepCopy() if (field.Type == TType.List) { { - TList _list90 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list90.Count); - for(int _i91 = 0; _i91 < _list90.Count; ++_i91) + TList _list108 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list108.Count); + for(int _i109 = 0; _i109 < _list108.Count; ++_i109) { - string _elem92; - _elem92 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem92); + string _elem110; + _elem110 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem110); } await iprot.ReadListEndAsync(cancellationToken); } @@ -162,6 +188,16 @@ public TSInsertRecordReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -175,7 +211,7 @@ public TSInsertRecordReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -212,13 +248,13 @@ public TSInsertRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((Measurements != null)) @@ -229,9 +265,9 @@ public TSInsertRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter93 in Measurements) + foreach (string _iter111 in Measurements) { - await oprot.WriteStringAsync(_iter93, cancellationToken); + await oprot.WriteStringAsync(_iter111, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -252,6 +288,15 @@ public TSInsertRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(Timestamp, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -266,19 +311,20 @@ public override bool Equals(object that) if (!(that is TSInsertRecordReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) - && System.Object.Equals(Timestamp, other.Timestamp); + && System.Object.Equals(Timestamp, other.Timestamp) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((Measurements != null)) { @@ -289,6 +335,10 @@ public override int GetHashCode() { hashcode = (hashcode * 397) + Values.GetHashCode(); } hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -298,10 +348,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertRecordReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((Measurements != null)) { @@ -315,6 +365,11 @@ public override string ToString() } sb.Append(", Timestamp: "); Timestamp.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs index 320ea78..5117ce8 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertRecordsOfOneDeviceReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List> MeasurementsList { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertRecordsOfOneDeviceReq : TBase public List Timestamps { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertRecordsOfOneDeviceReq() { } - public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List> measurementsList, List valuesList, List timestamps) : this() + public TSInsertRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List valuesList, List timestamps) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.Timestamps = timestamps; @@ -57,25 +78,30 @@ public TSInsertRecordsOfOneDeviceReq(long sessionId, string deviceId, List>(_list172.Count); - for(int _i173 = 0; _i173 < _list172.Count; ++_i173) + TList _list190 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list190.Count); + for(int _i191 = 0; _i191 < _list190.Count; ++_i191) { - List _elem174; + List _elem192; { - TList _list175 = await iprot.ReadListBeginAsync(cancellationToken); - _elem174 = new List(_list175.Count); - for(int _i176 = 0; _i176 < _list175.Count; ++_i176) + TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); + _elem192 = new List(_list193.Count); + for(int _i194 = 0; _i194 < _list193.Count; ++_i194) { - string _elem177; - _elem177 = await iprot.ReadStringAsync(cancellationToken); - _elem174.Add(_elem177); + string _elem195; + _elem195 = await iprot.ReadStringAsync(cancellationToken); + _elem192.Add(_elem195); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem174); + MeasurementsList.Add(_elem192); } await iprot.ReadListEndAsync(cancellationToken); } @@ -157,13 +183,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() if (field.Type == TType.List) { { - TList _list178 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list178.Count); - for(int _i179 = 0; _i179 < _list178.Count; ++_i179) + TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list196.Count); + for(int _i197 = 0; _i197 < _list196.Count; ++_i197) { - byte[] _elem180; - _elem180 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem180); + byte[] _elem198; + _elem198 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem198); } await iprot.ReadListEndAsync(cancellationToken); } @@ -178,13 +204,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() if (field.Type == TType.List) { { - TList _list181 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list181.Count); - for(int _i182 = 0; _i182 < _list181.Count; ++_i182) + TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list199.Count); + for(int _i200 = 0; _i200 < _list199.Count; ++_i200) { - long _elem183; - _elem183 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem183); + long _elem201; + _elem201 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem201); } await iprot.ReadListEndAsync(cancellationToken); } @@ -195,6 +221,16 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -208,7 +244,7 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -245,13 +281,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((MeasurementsList != null)) @@ -262,13 +298,13 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter184 in MeasurementsList) + foreach (List _iter202 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); - foreach (string _iter185 in _iter184) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter202.Count), cancellationToken); + foreach (string _iter203 in _iter202) { - await oprot.WriteStringAsync(_iter185, cancellationToken); + await oprot.WriteStringAsync(_iter203, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -285,9 +321,9 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter186 in ValuesList) + foreach (byte[] _iter204 in ValuesList) { - await oprot.WriteBinaryAsync(_iter186, cancellationToken); + await oprot.WriteBinaryAsync(_iter204, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -301,14 +337,23 @@ public TSInsertRecordsOfOneDeviceReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter187 in Timestamps) + foreach (long _iter205 in Timestamps) { - await oprot.WriteI64Async(_iter187, cancellationToken); + await oprot.WriteI64Async(_iter205, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -323,19 +368,20 @@ public override bool Equals(object that) if (!(that is TSInsertRecordsOfOneDeviceReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps); + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((MeasurementsList != null)) { @@ -349,6 +395,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -358,10 +408,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((MeasurementsList != null)) { @@ -378,6 +428,11 @@ public override string ToString() sb.Append(", Timestamps: "); Timestamps.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs index 32beaec..6d1fc41 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertRecordsReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public List DeviceIds { get; set; } + public List PrefixPaths { get; set; } public List> MeasurementsList { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertRecordsReq : TBase public List Timestamps { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertRecordsReq() { } - public TSInsertRecordsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestamps) : this() + public TSInsertRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestamps) : this() { this.SessionId = sessionId; - this.DeviceIds = deviceIds; + this.PrefixPaths = prefixPaths; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.Timestamps = timestamps; @@ -57,25 +78,30 @@ public TSInsertRecordsReq(long sessionId, List deviceIds, List(_list150.Count); - for(int _i151 = 0; _i151 < _list150.Count; ++_i151) + TList _list168 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list168.Count); + for(int _i169 = 0; _i169 < _list168.Count; ++_i169) { - string _elem152; - _elem152 = await iprot.ReadStringAsync(cancellationToken); - DeviceIds.Add(_elem152); + string _elem170; + _elem170 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem170); } await iprot.ReadListEndAsync(cancellationToken); } - isset_deviceIds = true; + isset_prefixPaths = true; } else { @@ -136,23 +162,23 @@ public TSInsertRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list153 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list153.Count); - for(int _i154 = 0; _i154 < _list153.Count; ++_i154) + TList _list171 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list171.Count); + for(int _i172 = 0; _i172 < _list171.Count; ++_i172) { - List _elem155; + List _elem173; { - TList _list156 = await iprot.ReadListBeginAsync(cancellationToken); - _elem155 = new List(_list156.Count); - for(int _i157 = 0; _i157 < _list156.Count; ++_i157) + TList _list174 = await iprot.ReadListBeginAsync(cancellationToken); + _elem173 = new List(_list174.Count); + for(int _i175 = 0; _i175 < _list174.Count; ++_i175) { - string _elem158; - _elem158 = await iprot.ReadStringAsync(cancellationToken); - _elem155.Add(_elem158); + string _elem176; + _elem176 = await iprot.ReadStringAsync(cancellationToken); + _elem173.Add(_elem176); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem155); + MeasurementsList.Add(_elem173); } await iprot.ReadListEndAsync(cancellationToken); } @@ -167,13 +193,13 @@ public TSInsertRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list159 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list159.Count); - for(int _i160 = 0; _i160 < _list159.Count; ++_i160) + TList _list177 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list177.Count); + for(int _i178 = 0; _i178 < _list177.Count; ++_i178) { - byte[] _elem161; - _elem161 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem161); + byte[] _elem179; + _elem179 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem179); } await iprot.ReadListEndAsync(cancellationToken); } @@ -188,13 +214,13 @@ public TSInsertRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list162 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list162.Count); - for(int _i163 = 0; _i163 < _list162.Count; ++_i163) + TList _list180 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list180.Count); + for(int _i181 = 0; _i181 < _list180.Count; ++_i181) { - long _elem164; - _elem164 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem164); + long _elem182; + _elem182 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem182); } await iprot.ReadListEndAsync(cancellationToken); } @@ -205,6 +231,16 @@ public TSInsertRecordsReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -218,7 +254,7 @@ public TSInsertRecordsReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceIds) + if (!isset_prefixPaths) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -255,17 +291,17 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - field.Name = "deviceIds"; + field.Name = "prefixPaths"; field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); { - await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); - foreach (string _iter165 in DeviceIds) + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter183 in PrefixPaths) { - await oprot.WriteStringAsync(_iter165, cancellationToken); + await oprot.WriteStringAsync(_iter183, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -279,13 +315,13 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter166 in MeasurementsList) + foreach (List _iter184 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter166.Count), cancellationToken); - foreach (string _iter167 in _iter166) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); + foreach (string _iter185 in _iter184) { - await oprot.WriteStringAsync(_iter167, cancellationToken); + await oprot.WriteStringAsync(_iter185, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -302,9 +338,9 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter168 in ValuesList) + foreach (byte[] _iter186 in ValuesList) { - await oprot.WriteBinaryAsync(_iter168, cancellationToken); + await oprot.WriteBinaryAsync(_iter186, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -318,14 +354,23 @@ public TSInsertRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter169 in Timestamps) + foreach (long _iter187 in Timestamps) { - await oprot.WriteI64Async(_iter169, cancellationToken); + await oprot.WriteI64Async(_iter187, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -340,19 +385,20 @@ public override bool Equals(object that) if (!(that is TSInsertRecordsReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps); + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); } if((MeasurementsList != null)) { @@ -366,6 +412,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -375,10 +425,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertRecordsReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - sb.Append(", DeviceIds: "); - DeviceIds.ToString(sb); + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); } if((MeasurementsList != null)) { @@ -395,6 +445,11 @@ public override string ToString() sb.Append(", Timestamps: "); Timestamps.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs index c1467b7..228fac5 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertStringRecordReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List Measurements { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertStringRecordReq : TBase public long Timestamp { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertStringRecordReq() { } - public TSInsertStringRecordReq(long sessionId, string deviceId, List measurements, List values, long timestamp) : this() + public TSInsertStringRecordReq(long sessionId, string prefixPath, List measurements, List values, long timestamp) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.Measurements = measurements; this.Values = values; this.Timestamp = timestamp; @@ -57,22 +78,27 @@ public TSInsertStringRecordReq(long sessionId, string deviceId, List mea public TSInsertStringRecordReq DeepCopy() { - var tmp95 = new TSInsertStringRecordReq(); - tmp95.SessionId = this.SessionId; - if((DeviceId != null)) + var tmp113 = new TSInsertStringRecordReq(); + tmp113.SessionId = this.SessionId; + if((PrefixPath != null)) { - tmp95.DeviceId = this.DeviceId; + tmp113.PrefixPath = this.PrefixPath; } if((Measurements != null)) { - tmp95.Measurements = this.Measurements.DeepCopy(); + tmp113.Measurements = this.Measurements.DeepCopy(); } if((Values != null)) { - tmp95.Values = this.Values.DeepCopy(); + tmp113.Values = this.Values.DeepCopy(); } - tmp95.Timestamp = this.Timestamp; - return tmp95; + tmp113.Timestamp = this.Timestamp; + if(__isset.isAligned) + { + tmp113.IsAligned = this.IsAligned; + } + tmp113.__isset.isAligned = this.__isset.isAligned; + return tmp113; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -81,7 +107,7 @@ public TSInsertStringRecordReq DeepCopy() try { bool isset_sessionId = false; - bool isset_deviceId = false; + bool isset_prefixPath = false; bool isset_measurements = false; bool isset_values = false; bool isset_timestamp = false; @@ -111,8 +137,8 @@ public TSInsertStringRecordReq DeepCopy() case 2: if (field.Type == TType.String) { - DeviceId = await iprot.ReadStringAsync(cancellationToken); - isset_deviceId = true; + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; } else { @@ -123,13 +149,13 @@ public TSInsertStringRecordReq DeepCopy() if (field.Type == TType.List) { { - TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list96.Count); - for(int _i97 = 0; _i97 < _list96.Count; ++_i97) + TList _list114 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list114.Count); + for(int _i115 = 0; _i115 < _list114.Count; ++_i115) { - string _elem98; - _elem98 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem98); + string _elem116; + _elem116 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem116); } await iprot.ReadListEndAsync(cancellationToken); } @@ -144,13 +170,13 @@ public TSInsertStringRecordReq DeepCopy() if (field.Type == TType.List) { { - TList _list99 = await iprot.ReadListBeginAsync(cancellationToken); - Values = new List(_list99.Count); - for(int _i100 = 0; _i100 < _list99.Count; ++_i100) + TList _list117 = await iprot.ReadListBeginAsync(cancellationToken); + Values = new List(_list117.Count); + for(int _i118 = 0; _i118 < _list117.Count; ++_i118) { - string _elem101; - _elem101 = await iprot.ReadStringAsync(cancellationToken); - Values.Add(_elem101); + string _elem119; + _elem119 = await iprot.ReadStringAsync(cancellationToken); + Values.Add(_elem119); } await iprot.ReadListEndAsync(cancellationToken); } @@ -172,6 +198,16 @@ public TSInsertStringRecordReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -185,7 +221,7 @@ public TSInsertStringRecordReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -222,13 +258,13 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((Measurements != null)) @@ -239,9 +275,9 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter102 in Measurements) + foreach (string _iter120 in Measurements) { - await oprot.WriteStringAsync(_iter102, cancellationToken); + await oprot.WriteStringAsync(_iter120, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -255,9 +291,9 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Values.Count), cancellationToken); - foreach (string _iter103 in Values) + foreach (string _iter121 in Values) { - await oprot.WriteStringAsync(_iter103, cancellationToken); + await oprot.WriteStringAsync(_iter121, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -269,6 +305,15 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(Timestamp, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -283,19 +328,20 @@ public override bool Equals(object that) if (!(that is TSInsertStringRecordReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) - && System.Object.Equals(Timestamp, other.Timestamp); + && System.Object.Equals(Timestamp, other.Timestamp) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((Measurements != null)) { @@ -306,6 +352,10 @@ public override int GetHashCode() { hashcode = (hashcode * 397) + TCollections.GetHashCode(Values); } hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -315,10 +365,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertStringRecordReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((Measurements != null)) { @@ -332,6 +382,11 @@ public override string ToString() } sb.Append(", Timestamp: "); Timestamp.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs new file mode 100644 index 0000000..6e5fefb --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertStringRecordsOfOneDeviceReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List> MeasurementsList { get; set; } + + public List> ValuesList { get; set; } + + public List Timestamps { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertStringRecordsOfOneDeviceReq() + { + } + + public TSInsertStringRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List> valuesList, List timestamps) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public TSInsertStringRecordsOfOneDeviceReq DeepCopy() + { + var tmp207 = new TSInsertStringRecordsOfOneDeviceReq(); + tmp207.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp207.PrefixPath = this.PrefixPath; + } + if((MeasurementsList != null)) + { + tmp207.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp207.ValuesList = this.ValuesList.DeepCopy(); + } + if((Timestamps != null)) + { + tmp207.Timestamps = this.Timestamps.DeepCopy(); + } + if(__isset.isAligned) + { + tmp207.IsAligned = this.IsAligned; + } + tmp207.__isset.isAligned = this.__isset.isAligned; + return tmp207; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list208 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list208.Count); + for(int _i209 = 0; _i209 < _list208.Count; ++_i209) + { + List _elem210; + { + TList _list211 = await iprot.ReadListBeginAsync(cancellationToken); + _elem210 = new List(_list211.Count); + for(int _i212 = 0; _i212 < _list211.Count; ++_i212) + { + string _elem213; + _elem213 = await iprot.ReadStringAsync(cancellationToken); + _elem210.Add(_elem213); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem210); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list214 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list214.Count); + for(int _i215 = 0; _i215 < _list214.Count; ++_i215) + { + List _elem216; + { + TList _list217 = await iprot.ReadListBeginAsync(cancellationToken); + _elem216 = new List(_list217.Count); + for(int _i218 = 0; _i218 < _list217.Count; ++_i218) + { + string _elem219; + _elem219 = await iprot.ReadStringAsync(cancellationToken); + _elem216.Add(_elem219); + } + await iprot.ReadListEndAsync(cancellationToken); + } + ValuesList.Add(_elem216); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list220 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list220.Count); + for(int _i221 = 0; _i221 < _list220.Count; ++_i221) + { + long _elem222; + _elem222 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem222); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertStringRecordsOfOneDeviceReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter223 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter223.Count), cancellationToken); + foreach (string _iter224 in _iter223) + { + await oprot.WriteStringAsync(_iter224, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); + foreach (List _iter225 in ValuesList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter225.Count), cancellationToken); + foreach (string _iter226 in _iter225) + { + await oprot.WriteStringAsync(_iter226, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter227 in Timestamps) + { + await oprot.WriteI64Async(_iter227, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordsOfOneDeviceReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordsOfOneDeviceReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs index 14e80b2..82dc577 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertStringRecordsReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public List DeviceIds { get; set; } + public List PrefixPaths { get; set; } public List> MeasurementsList { get; set; } @@ -42,14 +43,34 @@ public partial class TSInsertStringRecordsReq : TBase public List Timestamps { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertStringRecordsReq() { } - public TSInsertStringRecordsReq(long sessionId, List deviceIds, List> measurementsList, List> valuesList, List timestamps) : this() + public TSInsertStringRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List> valuesList, List timestamps) : this() { this.SessionId = sessionId; - this.DeviceIds = deviceIds; + this.PrefixPaths = prefixPaths; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.Timestamps = timestamps; @@ -57,25 +78,30 @@ public TSInsertStringRecordsReq(long sessionId, List deviceIds, List(_list190.Count); - for(int _i191 = 0; _i191 < _list190.Count; ++_i191) + TList _list230 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list230.Count); + for(int _i231 = 0; _i231 < _list230.Count; ++_i231) { - string _elem192; - _elem192 = await iprot.ReadStringAsync(cancellationToken); - DeviceIds.Add(_elem192); + string _elem232; + _elem232 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem232); } await iprot.ReadListEndAsync(cancellationToken); } - isset_deviceIds = true; + isset_prefixPaths = true; } else { @@ -136,23 +162,23 @@ public TSInsertStringRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list193.Count); - for(int _i194 = 0; _i194 < _list193.Count; ++_i194) + TList _list233 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list233.Count); + for(int _i234 = 0; _i234 < _list233.Count; ++_i234) { - List _elem195; + List _elem235; { - TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); - _elem195 = new List(_list196.Count); - for(int _i197 = 0; _i197 < _list196.Count; ++_i197) + TList _list236 = await iprot.ReadListBeginAsync(cancellationToken); + _elem235 = new List(_list236.Count); + for(int _i237 = 0; _i237 < _list236.Count; ++_i237) { - string _elem198; - _elem198 = await iprot.ReadStringAsync(cancellationToken); - _elem195.Add(_elem198); + string _elem238; + _elem238 = await iprot.ReadStringAsync(cancellationToken); + _elem235.Add(_elem238); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem195); + MeasurementsList.Add(_elem235); } await iprot.ReadListEndAsync(cancellationToken); } @@ -167,23 +193,23 @@ public TSInsertStringRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List>(_list199.Count); - for(int _i200 = 0; _i200 < _list199.Count; ++_i200) + TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list239.Count); + for(int _i240 = 0; _i240 < _list239.Count; ++_i240) { - List _elem201; + List _elem241; { - TList _list202 = await iprot.ReadListBeginAsync(cancellationToken); - _elem201 = new List(_list202.Count); - for(int _i203 = 0; _i203 < _list202.Count; ++_i203) + TList _list242 = await iprot.ReadListBeginAsync(cancellationToken); + _elem241 = new List(_list242.Count); + for(int _i243 = 0; _i243 < _list242.Count; ++_i243) { - string _elem204; - _elem204 = await iprot.ReadStringAsync(cancellationToken); - _elem201.Add(_elem204); + string _elem244; + _elem244 = await iprot.ReadStringAsync(cancellationToken); + _elem241.Add(_elem244); } await iprot.ReadListEndAsync(cancellationToken); } - ValuesList.Add(_elem201); + ValuesList.Add(_elem241); } await iprot.ReadListEndAsync(cancellationToken); } @@ -198,13 +224,13 @@ public TSInsertStringRecordsReq DeepCopy() if (field.Type == TType.List) { { - TList _list205 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list205.Count); - for(int _i206 = 0; _i206 < _list205.Count; ++_i206) + TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list245.Count); + for(int _i246 = 0; _i246 < _list245.Count; ++_i246) { - long _elem207; - _elem207 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem207); + long _elem247; + _elem247 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem247); } await iprot.ReadListEndAsync(cancellationToken); } @@ -215,6 +241,16 @@ public TSInsertStringRecordsReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -228,7 +264,7 @@ public TSInsertStringRecordsReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceIds) + if (!isset_prefixPaths) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -265,17 +301,17 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - field.Name = "deviceIds"; + field.Name = "prefixPaths"; field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); { - await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); - foreach (string _iter208 in DeviceIds) + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter248 in PrefixPaths) { - await oprot.WriteStringAsync(_iter208, cancellationToken); + await oprot.WriteStringAsync(_iter248, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -289,13 +325,13 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter209 in MeasurementsList) + foreach (List _iter249 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter209.Count), cancellationToken); - foreach (string _iter210 in _iter209) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter249.Count), cancellationToken); + foreach (string _iter250 in _iter249) { - await oprot.WriteStringAsync(_iter210, cancellationToken); + await oprot.WriteStringAsync(_iter250, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -312,13 +348,13 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); - foreach (List _iter211 in ValuesList) + foreach (List _iter251 in ValuesList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter211.Count), cancellationToken); - foreach (string _iter212 in _iter211) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter251.Count), cancellationToken); + foreach (string _iter252 in _iter251) { - await oprot.WriteStringAsync(_iter212, cancellationToken); + await oprot.WriteStringAsync(_iter252, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -335,14 +371,23 @@ public TSInsertStringRecordsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter213 in Timestamps) + foreach (long _iter253 in Timestamps) { - await oprot.WriteI64Async(_iter213, cancellationToken); + await oprot.WriteI64Async(_iter253, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -357,19 +402,20 @@ public override bool Equals(object that) if (!(that is TSInsertStringRecordsReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps); + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); } if((MeasurementsList != null)) { @@ -383,6 +429,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -392,10 +442,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertStringRecordsReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - sb.Append(", DeviceIds: "); - DeviceIds.ToString(sb); + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); } if((MeasurementsList != null)) { @@ -412,6 +462,11 @@ public override string ToString() sb.Append(", Timestamps: "); Timestamps.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs index 2782115..b57ef0c 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertTabletReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public string DeviceId { get; set; } + public string PrefixPath { get; set; } public List Measurements { get; set; } @@ -46,14 +47,34 @@ public partial class TSInsertTabletReq : TBase public int Size { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertTabletReq() { } - public TSInsertTabletReq(long sessionId, string deviceId, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() + public TSInsertTabletReq(long sessionId, string prefixPath, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() { this.SessionId = sessionId; - this.DeviceId = deviceId; + this.PrefixPath = prefixPath; this.Measurements = measurements; this.Values = values; this.Timestamps = timestamps; @@ -63,30 +84,35 @@ public TSInsertTabletReq(long sessionId, string deviceId, List measureme public TSInsertTabletReq DeepCopy() { - var tmp105 = new TSInsertTabletReq(); - tmp105.SessionId = this.SessionId; - if((DeviceId != null)) + var tmp123 = new TSInsertTabletReq(); + tmp123.SessionId = this.SessionId; + if((PrefixPath != null)) { - tmp105.DeviceId = this.DeviceId; + tmp123.PrefixPath = this.PrefixPath; } if((Measurements != null)) { - tmp105.Measurements = this.Measurements.DeepCopy(); + tmp123.Measurements = this.Measurements.DeepCopy(); } if((Values != null)) { - tmp105.Values = this.Values.ToArray(); + tmp123.Values = this.Values.ToArray(); } if((Timestamps != null)) { - tmp105.Timestamps = this.Timestamps.ToArray(); + tmp123.Timestamps = this.Timestamps.ToArray(); } if((Types != null)) { - tmp105.Types = this.Types.DeepCopy(); + tmp123.Types = this.Types.DeepCopy(); } - tmp105.Size = this.Size; - return tmp105; + tmp123.Size = this.Size; + if(__isset.isAligned) + { + tmp123.IsAligned = this.IsAligned; + } + tmp123.__isset.isAligned = this.__isset.isAligned; + return tmp123; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -95,7 +121,7 @@ public TSInsertTabletReq DeepCopy() try { bool isset_sessionId = false; - bool isset_deviceId = false; + bool isset_prefixPath = false; bool isset_measurements = false; bool isset_values = false; bool isset_timestamps = false; @@ -127,8 +153,8 @@ public TSInsertTabletReq DeepCopy() case 2: if (field.Type == TType.String) { - DeviceId = await iprot.ReadStringAsync(cancellationToken); - isset_deviceId = true; + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; } else { @@ -139,13 +165,13 @@ public TSInsertTabletReq DeepCopy() if (field.Type == TType.List) { { - TList _list106 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list106.Count); - for(int _i107 = 0; _i107 < _list106.Count; ++_i107) + TList _list124 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list124.Count); + for(int _i125 = 0; _i125 < _list124.Count; ++_i125) { - string _elem108; - _elem108 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem108); + string _elem126; + _elem126 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem126); } await iprot.ReadListEndAsync(cancellationToken); } @@ -182,13 +208,13 @@ public TSInsertTabletReq DeepCopy() if (field.Type == TType.List) { { - TList _list109 = await iprot.ReadListBeginAsync(cancellationToken); - Types = new List(_list109.Count); - for(int _i110 = 0; _i110 < _list109.Count; ++_i110) + TList _list127 = await iprot.ReadListBeginAsync(cancellationToken); + Types = new List(_list127.Count); + for(int _i128 = 0; _i128 < _list127.Count; ++_i128) { - int _elem111; - _elem111 = await iprot.ReadI32Async(cancellationToken); - Types.Add(_elem111); + int _elem129; + _elem129 = await iprot.ReadI32Async(cancellationToken); + Types.Add(_elem129); } await iprot.ReadListEndAsync(cancellationToken); } @@ -210,6 +236,16 @@ public TSInsertTabletReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -223,7 +259,7 @@ public TSInsertTabletReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceId) + if (!isset_prefixPath) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -268,13 +304,13 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceId != null)) + if((PrefixPath != null)) { - field.Name = "deviceId"; + field.Name = "prefixPath"; field.Type = TType.String; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DeviceId, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } if((Measurements != null)) @@ -285,9 +321,9 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter112 in Measurements) + foreach (string _iter130 in Measurements) { - await oprot.WriteStringAsync(_iter112, cancellationToken); + await oprot.WriteStringAsync(_iter130, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -319,9 +355,9 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, Types.Count), cancellationToken); - foreach (int _iter113 in Types) + foreach (int _iter131 in Types) { - await oprot.WriteI32Async(_iter113, cancellationToken); + await oprot.WriteI32Async(_iter131, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -333,6 +369,15 @@ public TSInsertTabletReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI32Async(Size, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -347,21 +392,22 @@ public override bool Equals(object that) if (!(that is TSInsertTabletReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(DeviceId, other.DeviceId) + && System.Object.Equals(PrefixPath, other.PrefixPath) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) && TCollections.Equals(Timestamps, other.Timestamps) && TCollections.Equals(Types, other.Types) - && System.Object.Equals(Size, other.Size); + && System.Object.Equals(Size, other.Size) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceId != null)) + if((PrefixPath != null)) { - hashcode = (hashcode * 397) + DeviceId.GetHashCode(); + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); } if((Measurements != null)) { @@ -380,6 +426,10 @@ public override int GetHashCode() { hashcode = (hashcode * 397) + TCollections.GetHashCode(Types); } hashcode = (hashcode * 397) + Size.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -389,10 +439,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertTabletReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceId != null)) + if((PrefixPath != null)) { - sb.Append(", DeviceId: "); - DeviceId.ToString(sb); + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); } if((Measurements != null)) { @@ -416,6 +466,11 @@ public override string ToString() } sb.Append(", Size: "); Size.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs index 8ad788e..b33fd9c 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -31,10 +31,11 @@ public partial class TSInsertTabletsReq : TBase { + private bool _isAligned; public long SessionId { get; set; } - public List DeviceIds { get; set; } + public List PrefixPaths { get; set; } public List> MeasurementsList { get; set; } @@ -46,14 +47,34 @@ public partial class TSInsertTabletsReq : TBase public List SizeList { get; set; } + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + public TSInsertTabletsReq() { } - public TSInsertTabletsReq(long sessionId, List deviceIds, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() + public TSInsertTabletsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() { this.SessionId = sessionId; - this.DeviceIds = deviceIds; + this.PrefixPaths = prefixPaths; this.MeasurementsList = measurementsList; this.ValuesList = valuesList; this.TimestampsList = timestampsList; @@ -63,33 +84,38 @@ public TSInsertTabletsReq(long sessionId, List deviceIds, List(_list116.Count); - for(int _i117 = 0; _i117 < _list116.Count; ++_i117) + TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list134.Count); + for(int _i135 = 0; _i135 < _list134.Count; ++_i135) { - string _elem118; - _elem118 = await iprot.ReadStringAsync(cancellationToken); - DeviceIds.Add(_elem118); + string _elem136; + _elem136 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem136); } await iprot.ReadListEndAsync(cancellationToken); } - isset_deviceIds = true; + isset_prefixPaths = true; } else { @@ -152,23 +178,23 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list119 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list119.Count); - for(int _i120 = 0; _i120 < _list119.Count; ++_i120) + TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list137.Count); + for(int _i138 = 0; _i138 < _list137.Count; ++_i138) { - List _elem121; + List _elem139; { - TList _list122 = await iprot.ReadListBeginAsync(cancellationToken); - _elem121 = new List(_list122.Count); - for(int _i123 = 0; _i123 < _list122.Count; ++_i123) + TList _list140 = await iprot.ReadListBeginAsync(cancellationToken); + _elem139 = new List(_list140.Count); + for(int _i141 = 0; _i141 < _list140.Count; ++_i141) { - string _elem124; - _elem124 = await iprot.ReadStringAsync(cancellationToken); - _elem121.Add(_elem124); + string _elem142; + _elem142 = await iprot.ReadStringAsync(cancellationToken); + _elem139.Add(_elem142); } await iprot.ReadListEndAsync(cancellationToken); } - MeasurementsList.Add(_elem121); + MeasurementsList.Add(_elem139); } await iprot.ReadListEndAsync(cancellationToken); } @@ -183,13 +209,13 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list125 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list125.Count); - for(int _i126 = 0; _i126 < _list125.Count; ++_i126) + TList _list143 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list143.Count); + for(int _i144 = 0; _i144 < _list143.Count; ++_i144) { - byte[] _elem127; - _elem127 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem127); + byte[] _elem145; + _elem145 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem145); } await iprot.ReadListEndAsync(cancellationToken); } @@ -204,13 +230,13 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list128 = await iprot.ReadListBeginAsync(cancellationToken); - TimestampsList = new List(_list128.Count); - for(int _i129 = 0; _i129 < _list128.Count; ++_i129) + TList _list146 = await iprot.ReadListBeginAsync(cancellationToken); + TimestampsList = new List(_list146.Count); + for(int _i147 = 0; _i147 < _list146.Count; ++_i147) { - byte[] _elem130; - _elem130 = await iprot.ReadBinaryAsync(cancellationToken); - TimestampsList.Add(_elem130); + byte[] _elem148; + _elem148 = await iprot.ReadBinaryAsync(cancellationToken); + TimestampsList.Add(_elem148); } await iprot.ReadListEndAsync(cancellationToken); } @@ -225,23 +251,23 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list131 = await iprot.ReadListBeginAsync(cancellationToken); - TypesList = new List>(_list131.Count); - for(int _i132 = 0; _i132 < _list131.Count; ++_i132) + TList _list149 = await iprot.ReadListBeginAsync(cancellationToken); + TypesList = new List>(_list149.Count); + for(int _i150 = 0; _i150 < _list149.Count; ++_i150) { - List _elem133; + List _elem151; { - TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); - _elem133 = new List(_list134.Count); - for(int _i135 = 0; _i135 < _list134.Count; ++_i135) + TList _list152 = await iprot.ReadListBeginAsync(cancellationToken); + _elem151 = new List(_list152.Count); + for(int _i153 = 0; _i153 < _list152.Count; ++_i153) { - int _elem136; - _elem136 = await iprot.ReadI32Async(cancellationToken); - _elem133.Add(_elem136); + int _elem154; + _elem154 = await iprot.ReadI32Async(cancellationToken); + _elem151.Add(_elem154); } await iprot.ReadListEndAsync(cancellationToken); } - TypesList.Add(_elem133); + TypesList.Add(_elem151); } await iprot.ReadListEndAsync(cancellationToken); } @@ -256,13 +282,13 @@ public TSInsertTabletsReq DeepCopy() if (field.Type == TType.List) { { - TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); - SizeList = new List(_list137.Count); - for(int _i138 = 0; _i138 < _list137.Count; ++_i138) + TList _list155 = await iprot.ReadListBeginAsync(cancellationToken); + SizeList = new List(_list155.Count); + for(int _i156 = 0; _i156 < _list155.Count; ++_i156) { - int _elem139; - _elem139 = await iprot.ReadI32Async(cancellationToken); - SizeList.Add(_elem139); + int _elem157; + _elem157 = await iprot.ReadI32Async(cancellationToken); + SizeList.Add(_elem157); } await iprot.ReadListEndAsync(cancellationToken); } @@ -273,6 +299,16 @@ public TSInsertTabletsReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -286,7 +322,7 @@ public TSInsertTabletsReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_deviceIds) + if (!isset_prefixPaths) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -331,17 +367,17 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - field.Name = "deviceIds"; + field.Name = "prefixPaths"; field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); { - await oprot.WriteListBeginAsync(new TList(TType.String, DeviceIds.Count), cancellationToken); - foreach (string _iter140 in DeviceIds) + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter158 in PrefixPaths) { - await oprot.WriteStringAsync(_iter140, cancellationToken); + await oprot.WriteStringAsync(_iter158, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -355,13 +391,13 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter141 in MeasurementsList) + foreach (List _iter159 in MeasurementsList) { { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter141.Count), cancellationToken); - foreach (string _iter142 in _iter141) + await oprot.WriteListBeginAsync(new TList(TType.String, _iter159.Count), cancellationToken); + foreach (string _iter160 in _iter159) { - await oprot.WriteStringAsync(_iter142, cancellationToken); + await oprot.WriteStringAsync(_iter160, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -378,9 +414,9 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter143 in ValuesList) + foreach (byte[] _iter161 in ValuesList) { - await oprot.WriteBinaryAsync(_iter143, cancellationToken); + await oprot.WriteBinaryAsync(_iter161, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -394,9 +430,9 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, TimestampsList.Count), cancellationToken); - foreach (byte[] _iter144 in TimestampsList) + foreach (byte[] _iter162 in TimestampsList) { - await oprot.WriteBinaryAsync(_iter144, cancellationToken); + await oprot.WriteBinaryAsync(_iter162, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -410,13 +446,13 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.List, TypesList.Count), cancellationToken); - foreach (List _iter145 in TypesList) + foreach (List _iter163 in TypesList) { { - await oprot.WriteListBeginAsync(new TList(TType.I32, _iter145.Count), cancellationToken); - foreach (int _iter146 in _iter145) + await oprot.WriteListBeginAsync(new TList(TType.I32, _iter163.Count), cancellationToken); + foreach (int _iter164 in _iter163) { - await oprot.WriteI32Async(_iter146, cancellationToken); + await oprot.WriteI32Async(_iter164, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -433,14 +469,23 @@ public TSInsertTabletsReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I32, SizeList.Count), cancellationToken); - foreach (int _iter147 in SizeList) + foreach (int _iter165 in SizeList) { - await oprot.WriteI32Async(_iter147, cancellationToken); + await oprot.WriteI32Async(_iter165, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -455,21 +500,22 @@ public override bool Equals(object that) if (!(that is TSInsertTabletsReq other)) return false; if (ReferenceEquals(this, other)) return true; return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(DeviceIds, other.DeviceIds) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) && TCollections.Equals(MeasurementsList, other.MeasurementsList) && TCollections.Equals(ValuesList, other.ValuesList) && TCollections.Equals(TimestampsList, other.TimestampsList) && TCollections.Equals(TypesList, other.TypesList) - && TCollections.Equals(SizeList, other.SizeList); + && TCollections.Equals(SizeList, other.SizeList) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); } public override int GetHashCode() { int hashcode = 157; unchecked { hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DeviceIds); + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); } if((MeasurementsList != null)) { @@ -491,6 +537,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TCollections.GetHashCode(SizeList); } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } } return hashcode; } @@ -500,10 +550,10 @@ public override string ToString() var sb = new StringBuilder("TSInsertTabletsReq("); sb.Append(", SessionId: "); SessionId.ToString(sb); - if((DeviceIds != null)) + if((PrefixPaths != null)) { - sb.Append(", DeviceIds: "); - DeviceIds.ToString(sb); + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); } if((MeasurementsList != null)) { @@ -530,6 +580,11 @@ public override string ToString() sb.Append(", SizeList: "); SizeList.ToString(sb); } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs new file mode 100644 index 0000000..4f45324 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs @@ -0,0 +1,421 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSLastDataQueryReq : TBase +{ + private int _fetchSize; + private bool _enableRedirectQuery; + private bool _jdbcQuery; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long Time { get; set; } + + public long StatementId { get; set; } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool fetchSize; + public bool enableRedirectQuery; + public bool jdbcQuery; + } + + public TSLastDataQueryReq() + { + } + + public TSLastDataQueryReq(long sessionId, List paths, long time, long statementId) : this() + { + this.SessionId = sessionId; + this.Paths = paths; + this.Time = time; + this.StatementId = statementId; + } + + public TSLastDataQueryReq DeepCopy() + { + var tmp324 = new TSLastDataQueryReq(); + tmp324.SessionId = this.SessionId; + if((Paths != null)) + { + tmp324.Paths = this.Paths.DeepCopy(); + } + if(__isset.fetchSize) + { + tmp324.FetchSize = this.FetchSize; + } + tmp324.__isset.fetchSize = this.__isset.fetchSize; + tmp324.Time = this.Time; + tmp324.StatementId = this.StatementId; + if(__isset.enableRedirectQuery) + { + tmp324.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp324.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp324.JdbcQuery = this.JdbcQuery; + } + tmp324.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp324; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_time = false; + bool isset_statementId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list325 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list325.Count); + for(int _i326 = 0; _i326 < _list325.Count; ++_i326) + { + string _elem327; + _elem327 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem327); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_paths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I64) + { + Time = await iprot.ReadI64Async(cancellationToken); + isset_time = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + isset_statementId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_paths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_time) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statementId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSLastDataQueryReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) + { + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter328 in Paths) + { + await oprot.WriteStringAsync(_iter328, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.fetchSize) + { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "time"; + field.Type = TType.I64; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Time, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.enableRedirectQuery) + { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSLastDataQueryReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && System.Object.Equals(Time, other.Time) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + hashcode = (hashcode * 397) + Time.GetHashCode(); + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSLastDataQueryReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + } + sb.Append(", Time: "); + Time.ToString(sb); + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs index c1c6e3b..dc89624 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -104,28 +104,28 @@ public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this public TSOpenSessionReq DeepCopy() { - var tmp50 = new TSOpenSessionReq(); - tmp50.Client_protocol = this.Client_protocol; + var tmp68 = new TSOpenSessionReq(); + tmp68.Client_protocol = this.Client_protocol; if((ZoneId != null)) { - tmp50.ZoneId = this.ZoneId; + tmp68.ZoneId = this.ZoneId; } if((Username != null) && __isset.username) { - tmp50.Username = this.Username; + tmp68.Username = this.Username; } - tmp50.__isset.username = this.__isset.username; + tmp68.__isset.username = this.__isset.username; if((Password != null) && __isset.password) { - tmp50.Password = this.Password; + tmp68.Password = this.Password; } - tmp50.__isset.password = this.__isset.password; + tmp68.__isset.password = this.__isset.password; if((Configuration != null) && __isset.configuration) { - tmp50.Configuration = this.Configuration.DeepCopy(); + tmp68.Configuration = this.Configuration.DeepCopy(); } - tmp50.__isset.configuration = this.__isset.configuration; - return tmp50; + tmp68.__isset.configuration = this.__isset.configuration; + return tmp68; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -193,15 +193,15 @@ public TSOpenSessionReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map51 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map51.Count); - for(int _i52 = 0; _i52 < _map51.Count; ++_i52) + TMap _map69 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map69.Count); + for(int _i70 = 0; _i70 < _map69.Count; ++_i70) { - string _key53; - string _val54; - _key53 = await iprot.ReadStringAsync(cancellationToken); - _val54 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key53] = _val54; + string _key71; + string _val72; + _key71 = await iprot.ReadStringAsync(cancellationToken); + _val72 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key71] = _val72; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -284,10 +284,10 @@ public TSOpenSessionReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter55 in Configuration.Keys) + foreach (string _iter73 in Configuration.Keys) { - await oprot.WriteStringAsync(_iter55, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter55], cancellationToken); + await oprot.WriteStringAsync(_iter73, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter73], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs index 2d4b065..f1d2db2 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -89,23 +89,23 @@ public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersio public TSOpenSessionResp DeepCopy() { - var tmp43 = new TSOpenSessionResp(); + var tmp61 = new TSOpenSessionResp(); if((Status != null)) { - tmp43.Status = (TSStatus)this.Status.DeepCopy(); + tmp61.Status = (TSStatus)this.Status.DeepCopy(); } - tmp43.ServerProtocolVersion = this.ServerProtocolVersion; + tmp61.ServerProtocolVersion = this.ServerProtocolVersion; if(__isset.sessionId) { - tmp43.SessionId = this.SessionId; + tmp61.SessionId = this.SessionId; } - tmp43.__isset.sessionId = this.__isset.sessionId; + tmp61.__isset.sessionId = this.__isset.sessionId; if((Configuration != null) && __isset.configuration) { - tmp43.Configuration = this.Configuration.DeepCopy(); + tmp61.Configuration = this.Configuration.DeepCopy(); } - tmp43.__isset.configuration = this.__isset.configuration; - return tmp43; + tmp61.__isset.configuration = this.__isset.configuration; + return tmp61; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -164,15 +164,15 @@ public TSOpenSessionResp DeepCopy() if (field.Type == TType.Map) { { - TMap _map44 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map44.Count); - for(int _i45 = 0; _i45 < _map44.Count; ++_i45) + TMap _map62 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map62.Count); + for(int _i63 = 0; _i63 < _map62.Count; ++_i63) { - string _key46; - string _val47; - _key46 = await iprot.ReadStringAsync(cancellationToken); - _val47 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key46] = _val47; + string _key64; + string _val65; + _key64 = await iprot.ReadStringAsync(cancellationToken); + _val65 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key64] = _val65; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -246,10 +246,10 @@ public TSOpenSessionResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter48 in Configuration.Keys) + foreach (string _iter66 in Configuration.Keys) { - await oprot.WriteStringAsync(_iter48, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter48], cancellationToken); + await oprot.WriteStringAsync(_iter66, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter66], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs b/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs index c243719..02f3cba 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs new file mode 100644 index 0000000..00123f8 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSPruneSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public string Path { get; set; } + + public TSPruneSchemaTemplateReq() + { + } + + public TSPruneSchemaTemplateReq(long sessionId, string name, string path) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.Path = path; + } + + public TSPruneSchemaTemplateReq DeepCopy() + { + var tmp407 = new TSPruneSchemaTemplateReq(); + tmp407.SessionId = this.SessionId; + if((Name != null)) + { + tmp407.Name = this.Name; + } + if((Path != null)) + { + tmp407.Path = this.Path; + } + return tmp407; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_path = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + Path = await iprot.ReadStringAsync(cancellationToken); + isset_path = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_path) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSPruneSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null)) + { + field.Name = "path"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Path, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSPruneSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(Path, other.Path); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + if((Path != null)) + { + hashcode = (hashcode * 397) + Path.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSPruneSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + if((Path != null)) + { + sb.Append(", Path: "); + Path.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs index e50aac7..a3801cd 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs index 9e1db3c..dd69065 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs new file mode 100644 index 0000000..e3680ff --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs @@ -0,0 +1,276 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryTemplateReq : TBase +{ + private string _measurement; + + public long SessionId { get; set; } + + public string Name { get; set; } + + public int QueryType { get; set; } + + public string Measurement + { + get + { + return _measurement; + } + set + { + __isset.measurement = true; + this._measurement = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool measurement; + } + + public TSQueryTemplateReq() + { + } + + public TSQueryTemplateReq(long sessionId, string name, int queryType) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.QueryType = queryType; + } + + public TSQueryTemplateReq DeepCopy() + { + var tmp409 = new TSQueryTemplateReq(); + tmp409.SessionId = this.SessionId; + if((Name != null)) + { + tmp409.Name = this.Name; + } + tmp409.QueryType = this.QueryType; + if((Measurement != null) && __isset.measurement) + { + tmp409.Measurement = this.Measurement; + } + tmp409.__isset.measurement = this.__isset.measurement; + return tmp409; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_queryType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + QueryType = await iprot.ReadI32Async(cancellationToken); + isset_queryType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Measurement = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "queryType"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(QueryType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Measurement != null) && __isset.measurement) + { + field.Name = "measurement"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Measurement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(QueryType, other.QueryType) + && ((__isset.measurement == other.__isset.measurement) && ((!__isset.measurement) || (System.Object.Equals(Measurement, other.Measurement)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + hashcode = (hashcode * 397) + QueryType.GetHashCode(); + if((Measurement != null) && __isset.measurement) + { + hashcode = (hashcode * 397) + Measurement.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + sb.Append(", QueryType: "); + QueryType.ToString(sb); + if((Measurement != null) && __isset.measurement) + { + sb.Append(", Measurement: "); + Measurement.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs new file mode 100644 index 0000000..3b4bc97 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs @@ -0,0 +1,362 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryTemplateResp : TBase +{ + private bool _result; + private int _count; + private List _measurements; + + public TSStatus Status { get; set; } + + public int QueryType { get; set; } + + public bool Result + { + get + { + return _result; + } + set + { + __isset.result = true; + this._result = value; + } + } + + public int Count + { + get + { + return _count; + } + set + { + __isset.count = true; + this._count = value; + } + } + + public List Measurements + { + get + { + return _measurements; + } + set + { + __isset.measurements = true; + this._measurements = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool result; + public bool count; + public bool measurements; + } + + public TSQueryTemplateResp() + { + } + + public TSQueryTemplateResp(TSStatus status, int queryType) : this() + { + this.Status = status; + this.QueryType = queryType; + } + + public TSQueryTemplateResp DeepCopy() + { + var tmp411 = new TSQueryTemplateResp(); + if((Status != null)) + { + tmp411.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp411.QueryType = this.QueryType; + if(__isset.result) + { + tmp411.Result = this.Result; + } + tmp411.__isset.result = this.__isset.result; + if(__isset.count) + { + tmp411.Count = this.Count; + } + tmp411.__isset.count = this.__isset.count; + if((Measurements != null) && __isset.measurements) + { + tmp411.Measurements = this.Measurements.DeepCopy(); + } + tmp411.__isset.measurements = this.__isset.measurements; + return tmp411; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_queryType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + QueryType = await iprot.ReadI32Async(cancellationToken); + isset_queryType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + Result = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + Count = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list412 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list412.Count); + for(int _i413 = 0; _i413 < _list412.Count; ++_i413) + { + string _elem414; + _elem414 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem414); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryTemplateResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "queryType"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(QueryType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.result) + { + field.Name = "result"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(Result, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.count) + { + field.Name = "count"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Count, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null) && __isset.measurements) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter415 in Measurements) + { + await oprot.WriteStringAsync(_iter415, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryTemplateResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(QueryType, other.QueryType) + && ((__isset.result == other.__isset.result) && ((!__isset.result) || (System.Object.Equals(Result, other.Result)))) + && ((__isset.count == other.__isset.count) && ((!__isset.count) || (System.Object.Equals(Count, other.Count)))) + && ((__isset.measurements == other.__isset.measurements) && ((!__isset.measurements) || (TCollections.Equals(Measurements, other.Measurements)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + QueryType.GetHashCode(); + if(__isset.result) + { + hashcode = (hashcode * 397) + Result.GetHashCode(); + } + if(__isset.count) + { + hashcode = (hashcode * 397) + Count.GetHashCode(); + } + if((Measurements != null) && __isset.measurements) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryTemplateResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", QueryType: "); + QueryType.ToString(sb); + if(__isset.result) + { + sb.Append(", Result: "); + Result.ToString(sb); + } + if(__isset.count) + { + sb.Append(", Count: "); + Count.ToString(sb); + } + if((Measurements != null) && __isset.measurements) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs index 534dba7..91d4e23 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -33,6 +33,7 @@ public partial class TSRawDataQueryReq : TBase { private int _fetchSize; private bool _enableRedirectQuery; + private bool _jdbcQuery; public long SessionId { get; set; } @@ -70,12 +71,26 @@ public bool EnableRedirectQuery } } + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + public Isset __isset; public struct Isset { public bool fetchSize; public bool enableRedirectQuery; + public bool jdbcQuery; } public TSRawDataQueryReq() @@ -93,26 +108,31 @@ public TSRawDataQueryReq(long sessionId, List paths, long startTime, lon public TSRawDataQueryReq DeepCopy() { - var tmp238 = new TSRawDataQueryReq(); - tmp238.SessionId = this.SessionId; + var tmp318 = new TSRawDataQueryReq(); + tmp318.SessionId = this.SessionId; if((Paths != null)) { - tmp238.Paths = this.Paths.DeepCopy(); + tmp318.Paths = this.Paths.DeepCopy(); } if(__isset.fetchSize) { - tmp238.FetchSize = this.FetchSize; + tmp318.FetchSize = this.FetchSize; } - tmp238.__isset.fetchSize = this.__isset.fetchSize; - tmp238.StartTime = this.StartTime; - tmp238.EndTime = this.EndTime; - tmp238.StatementId = this.StatementId; + tmp318.__isset.fetchSize = this.__isset.fetchSize; + tmp318.StartTime = this.StartTime; + tmp318.EndTime = this.EndTime; + tmp318.StatementId = this.StatementId; if(__isset.enableRedirectQuery) { - tmp238.EnableRedirectQuery = this.EnableRedirectQuery; + tmp318.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp318.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp318.JdbcQuery = this.JdbcQuery; } - tmp238.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - return tmp238; + tmp318.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp318; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -152,13 +172,13 @@ public TSRawDataQueryReq DeepCopy() if (field.Type == TType.List) { { - TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list239.Count); - for(int _i240 = 0; _i240 < _list239.Count; ++_i240) + TList _list319 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list319.Count); + for(int _i320 = 0; _i320 < _list319.Count; ++_i320) { - string _elem241; - _elem241 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem241); + string _elem321; + _elem321 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem321); } await iprot.ReadListEndAsync(cancellationToken); } @@ -222,6 +242,16 @@ public TSRawDataQueryReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -280,9 +310,9 @@ public TSRawDataQueryReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter242 in Paths) + foreach (string _iter322 in Paths) { - await oprot.WriteStringAsync(_iter242, cancellationToken); + await oprot.WriteStringAsync(_iter322, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -324,6 +354,15 @@ public TSRawDataQueryReq DeepCopy() await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -343,7 +382,8 @@ public override bool Equals(object that) && System.Object.Equals(StartTime, other.StartTime) && System.Object.Equals(EndTime, other.EndTime) && System.Object.Equals(StatementId, other.StatementId) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))); + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); } public override int GetHashCode() { @@ -365,6 +405,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } } return hashcode; } @@ -395,6 +439,11 @@ public override string ToString() sb.Append(", EnableRedirectQuery: "); EnableRedirectQuery.ToString(sb); } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs new file mode 100644 index 0000000..4078cc6 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSSetSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string TemplateName { get; set; } + + public string PrefixPath { get; set; } + + public TSSetSchemaTemplateReq() + { + } + + public TSSetSchemaTemplateReq(long sessionId, string templateName, string prefixPath) : this() + { + this.SessionId = sessionId; + this.TemplateName = templateName; + this.PrefixPath = prefixPath; + } + + public TSSetSchemaTemplateReq DeepCopy() + { + var tmp385 = new TSSetSchemaTemplateReq(); + tmp385.SessionId = this.SessionId; + if((TemplateName != null)) + { + tmp385.TemplateName = this.TemplateName; + } + if((PrefixPath != null)) + { + tmp385.PrefixPath = this.PrefixPath; + } + return tmp385; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_templateName = false; + bool isset_prefixPath = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSSetSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSSetSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TemplateName, other.TemplateName) + && System.Object.Equals(PrefixPath, other.PrefixPath); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSSetSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs index 0853d11..7d36632 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -48,13 +48,13 @@ public TSSetTimeZoneReq(long sessionId, string timeZone) : this() public TSSetTimeZoneReq DeepCopy() { - var tmp87 = new TSSetTimeZoneReq(); - tmp87.SessionId = this.SessionId; + var tmp105 = new TSSetTimeZoneReq(); + tmp105.SessionId = this.SessionId; if((TimeZone != null)) { - tmp87.TimeZone = this.TimeZone; + tmp105.TimeZone = this.TimeZone; } - return tmp87; + return tmp105; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs b/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs index 80ccfbd..ceed36e 100644 --- a/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs +++ b/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated diff --git a/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs b/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs new file mode 100644 index 0000000..8b09f1f --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs @@ -0,0 +1,684 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSTracingInfo : TBase +{ + private int _seriesPathNum; + private int _seqFileNum; + private int _unSeqFileNum; + private int _sequenceChunkNum; + private long _sequenceChunkPointNum; + private int _unsequenceChunkNum; + private long _unsequenceChunkPointNum; + private int _totalPageNum; + private int _overlappedPageNum; + + public List ActivityList { get; set; } + + public List ElapsedTimeList { get; set; } + + public int SeriesPathNum + { + get + { + return _seriesPathNum; + } + set + { + __isset.seriesPathNum = true; + this._seriesPathNum = value; + } + } + + public int SeqFileNum + { + get + { + return _seqFileNum; + } + set + { + __isset.seqFileNum = true; + this._seqFileNum = value; + } + } + + public int UnSeqFileNum + { + get + { + return _unSeqFileNum; + } + set + { + __isset.unSeqFileNum = true; + this._unSeqFileNum = value; + } + } + + public int SequenceChunkNum + { + get + { + return _sequenceChunkNum; + } + set + { + __isset.sequenceChunkNum = true; + this._sequenceChunkNum = value; + } + } + + public long SequenceChunkPointNum + { + get + { + return _sequenceChunkPointNum; + } + set + { + __isset.sequenceChunkPointNum = true; + this._sequenceChunkPointNum = value; + } + } + + public int UnsequenceChunkNum + { + get + { + return _unsequenceChunkNum; + } + set + { + __isset.unsequenceChunkNum = true; + this._unsequenceChunkNum = value; + } + } + + public long UnsequenceChunkPointNum + { + get + { + return _unsequenceChunkPointNum; + } + set + { + __isset.unsequenceChunkPointNum = true; + this._unsequenceChunkPointNum = value; + } + } + + public int TotalPageNum + { + get + { + return _totalPageNum; + } + set + { + __isset.totalPageNum = true; + this._totalPageNum = value; + } + } + + public int OverlappedPageNum + { + get + { + return _overlappedPageNum; + } + set + { + __isset.overlappedPageNum = true; + this._overlappedPageNum = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool seriesPathNum; + public bool seqFileNum; + public bool unSeqFileNum; + public bool sequenceChunkNum; + public bool sequenceChunkPointNum; + public bool unsequenceChunkNum; + public bool unsequenceChunkPointNum; + public bool totalPageNum; + public bool overlappedPageNum; + } + + public TSTracingInfo() + { + } + + public TSTracingInfo(List activityList, List elapsedTimeList) : this() + { + this.ActivityList = activityList; + this.ElapsedTimeList = elapsedTimeList; + } + + public TSTracingInfo DeepCopy() + { + var tmp28 = new TSTracingInfo(); + if((ActivityList != null)) + { + tmp28.ActivityList = this.ActivityList.DeepCopy(); + } + if((ElapsedTimeList != null)) + { + tmp28.ElapsedTimeList = this.ElapsedTimeList.DeepCopy(); + } + if(__isset.seriesPathNum) + { + tmp28.SeriesPathNum = this.SeriesPathNum; + } + tmp28.__isset.seriesPathNum = this.__isset.seriesPathNum; + if(__isset.seqFileNum) + { + tmp28.SeqFileNum = this.SeqFileNum; + } + tmp28.__isset.seqFileNum = this.__isset.seqFileNum; + if(__isset.unSeqFileNum) + { + tmp28.UnSeqFileNum = this.UnSeqFileNum; + } + tmp28.__isset.unSeqFileNum = this.__isset.unSeqFileNum; + if(__isset.sequenceChunkNum) + { + tmp28.SequenceChunkNum = this.SequenceChunkNum; + } + tmp28.__isset.sequenceChunkNum = this.__isset.sequenceChunkNum; + if(__isset.sequenceChunkPointNum) + { + tmp28.SequenceChunkPointNum = this.SequenceChunkPointNum; + } + tmp28.__isset.sequenceChunkPointNum = this.__isset.sequenceChunkPointNum; + if(__isset.unsequenceChunkNum) + { + tmp28.UnsequenceChunkNum = this.UnsequenceChunkNum; + } + tmp28.__isset.unsequenceChunkNum = this.__isset.unsequenceChunkNum; + if(__isset.unsequenceChunkPointNum) + { + tmp28.UnsequenceChunkPointNum = this.UnsequenceChunkPointNum; + } + tmp28.__isset.unsequenceChunkPointNum = this.__isset.unsequenceChunkPointNum; + if(__isset.totalPageNum) + { + tmp28.TotalPageNum = this.TotalPageNum; + } + tmp28.__isset.totalPageNum = this.__isset.totalPageNum; + if(__isset.overlappedPageNum) + { + tmp28.OverlappedPageNum = this.OverlappedPageNum; + } + tmp28.__isset.overlappedPageNum = this.__isset.overlappedPageNum; + return tmp28; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_activityList = false; + bool isset_elapsedTimeList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.List) + { + { + TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); + ActivityList = new List(_list29.Count); + for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + { + string _elem31; + _elem31 = await iprot.ReadStringAsync(cancellationToken); + ActivityList.Add(_elem31); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_activityList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); + ElapsedTimeList = new List(_list32.Count); + for(int _i33 = 0; _i33 < _list32.Count; ++_i33) + { + long _elem34; + _elem34 = await iprot.ReadI64Async(cancellationToken); + ElapsedTimeList.Add(_elem34); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_elapsedTimeList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + SeriesPathNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + SeqFileNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I32) + { + UnSeqFileNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.I32) + { + SequenceChunkNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I64) + { + SequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.I32) + { + UnsequenceChunkNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.I64) + { + UnsequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.I32) + { + TotalPageNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 11: + if (field.Type == TType.I32) + { + OverlappedPageNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_activityList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_elapsedTimeList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSTracingInfo"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((ActivityList != null)) + { + field.Name = "activityList"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ActivityList.Count), cancellationToken); + foreach (string _iter35 in ActivityList) + { + await oprot.WriteStringAsync(_iter35, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ElapsedTimeList != null)) + { + field.Name = "elapsedTimeList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, ElapsedTimeList.Count), cancellationToken); + foreach (long _iter36 in ElapsedTimeList) + { + await oprot.WriteI64Async(_iter36, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.seriesPathNum) + { + field.Name = "seriesPathNum"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SeriesPathNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.seqFileNum) + { + field.Name = "seqFileNum"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SeqFileNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unSeqFileNum) + { + field.Name = "unSeqFileNum"; + field.Type = TType.I32; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(UnSeqFileNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.sequenceChunkNum) + { + field.Name = "sequenceChunkNum"; + field.Type = TType.I32; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SequenceChunkNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.sequenceChunkPointNum) + { + field.Name = "sequenceChunkPointNum"; + field.Type = TType.I64; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SequenceChunkPointNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unsequenceChunkNum) + { + field.Name = "unsequenceChunkNum"; + field.Type = TType.I32; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(UnsequenceChunkNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unsequenceChunkPointNum) + { + field.Name = "unsequenceChunkPointNum"; + field.Type = TType.I64; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(UnsequenceChunkPointNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.totalPageNum) + { + field.Name = "totalPageNum"; + field.Type = TType.I32; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(TotalPageNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.overlappedPageNum) + { + field.Name = "overlappedPageNum"; + field.Type = TType.I32; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(OverlappedPageNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSTracingInfo other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(ActivityList, other.ActivityList) + && TCollections.Equals(ElapsedTimeList, other.ElapsedTimeList) + && ((__isset.seriesPathNum == other.__isset.seriesPathNum) && ((!__isset.seriesPathNum) || (System.Object.Equals(SeriesPathNum, other.SeriesPathNum)))) + && ((__isset.seqFileNum == other.__isset.seqFileNum) && ((!__isset.seqFileNum) || (System.Object.Equals(SeqFileNum, other.SeqFileNum)))) + && ((__isset.unSeqFileNum == other.__isset.unSeqFileNum) && ((!__isset.unSeqFileNum) || (System.Object.Equals(UnSeqFileNum, other.UnSeqFileNum)))) + && ((__isset.sequenceChunkNum == other.__isset.sequenceChunkNum) && ((!__isset.sequenceChunkNum) || (System.Object.Equals(SequenceChunkNum, other.SequenceChunkNum)))) + && ((__isset.sequenceChunkPointNum == other.__isset.sequenceChunkPointNum) && ((!__isset.sequenceChunkPointNum) || (System.Object.Equals(SequenceChunkPointNum, other.SequenceChunkPointNum)))) + && ((__isset.unsequenceChunkNum == other.__isset.unsequenceChunkNum) && ((!__isset.unsequenceChunkNum) || (System.Object.Equals(UnsequenceChunkNum, other.UnsequenceChunkNum)))) + && ((__isset.unsequenceChunkPointNum == other.__isset.unsequenceChunkPointNum) && ((!__isset.unsequenceChunkPointNum) || (System.Object.Equals(UnsequenceChunkPointNum, other.UnsequenceChunkPointNum)))) + && ((__isset.totalPageNum == other.__isset.totalPageNum) && ((!__isset.totalPageNum) || (System.Object.Equals(TotalPageNum, other.TotalPageNum)))) + && ((__isset.overlappedPageNum == other.__isset.overlappedPageNum) && ((!__isset.overlappedPageNum) || (System.Object.Equals(OverlappedPageNum, other.OverlappedPageNum)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((ActivityList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ActivityList); + } + if((ElapsedTimeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ElapsedTimeList); + } + if(__isset.seriesPathNum) + { + hashcode = (hashcode * 397) + SeriesPathNum.GetHashCode(); + } + if(__isset.seqFileNum) + { + hashcode = (hashcode * 397) + SeqFileNum.GetHashCode(); + } + if(__isset.unSeqFileNum) + { + hashcode = (hashcode * 397) + UnSeqFileNum.GetHashCode(); + } + if(__isset.sequenceChunkNum) + { + hashcode = (hashcode * 397) + SequenceChunkNum.GetHashCode(); + } + if(__isset.sequenceChunkPointNum) + { + hashcode = (hashcode * 397) + SequenceChunkPointNum.GetHashCode(); + } + if(__isset.unsequenceChunkNum) + { + hashcode = (hashcode * 397) + UnsequenceChunkNum.GetHashCode(); + } + if(__isset.unsequenceChunkPointNum) + { + hashcode = (hashcode * 397) + UnsequenceChunkPointNum.GetHashCode(); + } + if(__isset.totalPageNum) + { + hashcode = (hashcode * 397) + TotalPageNum.GetHashCode(); + } + if(__isset.overlappedPageNum) + { + hashcode = (hashcode * 397) + OverlappedPageNum.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSTracingInfo("); + if((ActivityList != null)) + { + sb.Append(", ActivityList: "); + ActivityList.ToString(sb); + } + if((ElapsedTimeList != null)) + { + sb.Append(", ElapsedTimeList: "); + ElapsedTimeList.ToString(sb); + } + if(__isset.seriesPathNum) + { + sb.Append(", SeriesPathNum: "); + SeriesPathNum.ToString(sb); + } + if(__isset.seqFileNum) + { + sb.Append(", SeqFileNum: "); + SeqFileNum.ToString(sb); + } + if(__isset.unSeqFileNum) + { + sb.Append(", UnSeqFileNum: "); + UnSeqFileNum.ToString(sb); + } + if(__isset.sequenceChunkNum) + { + sb.Append(", SequenceChunkNum: "); + SequenceChunkNum.ToString(sb); + } + if(__isset.sequenceChunkPointNum) + { + sb.Append(", SequenceChunkPointNum: "); + SequenceChunkPointNum.ToString(sb); + } + if(__isset.unsequenceChunkNum) + { + sb.Append(", UnsequenceChunkNum: "); + UnsequenceChunkNum.ToString(sb); + } + if(__isset.unsequenceChunkPointNum) + { + sb.Append(", UnsequenceChunkPointNum: "); + UnsequenceChunkPointNum.ToString(sb); + } + if(__isset.totalPageNum) + { + sb.Append(", TotalPageNum: "); + TotalPageNum.ToString(sb); + } + if(__isset.overlappedPageNum) + { + sb.Append(", OverlappedPageNum: "); + OverlappedPageNum.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs new file mode 100644 index 0000000..1d99924 --- /dev/null +++ b/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSUnsetSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public string TemplateName { get; set; } + + public TSUnsetSchemaTemplateReq() + { + } + + public TSUnsetSchemaTemplateReq(long sessionId, string prefixPath, string templateName) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.TemplateName = templateName; + } + + public TSUnsetSchemaTemplateReq DeepCopy() + { + var tmp417 = new TSUnsetSchemaTemplateReq(); + tmp417.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp417.PrefixPath = this.PrefixPath; + } + if((TemplateName != null)) + { + tmp417.TemplateName = this.TemplateName; + } + return tmp417; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_templateName = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSUnsetSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSUnsetSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && System.Object.Equals(TemplateName, other.TemplateName); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSUnsetSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs b/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs index 26beb19..a4f5a93 100644 --- a/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs +++ b/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs @@ -1,5 +1,5 @@ /** - * Autogenerated by Thrift Compiler (0.14.1) + * Autogenerated by Thrift Compiler (0.14.2) * * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING * @generated @@ -42,10 +42,10 @@ public static Dictionary DeepCopy(this Dictionary sour if (source == null) return null; - var tmp447 = new Dictionary(source.Count); + var tmp609 = new Dictionary(source.Count); foreach (var pair in source) - tmp447.Add((pair.Key != null) ? pair.Key : null, pair.Value); - return tmp447; + tmp609.Add((pair.Key != null) ? pair.Key : null, pair.Value); + return tmp609; } @@ -69,10 +69,10 @@ public static Dictionary DeepCopy(this Dictionary(source.Count); + var tmp610 = new Dictionary(source.Count); foreach (var pair in source) - tmp448.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); - return tmp448; + tmp610.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); + return tmp610; } @@ -96,10 +96,10 @@ public static List> DeepCopy(this List>(source.Count); + var tmp611 = new List>(source.Count); foreach (var elem in source) - tmp449.Add((elem != null) ? elem.DeepCopy() : null); - return tmp449; + tmp611.Add((elem != null) ? elem.DeepCopy() : null); + return tmp611; } @@ -123,10 +123,10 @@ public static List> DeepCopy(this List> source) if (source == null) return null; - var tmp450 = new List>(source.Count); + var tmp612 = new List>(source.Count); foreach (var elem in source) - tmp450.Add((elem != null) ? elem.DeepCopy() : null); - return tmp450; + tmp612.Add((elem != null) ? elem.DeepCopy() : null); + return tmp612; } @@ -150,10 +150,10 @@ public static List> DeepCopy(this List> source) if (source == null) return null; - var tmp451 = new List>(source.Count); + var tmp613 = new List>(source.Count); foreach (var elem in source) - tmp451.Add((elem != null) ? elem.DeepCopy() : null); - return tmp451; + tmp613.Add((elem != null) ? elem.DeepCopy() : null); + return tmp613; } @@ -177,10 +177,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp452 = new List(source.Count); + var tmp614 = new List(source.Count); foreach (var elem in source) - tmp452.Add((elem != null) ? elem.DeepCopy() : null); - return tmp452; + tmp614.Add((elem != null) ? elem.DeepCopy() : null); + return tmp614; } @@ -204,10 +204,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp453 = new List(source.Count); + var tmp615 = new List(source.Count); foreach (var elem in source) - tmp453.Add((elem != null) ? elem.ToArray() : null); - return tmp453; + tmp615.Add((elem != null) ? elem.ToArray() : null); + return tmp615; } @@ -231,10 +231,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp454 = new List(source.Count); + var tmp616 = new List(source.Count); foreach (var elem in source) - tmp454.Add(elem); - return tmp454; + tmp616.Add(elem); + return tmp616; } @@ -258,10 +258,37 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp455 = new List(source.Count); + var tmp617 = new List(source.Count); foreach (var elem in source) - tmp455.Add(elem); - return tmp455; + tmp617.Add(elem); + return tmp617; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp618 = new List(source.Count); + foreach (var elem in source) + tmp618.Add(elem); + return tmp618; } @@ -285,10 +312,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp456 = new List(source.Count); + var tmp619 = new List(source.Count); foreach (var elem in source) - tmp456.Add((elem != null) ? elem : null); - return tmp456; + tmp619.Add((elem != null) ? elem : null); + return tmp619; } diff --git a/src/Apache.IoTDB/IoTDBConstants.cs b/src/Apache.IoTDB/IoTDBConstants.cs index a528d7a..c21299b 100644 --- a/src/Apache.IoTDB/IoTDBConstants.cs +++ b/src/Apache.IoTDB/IoTDBConstants.cs @@ -8,7 +8,7 @@ public enum TSDataType FLOAT, DOUBLE, TEXT, - + // default value must be 0 NONE } @@ -24,7 +24,7 @@ public enum TSEncoding GORILLA_V1, REGULAR, GORILLA, - + // default value must be 0 NONE } @@ -40,4 +40,32 @@ public enum Compressor PLA, LZ4 } + public enum TemplateQueryType + { + COUNT_MEASUREMENTS, + IS_MEASUREMENT, + PATH_EXIST, + SHOW_MEASUREMENTS, + SHOW_TEMPLATES, + SHOW_SET_TEMPLATES, + SHOW_USING_TEMPLATES + } + public class TsFileConstant + { + + public static string TSFILE_SUFFIX = ".tsfile"; + public static string TSFILE_HOME = "TSFILE_HOME"; + public static string TSFILE_CONF = "TSFILE_CONF"; + public static string PATH_ROOT = "root"; + public static string TMP_SUFFIX = "tmp"; + public static string PATH_SEPARATOR = "."; + public static char PATH_SEPARATOR_CHAR = '.'; + public static string PATH_SEPARATER_NO_REGEX = "\\."; + public static char DOUBLE_QUOTE = '"'; + + public static byte TIME_COLUMN_MASK = (byte)0x80; + public static byte VALUE_COLUMN_MASK = (byte)0x40; + + private TsFileConstant() { } + } } \ No newline at end of file diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 08fe62b..43b561f 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -19,7 +19,7 @@ public class SessionPool { private static int SuccessCode => 200; private static readonly TSProtocolVersion ProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - + private readonly string _username; private readonly string _password; private string _zoneId; @@ -29,7 +29,7 @@ public class SessionPool private readonly int _poolSize = 4; private readonly Utils _utilFunctions = new Utils(); - + private bool _debugMode; private bool _isClose = true; private ConcurrentClientQueue _clients; @@ -48,10 +48,10 @@ public SessionPool(string host, int port, int poolSize) } public SessionPool( - string host, - int port, - string username, - string password, + string host, + int port, + string username, + string password, int poolSize = 8) { _host = host; @@ -65,11 +65,11 @@ public SessionPool( } public SessionPool( - string host, - int port, - string username, - string password, - int fetchSize, + string host, + int port, + string username, + string password, + int fetchSize, int poolSize = 8) { _host = host; @@ -83,12 +83,12 @@ public SessionPool( } public SessionPool( - string host, - int port, - string username = "root", + string host, + int port, + string username = "root", string password = "root", - int fetchSize = 1000, - string zoneId = "UTC+08:00", + int fetchSize = 1000, + string zoneId = "UTC+08:00", int poolSize = 8) { _host = host; @@ -109,7 +109,7 @@ public void OpenDebugMode(LoggingConfiguration config = null) config = new LoggingConfiguration(); config.AddRule(LogLevel.Debug, LogLevel.Fatal, new ConsoleTarget("logconsole")); } - + LogManager.Configuration = config; _logger = LogManager.GetCurrentClassLogger(); } @@ -122,7 +122,7 @@ public void CloseDebugMode() public async Task Open(bool enableRpcCompression) { _clients = new ConcurrentClientQueue(); - + for (var index = 0; index < _poolSize; index++) { _clients.Add(await CreateAndOpen(enableRpcCompression)); @@ -152,7 +152,7 @@ public async Task Close() finally { _isClose = true; - + client.Transport?.Close(); } } @@ -161,7 +161,7 @@ public async Task Close() public async Task SetTimeZone(string zoneId) { _zoneId = zoneId; - + foreach (var client in _clients.ClientQueue.AsEnumerable()) { var req = new TSSetTimeZoneReq(client.SessionId, zoneId); @@ -188,7 +188,7 @@ public async Task GetTimeZone() } var client = _clients.Take(); - + try { var response = await client.ServiceClient.getTimeZoneAsync(client.SessionId); @@ -201,7 +201,7 @@ public async Task GetTimeZone() } finally { - _clients.Add(client); + _clients.Add(client); } } @@ -210,26 +210,26 @@ private async Task CreateAndOpen(bool enableRpcCompression) var tcpClient = new TcpClient(_host, _port); var transport = new TFramedTransport(new TSocketTransport(tcpClient, null)); - + if (!transport.IsOpen) { await transport.OpenAsync(new CancellationToken()); } - var client = enableRpcCompression ? - new TSIService.Client(new TCompactProtocol(transport)) : + var client = enableRpcCompression ? + new TSIService.Client(new TCompactProtocol(transport)) : new TSIService.Client(new TBinaryProtocol(transport)); var openReq = new TSOpenSessionReq(ProtocolVersion, _zoneId) { - Username = _username, + Username = _username, Password = _password }; - + try { var openResp = await client.openSessionAsync(openReq); - + if (openResp.ServerProtocolVersion != ProtocolVersion) { throw new TException($"Protocol Differ, Client version is {ProtocolVersion} but Server version is {openResp.ServerProtocolVersion}", null); @@ -242,21 +242,21 @@ private async Task CreateAndOpen(bool enableRpcCompression) var sessionId = openResp.SessionId; var statementId = await client.requestStatementIdAsync(sessionId); - + _isClose = false; - + var returnClient = new Client( - client, - sessionId, - statementId, + client, + sessionId, + statementId, transport); - + return returnClient; } catch (Exception) { transport.Close(); - + throw; } } @@ -264,16 +264,16 @@ private async Task CreateAndOpen(bool enableRpcCompression) public async Task SetStorageGroup(string groupName) { var client = _clients.Take(); - + try { var status = await client.ServiceClient.setStorageGroupAsync(client.SessionId, groupName); - + if (_debugMode) { _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -287,22 +287,22 @@ public async Task SetStorageGroup(string groupName) } public async Task CreateTimeSeries( - string tsPath, - TSDataType dataType, + string tsPath, + TSDataType dataType, TSEncoding encoding, Compressor compressor) { var client = _clients.Take(); var req = new TSCreateTimeseriesReq( - client.SessionId, - tsPath, - (int) dataType, - (int) encoding, - (int) compressor); + client.SessionId, + tsPath, + (int)dataType, + (int)encoding, + (int)compressor); try { var status = await client.ServiceClient.createTimeseriesAsync(req); - + if (_debugMode) { _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); @@ -321,6 +321,46 @@ public async Task CreateTimeSeries( } + public async Task CreateAlignedTimeseriesAsync( + string prefixPath, + List measurements, + List dataTypeLst, + List encodingLst, + List compressorLst) + { + var client = _clients.Take(); + var dataTypes = dataTypeLst.ConvertAll(x => (int)x); + var encodings = encodingLst.ConvertAll(x => (int)x); + var compressors = compressorLst.ConvertAll(x => (int)x); + + var req = new TSCreateAlignedTimeseriesReq( + client.SessionId, + prefixPath, + measurements, + dataTypes, + encodings, + compressors); + try + { + var status = await client.ServiceClient.createAlignedTimeseriesAsync(req); + + if (_debugMode) + { + _logger.Info("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException($"create aligned time series {prefixPath} failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task DeleteStorageGroupAsync(string groupName) { var client = _clients.Take(); @@ -328,8 +368,8 @@ public async Task DeleteStorageGroupAsync(string groupName) { var status = await client.ServiceClient.deleteStorageGroupsAsync( client.SessionId, - new List {groupName}); - + new List { groupName }); + if (_debugMode) { _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); @@ -343,7 +383,7 @@ public async Task DeleteStorageGroupAsync(string groupName) } finally { - _clients.Add(client); + _clients.Add(client); } } @@ -354,11 +394,11 @@ public async Task DeleteStorageGroupsAsync(List groupNames) try { var status = await client.ServiceClient.deleteStorageGroupsAsync(client.SessionId, groupNames); - + if (_debugMode) { _logger.Info( - "delete storage group(s) {0} successfully, server message is {1}", + "delete storage group(s) {0} successfully, server message is {1}", groupNames, status.Message); } @@ -376,27 +416,27 @@ public async Task DeleteStorageGroupsAsync(List groupNames) } public async Task CreateMultiTimeSeriesAsync( - List tsPathLst, + List tsPathLst, List dataTypeLst, - List encodingLst, + List encodingLst, List compressorLst) { var client = _clients.Take(); - var dataTypes = dataTypeLst.ConvertAll(x => (int) x); - var encodings = encodingLst.ConvertAll(x => (int) x); - var compressors = compressorLst.ConvertAll(x => (int) x); + var dataTypes = dataTypeLst.ConvertAll(x => (int)x); + var encodings = encodingLst.ConvertAll(x => (int)x); + var compressors = compressorLst.ConvertAll(x => (int)x); var req = new TSCreateMultiTimeseriesReq(client.SessionId, tsPathLst, dataTypes, encodings, compressors); - + try { var status = await client.ServiceClient.createMultiTimeseriesAsync(req); - + if (_debugMode) { _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -412,16 +452,16 @@ public async Task CreateMultiTimeSeriesAsync( public async Task DeleteTimeSeriesAsync(List pathList) { var client = _clients.Take(); - + try { var status = await client.ServiceClient.deleteTimeseriesAsync(client.SessionId, pathList); - + if (_debugMode) { _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -436,7 +476,7 @@ public async Task DeleteTimeSeriesAsync(List pathList) public async Task DeleteTimeSeriesAsync(string tsPath) { - return await DeleteTimeSeriesAsync(new List {tsPath}); + return await DeleteTimeSeriesAsync(new List { tsPath }); } public async Task CheckTimeSeriesExistsAsync(string tsPath) @@ -458,16 +498,16 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l { var client = _clients.Take(); var req = new TSDeleteDataReq(client.SessionId, tsPathLst, startTime, endTime); - + try { var status = await client.ServiceClient.deleteDataAsync(req); - + if (_debugMode) { _logger.Info( "delete data from {0}, server message is {1}", - tsPathLst, + tsPathLst, status.Message); } @@ -509,6 +549,34 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) _clients.Add(client); } } + public async Task InsertAlignedRecordAsync(string deviceId, RowRecord record) + { + var client = _clients.Take(); + var req = new TSInsertRecordReq(client.SessionId, deviceId, record.Measurements, record.ToBytes(), + record.Timestamps); + req.IsAligned = true; + // ASSERT that the insert plan is aligned + System.Diagnostics.Debug.Assert(req.IsAligned == true); + try + { + var status = await client.ServiceClient.insertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Record insertion failed", e); + } + finally + { + _clients.Add(client); + } + } public TSInsertStringRecordReq GenInsertStrRecordReq(string deviceId, List measurements, List values, long timestamp, long sessionId) @@ -535,13 +603,13 @@ public TSInsertRecordsReq GenInsertRecordsReq(List deviceId, List InsertRecordsAsync(List deviceId, List rowRecords) { var client = _clients.Take(); - + var request = GenInsertRecordsReq(deviceId, rowRecords, client.SessionId); try { var status = await client.ServiceClient.insertRecordsAsync(request); - + if (_debugMode) { _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); @@ -558,16 +626,44 @@ public async Task InsertRecordsAsync(List deviceId, List _clients.Add(client); } } + public async Task InsertAlignedRecordsAsync(List deviceId, List rowRecords) + { + var client = _clients.Take(); + + var request = GenInsertRecordsReq(deviceId, rowRecords, client.SessionId); + request.IsAligned = true; + // ASSERT that the insert plan is aligned + System.Diagnostics.Debug.Assert(request.IsAligned == true); + + try + { + var status = await client.ServiceClient.insertRecordsAsync(request); + + if (_debugMode) + { + _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Multiple records insertion failed", e); + } + finally + { + _clients.Add(client); + } + } public TSInsertTabletReq GenInsertTabletReq(Tablet tablet, long sessionId) { return new TSInsertTabletReq( - sessionId, - tablet.DeviceId, + sessionId, + tablet.DeviceId, tablet.Measurements, - tablet.GetBinaryValues(), - tablet.GetBinaryTimestamps(), - tablet.GetDataTypes(), + tablet.GetBinaryValues(), + tablet.GetBinaryTimestamps(), + tablet.GetDataTypes(), tablet.RowNumber); } @@ -575,11 +671,11 @@ public async Task InsertTabletAsync(Tablet tablet) { var client = _clients.Take(); var req = GenInsertTabletReq(tablet, client.SessionId); - + try { var status = await client.ServiceClient.insertTabletAsync(req); - + if (_debugMode) { _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); @@ -596,6 +692,33 @@ public async Task InsertTabletAsync(Tablet tablet) _clients.Add(client); } } + public async Task InsertAlignedTabletAsync(Tablet tablet) + { + var client = _clients.Take(); + var req = GenInsertTabletReq(tablet, client.SessionId); + req.IsAligned = true; + + try + { + var status = await client.ServiceClient.insertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Aligned tablet insertion failed", e); + } + finally + { + _clients.Add(client); + } + } + public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessionId) { @@ -605,7 +728,7 @@ public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessi var timestampsLst = new List(); var typeLst = new List>(); var sizeLst = new List(); - + foreach (var tablet in tabletLst) { var dataTypeValues = tablet.GetDataTypes(); @@ -618,12 +741,12 @@ public TSInsertTabletsReq GenInsertTabletsReq(List tabletLst, long sessi } return new TSInsertTabletsReq( - sessionId, - deviceIdLst, - measurementsLst, - valuesLst, + sessionId, + deviceIdLst, + measurementsLst, + valuesLst, timestampsLst, - typeLst, + typeLst, sizeLst); } @@ -631,16 +754,16 @@ public async Task InsertTabletsAsync(List tabletLst) { var client = _clients.Take(); var req = GenInsertTabletsReq(tabletLst, client.SessionId); - + try { var status = await client.ServiceClient.insertTabletsAsync(req); - + if (_debugMode) { _logger.Info("insert multiple tablets, message: {0}", status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -655,25 +778,59 @@ public async Task InsertTabletsAsync(List tabletLst) } } + public async Task InsertAlignedTabletsAsync(List tabletLst) + { + var client = _clients.Take(); + var req = GenInsertTabletsReq(tabletLst, client.SessionId); + req.IsAligned = true; + + try + { + var status = await client.ServiceClient.insertTabletsAsync(req); + + if (_debugMode) + { + _logger.Info("insert multiple aligned tablets, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + _clients.Add(client); + + throw new TException("Multiple aligned tablets insertion failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task InsertRecordsOfOneDeviceAsync(string deviceId, List rowRecords) { var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); return await InsertRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); } + public async Task InsertAlignedRecordsOfOneDeviceAsync(string deviceId, List rowRecords) + { + var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); + return await InsertAlignedRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); + } private TSInsertRecordsOfOneDeviceReq GenInsertRecordsOfOneDeviceRequest( string deviceId, - List records, + List records, long sessionId) { var values = records.Select(row => row.ToBytes()); var measurementsLst = records.Select(x => x.Measurements).ToList(); var timestampLst = records.Select(x => x.Timestamps).ToList(); - + return new TSInsertRecordsOfOneDeviceReq( - sessionId, - deviceId, - measurementsLst, + sessionId, + deviceId, + measurementsLst, values.ToList(), timestampLst); } @@ -681,16 +838,16 @@ private TSInsertRecordsOfOneDeviceReq GenInsertRecordsOfOneDeviceRequest( public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List rowRecords) { var client = _clients.Take(); - + var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); - + if (!_utilFunctions.IsSorted(timestampLst)) { throw new TException("insert records of one device error: timestamp not sorted", null); } var req = GenInsertRecordsOfOneDeviceRequest(deviceId, rowRecords, client.SessionId); - + try { var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); @@ -699,7 +856,7 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List { _logger.Info("insert records of one device, message: {0}", status.Message); } - + return _utilFunctions.VerifySuccess(status, SuccessCode); } catch (TException e) @@ -711,22 +868,56 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List _clients.Add(client); } } + public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceId, List rowRecords) + { + var client = _clients.Take(); + + var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); + + if (!_utilFunctions.IsSorted(timestampLst)) + { + throw new TException("insert records of one device error: timestamp not sorted", null); + } + + var req = GenInsertRecordsOfOneDeviceRequest(deviceId, rowRecords, client.SessionId); + req.IsAligned = true; + + try + { + var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.Info("insert aligned records of one device, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("Sorted aligned records of one device insertion failed", e); + } + finally + { + _clients.Add(client); + } + } public async Task TestInsertRecordAsync(string deviceId, RowRecord record) { var client = _clients.Take(); - + var req = new TSInsertRecordReq( - client.SessionId, - deviceId, - record.Measurements, + client.SessionId, + deviceId, + record.Measurements, record.ToBytes(), record.Timestamps); try { var status = await client.ServiceClient.testInsertRecordAsync(req); - + if (_debugMode) { _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); @@ -752,7 +943,7 @@ public async Task TestInsertRecordsAsync(List deviceId, List TestInsertRecordsAsync(List deviceId, List TestInsertTabletAsync(Tablet tablet) { var client = _clients.Take(); - + var req = GenInsertTabletReq(tablet, client.SessionId); try @@ -801,9 +992,9 @@ public async Task TestInsertTabletAsync(Tablet tablet) public async Task TestInsertTabletsAsync(List tabletLst) { var client = _clients.Take(); - + var req = GenInsertTabletsReq(tabletLst, client.SessionId); - + try { var status = await client.ServiceClient.testInsertTabletsAsync(req); @@ -842,14 +1033,14 @@ public async Task ExecuteQueryStatementAsync(string sql) catch (TException e) { _clients.Add(client); - + throw new TException("could not execute query statement", e); } if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) { _clients.Add(client); - + throw new TException("execute query failed", null); } @@ -859,7 +1050,7 @@ public async Task ExecuteQueryStatementAsync(string sql) { FetchSize = _fetchSize }; - + return sessionDataset; } @@ -867,7 +1058,7 @@ public async Task ExecuteNonQueryStatementAsync(string sql) { var client = _clients.Take(); var req = new TSExecuteStatementReq(client.SessionId, sql, client.StatementId); - + try { var resp = await client.ServiceClient.executeUpdateStatementAsync(req); @@ -889,5 +1080,376 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _clients.Add(client); } } + + public async Task CreateSchemaTemplateAsync(Template template) + { + var client = _clients.Take(); + var req = new TSCreateSchemaTemplateReq(client.SessionId, template.Name, template.ToBytes()); + try + { + var status = await client.ServiceClient.createSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("create schema template {0} message: {1}", template.Name, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template creation failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task DropSchemaTemplateAsync(string templateName) + { + var client = _clients.Take(); + var req = new TSDropSchemaTemplateReq(client.SessionId, templateName); + try + { + var status = await client.ServiceClient.dropSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("drop schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template drop failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task SetSchemaTemplateAsync(string templateName, string prefixPath) + { + var client = _clients.Take(); + var req = new TSSetSchemaTemplateReq(client.SessionId, templateName, prefixPath); + try + { + var status = await client.ServiceClient.setSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("set schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template setting failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task UnsetSchemaTemplateAsync(string prefixPath, string templateName) + { + var client = _clients.Take(); + var req = new TSUnsetSchemaTemplateReq(client.SessionId, prefixPath, templateName); + try + { + var status = await client.ServiceClient.unsetSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("unset schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("schema template unsetting failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task AddAlignedMeasurementsInTemplateAsync(string templateName, List measurementNodes) + { + var client = _clients.Take(); + var measurements = measurementNodes.ConvertAll(m => m.Name); + var dataTypes = measurementNodes.ConvertAll(m => (int)m.DataType); + var encodings = measurementNodes.ConvertAll(m => (int)m.Encoding); + var compressors = measurementNodes.ConvertAll(m => (int)m.Compressor); + var req = new TSAppendSchemaTemplateReq(client.SessionId, templateName, true, measurements, dataTypes, encodings, compressors); + try + { + var status = await client.ServiceClient.appendSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("add aligned measurements in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("add aligned measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task AddUnalignedMeasurementsInTemplateAsync(string templateName, List measurementNodes) + { + var client = _clients.Take(); + var measurements = measurementNodes.ConvertAll(m => m.Name); + var dataTypes = measurementNodes.ConvertAll(m => (int)m.DataType); + var encodings = measurementNodes.ConvertAll(m => (int)m.Encoding); + var compressors = measurementNodes.ConvertAll(m => (int)m.Compressor); + var req = new TSAppendSchemaTemplateReq(client.SessionId, templateName, false, measurements, dataTypes, encodings, compressors); + try + { + var status = await client.ServiceClient.appendSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("add unaligned measurements in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("add unaligned measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task DeleteNodeInTemplateAsync(string templateName, string path) + { + var client = _clients.Take(); + var req = new TSPruneSchemaTemplateReq(client.SessionId, templateName, path); + try + { + var status = await client.ServiceClient.pruneSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("delete node in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + throw new TException("delete node in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task CountMeasurementsInTemplateAsync(string name) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, name, (int)TemplateQueryType.COUNT_MEASUREMENTS); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("count measurements in template {0} message: {1}", name, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Count; + } + catch (TException e) + { + throw new TException("count measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task IsMeasurementInTemplateAsync(string templateName, string path) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.IS_MEASUREMENT); + req.Measurement = path; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("is measurement in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Result; + } + catch (TException e) + { + throw new TException("is measurement in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task IsPathExistInTemplate(string templateName, string path) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.PATH_EXIST); + req.Measurement = path; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("is path exist in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Result; + } + catch (TException e) + { + throw new TException("is path exist in template failed", e); + } + finally + { + _clients.Add(client); + } + } + + public async Task> ShowMeasurementsInTemplateAsync(string templateName, string pattern = "") + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.SHOW_MEASUREMENTS); + req.Measurement = pattern; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get measurements in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get measurements in template failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task> ShowAllTemplatesAsync() + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, "", (int)TemplateQueryType.SHOW_TEMPLATES); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get all templates message: {0}", status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get all templates failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task> ShowPathsTemplateSetOnAsync(string templateName) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.SHOW_SET_TEMPLATES); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get paths template set on {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get paths template set on failed", e); + } + finally + { + _clients.Add(client); + } + } + public async Task> ShowPathsTemplateUsingOnAsync(string templateName) + { + var client = _clients.Take(); + var req = new TSQueryTemplateReq(client.SessionId, templateName, (int)TemplateQueryType.SHOW_USING_TEMPLATES); + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get paths template using on {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException e) + { + throw new TException("get paths template using on failed", e); + } + finally + { + _clients.Add(client); + } + } + + + + + + + + + } } \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/InternalNode.cs b/src/Apache.IoTDB/Template/InternalNode.cs new file mode 100644 index 0000000..b90ffb1 --- /dev/null +++ b/src/Apache.IoTDB/Template/InternalNode.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using Thrift; + +namespace Apache.IoTDB +{ + public class InternalNode : TemplateNode + { + private Dictionary children; + private bool shareTime; + public InternalNode(string name, bool shareTime) : base(name) + { + this.children = new Dictionary(); + this.shareTime = shareTime; + } + public override void addChild(TemplateNode node) + { + if (this.children.ContainsKey(node.Name)) + { + throw new Exception("Duplicated child of node in template."); + } + this.children.Add(node.Name, node); + } + + public override void deleteChild(TemplateNode node) + { + if (this.children.ContainsKey(node.Name)) + { + this.children.Remove(node.Name); + } + } + + public override Dictionary getChildren() + { + return this.children; + } + public override bool isShareTime() + { + return this.shareTime; + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/MeasurementNode.cs b/src/Apache.IoTDB/Template/MeasurementNode.cs new file mode 100644 index 0000000..ceb4a5b --- /dev/null +++ b/src/Apache.IoTDB/Template/MeasurementNode.cs @@ -0,0 +1,57 @@ +using System.IO; +using Apache.IoTDB; +using Apache.IoTDB.DataStructure; + +namespace Apache.IoTDB +{ + public class MeasurementNode : TemplateNode + { + private TSDataType dataType; + private TSEncoding encoding; + private Compressor compressor; + public MeasurementNode(string name, TSDataType dataType, TSEncoding encoding, Compressor compressor) : base(name) + { + this.dataType = dataType; + this.encoding = encoding; + this.compressor = compressor; + } + public override bool isMeasurement() + { + return true; + } + public TSDataType DataType + { + get + { + return dataType; + } + } + public TSEncoding Encoding + { + get + { + return encoding; + } + } + public Compressor Compressor + { + get + { + return compressor; + } + } + + public override byte[] ToBytes() + { + var buffer = new ByteBuffer(); + buffer.AddStr(this.Name); + buffer.AddByte((byte)this.DataType); + buffer.AddByte((byte)this.Encoding); + buffer.AddByte((byte)this.Compressor); + return buffer.GetBuffer(); + } + + + + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/Template.cs b/src/Apache.IoTDB/Template/Template.cs new file mode 100644 index 0000000..fc37278 --- /dev/null +++ b/src/Apache.IoTDB/Template/Template.cs @@ -0,0 +1,125 @@ +using System; +using System.Collections.Generic; +using Apache.IoTDB.DataStructure; +using Thrift; +namespace Apache.IoTDB +{ + public class Template + { + private string name; + private Dictionary children; + private bool shareTime; + public Template(string name, bool shareTime) + { + this.name = name; + this.children = new Dictionary(); + this.shareTime = shareTime; + } + public Template(string name) + { + this.name = name; + this.children = new Dictionary(); + this.shareTime = false; + } + public string Name + { + get + { + return name; + } + } + public bool ShareTime + { + get + { + return shareTime; + } + set + { + shareTime = value; + } + } + public void addToTemplate(TemplateNode child) + { + if (this.children.ContainsKey(child.Name)) + { + throw new Exception("Duplicated child of node in template."); + } + this.children.Add(child.Name, child); + } + + public void deleteFromTemplate(string name) + { + if (this.children.ContainsKey(name)) + { + this.children.Remove(name); + } + else + { + throw new Exception("It is not a direct child of the template: " + name); + } + } + + public byte[] ToBytes() + { + var buffer = new ByteBuffer(); + var stack = new Stack>(); + var alignedPrefix = new HashSet(); + buffer.AddStr(this.name); + buffer.AddBool(this.shareTime); + if (this.shareTime) + { + alignedPrefix.Add(""); + } + + foreach (var child in this.children.Values) + { + stack.Push(new KeyValuePair("", child)); + } + + while (stack.Count != 0) + { + var pair = stack.Pop(); + var prefix = pair.Key; + var curNode = pair.Value; + var fullPath = prefix; + + if (!curNode.isMeasurement()) + { + if (!"".Equals(prefix)) + { + fullPath += TsFileConstant.PATH_SEPARATOR; + } + fullPath += curNode.Name; + if (curNode.isShareTime()) + { + alignedPrefix.Add(fullPath); + } + + foreach (var child in curNode.getChildren().Values) + { + stack.Push(new KeyValuePair(fullPath, child)); + } + } + else + { + buffer.AddStr(prefix); + if (alignedPrefix.Contains(prefix)) + { + buffer.AddBool(true); + } + else + { + buffer.AddBool(false); + } + foreach (var singleByte in curNode.ToBytes()) + { + buffer.AddByte(singleByte); + } + } + } + return buffer.GetBuffer(); + + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/Template/TemplateNode.cs b/src/Apache.IoTDB/Template/TemplateNode.cs new file mode 100644 index 0000000..cfe6b00 --- /dev/null +++ b/src/Apache.IoTDB/Template/TemplateNode.cs @@ -0,0 +1,41 @@ +using System.Collections.Generic; +using System.IO; +using Apache.IoTDB.DataStructure; +namespace Apache.IoTDB +{ + public abstract class TemplateNode + { + private string name; + public TemplateNode(string name) + { + this.name = name; + } + public string Name + { + get + { + return name; + } + } + + public virtual Dictionary getChildren() + { + return null; + } + + public virtual void addChild(TemplateNode node) { } + public virtual void deleteChild(TemplateNode node) { } + public virtual bool isMeasurement() + { + return false; + } + public virtual bool isShareTime() + { + return false; + } + public virtual byte[] ToBytes() + { + return null; + } + } +} \ No newline at end of file From 307c8245838dfcbe5022ff882a531ca464925ab3 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Fri, 15 Apr 2022 07:55:40 +0800 Subject: [PATCH 146/214] Dev/0.13 (#68) * add thrift generated files * add insert aligned record and create aligned timeseries interfaces and tests * fix type * add insert aligned records interface and test * add aligned interfaces and template class * add template interfaces * add some schema test * change file name * add tests for all interfaces * add CI for dev branches * add reconnect operation in each interface * remove useless debug info --- src/Apache.IoTDB/SessionPool.cs | 727 ++++++++++++++++++++++++++++++-- 1 file changed, 687 insertions(+), 40 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 43b561f..211ad82 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -22,6 +22,7 @@ public class SessionPool private readonly string _username; private readonly string _password; + private bool _enableRpcCompression; private string _zoneId; private readonly string _host; private readonly int _port; @@ -122,6 +123,7 @@ public void CloseDebugMode() public async Task Open(bool enableRpcCompression) { _clients = new ConcurrentClientQueue(); + _enableRpcCompression = enableRpcCompression; for (var index = 0; index < _poolSize; index++) { @@ -278,7 +280,22 @@ public async Task SetStorageGroup(string groupName) } catch (TException e) { - throw new TException($"set storage group {groupName} failed", e); + // try to reconnect + await Open(_enableRpcCompression); + client = _clients.Take(); + try + { + var status = await client.ServiceClient.setStorageGroupAsync(client.SessionId, groupName); + if (_debugMode) + { + _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when setting storage group", ex); + } } finally { @@ -312,7 +329,22 @@ public async Task CreateTimeSeries( } catch (TException e) { - throw new TException($"create time series {tsPath} failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.createTimeseriesAsync(req); + if (_debugMode) + { + _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when creating time series", ex); + } } finally { @@ -353,7 +385,22 @@ public async Task CreateAlignedTimeseriesAsync( } catch (TException e) { - throw new TException($"create aligned time series {prefixPath} failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.createAlignedTimeseriesAsync(req); + if (_debugMode) + { + _logger.Info("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when creating aligned time series", ex); + } } finally { @@ -379,7 +426,25 @@ public async Task DeleteStorageGroupAsync(string groupName) } catch (TException e) { - throw new TException($"delete storage group {groupName} failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + try + { + var status = await client.ServiceClient.deleteStorageGroupsAsync( + client.SessionId, + new List { groupName }); + + if (_debugMode) + { + _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when deleting storage group", ex); + } } finally { @@ -407,7 +472,26 @@ public async Task DeleteStorageGroupsAsync(List groupNames) } catch (TException e) { - throw new TException($"delete storage group(s) {groupNames} failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + try + { + var status = await client.ServiceClient.deleteStorageGroupsAsync(client.SessionId, groupNames); + + if (_debugMode) + { + _logger.Info( + "delete storage group(s) {0} successfully, server message is {1}", + groupNames, + status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when deleting storage group(s)", ex); + } } finally { @@ -441,7 +525,22 @@ public async Task CreateMultiTimeSeriesAsync( } catch (TException e) { - throw new TException($"create multiple time series {tsPathLst} failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.createMultiTimeseriesAsync(req); + if (_debugMode) + { + _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when creating multiple time series", ex); + } } finally { @@ -466,7 +565,23 @@ public async Task DeleteTimeSeriesAsync(List pathList) } catch (TException e) { - throw new TException($"delete time series {pathList} failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + try + { + var status = await client.ServiceClient.deleteTimeseriesAsync(client.SessionId, pathList); + + if (_debugMode) + { + _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when deleting multiple time series", ex); + } } finally { @@ -515,7 +630,27 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l } catch (TException e) { - throw new TException("data deletion fails because", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.deleteDataAsync(req); + + if (_debugMode) + { + _logger.Info( + "delete data from {0}, server message is {1}", + tsPathLst, + status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when deleting data", ex); + } } finally { @@ -542,7 +677,24 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) } catch (TException e) { - throw new TException("Record insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting record", ex); + } } finally { @@ -570,7 +722,24 @@ public async Task InsertAlignedRecordAsync(string deviceId, RowRecord recor } catch (TException e) { - throw new TException("Record insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting record", ex); + } } finally { @@ -619,7 +788,24 @@ public async Task InsertRecordsAsync(List deviceId, List } catch (TException e) { - throw new TException("Multiple records insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + request.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertRecordsAsync(request); + + if (_debugMode) + { + _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting records", ex); + } } finally { @@ -648,7 +834,24 @@ public async Task InsertAlignedRecordsAsync(List deviceId, List InsertTabletAsync(Tablet tablet) } catch (TException e) { - throw new TException("Tablet insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting tablet", ex); + } } finally { @@ -711,7 +931,24 @@ public async Task InsertAlignedTabletAsync(Tablet tablet) } catch (TException e) { - throw new TException("Aligned tablet insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting tablet", ex); + } } finally { @@ -768,9 +1005,24 @@ public async Task InsertTabletsAsync(List tabletLst) } catch (TException e) { - _clients.Add(client); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertTabletsAsync(req); - throw new TException("Multiple tablets insertion failed", e); + if (_debugMode) + { + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting tablets", ex); + } } finally { @@ -797,9 +1049,24 @@ public async Task InsertAlignedTabletsAsync(List tabletLst) } catch (TException e) { - _clients.Add(client); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertTabletsAsync(req); - throw new TException("Multiple aligned tablets insertion failed", e); + if (_debugMode) + { + _logger.Info("insert multiple aligned tablets, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting tablets", ex); + } } finally { @@ -861,7 +1128,24 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List } catch (TException e) { - throw new TException("Sorted records of one device insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.Info("insert records of one device, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting records of one device", ex); + } } finally { @@ -895,7 +1179,24 @@ public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceI } catch (TException e) { - throw new TException("Sorted aligned records of one device insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.Info("insert aligned records of one device, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting aligned records of one device", ex); + } } finally { @@ -927,7 +1228,24 @@ public async Task TestInsertRecordAsync(string deviceId, RowRecord record) } catch (TException e) { - throw new TException("Record insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.testInsertRecordAsync(req); + + if (_debugMode) + { + _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when test inserting one record", ex); + } } finally { @@ -953,7 +1271,24 @@ public async Task TestInsertRecordsAsync(List deviceId, List TestInsertTabletAsync(Tablet tablet) } catch (TException e) { - throw new TException("Tablet insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.testInsertTabletAsync(req); + + if (_debugMode) + { + _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, + status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when test inserting one tablet", ex); + } } finally { @@ -1008,7 +1361,24 @@ public async Task TestInsertTabletsAsync(List tabletLst) } catch (TException e) { - throw new TException("Multiple tablets insertion failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.testInsertTabletsAsync(req); + + if (_debugMode) + { + _logger.Info("insert multiple tablets, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when test inserting multiple tablets", ex); + } } finally { @@ -1034,7 +1404,20 @@ public async Task ExecuteQueryStatementAsync(string sql) { _clients.Add(client); - throw new TException("could not execute query statement", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + req.StatementId = client.StatementId; + try + { + resp = await client.ServiceClient.executeQueryStatementAsync(req); + status = resp.Status; + } + catch (TException ex) + { + _clients.Add(client); + throw new TException("Error occurs when executing query statement", ex); + } } if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) @@ -1073,7 +1456,26 @@ public async Task ExecuteNonQueryStatementAsync(string sql) } catch (TException e) { - throw new TException("execution of non-query statement failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + req.StatementId = client.StatementId; + try + { + var resp = await client.ServiceClient.executeUpdateStatementAsync(req); + var status = resp.Status; + + if (_debugMode) + { + _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when executing non-query statement", ex); + } } finally { @@ -1098,7 +1500,24 @@ public async Task CreateSchemaTemplateAsync(Template template) } catch (TException e) { - throw new TException("schema template creation failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.createSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("create schema template {0} message: {1}", template.Name, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when creating schema template", ex); + } } finally { @@ -1123,7 +1542,24 @@ public async Task DropSchemaTemplateAsync(string templateName) } catch (TException e) { - throw new TException("schema template drop failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.dropSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("drop schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when dropping schema template", ex); + } } finally { @@ -1148,7 +1584,24 @@ public async Task SetSchemaTemplateAsync(string templateName, string prefix } catch (TException e) { - throw new TException("schema template setting failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.setSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("set schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when setting schema template", ex); + } } finally { @@ -1173,7 +1626,24 @@ public async Task UnsetSchemaTemplateAsync(string prefixPath, string templa } catch (TException e) { - throw new TException("schema template unsetting failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.unsetSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("unset schema template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when unsetting schema template", ex); + } } finally { @@ -1201,7 +1671,24 @@ public async Task AddAlignedMeasurementsInTemplateAsync(string templateName } catch (TException e) { - throw new TException("add aligned measurements in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.appendSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("add aligned measurements in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when adding aligned measurements in template", ex); + } } finally { @@ -1230,7 +1717,24 @@ public async Task AddUnalignedMeasurementsInTemplateAsync(string templateNa } catch (TException e) { - throw new TException("add unaligned measurements in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.appendSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("add unaligned measurements in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when adding unaligned measurements in template", ex); + } } finally { @@ -1254,7 +1758,24 @@ public async Task DeleteNodeInTemplateAsync(string templateName, string pat } catch (TException e) { - throw new TException("delete node in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.pruneSchemaTemplateAsync(req); + + if (_debugMode) + { + _logger.Info("delete node in template {0} message: {1}", templateName, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when deleting node in template", ex); + } } finally { @@ -1280,7 +1801,25 @@ public async Task CountMeasurementsInTemplateAsync(string name) } catch (TException e) { - throw new TException("count measurements in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("count measurements in template {0} message: {1}", name, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Count; + } + catch (TException ex) + { + throw new TException("Error occurs when counting measurements in template", ex); + } } finally { @@ -1306,7 +1845,25 @@ public async Task IsMeasurementInTemplateAsync(string templateName, string } catch (TException e) { - throw new TException("is measurement in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("is measurement in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Result; + } + catch (TException ex) + { + throw new TException("Error occurs when checking measurement in template", ex); + } } finally { @@ -1333,7 +1890,25 @@ public async Task IsPathExistInTemplate(string templateName, string path) } catch (TException e) { - throw new TException("is path exist in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("is path exist in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Result; + } + catch (TException ex) + { + throw new TException("Error occurs when checking path exist in template", ex); + } } finally { @@ -1360,7 +1935,25 @@ public async Task> ShowMeasurementsInTemplateAsync(string templateN } catch (TException e) { - throw new TException("get measurements in template failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get measurements in template {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException ex) + { + throw new TException("Error occurs when getting measurements in template", ex); + } } finally { @@ -1385,7 +1978,25 @@ public async Task> ShowAllTemplatesAsync() } catch (TException e) { - throw new TException("get all templates failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get all templates message: {0}", status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException ex) + { + throw new TException("Error occurs when getting all templates", ex); + } } finally { @@ -1410,7 +2021,25 @@ public async Task> ShowPathsTemplateSetOnAsync(string templateName) } catch (TException e) { - throw new TException("get paths template set on failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get paths template set on {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException ex) + { + throw new TException("Error occurs when getting paths template set on", ex); + } } finally { @@ -1435,7 +2064,25 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam } catch (TException e) { - throw new TException("get paths template using on failed", e); + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var resp = await client.ServiceClient.querySchemaTemplateAsync(req); + var status = resp.Status; + if (_debugMode) + { + _logger.Info("get paths template using on {0} message: {1}", templateName, status.Message); + } + + _utilFunctions.VerifySuccess(status, SuccessCode); + return resp.Measurements; + } + catch (TException ex) + { + throw new TException("Error occurs when getting paths template using on", ex); + } } finally { From 2ee3a04cd64fb1588e2dc6bb866ea3fcfddd4413 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E5=B1=95?= Date: Mon, 25 Apr 2022 21:19:23 +0800 Subject: [PATCH 147/214] add introduction doc --- ...37\347\224\237\346\216\245\345\217\243.md" | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 "docs/C#\345\216\237\347\224\237\346\216\245\345\217\243.md" diff --git "a/docs/C#\345\216\237\347\224\237\346\216\245\345\217\243.md" "b/docs/C#\345\216\237\347\224\237\346\216\245\345\217\243.md" new file mode 100644 index 0000000..2588631 --- /dev/null +++ "b/docs/C#\345\216\237\347\224\237\346\216\245\345\217\243.md" @@ -0,0 +1,103 @@ +# C# 原生接口 + +## 依赖 + +- .NET SDK >= 5.0 或 .NET Framework 4.x +- ApacheThrift >= 0.14.1 +- NLog >= 4.7.9 + +## 安装 + +您可以使用 NuGet Package Manager, .NET CLI等工具来安装,以 .NET CLI为例 + +如果您使用的是.NET 5.0 或者更高版本的SDK,输入如下命令即可安装最新的NuGet包 + +``` +dotnet add package Apache.IoTDB +``` + +为了适配 .NET Framework 4.x,我们单独构建了一个NuGet包,如果您使用的是.NET Framework 4.x,输入如下命令即可安装最新的包 + +```bash +dotnet add package Apache.IoTDB.framework +``` + +如果您想安装更早版本的客户端,只需要指定版本即可 + +```bash +# 安装0.12.1.2版本的客户端 +dotnet add package Apache.IoTDB --version 0.12.1.2 +``` + +## 基本接口说明 + +Session接口在语义上和其他语言客户端相同 + +```c# +// 参数定义 +string host = "localhost"; +int port = 6667; +int pool_size = 2; + +// 初始化session +var session_pool = new SessionPool(host, port, pool_size); + +// 开启session +await session_pool.Open(false); + +// 创建时间序列 +await session_pool.CreateTimeSeries("root.test_group.test_device.ts1", TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); +await session_pool.CreateTimeSeries("root.test_group.test_device.ts2", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); +await session_pool.CreateTimeSeries("root.test_group.test_device.ts3", TSDataType.INT32, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + +// 插入record +var measures = new List{"ts1", "ts2", "ts3"}; +var values = new List { "test_text", true, (int)123 }; +var timestamp = 1; +var rowRecord = new RowRecord(timestamp, values, measures); +await session_pool.InsertRecordAsync("root.test_group.test_device", rowRecord); + +// 插入Tablet +var timestamp_lst = new List{ timestamp + 1 }; +var value_lst = new List {new() {"iotdb", true, (int) 12}}; +var tablet = new Tablet("root.test_group.test_device", measures, value_lst, timestamp_ls); +await session_pool.InsertTabletAsync(tablet); + +// 关闭Session +await session_pool.Close(); +``` + +详细接口信息可以参考[接口文档](https://github.com/eedalong/Apache-IoTDB-Client-CSharp/blob/main/docs/API.md) + +用法可以参考[用户示例](https://github.com/eedalong/Apache-IoTDB-Client-CSharp/tree/main/samples/Apache.IoTDB.Samples) + +## 连接池 + +为了实现并发客户端请求,我们提供了针对原生接口的连接池(`SessionPool`),由于`SessionPool`本身为`Session`的超集,当`SessionPool`的`pool_size`参数设置为1时,退化为原来的`Session` + +我们使用`ConcurrentQueue`数据结构封装了一个客户端队列,以维护与服务端的多个连接,当调用`Open()`接口时,会在该队列中创建指定个数的客户端,同时通过`System.Threading.Monitor`类实现对队列的同步访问。 + +当请求发生时,会尝试从连接池中寻找一个空闲的客户端连接,如果没有空闲连接,那么程序将需要等待直到有空闲连接 + +当一个连接被用完后,他会自动返回池中等待下次被使用 + +在使用连接池后,客户端的并发性能提升明显,[这篇文档](https://github.com/eedalong/Apache-IoTDB-Client-CSharp/blob/main/docs/session_pool_zh.md#%E5%BB%BA%E7%AB%8Bclient%E8%BF%9E%E6%8E%A5)展示了使用线程池比起单线程所带来的性能提升 + +## ByteBuffer + +在传入RPC接口参数时,需要对Record和Tablet两种数据结构进行序列化,我们主要通过封装的ByteBuffer类实现 + +在封装字节序列的基础上,我们进行了内存预申请与内存倍增的优化,减少了序列化过程中内存的申请和释放,在一个拥有20000行的Tablet上进行序列化测试时,速度比起原生的数组动态增长具有**35倍的性能加速** + +详见以下两篇文档 + +[ByteBuffer详细介绍](https://github.com/eedalong/Apache-IoTDB-Client-CSharp/blob/main/docs/bytebuffer_zh.md) + +[ByteBuffer性能测试文档](https://bnw3yl170k.feishu.cn/docs/doccnxiHV7avYiFBkuEljCLIYO4#mMS5HE) + +## 异常重连 + +当服务端发生异常或者宕机重启时,客户端中原来通过`Open()`产生的的session会失效,抛出`TException`异常 + +为了避免这一情况的发生,我们对大部分的接口进行了增强,一旦出现连接问题,就会尝试重新调用`Open()`接口并创建新的Session,并尝试重新发送对应的请求 + From 4d1cca73a086930c52c8cdad697b6c1ca8a9c94c Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Tue, 26 Apr 2022 20:05:49 +0800 Subject: [PATCH 148/214] Add bitmap to tablet (#70) * add bitmap data structure * add data type parameter for tablet * change switch case from value to datatype * add default value for each case * change some for loop format * add bitmap serialize to byte buffer * revert for loop because of the index * fix bitmap serialize bug * add tablets with null value test * remove init function for bitmap * change the explanation for tablet --- .../SessionPoolTest.AlignedTablet.cs | 15 +- .../SessionPoolTest.Tablet.cs | 52 ++++- .../SessionPoolTest.TestNetwork.cs | 15 +- .../Apache.IoTDB.Samples/SessionPoolTest.cs | 2 + src/Apache.IoTDB/DataStructure/BitMap.cs | 115 ++++++++++ src/Apache.IoTDB/DataStructure/Tablet.cs | 200 +++++++++++------- 6 files changed, 310 insertions(+), 89 deletions(-) create mode 100644 src/Apache.IoTDB/DataStructure/BitMap.cs diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs index a648b72..51718b1 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedTablet.cs @@ -29,7 +29,8 @@ public async Task TestInsertAlignedTablet() new() {"client", true, (int) 14} }; var timestamp_lst = new List { 1, 2, 3 }; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + var datatype_lst = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); status = await session_pool.InsertAlignedTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( @@ -49,7 +50,7 @@ public async Task TestInsertAlignedTablet() value_lst.Add(new List() { "iotdb", true, (int)timestamp }); if (timestamp % fetch_size == 0) { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); tasks.Add(session_pool.InsertAlignedTabletAsync(tablet)); value_lst = new List>() { }; timestamp_lst = new List() { }; @@ -111,12 +112,17 @@ public async Task TestInsertAlignedTablets() new List() {"client_2", true, (int) 3} } }; + var datatype_lst = new List>() + { + new() {TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}, + new() {TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32} + }; var timestamp_lst = new List>() {new() {2, 1, 3}, new() {3, 1, 2}}; var tablets = new List() { }; for (var i = 0; i < device_id.Count; i++) { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + var tablet = new Tablet(device_id[i], measurements_lst[i], datatype_lst[i], values_lst[i], timestamp_lst[i]); tablets.Add(tablet); } @@ -136,8 +142,9 @@ public async Task TestInsertAlignedTablets() var local_measurements = new List() {test_measurements[1], test_measurements[2], test_measurements[3]}; var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; + var local_data_type = new List() { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; var local_timestamp = new List { timestamp }; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + var tablet = new Tablet(local_device_id, local_measurements, local_data_type, local_value, local_timestamp); tablets.Add(tablet); if (timestamp % fetch_size == 0) { diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs index f6c16f0..62351fd 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Tablet.cs @@ -30,7 +30,8 @@ public async Task TestInsertTablet() new() {"client", true, (int) 14} }; var timestamp_lst = new List { 1, 2, 3 }; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + var datatype_lst = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); status = await session_pool.InsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( @@ -50,7 +51,7 @@ public async Task TestInsertTablet() value_lst.Add(new List() { "iotdb", true, (int)timestamp }); if (timestamp % fetch_size == 0) { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); tasks.Add(session_pool.InsertTabletAsync(tablet)); value_lst = new List>() { }; timestamp_lst = new List() { }; @@ -111,12 +112,17 @@ public async Task TestInsertTablets() new List() {"client_2", true, (int) 3} } }; + var datatype_lst = new List>() + { + new() {TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}, + new() {TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32} + }; var timestamp_lst = new List>() {new() {2, 1, 3}, new() {3, 1, 2}}; var tablets = new List() { }; for (var i = 0; i < device_id.Count; i++) { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + var tablet = new Tablet(device_id[i], measurements_lst[i], datatype_lst[i], values_lst[i], timestamp_lst[i]); tablets.Add(tablet); } @@ -138,7 +144,8 @@ public async Task TestInsertTablets() {test_measurements[1], test_measurements[2], test_measurements[3]}; var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; var local_timestamp = new List { timestamp }; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + var local_data_type = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var tablet = new Tablet(local_device_id, local_measurements, local_data_type, local_value, local_timestamp); tablets.Add(tablet); if (timestamp % fetch_size == 0) { @@ -166,5 +173,42 @@ public async Task TestInsertTablets() await session_pool.Close(); Console.WriteLine("TestInsertTablets Passed!"); } + public async Task TestInsertTabletWithNullValue() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List() { test_measurements[1], test_measurements[2], test_measurements[3] }; + var values = new List>() + { + new List() {null, true, (int) 12}, new List() {"c#", null, (int) 13}, + new List() {"client", true, null} + }; + var datatype = new List() { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var timestamp = new List() { 2, 1, 3 }; + var tablet = new Tablet(device_id, measurements, datatype, values, timestamp); + status = await session_pool.InsertTabletAsync(tablet); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + Console.WriteLine(res.Next()); + res_count += 1; + } + + await res.Close(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertTabletsWithNullValue Passed!"); + } } } diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs index be18392..a4f3ffc 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.TestNetwork.cs @@ -189,7 +189,8 @@ public async Task TestTestInsertTablet() new() {"client", true, (int) 14} }; var timestamp_lst = new List { 2, 1, 3 }; - var tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + var datatype_lst = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); status = await session_pool.TestInsertTabletAsync(tablet); System.Diagnostics.Debug.Assert(status == 0); var res = await session_pool.ExecuteQueryStatementAsync( @@ -209,7 +210,7 @@ public async Task TestTestInsertTablet() value_lst.Add(new List() { "iotdb", true, (int)timestamp }); if (timestamp % (fetch_size / 32) == 0) { - tablet = new Tablet(device_id, measurement_lst, value_lst, timestamp_lst); + tablet = new Tablet(device_id, measurement_lst, datatype_lst, value_lst, timestamp_lst); tasks.Add(session_pool.TestInsertTabletAsync(tablet)); value_lst = new List>() { }; timestamp_lst = new List() { }; @@ -269,12 +270,17 @@ public async Task TestTestInsertTablets() new List() {"client_2", true, (int) 3} } }; + var datatype_lst = new List>() + { + new() {TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32}, + new() {TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32} + }; var timestamp_lst = new List>() {new() {2, 1, 3}, new() {3, 1, 2}}; var tablets = new List() { }; for (var i = 0; i < device_id.Count; i++) { - var tablet = new Tablet(device_id[i], measurements_lst[i], values_lst[i], timestamp_lst[i]); + var tablet = new Tablet(device_id[i], measurements_lst[i], datatype_lst[i], values_lst[i], timestamp_lst[i]); tablets.Add(tablet); } @@ -296,7 +302,8 @@ public async Task TestTestInsertTablets() {test_measurements[1], test_measurements[2], test_measurements[3]}; var local_value = new List>() { new() { "iotdb", true, (int)timestamp } }; var local_timestamp = new List { timestamp }; - var tablet = new Tablet(local_device_id, local_measurements, local_value, local_timestamp); + var local_data_type = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; + var tablet = new Tablet(local_device_id, local_measurements, local_data_type, local_value, local_timestamp); tablets.Add(tablet); if (timestamp % fetch_size == 0) { diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index 5a24a22..67b0092 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -61,6 +61,8 @@ public void Test() task.Wait(); task = TestInsertTablet(); task.Wait(); + task = TestInsertTabletWithNullValue(); + task.Wait(); task = TestInsertTablets(); task.Wait(); task = TestAddAlignedMeasurements(); diff --git a/src/Apache.IoTDB/DataStructure/BitMap.cs b/src/Apache.IoTDB/DataStructure/BitMap.cs new file mode 100644 index 0000000..7c943fb --- /dev/null +++ b/src/Apache.IoTDB/DataStructure/BitMap.cs @@ -0,0 +1,115 @@ +using System; + +public class BitMap +{ + private static byte[] BIT_UTIL = new byte[] { 1, 2, 4, 8, 16, 32, 64, 255 }; + private static byte[] UNMARK_BIT_UTIL = + new byte[] { + (byte) 0XFE, // 11111110 + (byte) 0XFD, // 11111101 + (byte) 0XFB, // 11111011 + (byte) 0XF7, // 11110111 + (byte) 0XEF, // 11101111 + (byte) 0XDF, // 11011111 + (byte) 0XBF, // 10111111 + (byte) 0X7F // 01111111 + }; + private byte[] bits; + private int size; + + /** Initialize a BitMap with given size. */ + public BitMap(int size) + { + this.size = size; + bits = new byte[size / 8 + 1]; + Array.Fill(bits, (byte)0); + } + + /** Initialize a BitMap with given size and bytes. */ + public BitMap(int size, byte[] bits) + { + this.size = size; + this.bits = bits; + } + + public byte[] getByteArray() + { + return this.bits; + } + + public int getSize() + { + return this.size; + } + + /** returns the value of the bit with the specified index. */ + public bool isMarked(int position) + { + return (bits[position / 8] & BIT_UTIL[position % 8]) != 0; + } + + /** mark as 1 at all positions. */ + public void markAll() + { + Array.Fill(bits, (byte)0xFF); + } + + /** mark as 1 at the given bit position. */ + public void mark(int position) + { + bits[position / 8] |= BIT_UTIL[position % 8]; + } + + /** mark as 0 at all positions. */ + public void reset() + { + Array.Fill(bits, (byte)0); + } + + public void unmark(int position) + { + bits[position / 8] &= UNMARK_BIT_UTIL[position % 8]; + } + + /** whether all bits are zero, i.e., no Null value */ + public bool isAllUnmarked() + { + int j; + for (j = 0; j < size / 8; j++) + { + if (bits[j] != (byte)0) + { + return false; + } + } + for (j = 0; j < size % 8; j++) + { + if ((bits[size / 8] & BIT_UTIL[j]) != 0) + { + return false; + } + } + return true; + } + + /** whether all bits are one, i.e., all are Null */ + public bool isAllMarked() + { + int j; + for (j = 0; j < size / 8; j++) + { + if (bits[j] != (byte)0XFF) + { + return false; + } + } + for (j = 0; j < size % 8; j++) + { + if ((bits[size / 8] & BIT_UTIL[j]) == 0) + { + return false; + } + } + return true; + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/Tablet.cs b/src/Apache.IoTDB/DataStructure/Tablet.cs index 950de3c..85697c2 100644 --- a/src/Apache.IoTDB/DataStructure/Tablet.cs +++ b/src/Apache.IoTDB/DataStructure/Tablet.cs @@ -1,3 +1,4 @@ +using System; using System.Collections.Generic; using System.Linq; using Thrift; @@ -15,40 +16,53 @@ namespace Apache.IoTDB.DataStructure * 2, 1, 2, 3 * 3, 1, 2, 3 * + * @deprecated * Notice: The tablet should not have empty cell + * + * From 0.13 IoTDB Server, tablet could have empty cell * */ public class Tablet { private readonly List _timestamps; private readonly List> _values; - + public string DeviceId { get; } public List Measurements { get; } + public List DataTypes { get; } + public BitMap[] BitMaps; public int RowNumber { get; } public int ColNumber { get; } private readonly Utils _utilFunctions = new Utils(); public Tablet( - string deviceId, - List measurements, + string deviceId, + List measurements, + List dataTypes, List> values, List timestamps) { if (timestamps.Count != values.Count) { throw new TException( - $"Input error. TimeStamp. Timestamps.Count({timestamps.Count}) does not equal to Values.Count({values.Count}).", + $"Input error. Timestamps.Count({timestamps.Count}) does not equal to Values.Count({values.Count}).", + null); + } + + if (measurements.Count != dataTypes.Count) + { + throw new TException( + $"Input error. Measurements.Count({measurements.Count}) does not equal to DataTypes.Count({dataTypes.Count}).", null); } - + if (!_utilFunctions.IsSorted(timestamps)) { var sorted = timestamps .Select((x, index) => (timestamp: x, values: values[index])) .OrderBy(x => x.timestamp).ToList(); - + _timestamps = sorted.Select(x => x.timestamp).ToList(); _values = sorted.Select(x => x.values).ToList(); } @@ -60,14 +74,27 @@ public Tablet( DeviceId = deviceId; Measurements = measurements; + DataTypes = dataTypes; RowNumber = timestamps.Count; ColNumber = measurements.Count; + + // reset bitmap + if (BitMaps != null) + { + foreach (var bitmap in BitMaps) + { + if (bitmap != null) + { + bitmap.reset(); + } + } + } } public byte[] GetBinaryTimestamps() { var buffer = new ByteBuffer(new byte[] { }); - + foreach (var timestamp in _timestamps) { buffer.AddLong(timestamp); @@ -78,32 +105,7 @@ public byte[] GetBinaryTimestamps() public List GetDataTypes() { - var dataTypeValues = new List(); - - foreach (var valueType in _values[0].Select(value => value)) - { - switch (valueType) - { - case bool _: - dataTypeValues.Add((int) TSDataType.BOOLEAN); - break; - case int _: - dataTypeValues.Add((int) TSDataType.INT32); - break; - case long _: - dataTypeValues.Add((int) TSDataType.INT64); - break; - case float _: - dataTypeValues.Add((int) TSDataType.FLOAT); - break; - case double _: - dataTypeValues.Add((int) TSDataType.DOUBLE); - break; - case string _: - dataTypeValues.Add((int) TSDataType.TEXT); - break; - } - } + var dataTypeValues = DataTypes.ConvertAll(x => (int)x); return dataTypeValues; } @@ -111,7 +113,7 @@ public List GetDataTypes() private int EstimateBufferSize() { var estimateSize = 0; - + // estimate one row size foreach (var value in _values[0]) { @@ -135,6 +137,9 @@ private int EstimateBufferSize() case string s: estimateSize += s.Length; break; + default: + estimateSize += 4; + break; } } @@ -145,75 +150,116 @@ private int EstimateBufferSize() public byte[] GetBinaryValues() { var estimateSize = EstimateBufferSize(); + // Console.WriteLine("Estimate size : {0}", estimateSize); var buffer = new ByteBuffer(estimateSize); - + for (var i = 0; i < ColNumber; i++) { - var value = _values[0][i]; - - switch (value) + var dataType = DataTypes[i]; + + // set bitmap + for (var j = 0; j < RowNumber; j++) { - case bool _: + var value = _values[j][i]; + if (value == null) { - for (var j = 0; j < RowNumber; j++) + if (BitMaps == null) { - buffer.AddBool((bool) _values[j][i]); + BitMaps = new BitMap[ColNumber]; } - - break; - } - case int _: - { - for (var j = 0; j < RowNumber; j++) + if (BitMaps[i] == null) { - buffer.AddInt((int) _values[j][i]); + BitMaps[i] = new BitMap(RowNumber); } - - break; + BitMaps[i].mark(j); } - case long _: - { - for (var j = 0; j < RowNumber; j++) + } + + switch (dataType) + { + case TSDataType.BOOLEAN: { - buffer.AddLong((long) _values[j][i]); + for (int j = 0; j < RowNumber; j++) + { + var value = _values[j][i]; + buffer.AddBool(value != null ? (bool)value : false); + } + + break; } + case TSDataType.INT32: + { + for (int j = 0; j < RowNumber; j++) + { + var value = _values[j][i]; + buffer.AddInt(value != null ? (int)value : int.MinValue); + } - break; - } - case float _: - { - for (int j = 0; j < RowNumber; j++) + break; + } + case TSDataType.INT64: + { + for (int j = 0; j < RowNumber; j++) + { + var value = _values[j][i]; + buffer.AddLong(value != null ? (long)value : long.MinValue); + } + + break; + } + case TSDataType.FLOAT: { - buffer.AddFloat((float) _values[j][i]); + for (int j = 0; j < RowNumber; j++) + { + var value = _values[j][i]; + buffer.AddFloat(value != null ? (float)value : float.MinValue); + } + + break; } + case TSDataType.DOUBLE: + { + for (int j = 0; j < RowNumber; j++) + { + var value = _values[j][i]; + buffer.AddDouble(value != null ? (double)value : double.MinValue); + } - break; - } - case double _: - { - for (var j = 0; j < RowNumber; j++) + break; + } + case TSDataType.TEXT: { - buffer.AddDouble((double) _values[j][i]); + for (int j = 0; j < RowNumber; j++) + { + var value = _values[j][i]; + buffer.AddStr(value != null ? (string)value : string.Empty); + } + + break; } + default: + throw new TException($"Unsupported data type {dataType}", null); - break; - } - case string _: + } + } + if (BitMaps != null) + { + foreach (var bitmap in BitMaps) + { + bool columnHasNull = bitmap != null && !bitmap.isAllUnmarked(); + buffer.AddBool((bool)columnHasNull); + if (columnHasNull) { - for (var j = 0; j < RowNumber; j++) + var bytes = bitmap.getByteArray(); + for (int i = 0; i < RowNumber / 8 + 1; i++) { - buffer.AddStr((string) _values[j][i]); + buffer.AddByte(bytes[i]); } - - break; } - default: - throw new TException($"Unsupported data type {value}", null); - } } - return buffer.GetBuffer(); + return buffer.GetBuffer(); } } } \ No newline at end of file From 5af5bd5f69ef3b2e6713c5c4f2837b8b55ff05de Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Thu, 28 Apr 2022 10:21:52 +0800 Subject: [PATCH 149/214] Add another constructor for Tablet (#71) * add bitmap data structure * add data type parameter for tablet * change switch case from value to datatype * add default value for each case * change some for loop format * add bitmap serialize to byte buffer * revert for loop because of the index * fix bitmap serialize bug * add tablets with null value test * remove init function for bitmap * change the explanation for tablet * add another constructor for tablet * fix typo --- src/Apache.IoTDB/DataStructure/Tablet.cs | 94 +++++++++++++++++++++++- 1 file changed, 90 insertions(+), 4 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/Tablet.cs b/src/Apache.IoTDB/DataStructure/Tablet.cs index 85697c2..42e99b7 100644 --- a/src/Apache.IoTDB/DataStructure/Tablet.cs +++ b/src/Apache.IoTDB/DataStructure/Tablet.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; using System.Linq; using Thrift; @@ -45,14 +46,14 @@ public Tablet( { if (timestamps.Count != values.Count) { - throw new TException( + throw new Exception( $"Input error. Timestamps.Count({timestamps.Count}) does not equal to Values.Count({values.Count}).", null); } if (measurements.Count != dataTypes.Count) { - throw new TException( + throw new Exception( $"Input error. Measurements.Count({measurements.Count}) does not equal to DataTypes.Count({dataTypes.Count}).", null); } @@ -90,6 +91,92 @@ public Tablet( } } } + public Tablet( + string deviceId, + List measurements, + List> values, + List timestamps) + { + if (timestamps.Count != values.Count) + { + throw new Exception( + $"Input error. Timestamps.Count({timestamps.Count}) does not equal to Values.Count({values.Count}).", + null); + } + if (!_utilFunctions.IsSorted(timestamps)) + { + var sorted = timestamps + .Select((x, index) => (timestamp: x, values: values[index])) + .OrderBy(x => x.timestamp).ToList(); + + _timestamps = sorted.Select(x => x.timestamp).ToList(); + _values = sorted.Select(x => x.values).ToList(); + } + else + { + _values = values; + _timestamps = timestamps; + } + + DeviceId = deviceId; + Measurements = measurements; + RowNumber = timestamps.Count; + ColNumber = measurements.Count; + DataTypes = new List(); + for (int i = 0; i < ColNumber; i++) + { + bool columnAllNull = true; + for (int j = 0; j < RowNumber; j++) + { + if (_values[j][i] != null) + { + switch (_values[j][i]) + { + case bool _: + DataTypes.Add(TSDataType.BOOLEAN); + break; + case int _: + DataTypes.Add(TSDataType.INT32); + break; + case long _: + DataTypes.Add(TSDataType.INT64); + break; + case float _: + DataTypes.Add(TSDataType.FLOAT); + break; + case double _: + DataTypes.Add(TSDataType.DOUBLE); + break; + case string _: + DataTypes.Add(TSDataType.TEXT); + break; + default: + throw new Exception( + $"Input error. Data type {_values[j][i].GetType().Name} is not supported.", + null); + } + columnAllNull = false; + break; + } + } + if (columnAllNull) + { + throw new Exception($"Input error. Column {measurements[i]} of device {deviceId} is empty.", null); + } + } + + // reset bitmap + if (BitMaps != null) + { + foreach (var bitmap in BitMaps) + { + if (bitmap != null) + { + bitmap.reset(); + } + } + } + } public byte[] GetBinaryTimestamps() { @@ -238,8 +325,7 @@ public byte[] GetBinaryValues() break; } default: - throw new TException($"Unsupported data type {dataType}", null); - + throw new Exception($"Unsupported data type {dataType}", null); } } if (BitMaps != null) From 17a81e9e41e5498c9e050b3cfd94dc223c421263 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E5=B1=95?= <513964121@qq.com> Date: Thu, 28 Apr 2022 15:41:36 +0800 Subject: [PATCH 150/214] fix estimate size --- src/Apache.IoTDB/DataStructure/Tablet.cs | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/Tablet.cs b/src/Apache.IoTDB/DataStructure/Tablet.cs index 42e99b7..9d67b5d 100644 --- a/src/Apache.IoTDB/DataStructure/Tablet.cs +++ b/src/Apache.IoTDB/DataStructure/Tablet.cs @@ -202,31 +202,32 @@ private int EstimateBufferSize() var estimateSize = 0; // estimate one row size - foreach (var value in _values[0]) + foreach (var dataType in DataTypes) { - switch (value) + switch (dataType) { - case bool _: + case TSDataType.BOOLEAN: estimateSize += 1; break; - case int _: + case TSDataType.INT32: estimateSize += 4; break; - case long _: + case TSDataType.INT64: estimateSize += 8; break; - case float _: + case TSDataType.FLOAT: estimateSize += 4; break; - case double _: + case TSDataType.DOUBLE: estimateSize += 8; break; - case string s: - estimateSize += s.Length; + case TSDataType.TEXT: + estimateSize += 8; break; default: - estimateSize += 4; - break; + throw new Exception( + $"Input error. Data type {dataType} is not supported.", + null); } } From 7dabce8f4b13eb6f13d9fcda35ac5e3dcead88fe Mon Sep 17 00:00:00 2001 From: Dalong <39682259+eedalong@users.noreply.github.com> Date: Thu, 12 May 2022 09:31:03 +0800 Subject: [PATCH 151/214] Add files via upload --- ...47\253\257\344\273\213\347\273\215 (6).pdf" | Bin 0 -> 207330 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "docs/Apache IoTDB C#\345\256\242\346\210\267\347\253\257\344\273\213\347\273\215 (6).pdf" diff --git "a/docs/Apache IoTDB C#\345\256\242\346\210\267\347\253\257\344\273\213\347\273\215 (6).pdf" "b/docs/Apache IoTDB C#\345\256\242\346\210\267\347\253\257\344\273\213\347\273\215 (6).pdf" new file mode 100644 index 0000000000000000000000000000000000000000..ccf2b93dd9f4780e9924ba8915d22954cd33df00 GIT binary patch literal 207330 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 Date: Wed, 29 Jun 2022 22:44:57 +0800 Subject: [PATCH 152/214] =?UTF-8?q?=E5=90=88=E5=B9=B6=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E9=9B=86=EF=BC=8C=20=E5=8E=BB=E6=8E=89NLlog?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +- Apache.IoTDB.sln | 120 +- .../Dockerfile.iotdb-client-csharp | 26 - .../Dockerfile.iotdb-server | 27 - .../Apache.IoTDB.Samples/docker-compose.yml | 42 - src/Apache.IoTDB/Apache.IoTDB.csproj | 8 +- src/Apache.IoTDB/Rpc/Generated/EndPoint.cs | 191 + .../Rpc/Generated/ServerProperties.cs | 611 + .../Generated/TSAppendSchemaTemplateReq.cs | 457 + .../Rpc/Generated/TSCancelOperationReq.cs | 179 + .../Rpc/Generated/TSCloseOperationReq.cs | 253 + .../Rpc/Generated/TSCloseSessionReq.cs | 149 + .../Generated/TSCreateAlignedTimeseriesReq.cs | 671 + .../Generated/TSCreateMultiTimeseriesReq.cs | 715 + .../Generated/TSCreateSchemaTemplateReq.cs | 233 + .../Rpc/Generated/TSCreateTimeseriesReq.cs | 543 + .../Rpc/Generated/TSDeleteDataReq.cs | 268 + .../Rpc/Generated/TSDropSchemaTemplateReq.cs | 191 + .../Generated/TSExecuteBatchStatementReq.cs | 208 + .../Rpc/Generated/TSExecuteStatementReq.cs | 423 + .../Rpc/Generated/TSExecuteStatementResp.cs | 798 + .../Rpc/Generated/TSFetchMetadataReq.cs | 246 + .../Rpc/Generated/TSFetchMetadataResp.cs | 332 + .../Rpc/Generated/TSFetchResultsReq.cs | 336 + .../Rpc/Generated/TSFetchResultsResp.cs | 328 + .../Rpc/Generated/TSGetOperationStatusReq.cs | 179 + .../Rpc/Generated/TSGetTimeZoneResp.cs | 204 + src/Apache.IoTDB/Rpc/Generated/TSIService.cs | 16153 ++++++++++++++++ .../Rpc/Generated/TSInsertRecordReq.cs | 377 + .../TSInsertRecordsOfOneDeviceReq.cs | 440 + .../Rpc/Generated/TSInsertRecordsReq.cs | 457 + .../Rpc/Generated/TSInsertStringRecordReq.cs | 394 + .../TSInsertStringRecordsOfOneDeviceReq.cs | 457 + .../Rpc/Generated/TSInsertStringRecordsReq.cs | 474 + .../Rpc/Generated/TSInsertTabletReq.cs | 478 + .../Rpc/Generated/TSInsertTabletsReq.cs | 592 + .../Rpc/Generated/TSLastDataQueryReq.cs | 421 + .../Rpc/Generated/TSOpenSessionReq.cs | 369 + .../Rpc/Generated/TSOpenSessionResp.cs | 321 + .../Rpc/Generated/TSProtocolVersion.cs | 16 + .../Rpc/Generated/TSPruneSchemaTemplateReq.cs | 233 + .../Rpc/Generated/TSQueryDataSet.cs | 279 + .../Rpc/Generated/TSQueryNonAlignDataSet.cs | 237 + .../Rpc/Generated/TSQueryTemplateReq.cs | 276 + .../Rpc/Generated/TSQueryTemplateResp.cs | 362 + .../Rpc/Generated/TSRawDataQueryReq.cs | 451 + .../Rpc/Generated/TSSetSchemaTemplateReq.cs | 233 + .../Rpc/Generated/TSSetTimeZoneReq.cs | 191 + src/Apache.IoTDB/Rpc/Generated/TSStatus.cs | 321 + .../Rpc/Generated/TSTracingInfo.cs | 684 + .../Rpc/Generated/TSUnsetSchemaTemplateReq.cs | 233 + .../Rpc/Generated/rpc.Extensions.cs | 322 + src/Apache.IoTDB/SessionPool.cs | 173 +- 53 files changed, 32434 insertions(+), 251 deletions(-) delete mode 100644 samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp delete mode 100644 samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server delete mode 100644 samples/Apache.IoTDB.Samples/docker-compose.yml create mode 100644 src/Apache.IoTDB/Rpc/Generated/EndPoint.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSAppendSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCreateAlignedTimeseriesReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCreateMultiTimeseriesReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCreateSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSCreateTimeseriesReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSDeleteDataReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSDropSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSGetTimeZoneResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSIService.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertRecordReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsOfOneDeviceReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsOfOneDeviceReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertTabletReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSInsertTabletsReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSProtocolVersion.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSPruneSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSSetSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSSetTimeZoneReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSStatus.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSUnsetSchemaTemplateReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs diff --git a/.gitignore b/.gitignore index d3978e2..725ebff 100644 --- a/.gitignore +++ b/.gitignore @@ -65,4 +65,5 @@ publish/ ### Rider ### -.idea \ No newline at end of file +.idea +/.vs/Apache.IoTDB/FileContentIndex diff --git a/Apache.IoTDB.sln b/Apache.IoTDB.sln index e08531b..f153697 100644 --- a/Apache.IoTDB.sln +++ b/Apache.IoTDB.sln @@ -1,59 +1,61 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{AE9EFF1C-CB25-4089-B764-D834AC132501}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{11051AD6-88B3-44B4-A066-C59ED2E35AFD}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{AF185F16-80A9-49A8-98B4-B761FD197FF7}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB", "src\Apache.IoTDB\Apache.IoTDB.csproj", "{60FE924D-19EC-41A9-A114-70DD21A30545}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Samples", "samples\Apache.IoTDB.Samples\Apache.IoTDB.Samples.csproj", "{5B88D865-EFFD-4A13-8489-2172777859F5}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Tests", "tests\Apache.IoTDB.Tests\Apache.IoTDB.Tests.csproj", "{414B31CD-57EB-478B-B734-542644CE48B0}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Integration.Tests", "tests\Apache.IoTDB.Integration.Tests\Apache.IoTDB.Integration.Tests.csproj", "{133ECF70-6B6B-492B-A2A4-AA759CEE54BB}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apache.IoTDB.Rpc.Generated", "src\Apache.IoTDB.Rpc.Generated\Apache.IoTDB.Rpc.Generated.csproj", "{1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{DEAC57D3-4B3A-4650-85E3-5A179CD1DBAD}" -ProjectSection(SolutionItems) = preProject - docs\bytebuffer_zh.md = docs\bytebuffer_zh.md - docs\time_profile_zh.pdf = docs\time_profile_zh.pdf -EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {60FE924D-19EC-41A9-A114-70DD21A30545} = {AE9EFF1C-CB25-4089-B764-D834AC132501} - {5B88D865-EFFD-4A13-8489-2172777859F5} = {AF185F16-80A9-49A8-98B4-B761FD197FF7} - {414B31CD-57EB-478B-B734-542644CE48B0} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} - {133ECF70-6B6B-492B-A2A4-AA759CEE54BB} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} - {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7} = {AE9EFF1C-CB25-4089-B764-D834AC132501} - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.Build.0 = Debug|Any CPU - {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.ActiveCfg = Release|Any CPU - {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.Build.0 = Release|Any CPU - {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.Build.0 = Release|Any CPU - {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.Build.0 = Release|Any CPU - {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.Build.0 = Release|Any CPU - {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1B5DB3F2-3004-460C-A2DA-E54A656F8AA7}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.2.32616.157 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{AE9EFF1C-CB25-4089-B764-D834AC132501}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{11051AD6-88B3-44B4-A066-C59ED2E35AFD}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{AF185F16-80A9-49A8-98B4-B761FD197FF7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Apache.IoTDB", "src\Apache.IoTDB\Apache.IoTDB.csproj", "{60FE924D-19EC-41A9-A114-70DD21A30545}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Apache.IoTDB.Samples", "samples\Apache.IoTDB.Samples\Apache.IoTDB.Samples.csproj", "{5B88D865-EFFD-4A13-8489-2172777859F5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Apache.IoTDB.Tests", "tests\Apache.IoTDB.Tests\Apache.IoTDB.Tests.csproj", "{414B31CD-57EB-478B-B734-542644CE48B0}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Apache.IoTDB.Integration.Tests", "tests\Apache.IoTDB.Integration.Tests\Apache.IoTDB.Integration.Tests.csproj", "{133ECF70-6B6B-492B-A2A4-AA759CEE54BB}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{DEAC57D3-4B3A-4650-85E3-5A179CD1DBAD}" + ProjectSection(SolutionItems) = preProject + docs\bytebuffer_zh.md = docs\bytebuffer_zh.md + docs\time_profile_zh.pdf = docs\time_profile_zh.pdf + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.Build.0 = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.ActiveCfg = Release|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.Build.0 = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.Build.0 = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.Build.0 = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {60FE924D-19EC-41A9-A114-70DD21A30545} = {AE9EFF1C-CB25-4089-B764-D834AC132501} + {5B88D865-EFFD-4A13-8489-2172777859F5} = {AF185F16-80A9-49A8-98B4-B761FD197FF7} + {414B31CD-57EB-478B-B734-542644CE48B0} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {F1C2DE69-7374-4521-9D86-500AA2517D4E} + EndGlobalSection +EndGlobal diff --git a/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp b/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp deleted file mode 100644 index 4032e6c..0000000 --- a/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp +++ /dev/null @@ -1,26 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -FROM mcr.microsoft.com/dotnet/sdk:5.0 -WORKDIR /app - -COPY . . -CMD ["dotnet", "restore"] -CMD ["dotnet", "run", "--project", "samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj"] - diff --git a/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server b/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server deleted file mode 100644 index 4d6a8ab..0000000 --- a/samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server +++ /dev/null @@ -1,27 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -FROM openjdk:11-jre-slim - -RUN apt update \ - && apt install -y procps && apt clean -ADD target /usr/local -WORKDIR /usr/local/iotdb -EXPOSE 6667 -CMD [ "/usr/local/iotdb/sbin/start-server.sh" ] diff --git a/samples/Apache.IoTDB.Samples/docker-compose.yml b/samples/Apache.IoTDB.Samples/docker-compose.yml deleted file mode 100644 index 090688e..0000000 --- a/samples/Apache.IoTDB.Samples/docker-compose.yml +++ /dev/null @@ -1,42 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -version: "3.1" - -services: - iotdb: - build: - context: ../.. - dockerfile: samples/Apache.IoTDB.Samples/Dockerfile.iotdb-server - ports: - - 6667:6667 - healthcheck: - test: ["CMD", "ls", "/usr/local/iotdb/data"] - interval: 3s - timeout: 5s - retries: 30 - start_period: 30s - - iotdb_client_csharp: - build: - context: ../.. - dockerfile: samples/Apache.IoTDB.Samples/Dockerfile.iotdb-client-csharp - depends_on: - iotdb: - condition: service_healthy \ No newline at end of file diff --git a/src/Apache.IoTDB/Apache.IoTDB.csproj b/src/Apache.IoTDB/Apache.IoTDB.csproj index 86a0799..11a29f6 100644 --- a/src/Apache.IoTDB/Apache.IoTDB.csproj +++ b/src/Apache.IoTDB/Apache.IoTDB.csproj @@ -1,15 +1,11 @@ - + netstandard2.1 - - - - - + diff --git a/src/Apache.IoTDB/Rpc/Generated/EndPoint.cs b/src/Apache.IoTDB/Rpc/Generated/EndPoint.cs new file mode 100644 index 0000000..4f701b2 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/EndPoint.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class EndPoint : TBase +{ + + public string Ip { get; set; } + + public int Port { get; set; } + + public EndPoint() + { + } + + public EndPoint(string ip, int port) : this() + { + this.Ip = ip; + this.Port = port; + } + + public EndPoint DeepCopy() + { + var tmp0 = new EndPoint(); + if((Ip != null)) + { + tmp0.Ip = this.Ip; + } + tmp0.Port = this.Port; + return tmp0; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_ip = false; + bool isset_port = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + Ip = await iprot.ReadStringAsync(cancellationToken); + isset_ip = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + Port = await iprot.ReadI32Async(cancellationToken); + isset_port = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_ip) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_port) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("EndPoint"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Ip != null)) + { + field.Name = "ip"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Ip, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "port"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Port, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is EndPoint other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Ip, other.Ip) + && System.Object.Equals(Port, other.Port); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Ip != null)) + { + hashcode = (hashcode * 397) + Ip.GetHashCode(); + } + hashcode = (hashcode * 397) + Port.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("EndPoint("); + if((Ip != null)) + { + sb.Append(", Ip: "); + Ip.ToString(sb); + } + sb.Append(", Port: "); + Port.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs b/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs new file mode 100644 index 0000000..6653d70 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs @@ -0,0 +1,611 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class ServerProperties : TBase +{ + private int _maxConcurrentClientNum; + private string _watermarkSecretKey; + private string _watermarkBitString; + private int _watermarkParamMarkRate; + private int _watermarkParamMaxRightBit; + private int _thriftMaxFrameSize; + private bool _isReadOnly; + + public string Version { get; set; } + + public List SupportedTimeAggregationOperations { get; set; } + + public string TimestampPrecision { get; set; } + + public int MaxConcurrentClientNum + { + get + { + return _maxConcurrentClientNum; + } + set + { + __isset.maxConcurrentClientNum = true; + this._maxConcurrentClientNum = value; + } + } + + public string WatermarkSecretKey + { + get + { + return _watermarkSecretKey; + } + set + { + __isset.watermarkSecretKey = true; + this._watermarkSecretKey = value; + } + } + + public string WatermarkBitString + { + get + { + return _watermarkBitString; + } + set + { + __isset.watermarkBitString = true; + this._watermarkBitString = value; + } + } + + public int WatermarkParamMarkRate + { + get + { + return _watermarkParamMarkRate; + } + set + { + __isset.watermarkParamMarkRate = true; + this._watermarkParamMarkRate = value; + } + } + + public int WatermarkParamMaxRightBit + { + get + { + return _watermarkParamMaxRightBit; + } + set + { + __isset.watermarkParamMaxRightBit = true; + this._watermarkParamMaxRightBit = value; + } + } + + public int ThriftMaxFrameSize + { + get + { + return _thriftMaxFrameSize; + } + set + { + __isset.thriftMaxFrameSize = true; + this._thriftMaxFrameSize = value; + } + } + + public bool IsReadOnly + { + get + { + return _isReadOnly; + } + set + { + __isset.isReadOnly = true; + this._isReadOnly = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool maxConcurrentClientNum; + public bool watermarkSecretKey; + public bool watermarkBitString; + public bool watermarkParamMarkRate; + public bool watermarkParamMaxRightBit; + public bool thriftMaxFrameSize; + public bool isReadOnly; + } + + public ServerProperties() + { + } + + public ServerProperties(string version, List supportedTimeAggregationOperations, string timestampPrecision) : this() + { + this.Version = version; + this.SupportedTimeAggregationOperations = supportedTimeAggregationOperations; + this.TimestampPrecision = timestampPrecision; + } + + public ServerProperties DeepCopy() + { + var tmp379 = new ServerProperties(); + if((Version != null)) + { + tmp379.Version = this.Version; + } + if((SupportedTimeAggregationOperations != null)) + { + tmp379.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); + } + if((TimestampPrecision != null)) + { + tmp379.TimestampPrecision = this.TimestampPrecision; + } + if(__isset.maxConcurrentClientNum) + { + tmp379.MaxConcurrentClientNum = this.MaxConcurrentClientNum; + } + tmp379.__isset.maxConcurrentClientNum = this.__isset.maxConcurrentClientNum; + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + tmp379.WatermarkSecretKey = this.WatermarkSecretKey; + } + tmp379.__isset.watermarkSecretKey = this.__isset.watermarkSecretKey; + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + tmp379.WatermarkBitString = this.WatermarkBitString; + } + tmp379.__isset.watermarkBitString = this.__isset.watermarkBitString; + if(__isset.watermarkParamMarkRate) + { + tmp379.WatermarkParamMarkRate = this.WatermarkParamMarkRate; + } + tmp379.__isset.watermarkParamMarkRate = this.__isset.watermarkParamMarkRate; + if(__isset.watermarkParamMaxRightBit) + { + tmp379.WatermarkParamMaxRightBit = this.WatermarkParamMaxRightBit; + } + tmp379.__isset.watermarkParamMaxRightBit = this.__isset.watermarkParamMaxRightBit; + if(__isset.thriftMaxFrameSize) + { + tmp379.ThriftMaxFrameSize = this.ThriftMaxFrameSize; + } + tmp379.__isset.thriftMaxFrameSize = this.__isset.thriftMaxFrameSize; + if(__isset.isReadOnly) + { + tmp379.IsReadOnly = this.IsReadOnly; + } + tmp379.__isset.isReadOnly = this.__isset.isReadOnly; + return tmp379; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_version = false; + bool isset_supportedTimeAggregationOperations = false; + bool isset_timestampPrecision = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + Version = await iprot.ReadStringAsync(cancellationToken); + isset_version = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list380 = await iprot.ReadListBeginAsync(cancellationToken); + SupportedTimeAggregationOperations = new List(_list380.Count); + for(int _i381 = 0; _i381 < _list380.Count; ++_i381) + { + string _elem382; + _elem382 = await iprot.ReadStringAsync(cancellationToken); + SupportedTimeAggregationOperations.Add(_elem382); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_supportedTimeAggregationOperations = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + TimestampPrecision = await iprot.ReadStringAsync(cancellationToken); + isset_timestampPrecision = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + MaxConcurrentClientNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.String) + { + WatermarkSecretKey = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.String) + { + WatermarkBitString = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I32) + { + WatermarkParamMarkRate = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.I32) + { + WatermarkParamMaxRightBit = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.I32) + { + ThriftMaxFrameSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.Bool) + { + IsReadOnly = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_version) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_supportedTimeAggregationOperations) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestampPrecision) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("ServerProperties"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Version != null)) + { + field.Name = "version"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Version, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SupportedTimeAggregationOperations != null)) + { + field.Name = "supportedTimeAggregationOperations"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, SupportedTimeAggregationOperations.Count), cancellationToken); + foreach (string _iter383 in SupportedTimeAggregationOperations) + { + await oprot.WriteStringAsync(_iter383, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TimestampPrecision != null)) + { + field.Name = "timestampPrecision"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TimestampPrecision, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.maxConcurrentClientNum) + { + field.Name = "maxConcurrentClientNum"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(MaxConcurrentClientNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + field.Name = "watermarkSecretKey"; + field.Type = TType.String; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(WatermarkSecretKey, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + field.Name = "watermarkBitString"; + field.Type = TType.String; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(WatermarkBitString, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.watermarkParamMarkRate) + { + field.Name = "watermarkParamMarkRate"; + field.Type = TType.I32; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(WatermarkParamMarkRate, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.watermarkParamMaxRightBit) + { + field.Name = "watermarkParamMaxRightBit"; + field.Type = TType.I32; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(WatermarkParamMaxRightBit, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.thriftMaxFrameSize) + { + field.Name = "thriftMaxFrameSize"; + field.Type = TType.I32; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(ThriftMaxFrameSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isReadOnly) + { + field.Name = "isReadOnly"; + field.Type = TType.Bool; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsReadOnly, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is ServerProperties other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Version, other.Version) + && TCollections.Equals(SupportedTimeAggregationOperations, other.SupportedTimeAggregationOperations) + && System.Object.Equals(TimestampPrecision, other.TimestampPrecision) + && ((__isset.maxConcurrentClientNum == other.__isset.maxConcurrentClientNum) && ((!__isset.maxConcurrentClientNum) || (System.Object.Equals(MaxConcurrentClientNum, other.MaxConcurrentClientNum)))) + && ((__isset.watermarkSecretKey == other.__isset.watermarkSecretKey) && ((!__isset.watermarkSecretKey) || (System.Object.Equals(WatermarkSecretKey, other.WatermarkSecretKey)))) + && ((__isset.watermarkBitString == other.__isset.watermarkBitString) && ((!__isset.watermarkBitString) || (System.Object.Equals(WatermarkBitString, other.WatermarkBitString)))) + && ((__isset.watermarkParamMarkRate == other.__isset.watermarkParamMarkRate) && ((!__isset.watermarkParamMarkRate) || (System.Object.Equals(WatermarkParamMarkRate, other.WatermarkParamMarkRate)))) + && ((__isset.watermarkParamMaxRightBit == other.__isset.watermarkParamMaxRightBit) && ((!__isset.watermarkParamMaxRightBit) || (System.Object.Equals(WatermarkParamMaxRightBit, other.WatermarkParamMaxRightBit)))) + && ((__isset.thriftMaxFrameSize == other.__isset.thriftMaxFrameSize) && ((!__isset.thriftMaxFrameSize) || (System.Object.Equals(ThriftMaxFrameSize, other.ThriftMaxFrameSize)))) + && ((__isset.isReadOnly == other.__isset.isReadOnly) && ((!__isset.isReadOnly) || (System.Object.Equals(IsReadOnly, other.IsReadOnly)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Version != null)) + { + hashcode = (hashcode * 397) + Version.GetHashCode(); + } + if((SupportedTimeAggregationOperations != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SupportedTimeAggregationOperations); + } + if((TimestampPrecision != null)) + { + hashcode = (hashcode * 397) + TimestampPrecision.GetHashCode(); + } + if(__isset.maxConcurrentClientNum) + { + hashcode = (hashcode * 397) + MaxConcurrentClientNum.GetHashCode(); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + hashcode = (hashcode * 397) + WatermarkSecretKey.GetHashCode(); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + hashcode = (hashcode * 397) + WatermarkBitString.GetHashCode(); + } + if(__isset.watermarkParamMarkRate) + { + hashcode = (hashcode * 397) + WatermarkParamMarkRate.GetHashCode(); + } + if(__isset.watermarkParamMaxRightBit) + { + hashcode = (hashcode * 397) + WatermarkParamMaxRightBit.GetHashCode(); + } + if(__isset.thriftMaxFrameSize) + { + hashcode = (hashcode * 397) + ThriftMaxFrameSize.GetHashCode(); + } + if(__isset.isReadOnly) + { + hashcode = (hashcode * 397) + IsReadOnly.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("ServerProperties("); + if((Version != null)) + { + sb.Append(", Version: "); + Version.ToString(sb); + } + if((SupportedTimeAggregationOperations != null)) + { + sb.Append(", SupportedTimeAggregationOperations: "); + SupportedTimeAggregationOperations.ToString(sb); + } + if((TimestampPrecision != null)) + { + sb.Append(", TimestampPrecision: "); + TimestampPrecision.ToString(sb); + } + if(__isset.maxConcurrentClientNum) + { + sb.Append(", MaxConcurrentClientNum: "); + MaxConcurrentClientNum.ToString(sb); + } + if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) + { + sb.Append(", WatermarkSecretKey: "); + WatermarkSecretKey.ToString(sb); + } + if((WatermarkBitString != null) && __isset.watermarkBitString) + { + sb.Append(", WatermarkBitString: "); + WatermarkBitString.ToString(sb); + } + if(__isset.watermarkParamMarkRate) + { + sb.Append(", WatermarkParamMarkRate: "); + WatermarkParamMarkRate.ToString(sb); + } + if(__isset.watermarkParamMaxRightBit) + { + sb.Append(", WatermarkParamMaxRightBit: "); + WatermarkParamMaxRightBit.ToString(sb); + } + if(__isset.thriftMaxFrameSize) + { + sb.Append(", ThriftMaxFrameSize: "); + ThriftMaxFrameSize.ToString(sb); + } + if(__isset.isReadOnly) + { + sb.Append(", IsReadOnly: "); + IsReadOnly.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSAppendSchemaTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSAppendSchemaTemplateReq.cs new file mode 100644 index 0000000..ed9994e --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSAppendSchemaTemplateReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSAppendSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public bool IsAligned { get; set; } + + public List Measurements { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public TSAppendSchemaTemplateReq() + { + } + + public TSAppendSchemaTemplateReq(long sessionId, string name, bool isAligned, List measurements, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.IsAligned = isAligned; + this.Measurements = measurements; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSAppendSchemaTemplateReq DeepCopy() + { + var tmp389 = new TSAppendSchemaTemplateReq(); + tmp389.SessionId = this.SessionId; + if((Name != null)) + { + tmp389.Name = this.Name; + } + tmp389.IsAligned = this.IsAligned; + if((Measurements != null)) + { + tmp389.Measurements = this.Measurements.DeepCopy(); + } + if((DataTypes != null)) + { + tmp389.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp389.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp389.Compressors = this.Compressors.DeepCopy(); + } + return tmp389; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_isAligned = false; + bool isset_measurements = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + isset_isAligned = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list390 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list390.Count); + for(int _i391 = 0; _i391 < _list390.Count; ++_i391) + { + string _elem392; + _elem392 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem392); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list393 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list393.Count); + for(int _i394 = 0; _i394 < _list393.Count; ++_i394) + { + int _elem395; + _elem395 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem395); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list396 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list396.Count); + for(int _i397 = 0; _i397 < _list396.Count; ++_i397) + { + int _elem398; + _elem398 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem398); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list399 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list399.Count); + for(int _i400 = 0; _i400 < _list399.Count; ++_i400) + { + int _elem401; + _elem401 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem401); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_isAligned) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSAppendSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter402 in Measurements) + { + await oprot.WriteStringAsync(_iter402, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter403 in DataTypes) + { + await oprot.WriteI32Async(_iter403, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter404 in Encodings) + { + await oprot.WriteI32Async(_iter404, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter405 in Compressors) + { + await oprot.WriteI32Async(_iter405, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSAppendSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(IsAligned, other.IsAligned) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSAppendSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs new file mode 100644 index 0000000..ed59e75 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs @@ -0,0 +1,179 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCancelOperationReq : TBase +{ + + public long SessionId { get; set; } + + public long QueryId { get; set; } + + public TSCancelOperationReq() + { + } + + public TSCancelOperationReq(long sessionId, long queryId) : this() + { + this.SessionId = sessionId; + this.QueryId = queryId; + } + + public TSCancelOperationReq DeepCopy() + { + var tmp87 = new TSCancelOperationReq(); + tmp87.SessionId = this.SessionId; + tmp87.QueryId = this.QueryId; + return tmp87; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_queryId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + isset_queryId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCancelOperationReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCancelOperationReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(QueryId, other.QueryId); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCancelOperationReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + sb.Append(", QueryId: "); + QueryId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs new file mode 100644 index 0000000..7b5d173 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs @@ -0,0 +1,253 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCloseOperationReq : TBase +{ + private long _queryId; + private long _statementId; + + public long SessionId { get; set; } + + public long QueryId + { + get + { + return _queryId; + } + set + { + __isset.queryId = true; + this._queryId = value; + } + } + + public long StatementId + { + get + { + return _statementId; + } + set + { + __isset.statementId = true; + this._statementId = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool queryId; + public bool statementId; + } + + public TSCloseOperationReq() + { + } + + public TSCloseOperationReq(long sessionId) : this() + { + this.SessionId = sessionId; + } + + public TSCloseOperationReq DeepCopy() + { + var tmp89 = new TSCloseOperationReq(); + tmp89.SessionId = this.SessionId; + if(__isset.queryId) + { + tmp89.QueryId = this.QueryId; + } + tmp89.__isset.queryId = this.__isset.queryId; + if(__isset.statementId) + { + tmp89.StatementId = this.StatementId; + } + tmp89.__isset.statementId = this.__isset.statementId; + return tmp89; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCloseOperationReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.queryId) + { + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.statementId) + { + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCloseOperationReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && ((__isset.queryId == other.__isset.queryId) && ((!__isset.queryId) || (System.Object.Equals(QueryId, other.QueryId)))) + && ((__isset.statementId == other.__isset.statementId) && ((!__isset.statementId) || (System.Object.Equals(StatementId, other.StatementId)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if(__isset.queryId) + { + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + if(__isset.statementId) + { + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCloseOperationReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if(__isset.queryId) + { + sb.Append(", QueryId: "); + QueryId.ToString(sb); + } + if(__isset.statementId) + { + sb.Append(", StatementId: "); + StatementId.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs new file mode 100644 index 0000000..1d97b91 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs @@ -0,0 +1,149 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCloseSessionReq : TBase +{ + + public long SessionId { get; set; } + + public TSCloseSessionReq() + { + } + + public TSCloseSessionReq(long sessionId) : this() + { + this.SessionId = sessionId; + } + + public TSCloseSessionReq DeepCopy() + { + var tmp75 = new TSCloseSessionReq(); + tmp75.SessionId = this.SessionId; + return tmp75; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCloseSessionReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCloseSessionReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCloseSessionReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCreateAlignedTimeseriesReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCreateAlignedTimeseriesReq.cs new file mode 100644 index 0000000..7aa50fa --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCreateAlignedTimeseriesReq.cs @@ -0,0 +1,671 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateAlignedTimeseriesReq : TBase +{ + private List _measurementAlias; + private List> _tagsList; + private List> _attributesList; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List Measurements { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public List MeasurementAlias + { + get + { + return _measurementAlias; + } + set + { + __isset.measurementAlias = true; + this._measurementAlias = value; + } + } + + public List> TagsList + { + get + { + return _tagsList; + } + set + { + __isset.tagsList = true; + this._tagsList = value; + } + } + + public List> AttributesList + { + get + { + return _attributesList; + } + set + { + __isset.attributesList = true; + this._attributesList = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool measurementAlias; + public bool tagsList; + public bool attributesList; + } + + public TSCreateAlignedTimeseriesReq() + { + } + + public TSCreateAlignedTimeseriesReq(long sessionId, string prefixPath, List measurements, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.Measurements = measurements; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSCreateAlignedTimeseriesReq DeepCopy() + { + var tmp278 = new TSCreateAlignedTimeseriesReq(); + tmp278.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp278.PrefixPath = this.PrefixPath; + } + if((Measurements != null)) + { + tmp278.Measurements = this.Measurements.DeepCopy(); + } + if((DataTypes != null)) + { + tmp278.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp278.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp278.Compressors = this.Compressors.DeepCopy(); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + tmp278.MeasurementAlias = this.MeasurementAlias.DeepCopy(); + } + tmp278.__isset.measurementAlias = this.__isset.measurementAlias; + if((TagsList != null) && __isset.tagsList) + { + tmp278.TagsList = this.TagsList.DeepCopy(); + } + tmp278.__isset.tagsList = this.__isset.tagsList; + if((AttributesList != null) && __isset.attributesList) + { + tmp278.AttributesList = this.AttributesList.DeepCopy(); + } + tmp278.__isset.attributesList = this.__isset.attributesList; + return tmp278; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurements = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list279 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list279.Count); + for(int _i280 = 0; _i280 < _list279.Count; ++_i280) + { + string _elem281; + _elem281 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem281); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list282 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list282.Count); + for(int _i283 = 0; _i283 < _list282.Count; ++_i283) + { + int _elem284; + _elem284 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem284); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list285 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list285.Count); + for(int _i286 = 0; _i286 < _list285.Count; ++_i286) + { + int _elem287; + _elem287 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem287); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list288 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list288.Count); + for(int _i289 = 0; _i289 < _list288.Count; ++_i289) + { + int _elem290; + _elem290 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem290); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list291 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAlias = new List(_list291.Count); + for(int _i292 = 0; _i292 < _list291.Count; ++_i292) + { + string _elem293; + _elem293 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAlias.Add(_elem293); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.List) + { + { + TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list294.Count); + for(int _i295 = 0; _i295 < _list294.Count; ++_i295) + { + Dictionary _elem296; + { + TMap _map297 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem296 = new Dictionary(_map297.Count); + for(int _i298 = 0; _i298 < _map297.Count; ++_i298) + { + string _key299; + string _val300; + _key299 = await iprot.ReadStringAsync(cancellationToken); + _val300 = await iprot.ReadStringAsync(cancellationToken); + _elem296[_key299] = _val300; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + TagsList.Add(_elem296); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.List) + { + { + TList _list301 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list301.Count); + for(int _i302 = 0; _i302 < _list301.Count; ++_i302) + { + Dictionary _elem303; + { + TMap _map304 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem303 = new Dictionary(_map304.Count); + for(int _i305 = 0; _i305 < _map304.Count; ++_i305) + { + string _key306; + string _val307; + _key306 = await iprot.ReadStringAsync(cancellationToken); + _val307 = await iprot.ReadStringAsync(cancellationToken); + _elem303[_key306] = _val307; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + AttributesList.Add(_elem303); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateAlignedTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter308 in Measurements) + { + await oprot.WriteStringAsync(_iter308, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter309 in DataTypes) + { + await oprot.WriteI32Async(_iter309, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter310 in Encodings) + { + await oprot.WriteI32Async(_iter310, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter311 in Compressors) + { + await oprot.WriteI32Async(_iter311, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + field.Name = "measurementAlias"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAlias.Count), cancellationToken); + foreach (string _iter312 in MeasurementAlias) + { + await oprot.WriteStringAsync(_iter312, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TagsList != null) && __isset.tagsList) + { + field.Name = "tagsList"; + field.Type = TType.List; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); + foreach (Dictionary _iter313 in TagsList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter313.Count), cancellationToken); + foreach (string _iter314 in _iter313.Keys) + { + await oprot.WriteStringAsync(_iter314, cancellationToken); + await oprot.WriteStringAsync(_iter313[_iter314], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AttributesList != null) && __isset.attributesList) + { + field.Name = "attributesList"; + field.Type = TType.List; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); + foreach (Dictionary _iter315 in AttributesList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter315.Count), cancellationToken); + foreach (string _iter316 in _iter315.Keys) + { + await oprot.WriteStringAsync(_iter316, cancellationToken); + await oprot.WriteStringAsync(_iter315[_iter316], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateAlignedTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors) + && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (TCollections.Equals(MeasurementAlias, other.MeasurementAlias)))) + && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) + && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAlias); + } + if((TagsList != null) && __isset.tagsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); + } + if((AttributesList != null) && __isset.attributesList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateAlignedTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + sb.Append(", MeasurementAlias: "); + MeasurementAlias.ToString(sb); + } + if((TagsList != null) && __isset.tagsList) + { + sb.Append(", TagsList: "); + TagsList.ToString(sb); + } + if((AttributesList != null) && __isset.attributesList) + { + sb.Append(", AttributesList: "); + AttributesList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCreateMultiTimeseriesReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCreateMultiTimeseriesReq.cs new file mode 100644 index 0000000..64f9e17 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCreateMultiTimeseriesReq.cs @@ -0,0 +1,715 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateMultiTimeseriesReq : TBase +{ + private List> _propsList; + private List> _tagsList; + private List> _attributesList; + private List _measurementAliasList; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public List DataTypes { get; set; } + + public List Encodings { get; set; } + + public List Compressors { get; set; } + + public List> PropsList + { + get + { + return _propsList; + } + set + { + __isset.propsList = true; + this._propsList = value; + } + } + + public List> TagsList + { + get + { + return _tagsList; + } + set + { + __isset.tagsList = true; + this._tagsList = value; + } + } + + public List> AttributesList + { + get + { + return _attributesList; + } + set + { + __isset.attributesList = true; + this._attributesList = value; + } + } + + public List MeasurementAliasList + { + get + { + return _measurementAliasList; + } + set + { + __isset.measurementAliasList = true; + this._measurementAliasList = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool propsList; + public bool tagsList; + public bool attributesList; + public bool measurementAliasList; + } + + public TSCreateMultiTimeseriesReq() + { + } + + public TSCreateMultiTimeseriesReq(long sessionId, List paths, List dataTypes, List encodings, List compressors) : this() + { + this.SessionId = sessionId; + this.Paths = paths; + this.DataTypes = dataTypes; + this.Encodings = encodings; + this.Compressors = compressors; + } + + public TSCreateMultiTimeseriesReq DeepCopy() + { + var tmp330 = new TSCreateMultiTimeseriesReq(); + tmp330.SessionId = this.SessionId; + if((Paths != null)) + { + tmp330.Paths = this.Paths.DeepCopy(); + } + if((DataTypes != null)) + { + tmp330.DataTypes = this.DataTypes.DeepCopy(); + } + if((Encodings != null)) + { + tmp330.Encodings = this.Encodings.DeepCopy(); + } + if((Compressors != null)) + { + tmp330.Compressors = this.Compressors.DeepCopy(); + } + if((PropsList != null) && __isset.propsList) + { + tmp330.PropsList = this.PropsList.DeepCopy(); + } + tmp330.__isset.propsList = this.__isset.propsList; + if((TagsList != null) && __isset.tagsList) + { + tmp330.TagsList = this.TagsList.DeepCopy(); + } + tmp330.__isset.tagsList = this.__isset.tagsList; + if((AttributesList != null) && __isset.attributesList) + { + tmp330.AttributesList = this.AttributesList.DeepCopy(); + } + tmp330.__isset.attributesList = this.__isset.attributesList; + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + tmp330.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); + } + tmp330.__isset.measurementAliasList = this.__isset.measurementAliasList; + return tmp330; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_dataTypes = false; + bool isset_encodings = false; + bool isset_compressors = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list331 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list331.Count); + for(int _i332 = 0; _i332 < _list331.Count; ++_i332) + { + string _elem333; + _elem333 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem333); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_paths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list334 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypes = new List(_list334.Count); + for(int _i335 = 0; _i335 < _list334.Count; ++_i335) + { + int _elem336; + _elem336 = await iprot.ReadI32Async(cancellationToken); + DataTypes.Add(_elem336); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataTypes = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list337 = await iprot.ReadListBeginAsync(cancellationToken); + Encodings = new List(_list337.Count); + for(int _i338 = 0; _i338 < _list337.Count; ++_i338) + { + int _elem339; + _elem339 = await iprot.ReadI32Async(cancellationToken); + Encodings.Add(_elem339); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_encodings = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list340 = await iprot.ReadListBeginAsync(cancellationToken); + Compressors = new List(_list340.Count); + for(int _i341 = 0; _i341 < _list340.Count; ++_i341) + { + int _elem342; + _elem342 = await iprot.ReadI32Async(cancellationToken); + Compressors.Add(_elem342); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_compressors = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list343 = await iprot.ReadListBeginAsync(cancellationToken); + PropsList = new List>(_list343.Count); + for(int _i344 = 0; _i344 < _list343.Count; ++_i344) + { + Dictionary _elem345; + { + TMap _map346 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem345 = new Dictionary(_map346.Count); + for(int _i347 = 0; _i347 < _map346.Count; ++_i347) + { + string _key348; + string _val349; + _key348 = await iprot.ReadStringAsync(cancellationToken); + _val349 = await iprot.ReadStringAsync(cancellationToken); + _elem345[_key348] = _val349; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + PropsList.Add(_elem345); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list350 = await iprot.ReadListBeginAsync(cancellationToken); + TagsList = new List>(_list350.Count); + for(int _i351 = 0; _i351 < _list350.Count; ++_i351) + { + Dictionary _elem352; + { + TMap _map353 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem352 = new Dictionary(_map353.Count); + for(int _i354 = 0; _i354 < _map353.Count; ++_i354) + { + string _key355; + string _val356; + _key355 = await iprot.ReadStringAsync(cancellationToken); + _val356 = await iprot.ReadStringAsync(cancellationToken); + _elem352[_key355] = _val356; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + TagsList.Add(_elem352); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.List) + { + { + TList _list357 = await iprot.ReadListBeginAsync(cancellationToken); + AttributesList = new List>(_list357.Count); + for(int _i358 = 0; _i358 < _list357.Count; ++_i358) + { + Dictionary _elem359; + { + TMap _map360 = await iprot.ReadMapBeginAsync(cancellationToken); + _elem359 = new Dictionary(_map360.Count); + for(int _i361 = 0; _i361 < _map360.Count; ++_i361) + { + string _key362; + string _val363; + _key362 = await iprot.ReadStringAsync(cancellationToken); + _val363 = await iprot.ReadStringAsync(cancellationToken); + _elem359[_key362] = _val363; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + AttributesList.Add(_elem359); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.List) + { + { + TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementAliasList = new List(_list364.Count); + for(int _i365 = 0; _i365 < _list364.Count; ++_i365) + { + string _elem366; + _elem366 = await iprot.ReadStringAsync(cancellationToken); + MeasurementAliasList.Add(_elem366); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_paths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataTypes) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encodings) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressors) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateMultiTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) + { + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter367 in Paths) + { + await oprot.WriteStringAsync(_iter367, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypes != null)) + { + field.Name = "dataTypes"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); + foreach (int _iter368 in DataTypes) + { + await oprot.WriteI32Async(_iter368, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Encodings != null)) + { + field.Name = "encodings"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); + foreach (int _iter369 in Encodings) + { + await oprot.WriteI32Async(_iter369, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Compressors != null)) + { + field.Name = "compressors"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); + foreach (int _iter370 in Compressors) + { + await oprot.WriteI32Async(_iter370, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((PropsList != null) && __isset.propsList) + { + field.Name = "propsList"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, PropsList.Count), cancellationToken); + foreach (Dictionary _iter371 in PropsList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter371.Count), cancellationToken); + foreach (string _iter372 in _iter371.Keys) + { + await oprot.WriteStringAsync(_iter372, cancellationToken); + await oprot.WriteStringAsync(_iter371[_iter372], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TagsList != null) && __isset.tagsList) + { + field.Name = "tagsList"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); + foreach (Dictionary _iter373 in TagsList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter373.Count), cancellationToken); + foreach (string _iter374 in _iter373.Keys) + { + await oprot.WriteStringAsync(_iter374, cancellationToken); + await oprot.WriteStringAsync(_iter373[_iter374], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AttributesList != null) && __isset.attributesList) + { + field.Name = "attributesList"; + field.Type = TType.List; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); + foreach (Dictionary _iter375 in AttributesList) + { + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter375.Count), cancellationToken); + foreach (string _iter376 in _iter375.Keys) + { + await oprot.WriteStringAsync(_iter376, cancellationToken); + await oprot.WriteStringAsync(_iter375[_iter376], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + field.Name = "measurementAliasList"; + field.Type = TType.List; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAliasList.Count), cancellationToken); + foreach (string _iter377 in MeasurementAliasList) + { + await oprot.WriteStringAsync(_iter377, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateMultiTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && TCollections.Equals(DataTypes, other.DataTypes) + && TCollections.Equals(Encodings, other.Encodings) + && TCollections.Equals(Compressors, other.Compressors) + && ((__isset.propsList == other.__isset.propsList) && ((!__isset.propsList) || (TCollections.Equals(PropsList, other.PropsList)))) + && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) + && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))) + && ((__isset.measurementAliasList == other.__isset.measurementAliasList) && ((!__isset.measurementAliasList) || (TCollections.Equals(MeasurementAliasList, other.MeasurementAliasList)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if((DataTypes != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); + } + if((Encodings != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); + } + if((Compressors != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); + } + if((PropsList != null) && __isset.propsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(PropsList); + } + if((TagsList != null) && __isset.tagsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); + } + if((AttributesList != null) && __isset.attributesList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); + } + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAliasList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateMultiTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if((DataTypes != null)) + { + sb.Append(", DataTypes: "); + DataTypes.ToString(sb); + } + if((Encodings != null)) + { + sb.Append(", Encodings: "); + Encodings.ToString(sb); + } + if((Compressors != null)) + { + sb.Append(", Compressors: "); + Compressors.ToString(sb); + } + if((PropsList != null) && __isset.propsList) + { + sb.Append(", PropsList: "); + PropsList.ToString(sb); + } + if((TagsList != null) && __isset.tagsList) + { + sb.Append(", TagsList: "); + TagsList.ToString(sb); + } + if((AttributesList != null) && __isset.attributesList) + { + sb.Append(", AttributesList: "); + AttributesList.ToString(sb); + } + if((MeasurementAliasList != null) && __isset.measurementAliasList) + { + sb.Append(", MeasurementAliasList: "); + MeasurementAliasList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCreateSchemaTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCreateSchemaTemplateReq.cs new file mode 100644 index 0000000..7ad6092 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCreateSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public byte[] SerializedTemplate { get; set; } + + public TSCreateSchemaTemplateReq() + { + } + + public TSCreateSchemaTemplateReq(long sessionId, string name, byte[] serializedTemplate) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.SerializedTemplate = serializedTemplate; + } + + public TSCreateSchemaTemplateReq DeepCopy() + { + var tmp387 = new TSCreateSchemaTemplateReq(); + tmp387.SessionId = this.SessionId; + if((Name != null)) + { + tmp387.Name = this.Name; + } + if((SerializedTemplate != null)) + { + tmp387.SerializedTemplate = this.SerializedTemplate.ToArray(); + } + return tmp387; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_serializedTemplate = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + SerializedTemplate = await iprot.ReadBinaryAsync(cancellationToken); + isset_serializedTemplate = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_serializedTemplate) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SerializedTemplate != null)) + { + field.Name = "serializedTemplate"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(SerializedTemplate, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && TCollections.Equals(SerializedTemplate, other.SerializedTemplate); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + if((SerializedTemplate != null)) + { + hashcode = (hashcode * 397) + SerializedTemplate.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + if((SerializedTemplate != null)) + { + sb.Append(", SerializedTemplate: "); + SerializedTemplate.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCreateTimeseriesReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCreateTimeseriesReq.cs new file mode 100644 index 0000000..d2c2f7c --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSCreateTimeseriesReq.cs @@ -0,0 +1,543 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSCreateTimeseriesReq : TBase +{ + private Dictionary _props; + private Dictionary _tags; + private Dictionary _attributes; + private string _measurementAlias; + + public long SessionId { get; set; } + + public string Path { get; set; } + + public int DataType { get; set; } + + public int Encoding { get; set; } + + public int Compressor { get; set; } + + public Dictionary Props + { + get + { + return _props; + } + set + { + __isset.props = true; + this._props = value; + } + } + + public Dictionary Tags + { + get + { + return _tags; + } + set + { + __isset.tags = true; + this._tags = value; + } + } + + public Dictionary Attributes + { + get + { + return _attributes; + } + set + { + __isset.attributes = true; + this._attributes = value; + } + } + + public string MeasurementAlias + { + get + { + return _measurementAlias; + } + set + { + __isset.measurementAlias = true; + this._measurementAlias = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool props; + public bool tags; + public bool attributes; + public bool measurementAlias; + } + + public TSCreateTimeseriesReq() + { + } + + public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int encoding, int compressor) : this() + { + this.SessionId = sessionId; + this.Path = path; + this.DataType = dataType; + this.Encoding = encoding; + this.Compressor = compressor; + } + + public TSCreateTimeseriesReq DeepCopy() + { + var tmp261 = new TSCreateTimeseriesReq(); + tmp261.SessionId = this.SessionId; + if((Path != null)) + { + tmp261.Path = this.Path; + } + tmp261.DataType = this.DataType; + tmp261.Encoding = this.Encoding; + tmp261.Compressor = this.Compressor; + if((Props != null) && __isset.props) + { + tmp261.Props = this.Props.DeepCopy(); + } + tmp261.__isset.props = this.__isset.props; + if((Tags != null) && __isset.tags) + { + tmp261.Tags = this.Tags.DeepCopy(); + } + tmp261.__isset.tags = this.__isset.tags; + if((Attributes != null) && __isset.attributes) + { + tmp261.Attributes = this.Attributes.DeepCopy(); + } + tmp261.__isset.attributes = this.__isset.attributes; + if((MeasurementAlias != null) && __isset.measurementAlias) + { + tmp261.MeasurementAlias = this.MeasurementAlias; + } + tmp261.__isset.measurementAlias = this.__isset.measurementAlias; + return tmp261; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_path = false; + bool isset_dataType = false; + bool isset_encoding = false; + bool isset_compressor = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Path = await iprot.ReadStringAsync(cancellationToken); + isset_path = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + DataType = await iprot.ReadI32Async(cancellationToken); + isset_dataType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + Encoding = await iprot.ReadI32Async(cancellationToken); + isset_encoding = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I32) + { + Compressor = await iprot.ReadI32Async(cancellationToken); + isset_compressor = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Map) + { + { + TMap _map262 = await iprot.ReadMapBeginAsync(cancellationToken); + Props = new Dictionary(_map262.Count); + for(int _i263 = 0; _i263 < _map262.Count; ++_i263) + { + string _key264; + string _val265; + _key264 = await iprot.ReadStringAsync(cancellationToken); + _val265 = await iprot.ReadStringAsync(cancellationToken); + Props[_key264] = _val265; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Map) + { + { + TMap _map266 = await iprot.ReadMapBeginAsync(cancellationToken); + Tags = new Dictionary(_map266.Count); + for(int _i267 = 0; _i267 < _map266.Count; ++_i267) + { + string _key268; + string _val269; + _key268 = await iprot.ReadStringAsync(cancellationToken); + _val269 = await iprot.ReadStringAsync(cancellationToken); + Tags[_key268] = _val269; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.Map) + { + { + TMap _map270 = await iprot.ReadMapBeginAsync(cancellationToken); + Attributes = new Dictionary(_map270.Count); + for(int _i271 = 0; _i271 < _map270.Count; ++_i271) + { + string _key272; + string _val273; + _key272 = await iprot.ReadStringAsync(cancellationToken); + _val273 = await iprot.ReadStringAsync(cancellationToken); + Attributes[_key272] = _val273; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.String) + { + MeasurementAlias = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_path) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_encoding) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_compressor) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSCreateTimeseriesReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Path != null)) + { + field.Name = "path"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Path, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "dataType"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(DataType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "encoding"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Encoding, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "compressor"; + field.Type = TType.I32; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Compressor, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Props != null) && __isset.props) + { + field.Name = "props"; + field.Type = TType.Map; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Props.Count), cancellationToken); + foreach (string _iter274 in Props.Keys) + { + await oprot.WriteStringAsync(_iter274, cancellationToken); + await oprot.WriteStringAsync(Props[_iter274], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Tags != null) && __isset.tags) + { + field.Name = "tags"; + field.Type = TType.Map; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Tags.Count), cancellationToken); + foreach (string _iter275 in Tags.Keys) + { + await oprot.WriteStringAsync(_iter275, cancellationToken); + await oprot.WriteStringAsync(Tags[_iter275], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Attributes != null) && __isset.attributes) + { + field.Name = "attributes"; + field.Type = TType.Map; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Attributes.Count), cancellationToken); + foreach (string _iter276 in Attributes.Keys) + { + await oprot.WriteStringAsync(_iter276, cancellationToken); + await oprot.WriteStringAsync(Attributes[_iter276], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + field.Name = "measurementAlias"; + field.Type = TType.String; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(MeasurementAlias, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSCreateTimeseriesReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Path, other.Path) + && System.Object.Equals(DataType, other.DataType) + && System.Object.Equals(Encoding, other.Encoding) + && System.Object.Equals(Compressor, other.Compressor) + && ((__isset.props == other.__isset.props) && ((!__isset.props) || (TCollections.Equals(Props, other.Props)))) + && ((__isset.tags == other.__isset.tags) && ((!__isset.tags) || (TCollections.Equals(Tags, other.Tags)))) + && ((__isset.attributes == other.__isset.attributes) && ((!__isset.attributes) || (TCollections.Equals(Attributes, other.Attributes)))) + && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (System.Object.Equals(MeasurementAlias, other.MeasurementAlias)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Path != null)) + { + hashcode = (hashcode * 397) + Path.GetHashCode(); + } + hashcode = (hashcode * 397) + DataType.GetHashCode(); + hashcode = (hashcode * 397) + Encoding.GetHashCode(); + hashcode = (hashcode * 397) + Compressor.GetHashCode(); + if((Props != null) && __isset.props) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Props); + } + if((Tags != null) && __isset.tags) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Tags); + } + if((Attributes != null) && __isset.attributes) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Attributes); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + hashcode = (hashcode * 397) + MeasurementAlias.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSCreateTimeseriesReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Path != null)) + { + sb.Append(", Path: "); + Path.ToString(sb); + } + sb.Append(", DataType: "); + DataType.ToString(sb); + sb.Append(", Encoding: "); + Encoding.ToString(sb); + sb.Append(", Compressor: "); + Compressor.ToString(sb); + if((Props != null) && __isset.props) + { + sb.Append(", Props: "); + Props.ToString(sb); + } + if((Tags != null) && __isset.tags) + { + sb.Append(", Tags: "); + Tags.ToString(sb); + } + if((Attributes != null) && __isset.attributes) + { + sb.Append(", Attributes: "); + Attributes.ToString(sb); + } + if((MeasurementAlias != null) && __isset.measurementAlias) + { + sb.Append(", MeasurementAlias: "); + MeasurementAlias.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSDeleteDataReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSDeleteDataReq.cs new file mode 100644 index 0000000..c3e9977 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSDeleteDataReq.cs @@ -0,0 +1,268 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSDeleteDataReq : TBase +{ + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public long StartTime { get; set; } + + public long EndTime { get; set; } + + public TSDeleteDataReq() + { + } + + public TSDeleteDataReq(long sessionId, List paths, long startTime, long endTime) : this() + { + this.SessionId = sessionId; + this.Paths = paths; + this.StartTime = startTime; + this.EndTime = endTime; + } + + public TSDeleteDataReq DeepCopy() + { + var tmp255 = new TSDeleteDataReq(); + tmp255.SessionId = this.SessionId; + if((Paths != null)) + { + tmp255.Paths = this.Paths.DeepCopy(); + } + tmp255.StartTime = this.StartTime; + tmp255.EndTime = this.EndTime; + return tmp255; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_startTime = false; + bool isset_endTime = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list256 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list256.Count); + for(int _i257 = 0; _i257 < _list256.Count; ++_i257) + { + string _elem258; + _elem258 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem258); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_paths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I64) + { + StartTime = await iprot.ReadI64Async(cancellationToken); + isset_startTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I64) + { + EndTime = await iprot.ReadI64Async(cancellationToken); + isset_endTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_paths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_startTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_endTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSDeleteDataReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) + { + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter259 in Paths) + { + await oprot.WriteStringAsync(_iter259, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "startTime"; + field.Type = TType.I64; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StartTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "endTime"; + field.Type = TType.I64; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(EndTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSDeleteDataReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && System.Object.Equals(StartTime, other.StartTime) + && System.Object.Equals(EndTime, other.EndTime); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + hashcode = (hashcode * 397) + StartTime.GetHashCode(); + hashcode = (hashcode * 397) + EndTime.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSDeleteDataReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + sb.Append(", StartTime: "); + StartTime.ToString(sb); + sb.Append(", EndTime: "); + EndTime.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSDropSchemaTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSDropSchemaTemplateReq.cs new file mode 100644 index 0000000..7d8b01c --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSDropSchemaTemplateReq.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSDropSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string TemplateName { get; set; } + + public TSDropSchemaTemplateReq() + { + } + + public TSDropSchemaTemplateReq(long sessionId, string templateName) : this() + { + this.SessionId = sessionId; + this.TemplateName = templateName; + } + + public TSDropSchemaTemplateReq DeepCopy() + { + var tmp419 = new TSDropSchemaTemplateReq(); + tmp419.SessionId = this.SessionId; + if((TemplateName != null)) + { + tmp419.TemplateName = this.TemplateName; + } + return tmp419; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_templateName = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSDropSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSDropSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TemplateName, other.TemplateName); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSDropSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs new file mode 100644 index 0000000..f6f3cf4 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs @@ -0,0 +1,208 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSExecuteBatchStatementReq : TBase +{ + + public long SessionId { get; set; } + + public List Statements { get; set; } + + public TSExecuteBatchStatementReq() + { + } + + public TSExecuteBatchStatementReq(long sessionId, List statements) : this() + { + this.SessionId = sessionId; + this.Statements = statements; + } + + public TSExecuteBatchStatementReq DeepCopy() + { + var tmp79 = new TSExecuteBatchStatementReq(); + tmp79.SessionId = this.SessionId; + if((Statements != null)) + { + tmp79.Statements = this.Statements.DeepCopy(); + } + return tmp79; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_statements = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list80 = await iprot.ReadListBeginAsync(cancellationToken); + Statements = new List(_list80.Count); + for(int _i81 = 0; _i81 < _list80.Count; ++_i81) + { + string _elem82; + _elem82 = await iprot.ReadStringAsync(cancellationToken); + Statements.Add(_elem82); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_statements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSExecuteBatchStatementReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Statements != null)) + { + field.Name = "statements"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Statements.Count), cancellationToken); + foreach (string _iter83 in Statements) + { + await oprot.WriteStringAsync(_iter83, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSExecuteBatchStatementReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Statements, other.Statements); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Statements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Statements); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSExecuteBatchStatementReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Statements != null)) + { + sb.Append(", Statements: "); + Statements.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs new file mode 100644 index 0000000..71c6ef0 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs @@ -0,0 +1,423 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSExecuteStatementReq : TBase +{ + private int _fetchSize; + private long _timeout; + private bool _enableRedirectQuery; + private bool _jdbcQuery; + + public long SessionId { get; set; } + + public string Statement { get; set; } + + public long StatementId { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool fetchSize; + public bool timeout; + public bool enableRedirectQuery; + public bool jdbcQuery; + } + + public TSExecuteStatementReq() + { + } + + public TSExecuteStatementReq(long sessionId, string statement, long statementId) : this() + { + this.SessionId = sessionId; + this.Statement = statement; + this.StatementId = statementId; + } + + public TSExecuteStatementReq DeepCopy() + { + var tmp77 = new TSExecuteStatementReq(); + tmp77.SessionId = this.SessionId; + if((Statement != null)) + { + tmp77.Statement = this.Statement; + } + tmp77.StatementId = this.StatementId; + if(__isset.fetchSize) + { + tmp77.FetchSize = this.FetchSize; + } + tmp77.__isset.fetchSize = this.__isset.fetchSize; + if(__isset.timeout) + { + tmp77.Timeout = this.Timeout; + } + tmp77.__isset.timeout = this.__isset.timeout; + if(__isset.enableRedirectQuery) + { + tmp77.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp77.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp77.JdbcQuery = this.JdbcQuery; + } + tmp77.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp77; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_statement = false; + bool isset_statementId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Statement = await iprot.ReadStringAsync(cancellationToken); + isset_statement = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + isset_statementId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statement) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statementId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSExecuteStatementReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Statement != null)) + { + field.Name = "statement"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Statement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.fetchSize) + { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.timeout) + { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.enableRedirectQuery) + { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSExecuteStatementReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Statement, other.Statement) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Statement != null)) + { + hashcode = (hashcode * 397) + Statement.GetHashCode(); + } + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSExecuteStatementReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Statement != null)) + { + sb.Append(", Statement: "); + Statement.ToString(sb); + } + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + } + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); + } + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs new file mode 100644 index 0000000..62aaecd --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs @@ -0,0 +1,798 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSExecuteStatementResp : TBase +{ + private long _queryId; + private List _columns; + private string _operationType; + private bool _ignoreTimeStamp; + private List _dataTypeList; + private TSQueryDataSet _queryDataSet; + private TSQueryNonAlignDataSet _nonAlignQueryDataSet; + private Dictionary _columnNameIndexMap; + private List _sgColumns; + private List _aliasColumns; + private TSTracingInfo _tracingInfo; + + public TSStatus Status { get; set; } + + public long QueryId + { + get + { + return _queryId; + } + set + { + __isset.queryId = true; + this._queryId = value; + } + } + + public List Columns + { + get + { + return _columns; + } + set + { + __isset.columns = true; + this._columns = value; + } + } + + public string OperationType + { + get + { + return _operationType; + } + set + { + __isset.operationType = true; + this._operationType = value; + } + } + + public bool IgnoreTimeStamp + { + get + { + return _ignoreTimeStamp; + } + set + { + __isset.ignoreTimeStamp = true; + this._ignoreTimeStamp = value; + } + } + + public List DataTypeList + { + get + { + return _dataTypeList; + } + set + { + __isset.dataTypeList = true; + this._dataTypeList = value; + } + } + + public TSQueryDataSet QueryDataSet + { + get + { + return _queryDataSet; + } + set + { + __isset.queryDataSet = true; + this._queryDataSet = value; + } + } + + public TSQueryNonAlignDataSet NonAlignQueryDataSet + { + get + { + return _nonAlignQueryDataSet; + } + set + { + __isset.nonAlignQueryDataSet = true; + this._nonAlignQueryDataSet = value; + } + } + + public Dictionary ColumnNameIndexMap + { + get + { + return _columnNameIndexMap; + } + set + { + __isset.columnNameIndexMap = true; + this._columnNameIndexMap = value; + } + } + + public List SgColumns + { + get + { + return _sgColumns; + } + set + { + __isset.sgColumns = true; + this._sgColumns = value; + } + } + + public List AliasColumns + { + get + { + return _aliasColumns; + } + set + { + __isset.aliasColumns = true; + this._aliasColumns = value; + } + } + + public TSTracingInfo TracingInfo + { + get + { + return _tracingInfo; + } + set + { + __isset.tracingInfo = true; + this._tracingInfo = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool queryId; + public bool columns; + public bool operationType; + public bool ignoreTimeStamp; + public bool dataTypeList; + public bool queryDataSet; + public bool nonAlignQueryDataSet; + public bool columnNameIndexMap; + public bool sgColumns; + public bool aliasColumns; + public bool tracingInfo; + } + + public TSExecuteStatementResp() + { + } + + public TSExecuteStatementResp(TSStatus status) : this() + { + this.Status = status; + } + + public TSExecuteStatementResp DeepCopy() + { + var tmp38 = new TSExecuteStatementResp(); + if((Status != null)) + { + tmp38.Status = (TSStatus)this.Status.DeepCopy(); + } + if(__isset.queryId) + { + tmp38.QueryId = this.QueryId; + } + tmp38.__isset.queryId = this.__isset.queryId; + if((Columns != null) && __isset.columns) + { + tmp38.Columns = this.Columns.DeepCopy(); + } + tmp38.__isset.columns = this.__isset.columns; + if((OperationType != null) && __isset.operationType) + { + tmp38.OperationType = this.OperationType; + } + tmp38.__isset.operationType = this.__isset.operationType; + if(__isset.ignoreTimeStamp) + { + tmp38.IgnoreTimeStamp = this.IgnoreTimeStamp; + } + tmp38.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; + if((DataTypeList != null) && __isset.dataTypeList) + { + tmp38.DataTypeList = this.DataTypeList.DeepCopy(); + } + tmp38.__isset.dataTypeList = this.__isset.dataTypeList; + if((QueryDataSet != null) && __isset.queryDataSet) + { + tmp38.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + } + tmp38.__isset.queryDataSet = this.__isset.queryDataSet; + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + tmp38.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + } + tmp38.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + tmp38.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + } + tmp38.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; + if((SgColumns != null) && __isset.sgColumns) + { + tmp38.SgColumns = this.SgColumns.DeepCopy(); + } + tmp38.__isset.sgColumns = this.__isset.sgColumns; + if((AliasColumns != null) && __isset.aliasColumns) + { + tmp38.AliasColumns = this.AliasColumns.DeepCopy(); + } + tmp38.__isset.aliasColumns = this.__isset.aliasColumns; + if((TracingInfo != null) && __isset.tracingInfo) + { + tmp38.TracingInfo = (TSTracingInfo)this.TracingInfo.DeepCopy(); + } + tmp38.__isset.tracingInfo = this.__isset.tracingInfo; + return tmp38; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list39 = await iprot.ReadListBeginAsync(cancellationToken); + Columns = new List(_list39.Count); + for(int _i40 = 0; _i40 < _list39.Count; ++_i40) + { + string _elem41; + _elem41 = await iprot.ReadStringAsync(cancellationToken); + Columns.Add(_elem41); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + OperationType = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.Bool) + { + IgnoreTimeStamp = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list42 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypeList = new List(_list42.Count); + for(int _i43 = 0; _i43 < _list42.Count; ++_i43) + { + string _elem44; + _elem44 = await iprot.ReadStringAsync(cancellationToken); + DataTypeList.Add(_elem44); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Struct) + { + QueryDataSet = new TSQueryDataSet(); + await QueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.Struct) + { + NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); + await NonAlignQueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.Map) + { + { + TMap _map45 = await iprot.ReadMapBeginAsync(cancellationToken); + ColumnNameIndexMap = new Dictionary(_map45.Count); + for(int _i46 = 0; _i46 < _map45.Count; ++_i46) + { + string _key47; + int _val48; + _key47 = await iprot.ReadStringAsync(cancellationToken); + _val48 = await iprot.ReadI32Async(cancellationToken); + ColumnNameIndexMap[_key47] = _val48; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.List) + { + { + TList _list49 = await iprot.ReadListBeginAsync(cancellationToken); + SgColumns = new List(_list49.Count); + for(int _i50 = 0; _i50 < _list49.Count; ++_i50) + { + string _elem51; + _elem51 = await iprot.ReadStringAsync(cancellationToken); + SgColumns.Add(_elem51); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 11: + if (field.Type == TType.List) + { + { + TList _list52 = await iprot.ReadListBeginAsync(cancellationToken); + AliasColumns = new List(_list52.Count); + for(int _i53 = 0; _i53 < _list52.Count; ++_i53) + { + sbyte _elem54; + _elem54 = await iprot.ReadByteAsync(cancellationToken); + AliasColumns.Add(_elem54); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 12: + if (field.Type == TType.Struct) + { + TracingInfo = new TSTracingInfo(); + await TracingInfo.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSExecuteStatementResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.queryId) + { + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Columns != null) && __isset.columns) + { + field.Name = "columns"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Columns.Count), cancellationToken); + foreach (string _iter55 in Columns) + { + await oprot.WriteStringAsync(_iter55, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((OperationType != null) && __isset.operationType) + { + field.Name = "operationType"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(OperationType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.ignoreTimeStamp) + { + field.Name = "ignoreTimeStamp"; + field.Type = TType.Bool; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IgnoreTimeStamp, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataTypeList != null) && __isset.dataTypeList) + { + field.Name = "dataTypeList"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, DataTypeList.Count), cancellationToken); + foreach (string _iter56 in DataTypeList) + { + await oprot.WriteStringAsync(_iter56, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((QueryDataSet != null) && __isset.queryDataSet) + { + field.Name = "queryDataSet"; + field.Type = TType.Struct; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await QueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + field.Name = "nonAlignQueryDataSet"; + field.Type = TType.Struct; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + field.Name = "columnNameIndexMap"; + field.Type = TType.Map; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count), cancellationToken); + foreach (string _iter57 in ColumnNameIndexMap.Keys) + { + await oprot.WriteStringAsync(_iter57, cancellationToken); + await oprot.WriteI32Async(ColumnNameIndexMap[_iter57], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SgColumns != null) && __isset.sgColumns) + { + field.Name = "sgColumns"; + field.Type = TType.List; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, SgColumns.Count), cancellationToken); + foreach (string _iter58 in SgColumns) + { + await oprot.WriteStringAsync(_iter58, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + field.Name = "aliasColumns"; + field.Type = TType.List; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Byte, AliasColumns.Count), cancellationToken); + foreach (sbyte _iter59 in AliasColumns) + { + await oprot.WriteByteAsync(_iter59, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + field.Name = "tracingInfo"; + field.Type = TType.Struct; + field.ID = 12; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await TracingInfo.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSExecuteStatementResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && ((__isset.queryId == other.__isset.queryId) && ((!__isset.queryId) || (System.Object.Equals(QueryId, other.QueryId)))) + && ((__isset.columns == other.__isset.columns) && ((!__isset.columns) || (TCollections.Equals(Columns, other.Columns)))) + && ((__isset.operationType == other.__isset.operationType) && ((!__isset.operationType) || (System.Object.Equals(OperationType, other.OperationType)))) + && ((__isset.ignoreTimeStamp == other.__isset.ignoreTimeStamp) && ((!__isset.ignoreTimeStamp) || (System.Object.Equals(IgnoreTimeStamp, other.IgnoreTimeStamp)))) + && ((__isset.dataTypeList == other.__isset.dataTypeList) && ((!__isset.dataTypeList) || (TCollections.Equals(DataTypeList, other.DataTypeList)))) + && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) + && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))) + && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))) + && ((__isset.sgColumns == other.__isset.sgColumns) && ((!__isset.sgColumns) || (TCollections.Equals(SgColumns, other.SgColumns)))) + && ((__isset.aliasColumns == other.__isset.aliasColumns) && ((!__isset.aliasColumns) || (TCollections.Equals(AliasColumns, other.AliasColumns)))) + && ((__isset.tracingInfo == other.__isset.tracingInfo) && ((!__isset.tracingInfo) || (System.Object.Equals(TracingInfo, other.TracingInfo)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if(__isset.queryId) + { + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + if((Columns != null) && __isset.columns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Columns); + } + if((OperationType != null) && __isset.operationType) + { + hashcode = (hashcode * 397) + OperationType.GetHashCode(); + } + if(__isset.ignoreTimeStamp) + { + hashcode = (hashcode * 397) + IgnoreTimeStamp.GetHashCode(); + } + if((DataTypeList != null) && __isset.dataTypeList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypeList); + } + if((QueryDataSet != null) && __isset.queryDataSet) + { + hashcode = (hashcode * 397) + QueryDataSet.GetHashCode(); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); + } + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnNameIndexMap); + } + if((SgColumns != null) && __isset.sgColumns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SgColumns); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(AliasColumns); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + hashcode = (hashcode * 397) + TracingInfo.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSExecuteStatementResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if(__isset.queryId) + { + sb.Append(", QueryId: "); + QueryId.ToString(sb); + } + if((Columns != null) && __isset.columns) + { + sb.Append(", Columns: "); + Columns.ToString(sb); + } + if((OperationType != null) && __isset.operationType) + { + sb.Append(", OperationType: "); + OperationType.ToString(sb); + } + if(__isset.ignoreTimeStamp) + { + sb.Append(", IgnoreTimeStamp: "); + IgnoreTimeStamp.ToString(sb); + } + if((DataTypeList != null) && __isset.dataTypeList) + { + sb.Append(", DataTypeList: "); + DataTypeList.ToString(sb); + } + if((QueryDataSet != null) && __isset.queryDataSet) + { + sb.Append(", QueryDataSet: "); + QueryDataSet.ToString(sb); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + sb.Append(", NonAlignQueryDataSet: "); + NonAlignQueryDataSet.ToString(sb); + } + if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) + { + sb.Append(", ColumnNameIndexMap: "); + ColumnNameIndexMap.ToString(sb); + } + if((SgColumns != null) && __isset.sgColumns) + { + sb.Append(", SgColumns: "); + SgColumns.ToString(sb); + } + if((AliasColumns != null) && __isset.aliasColumns) + { + sb.Append(", AliasColumns: "); + AliasColumns.ToString(sb); + } + if((TracingInfo != null) && __isset.tracingInfo) + { + sb.Append(", TracingInfo: "); + TracingInfo.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataReq.cs new file mode 100644 index 0000000..4b998c3 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataReq.cs @@ -0,0 +1,246 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSFetchMetadataReq : TBase +{ + private string _columnPath; + + public long SessionId { get; set; } + + public string Type { get; set; } + + public string ColumnPath + { + get + { + return _columnPath; + } + set + { + __isset.columnPath = true; + this._columnPath = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool columnPath; + } + + public TSFetchMetadataReq() + { + } + + public TSFetchMetadataReq(long sessionId, string type) : this() + { + this.SessionId = sessionId; + this.Type = type; + } + + public TSFetchMetadataReq DeepCopy() + { + var tmp101 = new TSFetchMetadataReq(); + tmp101.SessionId = this.SessionId; + if((Type != null)) + { + tmp101.Type = this.Type; + } + if((ColumnPath != null) && __isset.columnPath) + { + tmp101.ColumnPath = this.ColumnPath; + } + tmp101.__isset.columnPath = this.__isset.columnPath; + return tmp101; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_type = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Type = await iprot.ReadStringAsync(cancellationToken); + isset_type = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + ColumnPath = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_type) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSFetchMetadataReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Type != null)) + { + field.Name = "type"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Type, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ColumnPath != null) && __isset.columnPath) + { + field.Name = "columnPath"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(ColumnPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSFetchMetadataReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Type, other.Type) + && ((__isset.columnPath == other.__isset.columnPath) && ((!__isset.columnPath) || (System.Object.Equals(ColumnPath, other.ColumnPath)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Type != null)) + { + hashcode = (hashcode * 397) + Type.GetHashCode(); + } + if((ColumnPath != null) && __isset.columnPath) + { + hashcode = (hashcode * 397) + ColumnPath.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSFetchMetadataReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Type != null)) + { + sb.Append(", Type: "); + Type.ToString(sb); + } + if((ColumnPath != null) && __isset.columnPath) + { + sb.Append(", ColumnPath: "); + ColumnPath.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataResp.cs new file mode 100644 index 0000000..751f6d9 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSFetchMetadataResp.cs @@ -0,0 +1,332 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSFetchMetadataResp : TBase +{ + private string _metadataInJson; + private List _columnsList; + private string _dataType; + + public TSStatus Status { get; set; } + + public string MetadataInJson + { + get + { + return _metadataInJson; + } + set + { + __isset.metadataInJson = true; + this._metadataInJson = value; + } + } + + public List ColumnsList + { + get + { + return _columnsList; + } + set + { + __isset.columnsList = true; + this._columnsList = value; + } + } + + public string DataType + { + get + { + return _dataType; + } + set + { + __isset.dataType = true; + this._dataType = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool metadataInJson; + public bool columnsList; + public bool dataType; + } + + public TSFetchMetadataResp() + { + } + + public TSFetchMetadataResp(TSStatus status) : this() + { + this.Status = status; + } + + public TSFetchMetadataResp DeepCopy() + { + var tmp95 = new TSFetchMetadataResp(); + if((Status != null)) + { + tmp95.Status = (TSStatus)this.Status.DeepCopy(); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { + tmp95.MetadataInJson = this.MetadataInJson; + } + tmp95.__isset.metadataInJson = this.__isset.metadataInJson; + if((ColumnsList != null) && __isset.columnsList) + { + tmp95.ColumnsList = this.ColumnsList.DeepCopy(); + } + tmp95.__isset.columnsList = this.__isset.columnsList; + if((DataType != null) && __isset.dataType) + { + tmp95.DataType = this.DataType; + } + tmp95.__isset.dataType = this.__isset.dataType; + return tmp95; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + MetadataInJson = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); + ColumnsList = new List(_list96.Count); + for(int _i97 = 0; _i97 < _list96.Count; ++_i97) + { + string _elem98; + _elem98 = await iprot.ReadStringAsync(cancellationToken); + ColumnsList.Add(_elem98); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + DataType = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSFetchMetadataResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { + field.Name = "metadataInJson"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(MetadataInJson, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ColumnsList != null) && __isset.columnsList) + { + field.Name = "columnsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ColumnsList.Count), cancellationToken); + foreach (string _iter99 in ColumnsList) + { + await oprot.WriteStringAsync(_iter99, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataType != null) && __isset.dataType) + { + field.Name = "dataType"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(DataType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSFetchMetadataResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && ((__isset.metadataInJson == other.__isset.metadataInJson) && ((!__isset.metadataInJson) || (System.Object.Equals(MetadataInJson, other.MetadataInJson)))) + && ((__isset.columnsList == other.__isset.columnsList) && ((!__isset.columnsList) || (TCollections.Equals(ColumnsList, other.ColumnsList)))) + && ((__isset.dataType == other.__isset.dataType) && ((!__isset.dataType) || (System.Object.Equals(DataType, other.DataType)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { + hashcode = (hashcode * 397) + MetadataInJson.GetHashCode(); + } + if((ColumnsList != null) && __isset.columnsList) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnsList); + } + if((DataType != null) && __isset.dataType) + { + hashcode = (hashcode * 397) + DataType.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSFetchMetadataResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if((MetadataInJson != null) && __isset.metadataInJson) + { + sb.Append(", MetadataInJson: "); + MetadataInJson.ToString(sb); + } + if((ColumnsList != null) && __isset.columnsList) + { + sb.Append(", ColumnsList: "); + ColumnsList.ToString(sb); + } + if((DataType != null) && __isset.dataType) + { + sb.Append(", DataType: "); + DataType.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs new file mode 100644 index 0000000..9ef28d6 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs @@ -0,0 +1,336 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSFetchResultsReq : TBase +{ + private long _timeout; + + public long SessionId { get; set; } + + public string Statement { get; set; } + + public int FetchSize { get; set; } + + public long QueryId { get; set; } + + public bool IsAlign { get; set; } + + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool timeout; + } + + public TSFetchResultsReq() + { + } + + public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long queryId, bool isAlign) : this() + { + this.SessionId = sessionId; + this.Statement = statement; + this.FetchSize = fetchSize; + this.QueryId = queryId; + this.IsAlign = isAlign; + } + + public TSFetchResultsReq DeepCopy() + { + var tmp91 = new TSFetchResultsReq(); + tmp91.SessionId = this.SessionId; + if((Statement != null)) + { + tmp91.Statement = this.Statement; + } + tmp91.FetchSize = this.FetchSize; + tmp91.QueryId = this.QueryId; + tmp91.IsAlign = this.IsAlign; + if(__isset.timeout) + { + tmp91.Timeout = this.Timeout; + } + tmp91.__isset.timeout = this.__isset.timeout; + return tmp91; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_statement = false; + bool isset_fetchSize = false; + bool isset_queryId = false; + bool isset_isAlign = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Statement = await iprot.ReadStringAsync(cancellationToken); + isset_statement = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + isset_fetchSize = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + isset_queryId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.Bool) + { + IsAlign = await iprot.ReadBoolAsync(cancellationToken); + isset_isAlign = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statement) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_fetchSize) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_isAlign) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSFetchResultsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Statement != null)) + { + field.Name = "statement"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Statement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "isAlign"; + field.Type = TType.Bool; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAlign, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.timeout) + { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSFetchResultsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Statement, other.Statement) + && System.Object.Equals(FetchSize, other.FetchSize) + && System.Object.Equals(QueryId, other.QueryId) + && System.Object.Equals(IsAlign, other.IsAlign) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Statement != null)) + { + hashcode = (hashcode * 397) + Statement.GetHashCode(); + } + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + hashcode = (hashcode * 397) + IsAlign.GetHashCode(); + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSFetchResultsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Statement != null)) + { + sb.Append(", Statement: "); + Statement.ToString(sb); + } + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + sb.Append(", QueryId: "); + QueryId.ToString(sb); + sb.Append(", IsAlign: "); + IsAlign.ToString(sb); + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs new file mode 100644 index 0000000..6b178c5 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs @@ -0,0 +1,328 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSFetchResultsResp : TBase +{ + private TSQueryDataSet _queryDataSet; + private TSQueryNonAlignDataSet _nonAlignQueryDataSet; + + public TSStatus Status { get; set; } + + public bool HasResultSet { get; set; } + + public bool IsAlign { get; set; } + + public TSQueryDataSet QueryDataSet + { + get + { + return _queryDataSet; + } + set + { + __isset.queryDataSet = true; + this._queryDataSet = value; + } + } + + public TSQueryNonAlignDataSet NonAlignQueryDataSet + { + get + { + return _nonAlignQueryDataSet; + } + set + { + __isset.nonAlignQueryDataSet = true; + this._nonAlignQueryDataSet = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool queryDataSet; + public bool nonAlignQueryDataSet; + } + + public TSFetchResultsResp() + { + } + + public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : this() + { + this.Status = status; + this.HasResultSet = hasResultSet; + this.IsAlign = isAlign; + } + + public TSFetchResultsResp DeepCopy() + { + var tmp93 = new TSFetchResultsResp(); + if((Status != null)) + { + tmp93.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp93.HasResultSet = this.HasResultSet; + tmp93.IsAlign = this.IsAlign; + if((QueryDataSet != null) && __isset.queryDataSet) + { + tmp93.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + } + tmp93.__isset.queryDataSet = this.__isset.queryDataSet; + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + tmp93.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + } + tmp93.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + return tmp93; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_hasResultSet = false; + bool isset_isAlign = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.Bool) + { + HasResultSet = await iprot.ReadBoolAsync(cancellationToken); + isset_hasResultSet = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + IsAlign = await iprot.ReadBoolAsync(cancellationToken); + isset_isAlign = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.Struct) + { + QueryDataSet = new TSQueryDataSet(); + await QueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.Struct) + { + NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); + await NonAlignQueryDataSet.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_hasResultSet) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_isAlign) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSFetchResultsResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "hasResultSet"; + field.Type = TType.Bool; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(HasResultSet, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "isAlign"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAlign, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((QueryDataSet != null) && __isset.queryDataSet) + { + field.Name = "queryDataSet"; + field.Type = TType.Struct; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await QueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + field.Name = "nonAlignQueryDataSet"; + field.Type = TType.Struct; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSFetchResultsResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(HasResultSet, other.HasResultSet) + && System.Object.Equals(IsAlign, other.IsAlign) + && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) + && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + HasResultSet.GetHashCode(); + hashcode = (hashcode * 397) + IsAlign.GetHashCode(); + if((QueryDataSet != null) && __isset.queryDataSet) + { + hashcode = (hashcode * 397) + QueryDataSet.GetHashCode(); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSFetchResultsResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", HasResultSet: "); + HasResultSet.ToString(sb); + sb.Append(", IsAlign: "); + IsAlign.ToString(sb); + if((QueryDataSet != null) && __isset.queryDataSet) + { + sb.Append(", QueryDataSet: "); + QueryDataSet.ToString(sb); + } + if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) + { + sb.Append(", NonAlignQueryDataSet: "); + NonAlignQueryDataSet.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs new file mode 100644 index 0000000..27718fb --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs @@ -0,0 +1,179 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSGetOperationStatusReq : TBase +{ + + public long SessionId { get; set; } + + public long QueryId { get; set; } + + public TSGetOperationStatusReq() + { + } + + public TSGetOperationStatusReq(long sessionId, long queryId) : this() + { + this.SessionId = sessionId; + this.QueryId = queryId; + } + + public TSGetOperationStatusReq DeepCopy() + { + var tmp85 = new TSGetOperationStatusReq(); + tmp85.SessionId = this.SessionId; + tmp85.QueryId = this.QueryId; + return tmp85; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_queryId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + QueryId = await iprot.ReadI64Async(cancellationToken); + isset_queryId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSGetOperationStatusReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "queryId"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(QueryId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSGetOperationStatusReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(QueryId, other.QueryId); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + QueryId.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSGetOperationStatusReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + sb.Append(", QueryId: "); + QueryId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSGetTimeZoneResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSGetTimeZoneResp.cs new file mode 100644 index 0000000..4dca3ad --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSGetTimeZoneResp.cs @@ -0,0 +1,204 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSGetTimeZoneResp : TBase +{ + + public TSStatus Status { get; set; } + + public string TimeZone { get; set; } + + public TSGetTimeZoneResp() + { + } + + public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() + { + this.Status = status; + this.TimeZone = timeZone; + } + + public TSGetTimeZoneResp DeepCopy() + { + var tmp103 = new TSGetTimeZoneResp(); + if((Status != null)) + { + tmp103.Status = (TSStatus)this.Status.DeepCopy(); + } + if((TimeZone != null)) + { + tmp103.TimeZone = this.TimeZone; + } + return tmp103; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_timeZone = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TimeZone = await iprot.ReadStringAsync(cancellationToken); + isset_timeZone = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timeZone) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSGetTimeZoneResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TimeZone != null)) + { + field.Name = "timeZone"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TimeZone, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSGetTimeZoneResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(TimeZone, other.TimeZone); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if((TimeZone != null)) + { + hashcode = (hashcode * 397) + TimeZone.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSGetTimeZoneResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if((TimeZone != null)) + { + sb.Append(", TimeZone: "); + TimeZone.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSIService.cs b/src/Apache.IoTDB/Rpc/Generated/TSIService.cs new file mode 100644 index 0000000..964e1aa --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSIService.cs @@ -0,0 +1,16153 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public partial class TSIService +{ + public interface IAsync + { + global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeBatchStatementAsync(TSExecuteBatchStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeQueryStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeUpdateStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task fetchResultsAsync(TSFetchResultsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task fetchMetadataAsync(TSFetchMetadataReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task cancelOperationAsync(TSCancelOperationReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task closeOperationAsync(TSCloseOperationReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task getTimeZoneAsync(long sessionId, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task setTimeZoneAsync(TSSetTimeZoneReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task getPropertiesAsync(CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task setStorageGroupAsync(long sessionId, string storageGroup, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task deleteStorageGroupsAsync(long sessionId, List storageGroup, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task testInsertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task deleteDataAsync(TSDeleteDataReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default); + + } + + + public class Client : TBaseClient, IDisposable, IAsync + { + public Client(TProtocol protocol) : this(protocol, protocol) + { + } + + public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputProtocol, outputProtocol) { + } + public async global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.openSessionArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.openSessionResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "openSession failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.closeSessionArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.closeSessionResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeSession failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeStatement failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeBatchStatementAsync(TSExecuteBatchStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeBatchStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeBatchStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeBatchStatement failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeQueryStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeQueryStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeQueryStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeQueryStatement failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeUpdateStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeUpdateStatementArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeUpdateStatementResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeUpdateStatement failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task fetchResultsAsync(TSFetchResultsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.fetchResultsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.fetchResultsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchResults failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task fetchMetadataAsync(TSFetchMetadataReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.fetchMetadataArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.fetchMetadataResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchMetadata failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task cancelOperationAsync(TSCancelOperationReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.cancelOperationArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.cancelOperationResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "cancelOperation failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task closeOperationAsync(TSCloseOperationReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.closeOperationArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.closeOperationResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeOperation failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task getTimeZoneAsync(long sessionId, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.getTimeZoneArgs() { + SessionId = sessionId, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.getTimeZoneResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getTimeZone failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task setTimeZoneAsync(TSSetTimeZoneReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setTimeZoneArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.setTimeZoneResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setTimeZone failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task getPropertiesAsync(CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.getPropertiesArgs() { + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.getPropertiesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getProperties failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task setStorageGroupAsync(long sessionId, string storageGroup, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setStorageGroupArgs() { + SessionId = sessionId, + StorageGroup = storageGroup, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.setStorageGroupResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setStorageGroup failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.createTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createAlignedTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.createAlignedTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createAlignedTimeseries failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createMultiTimeseriesArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.createMultiTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createMultiTimeseries failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.deleteTimeseriesArgs() { + SessionId = sessionId, + Path = path, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.deleteTimeseriesResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteTimeseries failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task deleteStorageGroupsAsync(long sessionId, List storageGroup, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.deleteStorageGroupsArgs() { + SessionId = sessionId, + StorageGroup = storageGroup, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.deleteStorageGroupsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteStorageGroups failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecord failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertStringRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecord failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertTabletArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertTabletResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablet failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertTabletsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertTabletsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablets failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecords failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecordsOfOneDevice failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.insertStringRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.insertStringRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecords failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertTabletArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertTabletResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablet failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertTabletsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertTabletsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablets failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecord failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertStringRecordArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertStringRecordResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecord failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecords failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertRecordsOfOneDeviceArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertRecordsOfOneDeviceResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecordsOfOneDevice failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task testInsertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.testInsertStringRecordsArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.testInsertStringRecordsResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecords failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task deleteDataAsync(TSDeleteDataReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.deleteDataArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.deleteDataResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteData failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeRawDataQueryArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeRawDataQueryResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeLastDataQueryArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeLastDataQueryResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeLastDataQuery failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.requestStatementIdArgs() { + SessionId = sessionId, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.requestStatementIdResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.createSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.createSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.appendSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.appendSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "appendSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.pruneSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.pruneSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "pruneSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.querySchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.querySchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "querySchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.setSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.setSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.unsetSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.unsetSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "unsetSchemaTemplate failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.dropSchemaTemplateArgs() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.dropSchemaTemplateResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "dropSchemaTemplate failed: unknown result"); + } + + } + + public class AsyncProcessor : ITAsyncProcessor + { + private readonly IAsync _iAsync; + private readonly ILogger _logger; + + public AsyncProcessor(IAsync iAsync, ILogger logger = default) + { + _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); + _logger = logger; + processMap_["openSession"] = openSession_ProcessAsync; + processMap_["closeSession"] = closeSession_ProcessAsync; + processMap_["executeStatement"] = executeStatement_ProcessAsync; + processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; + processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; + processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; + processMap_["fetchResults"] = fetchResults_ProcessAsync; + processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; + processMap_["cancelOperation"] = cancelOperation_ProcessAsync; + processMap_["closeOperation"] = closeOperation_ProcessAsync; + processMap_["getTimeZone"] = getTimeZone_ProcessAsync; + processMap_["setTimeZone"] = setTimeZone_ProcessAsync; + processMap_["getProperties"] = getProperties_ProcessAsync; + processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; + processMap_["createTimeseries"] = createTimeseries_ProcessAsync; + processMap_["createAlignedTimeseries"] = createAlignedTimeseries_ProcessAsync; + processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; + processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; + processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; + processMap_["insertRecord"] = insertRecord_ProcessAsync; + processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; + processMap_["insertTablet"] = insertTablet_ProcessAsync; + processMap_["insertTablets"] = insertTablets_ProcessAsync; + processMap_["insertRecords"] = insertRecords_ProcessAsync; + processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecordsOfOneDevice"] = insertStringRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; + processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; + processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; + processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; + processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; + processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; + processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; + processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; + processMap_["deleteData"] = deleteData_ProcessAsync; + processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; + processMap_["executeLastDataQuery"] = executeLastDataQuery_ProcessAsync; + processMap_["requestStatementId"] = requestStatementId_ProcessAsync; + processMap_["createSchemaTemplate"] = createSchemaTemplate_ProcessAsync; + processMap_["appendSchemaTemplate"] = appendSchemaTemplate_ProcessAsync; + processMap_["pruneSchemaTemplate"] = pruneSchemaTemplate_ProcessAsync; + processMap_["querySchemaTemplate"] = querySchemaTemplate_ProcessAsync; + processMap_["setSchemaTemplate"] = setSchemaTemplate_ProcessAsync; + processMap_["unsetSchemaTemplate"] = unsetSchemaTemplate_ProcessAsync; + processMap_["dropSchemaTemplate"] = dropSchemaTemplate_ProcessAsync; + } + + protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); + protected Dictionary processMap_ = new Dictionary(); + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) + { + return await ProcessAsync(iprot, oprot, CancellationToken.None); + } + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + try + { + var msg = await iprot.ReadMessageBeginAsync(cancellationToken); + + processMap_.TryGetValue(msg.Name, out ProcessFunction fn); + + if (fn == null) + { + await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); + await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + return true; + } + + await fn(msg.SeqID, iprot, oprot, cancellationToken); + + } + catch (IOException) + { + return false; + } + + return true; + } + + public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.openSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.openSessionResult(); + try + { + result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.closeSessionArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeSessionResult(); + try + { + result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task executeStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeStatementResult(); + try + { + result.Success = await _iAsync.executeStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task executeBatchStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeBatchStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeBatchStatementResult(); + try + { + result.Success = await _iAsync.executeBatchStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task executeQueryStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeQueryStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeQueryStatementResult(); + try + { + result.Success = await _iAsync.executeQueryStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task executeUpdateStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeUpdateStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeUpdateStatementResult(); + try + { + result.Success = await _iAsync.executeUpdateStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task fetchResults_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.fetchResultsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchResultsResult(); + try + { + result.Success = await _iAsync.fetchResultsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task fetchMetadata_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.fetchMetadataArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchMetadataResult(); + try + { + result.Success = await _iAsync.fetchMetadataAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task cancelOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.cancelOperationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.cancelOperationResult(); + try + { + result.Success = await _iAsync.cancelOperationAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task closeOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.closeOperationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeOperationResult(); + try + { + result.Success = await _iAsync.closeOperationAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task getTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.getTimeZoneArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.getTimeZoneResult(); + try + { + result.Success = await _iAsync.getTimeZoneAsync(args.SessionId, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task setTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setTimeZoneArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setTimeZoneResult(); + try + { + result.Success = await _iAsync.setTimeZoneAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task getProperties_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.getPropertiesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.getPropertiesResult(); + try + { + result.Success = await _iAsync.getPropertiesAsync(cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task setStorageGroup_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setStorageGroupArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setStorageGroupResult(); + try + { + result.Success = await _iAsync.setStorageGroupAsync(args.SessionId, args.StorageGroup, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task createTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.createTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createTimeseriesResult(); + try + { + result.Success = await _iAsync.createTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task createAlignedTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.createAlignedTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createAlignedTimeseriesResult(); + try + { + result.Success = await _iAsync.createAlignedTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.createMultiTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createMultiTimeseriesResult(); + try + { + result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.deleteTimeseriesArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteTimeseriesResult(); + try + { + result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.deleteStorageGroupsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteStorageGroupsResult(); + try + { + result.Success = await _iAsync.deleteStorageGroupsAsync(args.SessionId, args.StorageGroup, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertRecordResult(); + try + { + result.Success = await _iAsync.insertRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertStringRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertStringRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordResult(); + try + { + result.Success = await _iAsync.insertStringRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertTablet_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertTabletArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertTabletResult(); + try + { + result.Success = await _iAsync.insertTabletAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertTablets_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertTabletsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertTabletsResult(); + try + { + result.Success = await _iAsync.insertTabletsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertRecordsResult(); + try + { + result.Success = await _iAsync.insertRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertRecordsOfOneDeviceResult(); + try + { + result.Success = await _iAsync.insertRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); + try + { + result.Success = await _iAsync.insertStringRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task insertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.insertStringRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.insertStringRecordsResult(); + try + { + result.Success = await _iAsync.insertStringRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertTablet_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertTabletArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertTabletResult(); + try + { + result.Success = await _iAsync.testInsertTabletAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertTablets_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertTabletsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertTabletsResult(); + try + { + result.Success = await _iAsync.testInsertTabletsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertRecordResult(); + try + { + result.Success = await _iAsync.testInsertRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertStringRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertStringRecordArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertStringRecordResult(); + try + { + result.Success = await _iAsync.testInsertStringRecordAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertRecordsResult(); + try + { + result.Success = await _iAsync.testInsertRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertRecordsOfOneDeviceArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertRecordsOfOneDeviceResult(); + try + { + result.Success = await _iAsync.testInsertRecordsOfOneDeviceAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task testInsertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.testInsertStringRecordsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.testInsertStringRecordsResult(); + try + { + result.Success = await _iAsync.testInsertStringRecordsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task deleteData_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.deleteDataArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.deleteDataResult(); + try + { + result.Success = await _iAsync.deleteDataAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task executeRawDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeRawDataQueryArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeRawDataQueryResult(); + try + { + result.Success = await _iAsync.executeRawDataQueryAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task executeLastDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.executeLastDataQueryArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeLastDataQueryResult(); + try + { + result.Success = await _iAsync.executeLastDataQueryAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task requestStatementId_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.requestStatementIdArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.requestStatementIdResult(); + try + { + result.Success = await _iAsync.requestStatementIdAsync(args.SessionId, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task createSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.createSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.createSchemaTemplateResult(); + try + { + result.Success = await _iAsync.createSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task appendSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.appendSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.appendSchemaTemplateResult(); + try + { + result.Success = await _iAsync.appendSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task pruneSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.pruneSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.pruneSchemaTemplateResult(); + try + { + result.Success = await _iAsync.pruneSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task querySchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.querySchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.querySchemaTemplateResult(); + try + { + result.Success = await _iAsync.querySchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task setSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setSchemaTemplateResult(); + try + { + result.Success = await _iAsync.setSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.unsetSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.unsetSchemaTemplateResult(); + try + { + result.Success = await _iAsync.unsetSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.dropSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.dropSchemaTemplateResult(); + try + { + result.Success = await _iAsync.dropSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + } + + public class InternalStructs + { + + public partial class openSessionArgs : TBase + { + private TSOpenSessionReq _req; + + public TSOpenSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public openSessionArgs() + { + } + + public openSessionArgs DeepCopy() + { + var tmp421 = new openSessionArgs(); + if((Req != null) && __isset.req) + { + tmp421.Req = (TSOpenSessionReq)this.Req.DeepCopy(); + } + tmp421.__isset.req = this.__isset.req; + return tmp421; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSOpenSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_args("); + int tmp422 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp422++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class openSessionResult : TBase + { + private TSOpenSessionResp _success; + + public TSOpenSessionResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public openSessionResult() + { + } + + public openSessionResult DeepCopy() + { + var tmp423 = new openSessionResult(); + if((Success != null) && __isset.success) + { + tmp423.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + } + tmp423.__isset.success = this.__isset.success; + return tmp423; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSOpenSessionResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_result("); + int tmp424 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp424++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionArgs : TBase + { + private TSCloseSessionReq _req; + + public TSCloseSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeSessionArgs() + { + } + + public closeSessionArgs DeepCopy() + { + var tmp425 = new closeSessionArgs(); + if((Req != null) && __isset.req) + { + tmp425.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + } + tmp425.__isset.req = this.__isset.req; + return tmp425; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_args("); + int tmp426 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp426++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeSessionResult() + { + } + + public closeSessionResult DeepCopy() + { + var tmp427 = new closeSessionResult(); + if((Success != null) && __isset.success) + { + tmp427.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp427.__isset.success = this.__isset.success; + return tmp427; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_result("); + int tmp428 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp428++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeStatementArgs() + { + } + + public executeStatementArgs DeepCopy() + { + var tmp429 = new executeStatementArgs(); + if((Req != null) && __isset.req) + { + tmp429.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp429.__isset.req = this.__isset.req; + return tmp429; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_args("); + int tmp430 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp430++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeStatementResult() + { + } + + public executeStatementResult DeepCopy() + { + var tmp431 = new executeStatementResult(); + if((Success != null) && __isset.success) + { + tmp431.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp431.__isset.success = this.__isset.success; + return tmp431; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_result("); + int tmp432 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp432++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementArgs : TBase + { + private TSExecuteBatchStatementReq _req; + + public TSExecuteBatchStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeBatchStatementArgs() + { + } + + public executeBatchStatementArgs DeepCopy() + { + var tmp433 = new executeBatchStatementArgs(); + if((Req != null) && __isset.req) + { + tmp433.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + } + tmp433.__isset.req = this.__isset.req; + return tmp433; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteBatchStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_args("); + int tmp434 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp434++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeBatchStatementResult() + { + } + + public executeBatchStatementResult DeepCopy() + { + var tmp435 = new executeBatchStatementResult(); + if((Success != null) && __isset.success) + { + tmp435.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp435.__isset.success = this.__isset.success; + return tmp435; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_result("); + int tmp436 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp436++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeQueryStatementArgs() + { + } + + public executeQueryStatementArgs DeepCopy() + { + var tmp437 = new executeQueryStatementArgs(); + if((Req != null) && __isset.req) + { + tmp437.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp437.__isset.req = this.__isset.req; + return tmp437; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_args("); + int tmp438 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp438++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeQueryStatementResult() + { + } + + public executeQueryStatementResult DeepCopy() + { + var tmp439 = new executeQueryStatementResult(); + if((Success != null) && __isset.success) + { + tmp439.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp439.__isset.success = this.__isset.success; + return tmp439; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_result("); + int tmp440 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp440++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeUpdateStatementArgs() + { + } + + public executeUpdateStatementArgs DeepCopy() + { + var tmp441 = new executeUpdateStatementArgs(); + if((Req != null) && __isset.req) + { + tmp441.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp441.__isset.req = this.__isset.req; + return tmp441; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatement_args("); + int tmp442 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp442++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeUpdateStatementResult() + { + } + + public executeUpdateStatementResult DeepCopy() + { + var tmp443 = new executeUpdateStatementResult(); + if((Success != null) && __isset.success) + { + tmp443.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp443.__isset.success = this.__isset.success; + return tmp443; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatement_result("); + int tmp444 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp444++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsArgs : TBase + { + private TSFetchResultsReq _req; + + public TSFetchResultsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchResultsArgs() + { + } + + public fetchResultsArgs DeepCopy() + { + var tmp445 = new fetchResultsArgs(); + if((Req != null) && __isset.req) + { + tmp445.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + } + tmp445.__isset.req = this.__isset.req; + return tmp445; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchResultsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResults_args("); + int tmp446 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp446++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsResult : TBase + { + private TSFetchResultsResp _success; + + public TSFetchResultsResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchResultsResult() + { + } + + public fetchResultsResult DeepCopy() + { + var tmp447 = new fetchResultsResult(); + if((Success != null) && __isset.success) + { + tmp447.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + } + tmp447.__isset.success = this.__isset.success; + return tmp447; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchResultsResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResults_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResults_result("); + int tmp448 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp448++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchMetadataArgs : TBase + { + private TSFetchMetadataReq _req; + + public TSFetchMetadataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchMetadataArgs() + { + } + + public fetchMetadataArgs DeepCopy() + { + var tmp449 = new fetchMetadataArgs(); + if((Req != null) && __isset.req) + { + tmp449.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); + } + tmp449.__isset.req = this.__isset.req; + return tmp449; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchMetadataReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchMetadataArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchMetadata_args("); + int tmp450 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp450++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchMetadataResult : TBase + { + private TSFetchMetadataResp _success; + + public TSFetchMetadataResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchMetadataResult() + { + } + + public fetchMetadataResult DeepCopy() + { + var tmp451 = new fetchMetadataResult(); + if((Success != null) && __isset.success) + { + tmp451.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + } + tmp451.__isset.success = this.__isset.success; + return tmp451; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchMetadataResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchMetadata_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchMetadataResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchMetadata_result("); + int tmp452 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp452++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class cancelOperationArgs : TBase + { + private TSCancelOperationReq _req; + + public TSCancelOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public cancelOperationArgs() + { + } + + public cancelOperationArgs DeepCopy() + { + var tmp453 = new cancelOperationArgs(); + if((Req != null) && __isset.req) + { + tmp453.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + } + tmp453.__isset.req = this.__isset.req; + return tmp453; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCancelOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is cancelOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("cancelOperation_args("); + int tmp454 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp454++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class cancelOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public cancelOperationResult() + { + } + + public cancelOperationResult DeepCopy() + { + var tmp455 = new cancelOperationResult(); + if((Success != null) && __isset.success) + { + tmp455.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp455.__isset.success = this.__isset.success; + return tmp455; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("cancelOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is cancelOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("cancelOperation_result("); + int tmp456 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp456++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeOperationArgs : TBase + { + private TSCloseOperationReq _req; + + public TSCloseOperationReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeOperationArgs() + { + } + + public closeOperationArgs DeepCopy() + { + var tmp457 = new closeOperationArgs(); + if((Req != null) && __isset.req) + { + tmp457.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + } + tmp457.__isset.req = this.__isset.req; + return tmp457; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseOperationReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeOperation_args("); + int tmp458 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp458++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeOperationResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeOperationResult() + { + } + + public closeOperationResult DeepCopy() + { + var tmp459 = new closeOperationResult(); + if((Success != null) && __isset.success) + { + tmp459.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp459.__isset.success = this.__isset.success; + return tmp459; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeOperation_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeOperationResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeOperation_result("); + int tmp460 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp460++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class getTimeZoneArgs : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + } + + public getTimeZoneArgs() + { + } + + public getTimeZoneArgs DeepCopy() + { + var tmp461 = new getTimeZoneArgs(); + if(__isset.sessionId) + { + tmp461.SessionId = this.SessionId; + } + tmp461.__isset.sessionId = this.__isset.sessionId; + return tmp461; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getTimeZone_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is getTimeZoneArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("getTimeZone_args("); + int tmp462 = 0; + if(__isset.sessionId) + { + if(0 < tmp462++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class getTimeZoneResult : TBase + { + private TSGetTimeZoneResp _success; + + public TSGetTimeZoneResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public getTimeZoneResult() + { + } + + public getTimeZoneResult DeepCopy() + { + var tmp463 = new getTimeZoneResult(); + if((Success != null) && __isset.success) + { + tmp463.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); + } + tmp463.__isset.success = this.__isset.success; + return tmp463; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSGetTimeZoneResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getTimeZone_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is getTimeZoneResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("getTimeZone_result("); + int tmp464 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp464++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class setTimeZoneArgs : TBase + { + private TSSetTimeZoneReq _req; + + public TSSetTimeZoneReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public setTimeZoneArgs() + { + } + + public setTimeZoneArgs DeepCopy() + { + var tmp465 = new setTimeZoneArgs(); + if((Req != null) && __isset.req) + { + tmp465.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); + } + tmp465.__isset.req = this.__isset.req; + return tmp465; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSSetTimeZoneReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setTimeZone_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is setTimeZoneArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("setTimeZone_args("); + int tmp466 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp466++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class setTimeZoneResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public setTimeZoneResult() + { + } + + public setTimeZoneResult DeepCopy() + { + var tmp467 = new setTimeZoneResult(); + if((Success != null) && __isset.success) + { + tmp467.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp467.__isset.success = this.__isset.success; + return tmp467; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setTimeZone_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is setTimeZoneResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("setTimeZone_result("); + int tmp468 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp468++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class getPropertiesArgs : TBase + { + + public getPropertiesArgs() + { + } + + public getPropertiesArgs DeepCopy() + { + var tmp469 = new getPropertiesArgs(); + return tmp469; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getProperties_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is getPropertiesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return true; + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("getProperties_args("); + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class getPropertiesResult : TBase + { + private ServerProperties _success; + + public ServerProperties Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public getPropertiesResult() + { + } + + public getPropertiesResult DeepCopy() + { + var tmp471 = new getPropertiesResult(); + if((Success != null) && __isset.success) + { + tmp471.Success = (ServerProperties)this.Success.DeepCopy(); + } + tmp471.__isset.success = this.__isset.success; + return tmp471; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new ServerProperties(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("getProperties_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is getPropertiesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("getProperties_result("); + int tmp472 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp472++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class setStorageGroupArgs : TBase + { + private long _sessionId; + private string _storageGroup; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public string StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool storageGroup; + } + + public setStorageGroupArgs() + { + } + + public setStorageGroupArgs DeepCopy() + { + var tmp473 = new setStorageGroupArgs(); + if(__isset.sessionId) + { + tmp473.SessionId = this.SessionId; + } + tmp473.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) + { + tmp473.StorageGroup = this.StorageGroup; + } + tmp473.__isset.storageGroup = this.__isset.storageGroup; + return tmp473; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + StorageGroup = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setStorageGroup_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(StorageGroup, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is setStorageGroupArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("setStorageGroup_args("); + int tmp474 = 0; + if(__isset.sessionId) + { + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class setStorageGroupResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public setStorageGroupResult() + { + } + + public setStorageGroupResult DeepCopy() + { + var tmp475 = new setStorageGroupResult(); + if((Success != null) && __isset.success) + { + tmp475.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp475.__isset.success = this.__isset.success; + return tmp475; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setStorageGroup_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is setStorageGroupResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("setStorageGroup_result("); + int tmp476 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp476++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createTimeseriesArgs : TBase + { + private TSCreateTimeseriesReq _req; + + public TSCreateTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public createTimeseriesArgs() + { + } + + public createTimeseriesArgs DeepCopy() + { + var tmp477 = new createTimeseriesArgs(); + if((Req != null) && __isset.req) + { + tmp477.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); + } + tmp477.__isset.req = this.__isset.req; + return tmp477; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCreateTimeseriesReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createTimeseries_args("); + int tmp478 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp478++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createTimeseriesResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public createTimeseriesResult() + { + } + + public createTimeseriesResult DeepCopy() + { + var tmp479 = new createTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp479.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp479.__isset.success = this.__isset.success; + return tmp479; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createTimeseries_result("); + int tmp480 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp480++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createAlignedTimeseriesArgs : TBase + { + private TSCreateAlignedTimeseriesReq _req; + + public TSCreateAlignedTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public createAlignedTimeseriesArgs() + { + } + + public createAlignedTimeseriesArgs DeepCopy() + { + var tmp481 = new createAlignedTimeseriesArgs(); + if((Req != null) && __isset.req) + { + tmp481.Req = (TSCreateAlignedTimeseriesReq)this.Req.DeepCopy(); + } + tmp481.__isset.req = this.__isset.req; + return tmp481; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCreateAlignedTimeseriesReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createAlignedTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createAlignedTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createAlignedTimeseries_args("); + int tmp482 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp482++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createAlignedTimeseriesResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public createAlignedTimeseriesResult() + { + } + + public createAlignedTimeseriesResult DeepCopy() + { + var tmp483 = new createAlignedTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp483.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp483.__isset.success = this.__isset.success; + return tmp483; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createAlignedTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createAlignedTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createAlignedTimeseries_result("); + int tmp484 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp484++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createMultiTimeseriesArgs : TBase + { + private TSCreateMultiTimeseriesReq _req; + + public TSCreateMultiTimeseriesReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public createMultiTimeseriesArgs() + { + } + + public createMultiTimeseriesArgs DeepCopy() + { + var tmp485 = new createMultiTimeseriesArgs(); + if((Req != null) && __isset.req) + { + tmp485.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); + } + tmp485.__isset.req = this.__isset.req; + return tmp485; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCreateMultiTimeseriesReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createMultiTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createMultiTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createMultiTimeseries_args("); + int tmp486 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp486++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createMultiTimeseriesResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public createMultiTimeseriesResult() + { + } + + public createMultiTimeseriesResult DeepCopy() + { + var tmp487 = new createMultiTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp487.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp487.__isset.success = this.__isset.success; + return tmp487; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createMultiTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createMultiTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createMultiTimeseries_result("); + int tmp488 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp488++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class deleteTimeseriesArgs : TBase + { + private long _sessionId; + private List _path; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List Path + { + get + { + return _path; + } + set + { + __isset.path = true; + this._path = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool path; + } + + public deleteTimeseriesArgs() + { + } + + public deleteTimeseriesArgs DeepCopy() + { + var tmp489 = new deleteTimeseriesArgs(); + if(__isset.sessionId) + { + tmp489.SessionId = this.SessionId; + } + tmp489.__isset.sessionId = this.__isset.sessionId; + if((Path != null) && __isset.path) + { + tmp489.Path = this.Path.DeepCopy(); + } + tmp489.__isset.path = this.__isset.path; + return tmp489; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list490 = await iprot.ReadListBeginAsync(cancellationToken); + Path = new List(_list490.Count); + for(int _i491 = 0; _i491 < _list490.Count; ++_i491) + { + string _elem492; + _elem492 = await iprot.ReadStringAsync(cancellationToken); + Path.Add(_elem492); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null) && __isset.path) + { + field.Name = "path"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); + foreach (string _iter493 in Path) + { + await oprot.WriteStringAsync(_iter493, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is deleteTimeseriesArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Path != null) && __isset.path) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("deleteTimeseries_args("); + int tmp494 = 0; + if(__isset.sessionId) + { + if(0 < tmp494++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((Path != null) && __isset.path) + { + if(0 < tmp494++) { sb.Append(", "); } + sb.Append("Path: "); + Path.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class deleteTimeseriesResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public deleteTimeseriesResult() + { + } + + public deleteTimeseriesResult DeepCopy() + { + var tmp495 = new deleteTimeseriesResult(); + if((Success != null) && __isset.success) + { + tmp495.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp495.__isset.success = this.__isset.success; + return tmp495; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteTimeseries_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is deleteTimeseriesResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("deleteTimeseries_result("); + int tmp496 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp496++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class deleteStorageGroupsArgs : TBase + { + private long _sessionId; + private List _storageGroup; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public List StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool storageGroup; + } + + public deleteStorageGroupsArgs() + { + } + + public deleteStorageGroupsArgs DeepCopy() + { + var tmp497 = new deleteStorageGroupsArgs(); + if(__isset.sessionId) + { + tmp497.SessionId = this.SessionId; + } + tmp497.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) + { + tmp497.StorageGroup = this.StorageGroup.DeepCopy(); + } + tmp497.__isset.storageGroup = this.__isset.storageGroup; + return tmp497; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list498 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroup = new List(_list498.Count); + for(int _i499 = 0; _i499 < _list498.Count; ++_i499) + { + string _elem500; + _elem500 = await iprot.ReadStringAsync(cancellationToken); + StorageGroup.Add(_elem500); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteStorageGroups_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); + foreach (string _iter501 in StorageGroup) + { + await oprot.WriteStringAsync(_iter501, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is deleteStorageGroupsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("deleteStorageGroups_args("); + int tmp502 = 0; + if(__isset.sessionId) + { + if(0 < tmp502++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp502++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class deleteStorageGroupsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public deleteStorageGroupsResult() + { + } + + public deleteStorageGroupsResult DeepCopy() + { + var tmp503 = new deleteStorageGroupsResult(); + if((Success != null) && __isset.success) + { + tmp503.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp503.__isset.success = this.__isset.success; + return tmp503; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteStorageGroups_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is deleteStorageGroupsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("deleteStorageGroups_result("); + int tmp504 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp504++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertRecordArgs : TBase + { + private TSInsertRecordReq _req; + + public TSInsertRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertRecordArgs() + { + } + + public insertRecordArgs DeepCopy() + { + var tmp505 = new insertRecordArgs(); + if((Req != null) && __isset.req) + { + tmp505.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + } + tmp505.__isset.req = this.__isset.req; + return tmp505; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertRecord_args("); + int tmp506 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp506++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertRecordResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertRecordResult() + { + } + + public insertRecordResult DeepCopy() + { + var tmp507 = new insertRecordResult(); + if((Success != null) && __isset.success) + { + tmp507.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp507.__isset.success = this.__isset.success; + return tmp507; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertRecord_result("); + int tmp508 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp508++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertStringRecordArgs : TBase + { + private TSInsertStringRecordReq _req; + + public TSInsertStringRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertStringRecordArgs() + { + } + + public insertStringRecordArgs DeepCopy() + { + var tmp509 = new insertStringRecordArgs(); + if((Req != null) && __isset.req) + { + tmp509.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + } + tmp509.__isset.req = this.__isset.req; + return tmp509; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertStringRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertStringRecord_args("); + int tmp510 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp510++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertStringRecordResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertStringRecordResult() + { + } + + public insertStringRecordResult DeepCopy() + { + var tmp511 = new insertStringRecordResult(); + if((Success != null) && __isset.success) + { + tmp511.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp511.__isset.success = this.__isset.success; + return tmp511; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertStringRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertStringRecord_result("); + int tmp512 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp512++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertTabletArgs : TBase + { + private TSInsertTabletReq _req; + + public TSInsertTabletReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertTabletArgs() + { + } + + public insertTabletArgs DeepCopy() + { + var tmp513 = new insertTabletArgs(); + if((Req != null) && __isset.req) + { + tmp513.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + } + tmp513.__isset.req = this.__isset.req; + return tmp513; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablet_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertTabletArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertTablet_args("); + int tmp514 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp514++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertTabletResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertTabletResult() + { + } + + public insertTabletResult DeepCopy() + { + var tmp515 = new insertTabletResult(); + if((Success != null) && __isset.success) + { + tmp515.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp515.__isset.success = this.__isset.success; + return tmp515; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablet_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertTabletResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertTablet_result("); + int tmp516 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp516++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertTabletsArgs : TBase + { + private TSInsertTabletsReq _req; + + public TSInsertTabletsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertTabletsArgs() + { + } + + public insertTabletsArgs DeepCopy() + { + var tmp517 = new insertTabletsArgs(); + if((Req != null) && __isset.req) + { + tmp517.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + } + tmp517.__isset.req = this.__isset.req; + return tmp517; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablets_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertTabletsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertTablets_args("); + int tmp518 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp518++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertTabletsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertTabletsResult() + { + } + + public insertTabletsResult DeepCopy() + { + var tmp519 = new insertTabletsResult(); + if((Success != null) && __isset.success) + { + tmp519.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp519.__isset.success = this.__isset.success; + return tmp519; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertTablets_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertTabletsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertTablets_result("); + int tmp520 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp520++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertRecordsArgs : TBase + { + private TSInsertRecordsReq _req; + + public TSInsertRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertRecordsArgs() + { + } + + public insertRecordsArgs DeepCopy() + { + var tmp521 = new insertRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp521.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + } + tmp521.__isset.req = this.__isset.req; + return tmp521; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertRecords_args("); + int tmp522 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp522++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertRecordsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertRecordsResult() + { + } + + public insertRecordsResult DeepCopy() + { + var tmp523 = new insertRecordsResult(); + if((Success != null) && __isset.success) + { + tmp523.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp523.__isset.success = this.__isset.success; + return tmp523; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertRecords_result("); + int tmp524 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp524++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertRecordsOfOneDeviceArgs : TBase + { + private TSInsertRecordsOfOneDeviceReq _req; + + public TSInsertRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertRecordsOfOneDeviceArgs() + { + } + + public insertRecordsOfOneDeviceArgs DeepCopy() + { + var tmp525 = new insertRecordsOfOneDeviceArgs(); + if((Req != null) && __isset.req) + { + tmp525.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + } + tmp525.__isset.req = this.__isset.req; + return tmp525; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsOfOneDeviceReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecordsOfOneDevice_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertRecordsOfOneDeviceArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertRecordsOfOneDevice_args("); + int tmp526 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp526++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertRecordsOfOneDeviceResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertRecordsOfOneDeviceResult() + { + } + + public insertRecordsOfOneDeviceResult DeepCopy() + { + var tmp527 = new insertRecordsOfOneDeviceResult(); + if((Success != null) && __isset.success) + { + tmp527.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp527.__isset.success = this.__isset.success; + return tmp527; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertRecordsOfOneDevice_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertRecordsOfOneDeviceResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertRecordsOfOneDevice_result("); + int tmp528 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp528++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertStringRecordsOfOneDeviceArgs : TBase + { + private TSInsertStringRecordsOfOneDeviceReq _req; + + public TSInsertStringRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertStringRecordsOfOneDeviceArgs() + { + } + + public insertStringRecordsOfOneDeviceArgs DeepCopy() + { + var tmp529 = new insertStringRecordsOfOneDeviceArgs(); + if((Req != null) && __isset.req) + { + tmp529.Req = (TSInsertStringRecordsOfOneDeviceReq)this.Req.DeepCopy(); + } + tmp529.__isset.req = this.__isset.req; + return tmp529; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordsOfOneDeviceReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecordsOfOneDevice_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertStringRecordsOfOneDeviceArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertStringRecordsOfOneDevice_args("); + int tmp530 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp530++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertStringRecordsOfOneDeviceResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertStringRecordsOfOneDeviceResult() + { + } + + public insertStringRecordsOfOneDeviceResult DeepCopy() + { + var tmp531 = new insertStringRecordsOfOneDeviceResult(); + if((Success != null) && __isset.success) + { + tmp531.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp531.__isset.success = this.__isset.success; + return tmp531; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecordsOfOneDevice_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertStringRecordsOfOneDeviceResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertStringRecordsOfOneDevice_result("); + int tmp532 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp532++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertStringRecordsArgs : TBase + { + private TSInsertStringRecordsReq _req; + + public TSInsertStringRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public insertStringRecordsArgs() + { + } + + public insertStringRecordsArgs DeepCopy() + { + var tmp533 = new insertStringRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp533.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + } + tmp533.__isset.req = this.__isset.req; + return tmp533; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertStringRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertStringRecords_args("); + int tmp534 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp534++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class insertStringRecordsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public insertStringRecordsResult() + { + } + + public insertStringRecordsResult DeepCopy() + { + var tmp535 = new insertStringRecordsResult(); + if((Success != null) && __isset.success) + { + tmp535.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp535.__isset.success = this.__isset.success; + return tmp535; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("insertStringRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is insertStringRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("insertStringRecords_result("); + int tmp536 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp536++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertTabletArgs : TBase + { + private TSInsertTabletReq _req; + + public TSInsertTabletReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertTabletArgs() + { + } + + public testInsertTabletArgs DeepCopy() + { + var tmp537 = new testInsertTabletArgs(); + if((Req != null) && __isset.req) + { + tmp537.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + } + tmp537.__isset.req = this.__isset.req; + return tmp537; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertTablet_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertTabletArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertTablet_args("); + int tmp538 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp538++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertTabletResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertTabletResult() + { + } + + public testInsertTabletResult DeepCopy() + { + var tmp539 = new testInsertTabletResult(); + if((Success != null) && __isset.success) + { + tmp539.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp539.__isset.success = this.__isset.success; + return tmp539; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertTablet_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertTabletResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertTablet_result("); + int tmp540 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp540++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertTabletsArgs : TBase + { + private TSInsertTabletsReq _req; + + public TSInsertTabletsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertTabletsArgs() + { + } + + public testInsertTabletsArgs DeepCopy() + { + var tmp541 = new testInsertTabletsArgs(); + if((Req != null) && __isset.req) + { + tmp541.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + } + tmp541.__isset.req = this.__isset.req; + return tmp541; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertTablets_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertTabletsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertTablets_args("); + int tmp542 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp542++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertTabletsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertTabletsResult() + { + } + + public testInsertTabletsResult DeepCopy() + { + var tmp543 = new testInsertTabletsResult(); + if((Success != null) && __isset.success) + { + tmp543.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp543.__isset.success = this.__isset.success; + return tmp543; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertTablets_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertTabletsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertTablets_result("); + int tmp544 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp544++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertRecordArgs : TBase + { + private TSInsertRecordReq _req; + + public TSInsertRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertRecordArgs() + { + } + + public testInsertRecordArgs DeepCopy() + { + var tmp545 = new testInsertRecordArgs(); + if((Req != null) && __isset.req) + { + tmp545.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + } + tmp545.__isset.req = this.__isset.req; + return tmp545; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertRecord_args("); + int tmp546 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp546++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertRecordResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertRecordResult() + { + } + + public testInsertRecordResult DeepCopy() + { + var tmp547 = new testInsertRecordResult(); + if((Success != null) && __isset.success) + { + tmp547.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp547.__isset.success = this.__isset.success; + return tmp547; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertRecord_result("); + int tmp548 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp548++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertStringRecordArgs : TBase + { + private TSInsertStringRecordReq _req; + + public TSInsertStringRecordReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertStringRecordArgs() + { + } + + public testInsertStringRecordArgs DeepCopy() + { + var tmp549 = new testInsertStringRecordArgs(); + if((Req != null) && __isset.req) + { + tmp549.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + } + tmp549.__isset.req = this.__isset.req; + return tmp549; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertStringRecord_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertStringRecordArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertStringRecord_args("); + int tmp550 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp550++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertStringRecordResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertStringRecordResult() + { + } + + public testInsertStringRecordResult DeepCopy() + { + var tmp551 = new testInsertStringRecordResult(); + if((Success != null) && __isset.success) + { + tmp551.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp551.__isset.success = this.__isset.success; + return tmp551; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertStringRecord_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertStringRecordResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertStringRecord_result("); + int tmp552 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp552++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertRecordsArgs : TBase + { + private TSInsertRecordsReq _req; + + public TSInsertRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertRecordsArgs() + { + } + + public testInsertRecordsArgs DeepCopy() + { + var tmp553 = new testInsertRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp553.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + } + tmp553.__isset.req = this.__isset.req; + return tmp553; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertRecords_args("); + int tmp554 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp554++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertRecordsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertRecordsResult() + { + } + + public testInsertRecordsResult DeepCopy() + { + var tmp555 = new testInsertRecordsResult(); + if((Success != null) && __isset.success) + { + tmp555.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp555.__isset.success = this.__isset.success; + return tmp555; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertRecords_result("); + int tmp556 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp556++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertRecordsOfOneDeviceArgs : TBase + { + private TSInsertRecordsOfOneDeviceReq _req; + + public TSInsertRecordsOfOneDeviceReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertRecordsOfOneDeviceArgs() + { + } + + public testInsertRecordsOfOneDeviceArgs DeepCopy() + { + var tmp557 = new testInsertRecordsOfOneDeviceArgs(); + if((Req != null) && __isset.req) + { + tmp557.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + } + tmp557.__isset.req = this.__isset.req; + return tmp557; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertRecordsOfOneDeviceReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecordsOfOneDevice_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); + int tmp558 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp558++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertRecordsOfOneDeviceResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertRecordsOfOneDeviceResult() + { + } + + public testInsertRecordsOfOneDeviceResult DeepCopy() + { + var tmp559 = new testInsertRecordsOfOneDeviceResult(); + if((Success != null) && __isset.success) + { + tmp559.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp559.__isset.success = this.__isset.success; + return tmp559; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertRecordsOfOneDevice_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); + int tmp560 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp560++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertStringRecordsArgs : TBase + { + private TSInsertStringRecordsReq _req; + + public TSInsertStringRecordsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public testInsertStringRecordsArgs() + { + } + + public testInsertStringRecordsArgs DeepCopy() + { + var tmp561 = new testInsertStringRecordsArgs(); + if((Req != null) && __isset.req) + { + tmp561.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + } + tmp561.__isset.req = this.__isset.req; + return tmp561; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSInsertStringRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertStringRecords_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertStringRecordsArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertStringRecords_args("); + int tmp562 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp562++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class testInsertStringRecordsResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public testInsertStringRecordsResult() + { + } + + public testInsertStringRecordsResult DeepCopy() + { + var tmp563 = new testInsertStringRecordsResult(); + if((Success != null) && __isset.success) + { + tmp563.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp563.__isset.success = this.__isset.success; + return tmp563; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("testInsertStringRecords_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is testInsertStringRecordsResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("testInsertStringRecords_result("); + int tmp564 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp564++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class deleteDataArgs : TBase + { + private TSDeleteDataReq _req; + + public TSDeleteDataReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public deleteDataArgs() + { + } + + public deleteDataArgs DeepCopy() + { + var tmp565 = new deleteDataArgs(); + if((Req != null) && __isset.req) + { + tmp565.Req = (TSDeleteDataReq)this.Req.DeepCopy(); + } + tmp565.__isset.req = this.__isset.req; + return tmp565; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSDeleteDataReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteData_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is deleteDataArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("deleteData_args("); + int tmp566 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp566++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class deleteDataResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public deleteDataResult() + { + } + + public deleteDataResult DeepCopy() + { + var tmp567 = new deleteDataResult(); + if((Success != null) && __isset.success) + { + tmp567.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp567.__isset.success = this.__isset.success; + return tmp567; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteData_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is deleteDataResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("deleteData_result("); + int tmp568 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp568++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeRawDataQueryArgs : TBase + { + private TSRawDataQueryReq _req; + + public TSRawDataQueryReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeRawDataQueryArgs() + { + } + + public executeRawDataQueryArgs DeepCopy() + { + var tmp569 = new executeRawDataQueryArgs(); + if((Req != null) && __isset.req) + { + tmp569.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); + } + tmp569.__isset.req = this.__isset.req; + return tmp569; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSRawDataQueryReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeRawDataQuery_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeRawDataQueryArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeRawDataQuery_args("); + int tmp570 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp570++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeRawDataQueryResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeRawDataQueryResult() + { + } + + public executeRawDataQueryResult DeepCopy() + { + var tmp571 = new executeRawDataQueryResult(); + if((Success != null) && __isset.success) + { + tmp571.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp571.__isset.success = this.__isset.success; + return tmp571; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeRawDataQuery_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeRawDataQueryResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeRawDataQuery_result("); + int tmp572 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp572++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeLastDataQueryArgs : TBase + { + private TSLastDataQueryReq _req; + + public TSLastDataQueryReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeLastDataQueryArgs() + { + } + + public executeLastDataQueryArgs DeepCopy() + { + var tmp573 = new executeLastDataQueryArgs(); + if((Req != null) && __isset.req) + { + tmp573.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); + } + tmp573.__isset.req = this.__isset.req; + return tmp573; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSLastDataQueryReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeLastDataQuery_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeLastDataQueryArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeLastDataQuery_args("); + int tmp574 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp574++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeLastDataQueryResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeLastDataQueryResult() + { + } + + public executeLastDataQueryResult DeepCopy() + { + var tmp575 = new executeLastDataQueryResult(); + if((Success != null) && __isset.success) + { + tmp575.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp575.__isset.success = this.__isset.success; + return tmp575; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeLastDataQuery_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeLastDataQueryResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeLastDataQuery_result("); + int tmp576 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp576++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class requestStatementIdArgs : TBase + { + private long _sessionId; + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + } + + public requestStatementIdArgs() + { + } + + public requestStatementIdArgs DeepCopy() + { + var tmp577 = new requestStatementIdArgs(); + if(__isset.sessionId) + { + tmp577.SessionId = this.SessionId; + } + tmp577.__isset.sessionId = this.__isset.sessionId; + return tmp577; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("requestStatementId_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is requestStatementIdArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("requestStatementId_args("); + int tmp578 = 0; + if(__isset.sessionId) + { + if(0 < tmp578++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class requestStatementIdResult : TBase + { + private long _success; + + public long Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public requestStatementIdResult() + { + } + + public requestStatementIdResult DeepCopy() + { + var tmp579 = new requestStatementIdResult(); + if(__isset.success) + { + tmp579.Success = this.Success; + } + tmp579.__isset.success = this.__isset.success; + return tmp579; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.I64) + { + Success = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("requestStatementId_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + field.Name = "Success"; + field.Type = TType.I64; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Success, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is requestStatementIdResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if(__isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("requestStatementId_result("); + int tmp580 = 0; + if(__isset.success) + { + if(0 < tmp580++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createSchemaTemplateArgs : TBase + { + private TSCreateSchemaTemplateReq _req; + + public TSCreateSchemaTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public createSchemaTemplateArgs() + { + } + + public createSchemaTemplateArgs DeepCopy() + { + var tmp581 = new createSchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp581.Req = (TSCreateSchemaTemplateReq)this.Req.DeepCopy(); + } + tmp581.__isset.req = this.__isset.req; + return tmp581; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCreateSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createSchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createSchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createSchemaTemplate_args("); + int tmp582 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp582++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class createSchemaTemplateResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public createSchemaTemplateResult() + { + } + + public createSchemaTemplateResult DeepCopy() + { + var tmp583 = new createSchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp583.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp583.__isset.success = this.__isset.success; + return tmp583; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("createSchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is createSchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("createSchemaTemplate_result("); + int tmp584 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp584++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class appendSchemaTemplateArgs : TBase + { + private TSAppendSchemaTemplateReq _req; + + public TSAppendSchemaTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public appendSchemaTemplateArgs() + { + } + + public appendSchemaTemplateArgs DeepCopy() + { + var tmp585 = new appendSchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp585.Req = (TSAppendSchemaTemplateReq)this.Req.DeepCopy(); + } + tmp585.__isset.req = this.__isset.req; + return tmp585; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSAppendSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("appendSchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is appendSchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("appendSchemaTemplate_args("); + int tmp586 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp586++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class appendSchemaTemplateResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public appendSchemaTemplateResult() + { + } + + public appendSchemaTemplateResult DeepCopy() + { + var tmp587 = new appendSchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp587.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp587.__isset.success = this.__isset.success; + return tmp587; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("appendSchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is appendSchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("appendSchemaTemplate_result("); + int tmp588 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp588++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class pruneSchemaTemplateArgs : TBase + { + private TSPruneSchemaTemplateReq _req; + + public TSPruneSchemaTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public pruneSchemaTemplateArgs() + { + } + + public pruneSchemaTemplateArgs DeepCopy() + { + var tmp589 = new pruneSchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp589.Req = (TSPruneSchemaTemplateReq)this.Req.DeepCopy(); + } + tmp589.__isset.req = this.__isset.req; + return tmp589; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSPruneSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("pruneSchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is pruneSchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("pruneSchemaTemplate_args("); + int tmp590 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp590++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class pruneSchemaTemplateResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public pruneSchemaTemplateResult() + { + } + + public pruneSchemaTemplateResult DeepCopy() + { + var tmp591 = new pruneSchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp591.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp591.__isset.success = this.__isset.success; + return tmp591; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("pruneSchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is pruneSchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("pruneSchemaTemplate_result("); + int tmp592 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp592++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class querySchemaTemplateArgs : TBase + { + private TSQueryTemplateReq _req; + + public TSQueryTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public querySchemaTemplateArgs() + { + } + + public querySchemaTemplateArgs DeepCopy() + { + var tmp593 = new querySchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp593.Req = (TSQueryTemplateReq)this.Req.DeepCopy(); + } + tmp593.__isset.req = this.__isset.req; + return tmp593; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSQueryTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("querySchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is querySchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("querySchemaTemplate_args("); + int tmp594 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp594++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class querySchemaTemplateResult : TBase + { + private TSQueryTemplateResp _success; + + public TSQueryTemplateResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public querySchemaTemplateResult() + { + } + + public querySchemaTemplateResult DeepCopy() + { + var tmp595 = new querySchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp595.Success = (TSQueryTemplateResp)this.Success.DeepCopy(); + } + tmp595.__isset.success = this.__isset.success; + return tmp595; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSQueryTemplateResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("querySchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is querySchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("querySchemaTemplate_result("); + int tmp596 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp596++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class setSchemaTemplateArgs : TBase + { + private TSSetSchemaTemplateReq _req; + + public TSSetSchemaTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public setSchemaTemplateArgs() + { + } + + public setSchemaTemplateArgs DeepCopy() + { + var tmp597 = new setSchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp597.Req = (TSSetSchemaTemplateReq)this.Req.DeepCopy(); + } + tmp597.__isset.req = this.__isset.req; + return tmp597; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSSetSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setSchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is setSchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("setSchemaTemplate_args("); + int tmp598 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp598++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class setSchemaTemplateResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public setSchemaTemplateResult() + { + } + + public setSchemaTemplateResult DeepCopy() + { + var tmp599 = new setSchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp599.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp599.__isset.success = this.__isset.success; + return tmp599; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("setSchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is setSchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("setSchemaTemplate_result("); + int tmp600 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp600++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class unsetSchemaTemplateArgs : TBase + { + private TSUnsetSchemaTemplateReq _req; + + public TSUnsetSchemaTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public unsetSchemaTemplateArgs() + { + } + + public unsetSchemaTemplateArgs DeepCopy() + { + var tmp601 = new unsetSchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp601.Req = (TSUnsetSchemaTemplateReq)this.Req.DeepCopy(); + } + tmp601.__isset.req = this.__isset.req; + return tmp601; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSUnsetSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("unsetSchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is unsetSchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("unsetSchemaTemplate_args("); + int tmp602 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp602++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class unsetSchemaTemplateResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public unsetSchemaTemplateResult() + { + } + + public unsetSchemaTemplateResult DeepCopy() + { + var tmp603 = new unsetSchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp603.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp603.__isset.success = this.__isset.success; + return tmp603; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("unsetSchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is unsetSchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("unsetSchemaTemplate_result("); + int tmp604 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp604++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class dropSchemaTemplateArgs : TBase + { + private TSDropSchemaTemplateReq _req; + + public TSDropSchemaTemplateReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public dropSchemaTemplateArgs() + { + } + + public dropSchemaTemplateArgs DeepCopy() + { + var tmp605 = new dropSchemaTemplateArgs(); + if((Req != null) && __isset.req) + { + tmp605.Req = (TSDropSchemaTemplateReq)this.Req.DeepCopy(); + } + tmp605.__isset.req = this.__isset.req; + return tmp605; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSDropSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("dropSchemaTemplate_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is dropSchemaTemplateArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("dropSchemaTemplate_args("); + int tmp606 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp606++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class dropSchemaTemplateResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public dropSchemaTemplateResult() + { + } + + public dropSchemaTemplateResult DeepCopy() + { + var tmp607 = new dropSchemaTemplateResult(); + if((Success != null) && __isset.success) + { + tmp607.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp607.__isset.success = this.__isset.success; + return tmp607; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("dropSchemaTemplate_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is dropSchemaTemplateResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("dropSchemaTemplate_result("); + int tmp608 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp608++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + } + +} diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordReq.cs new file mode 100644 index 0000000..ebd4a21 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordReq.cs @@ -0,0 +1,377 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertRecordReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List Measurements { get; set; } + + public byte[] Values { get; set; } + + public long Timestamp { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertRecordReq() + { + } + + public TSInsertRecordReq(long sessionId, string prefixPath, List measurements, byte[] values, long timestamp) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.Measurements = measurements; + this.Values = values; + this.Timestamp = timestamp; + } + + public TSInsertRecordReq DeepCopy() + { + var tmp107 = new TSInsertRecordReq(); + tmp107.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp107.PrefixPath = this.PrefixPath; + } + if((Measurements != null)) + { + tmp107.Measurements = this.Measurements.DeepCopy(); + } + if((Values != null)) + { + tmp107.Values = this.Values.ToArray(); + } + tmp107.Timestamp = this.Timestamp; + if(__isset.isAligned) + { + tmp107.IsAligned = this.IsAligned; + } + tmp107.__isset.isAligned = this.__isset.isAligned; + return tmp107; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurements = false; + bool isset_values = false; + bool isset_timestamp = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list108 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list108.Count); + for(int _i109 = 0; _i109 < _list108.Count; ++_i109) + { + string _elem110; + _elem110 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem110); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Values = await iprot.ReadBinaryAsync(cancellationToken); + isset_values = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + Timestamp = await iprot.ReadI64Async(cancellationToken); + isset_timestamp = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_values) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamp) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertRecordReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter111 in Measurements) + { + await oprot.WriteStringAsync(_iter111, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Values != null)) + { + field.Name = "values"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Values, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "timestamp"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timestamp, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertRecordReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(Values, other.Values) + && System.Object.Equals(Timestamp, other.Timestamp) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((Values != null)) + { + hashcode = (hashcode * 397) + Values.GetHashCode(); + } + hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertRecordReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((Values != null)) + { + sb.Append(", Values: "); + Values.ToString(sb); + } + sb.Append(", Timestamp: "); + Timestamp.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsOfOneDeviceReq.cs new file mode 100644 index 0000000..5117ce8 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsOfOneDeviceReq.cs @@ -0,0 +1,440 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertRecordsOfOneDeviceReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List> MeasurementsList { get; set; } + + public List ValuesList { get; set; } + + public List Timestamps { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertRecordsOfOneDeviceReq() + { + } + + public TSInsertRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List valuesList, List timestamps) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public TSInsertRecordsOfOneDeviceReq DeepCopy() + { + var tmp189 = new TSInsertRecordsOfOneDeviceReq(); + tmp189.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp189.PrefixPath = this.PrefixPath; + } + if((MeasurementsList != null)) + { + tmp189.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp189.ValuesList = this.ValuesList.DeepCopy(); + } + if((Timestamps != null)) + { + tmp189.Timestamps = this.Timestamps.DeepCopy(); + } + if(__isset.isAligned) + { + tmp189.IsAligned = this.IsAligned; + } + tmp189.__isset.isAligned = this.__isset.isAligned; + return tmp189; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list190 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list190.Count); + for(int _i191 = 0; _i191 < _list190.Count; ++_i191) + { + List _elem192; + { + TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); + _elem192 = new List(_list193.Count); + for(int _i194 = 0; _i194 < _list193.Count; ++_i194) + { + string _elem195; + _elem195 = await iprot.ReadStringAsync(cancellationToken); + _elem192.Add(_elem195); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem192); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list196.Count); + for(int _i197 = 0; _i197 < _list196.Count; ++_i197) + { + byte[] _elem198; + _elem198 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem198); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list199.Count); + for(int _i200 = 0; _i200 < _list199.Count; ++_i200) + { + long _elem201; + _elem201 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem201); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertRecordsOfOneDeviceReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter202 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter202.Count), cancellationToken); + foreach (string _iter203 in _iter202) + { + await oprot.WriteStringAsync(_iter203, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); + foreach (byte[] _iter204 in ValuesList) + { + await oprot.WriteBinaryAsync(_iter204, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter205 in Timestamps) + { + await oprot.WriteI64Async(_iter205, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertRecordsOfOneDeviceReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsReq.cs new file mode 100644 index 0000000..6d1fc41 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertRecordsReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertRecordsReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public List PrefixPaths { get; set; } + + public List> MeasurementsList { get; set; } + + public List ValuesList { get; set; } + + public List Timestamps { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertRecordsReq() + { + } + + public TSInsertRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestamps) : this() + { + this.SessionId = sessionId; + this.PrefixPaths = prefixPaths; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public TSInsertRecordsReq DeepCopy() + { + var tmp167 = new TSInsertRecordsReq(); + tmp167.SessionId = this.SessionId; + if((PrefixPaths != null)) + { + tmp167.PrefixPaths = this.PrefixPaths.DeepCopy(); + } + if((MeasurementsList != null)) + { + tmp167.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp167.ValuesList = this.ValuesList.DeepCopy(); + } + if((Timestamps != null)) + { + tmp167.Timestamps = this.Timestamps.DeepCopy(); + } + if(__isset.isAligned) + { + tmp167.IsAligned = this.IsAligned; + } + tmp167.__isset.isAligned = this.__isset.isAligned; + return tmp167; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPaths = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list168 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list168.Count); + for(int _i169 = 0; _i169 < _list168.Count; ++_i169) + { + string _elem170; + _elem170 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem170); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_prefixPaths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list171 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list171.Count); + for(int _i172 = 0; _i172 < _list171.Count; ++_i172) + { + List _elem173; + { + TList _list174 = await iprot.ReadListBeginAsync(cancellationToken); + _elem173 = new List(_list174.Count); + for(int _i175 = 0; _i175 < _list174.Count; ++_i175) + { + string _elem176; + _elem176 = await iprot.ReadStringAsync(cancellationToken); + _elem173.Add(_elem176); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem173); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list177 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list177.Count); + for(int _i178 = 0; _i178 < _list177.Count; ++_i178) + { + byte[] _elem179; + _elem179 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem179); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list180 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list180.Count); + for(int _i181 = 0; _i181 < _list180.Count; ++_i181) + { + long _elem182; + _elem182 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem182); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPaths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertRecordsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPaths != null)) + { + field.Name = "prefixPaths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter183 in PrefixPaths) + { + await oprot.WriteStringAsync(_iter183, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter184 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); + foreach (string _iter185 in _iter184) + { + await oprot.WriteStringAsync(_iter185, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); + foreach (byte[] _iter186 in ValuesList) + { + await oprot.WriteBinaryAsync(_iter186, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter187 in Timestamps) + { + await oprot.WriteI64Async(_iter187, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertRecordsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPaths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertRecordsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPaths != null)) + { + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs new file mode 100644 index 0000000..228fac5 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs @@ -0,0 +1,394 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertStringRecordReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List Measurements { get; set; } + + public List Values { get; set; } + + public long Timestamp { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertStringRecordReq() + { + } + + public TSInsertStringRecordReq(long sessionId, string prefixPath, List measurements, List values, long timestamp) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.Measurements = measurements; + this.Values = values; + this.Timestamp = timestamp; + } + + public TSInsertStringRecordReq DeepCopy() + { + var tmp113 = new TSInsertStringRecordReq(); + tmp113.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp113.PrefixPath = this.PrefixPath; + } + if((Measurements != null)) + { + tmp113.Measurements = this.Measurements.DeepCopy(); + } + if((Values != null)) + { + tmp113.Values = this.Values.DeepCopy(); + } + tmp113.Timestamp = this.Timestamp; + if(__isset.isAligned) + { + tmp113.IsAligned = this.IsAligned; + } + tmp113.__isset.isAligned = this.__isset.isAligned; + return tmp113; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurements = false; + bool isset_values = false; + bool isset_timestamp = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list114 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list114.Count); + for(int _i115 = 0; _i115 < _list114.Count; ++_i115) + { + string _elem116; + _elem116 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem116); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list117 = await iprot.ReadListBeginAsync(cancellationToken); + Values = new List(_list117.Count); + for(int _i118 = 0; _i118 < _list117.Count; ++_i118) + { + string _elem119; + _elem119 = await iprot.ReadStringAsync(cancellationToken); + Values.Add(_elem119); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_values = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + Timestamp = await iprot.ReadI64Async(cancellationToken); + isset_timestamp = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_values) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamp) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertStringRecordReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter120 in Measurements) + { + await oprot.WriteStringAsync(_iter120, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Values != null)) + { + field.Name = "values"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Values.Count), cancellationToken); + foreach (string _iter121 in Values) + { + await oprot.WriteStringAsync(_iter121, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "timestamp"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timestamp, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(Values, other.Values) + && System.Object.Equals(Timestamp, other.Timestamp) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((Values != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Values); + } + hashcode = (hashcode * 397) + Timestamp.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((Values != null)) + { + sb.Append(", Values: "); + Values.ToString(sb); + } + sb.Append(", Timestamp: "); + Timestamp.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsOfOneDeviceReq.cs new file mode 100644 index 0000000..6e5fefb --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsOfOneDeviceReq.cs @@ -0,0 +1,457 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertStringRecordsOfOneDeviceReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List> MeasurementsList { get; set; } + + public List> ValuesList { get; set; } + + public List Timestamps { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertStringRecordsOfOneDeviceReq() + { + } + + public TSInsertStringRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List> valuesList, List timestamps) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public TSInsertStringRecordsOfOneDeviceReq DeepCopy() + { + var tmp207 = new TSInsertStringRecordsOfOneDeviceReq(); + tmp207.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp207.PrefixPath = this.PrefixPath; + } + if((MeasurementsList != null)) + { + tmp207.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp207.ValuesList = this.ValuesList.DeepCopy(); + } + if((Timestamps != null)) + { + tmp207.Timestamps = this.Timestamps.DeepCopy(); + } + if(__isset.isAligned) + { + tmp207.IsAligned = this.IsAligned; + } + tmp207.__isset.isAligned = this.__isset.isAligned; + return tmp207; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list208 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list208.Count); + for(int _i209 = 0; _i209 < _list208.Count; ++_i209) + { + List _elem210; + { + TList _list211 = await iprot.ReadListBeginAsync(cancellationToken); + _elem210 = new List(_list211.Count); + for(int _i212 = 0; _i212 < _list211.Count; ++_i212) + { + string _elem213; + _elem213 = await iprot.ReadStringAsync(cancellationToken); + _elem210.Add(_elem213); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem210); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list214 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list214.Count); + for(int _i215 = 0; _i215 < _list214.Count; ++_i215) + { + List _elem216; + { + TList _list217 = await iprot.ReadListBeginAsync(cancellationToken); + _elem216 = new List(_list217.Count); + for(int _i218 = 0; _i218 < _list217.Count; ++_i218) + { + string _elem219; + _elem219 = await iprot.ReadStringAsync(cancellationToken); + _elem216.Add(_elem219); + } + await iprot.ReadListEndAsync(cancellationToken); + } + ValuesList.Add(_elem216); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list220 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list220.Count); + for(int _i221 = 0; _i221 < _list220.Count; ++_i221) + { + long _elem222; + _elem222 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem222); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertStringRecordsOfOneDeviceReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter223 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter223.Count), cancellationToken); + foreach (string _iter224 in _iter223) + { + await oprot.WriteStringAsync(_iter224, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); + foreach (List _iter225 in ValuesList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter225.Count), cancellationToken); + foreach (string _iter226 in _iter225) + { + await oprot.WriteStringAsync(_iter226, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter227 in Timestamps) + { + await oprot.WriteI64Async(_iter227, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordsOfOneDeviceReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordsOfOneDeviceReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsReq.cs new file mode 100644 index 0000000..82dc577 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordsReq.cs @@ -0,0 +1,474 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertStringRecordsReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public List PrefixPaths { get; set; } + + public List> MeasurementsList { get; set; } + + public List> ValuesList { get; set; } + + public List Timestamps { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertStringRecordsReq() + { + } + + public TSInsertStringRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List> valuesList, List timestamps) : this() + { + this.SessionId = sessionId; + this.PrefixPaths = prefixPaths; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.Timestamps = timestamps; + } + + public TSInsertStringRecordsReq DeepCopy() + { + var tmp229 = new TSInsertStringRecordsReq(); + tmp229.SessionId = this.SessionId; + if((PrefixPaths != null)) + { + tmp229.PrefixPaths = this.PrefixPaths.DeepCopy(); + } + if((MeasurementsList != null)) + { + tmp229.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp229.ValuesList = this.ValuesList.DeepCopy(); + } + if((Timestamps != null)) + { + tmp229.Timestamps = this.Timestamps.DeepCopy(); + } + if(__isset.isAligned) + { + tmp229.IsAligned = this.IsAligned; + } + tmp229.__isset.isAligned = this.__isset.isAligned; + return tmp229; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPaths = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestamps = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list230 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list230.Count); + for(int _i231 = 0; _i231 < _list230.Count; ++_i231) + { + string _elem232; + _elem232 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem232); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_prefixPaths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list233 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list233.Count); + for(int _i234 = 0; _i234 < _list233.Count; ++_i234) + { + List _elem235; + { + TList _list236 = await iprot.ReadListBeginAsync(cancellationToken); + _elem235 = new List(_list236.Count); + for(int _i237 = 0; _i237 < _list236.Count; ++_i237) + { + string _elem238; + _elem238 = await iprot.ReadStringAsync(cancellationToken); + _elem235.Add(_elem238); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem235); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List>(_list239.Count); + for(int _i240 = 0; _i240 < _list239.Count; ++_i240) + { + List _elem241; + { + TList _list242 = await iprot.ReadListBeginAsync(cancellationToken); + _elem241 = new List(_list242.Count); + for(int _i243 = 0; _i243 < _list242.Count; ++_i243) + { + string _elem244; + _elem244 = await iprot.ReadStringAsync(cancellationToken); + _elem241.Add(_elem244); + } + await iprot.ReadListEndAsync(cancellationToken); + } + ValuesList.Add(_elem241); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); + Timestamps = new List(_list245.Count); + for(int _i246 = 0; _i246 < _list245.Count; ++_i246) + { + long _elem247; + _elem247 = await iprot.ReadI64Async(cancellationToken); + Timestamps.Add(_elem247); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPaths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertStringRecordsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPaths != null)) + { + field.Name = "prefixPaths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter248 in PrefixPaths) + { + await oprot.WriteStringAsync(_iter248, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter249 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter249.Count), cancellationToken); + foreach (string _iter250 in _iter249) + { + await oprot.WriteStringAsync(_iter250, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); + foreach (List _iter251 in ValuesList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter251.Count), cancellationToken); + foreach (string _iter252 in _iter251) + { + await oprot.WriteStringAsync(_iter252, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); + foreach (long _iter253 in Timestamps) + { + await oprot.WriteI64Async(_iter253, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertStringRecordsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(Timestamps, other.Timestamps) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPaths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertStringRecordsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPaths != null)) + { + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertTabletReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertTabletReq.cs new file mode 100644 index 0000000..b57ef0c --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertTabletReq.cs @@ -0,0 +1,478 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertTabletReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public List Measurements { get; set; } + + public byte[] Values { get; set; } + + public byte[] Timestamps { get; set; } + + public List Types { get; set; } + + public int Size { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertTabletReq() + { + } + + public TSInsertTabletReq(long sessionId, string prefixPath, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.Measurements = measurements; + this.Values = values; + this.Timestamps = timestamps; + this.Types = types; + this.Size = size; + } + + public TSInsertTabletReq DeepCopy() + { + var tmp123 = new TSInsertTabletReq(); + tmp123.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp123.PrefixPath = this.PrefixPath; + } + if((Measurements != null)) + { + tmp123.Measurements = this.Measurements.DeepCopy(); + } + if((Values != null)) + { + tmp123.Values = this.Values.ToArray(); + } + if((Timestamps != null)) + { + tmp123.Timestamps = this.Timestamps.ToArray(); + } + if((Types != null)) + { + tmp123.Types = this.Types.DeepCopy(); + } + tmp123.Size = this.Size; + if(__isset.isAligned) + { + tmp123.IsAligned = this.IsAligned; + } + tmp123.__isset.isAligned = this.__isset.isAligned; + return tmp123; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_measurements = false; + bool isset_values = false; + bool isset_timestamps = false; + bool isset_types = false; + bool isset_size = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list124 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list124.Count); + for(int _i125 = 0; _i125 < _list124.Count; ++_i125) + { + string _elem126; + _elem126 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem126); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurements = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Values = await iprot.ReadBinaryAsync(cancellationToken); + isset_values = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.String) + { + Timestamps = await iprot.ReadBinaryAsync(cancellationToken); + isset_timestamps = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list127 = await iprot.ReadListBeginAsync(cancellationToken); + Types = new List(_list127.Count); + for(int _i128 = 0; _i128 < _list127.Count; ++_i128) + { + int _elem129; + _elem129 = await iprot.ReadI32Async(cancellationToken); + Types.Add(_elem129); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_types = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I32) + { + Size = await iprot.ReadI32Async(cancellationToken); + isset_size = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurements) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_values) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestamps) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_types) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_size) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertTabletReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null)) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter130 in Measurements) + { + await oprot.WriteStringAsync(_iter130, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Values != null)) + { + field.Name = "values"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Values, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Timestamps != null)) + { + field.Name = "timestamps"; + field.Type = TType.String; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Timestamps, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Types != null)) + { + field.Name = "types"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, Types.Count), cancellationToken); + foreach (int _iter131 in Types) + { + await oprot.WriteI32Async(_iter131, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "size"; + field.Type = TType.I32; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Size, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertTabletReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && TCollections.Equals(Measurements, other.Measurements) + && TCollections.Equals(Values, other.Values) + && TCollections.Equals(Timestamps, other.Timestamps) + && TCollections.Equals(Types, other.Types) + && System.Object.Equals(Size, other.Size) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((Measurements != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + if((Values != null)) + { + hashcode = (hashcode * 397) + Values.GetHashCode(); + } + if((Timestamps != null)) + { + hashcode = (hashcode * 397) + Timestamps.GetHashCode(); + } + if((Types != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Types); + } + hashcode = (hashcode * 397) + Size.GetHashCode(); + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertTabletReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((Measurements != null)) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + if((Values != null)) + { + sb.Append(", Values: "); + Values.ToString(sb); + } + if((Timestamps != null)) + { + sb.Append(", Timestamps: "); + Timestamps.ToString(sb); + } + if((Types != null)) + { + sb.Append(", Types: "); + Types.ToString(sb); + } + sb.Append(", Size: "); + Size.ToString(sb); + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertTabletsReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertTabletsReq.cs new file mode 100644 index 0000000..b33fd9c --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertTabletsReq.cs @@ -0,0 +1,592 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSInsertTabletsReq : TBase +{ + private bool _isAligned; + + public long SessionId { get; set; } + + public List PrefixPaths { get; set; } + + public List> MeasurementsList { get; set; } + + public List ValuesList { get; set; } + + public List TimestampsList { get; set; } + + public List> TypesList { get; set; } + + public List SizeList { get; set; } + + public bool IsAligned + { + get + { + return _isAligned; + } + set + { + __isset.isAligned = true; + this._isAligned = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isAligned; + } + + public TSInsertTabletsReq() + { + } + + public TSInsertTabletsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() + { + this.SessionId = sessionId; + this.PrefixPaths = prefixPaths; + this.MeasurementsList = measurementsList; + this.ValuesList = valuesList; + this.TimestampsList = timestampsList; + this.TypesList = typesList; + this.SizeList = sizeList; + } + + public TSInsertTabletsReq DeepCopy() + { + var tmp133 = new TSInsertTabletsReq(); + tmp133.SessionId = this.SessionId; + if((PrefixPaths != null)) + { + tmp133.PrefixPaths = this.PrefixPaths.DeepCopy(); + } + if((MeasurementsList != null)) + { + tmp133.MeasurementsList = this.MeasurementsList.DeepCopy(); + } + if((ValuesList != null)) + { + tmp133.ValuesList = this.ValuesList.DeepCopy(); + } + if((TimestampsList != null)) + { + tmp133.TimestampsList = this.TimestampsList.DeepCopy(); + } + if((TypesList != null)) + { + tmp133.TypesList = this.TypesList.DeepCopy(); + } + if((SizeList != null)) + { + tmp133.SizeList = this.SizeList.DeepCopy(); + } + if(__isset.isAligned) + { + tmp133.IsAligned = this.IsAligned; + } + tmp133.__isset.isAligned = this.__isset.isAligned; + return tmp133; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPaths = false; + bool isset_measurementsList = false; + bool isset_valuesList = false; + bool isset_timestampsList = false; + bool isset_typesList = false; + bool isset_sizeList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); + PrefixPaths = new List(_list134.Count); + for(int _i135 = 0; _i135 < _list134.Count; ++_i135) + { + string _elem136; + _elem136 = await iprot.ReadStringAsync(cancellationToken); + PrefixPaths.Add(_elem136); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_prefixPaths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); + MeasurementsList = new List>(_list137.Count); + for(int _i138 = 0; _i138 < _list137.Count; ++_i138) + { + List _elem139; + { + TList _list140 = await iprot.ReadListBeginAsync(cancellationToken); + _elem139 = new List(_list140.Count); + for(int _i141 = 0; _i141 < _list140.Count; ++_i141) + { + string _elem142; + _elem142 = await iprot.ReadStringAsync(cancellationToken); + _elem139.Add(_elem142); + } + await iprot.ReadListEndAsync(cancellationToken); + } + MeasurementsList.Add(_elem139); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_measurementsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.List) + { + { + TList _list143 = await iprot.ReadListBeginAsync(cancellationToken); + ValuesList = new List(_list143.Count); + for(int _i144 = 0; _i144 < _list143.Count; ++_i144) + { + byte[] _elem145; + _elem145 = await iprot.ReadBinaryAsync(cancellationToken); + ValuesList.Add(_elem145); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valuesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list146 = await iprot.ReadListBeginAsync(cancellationToken); + TimestampsList = new List(_list146.Count); + for(int _i147 = 0; _i147 < _list146.Count; ++_i147) + { + byte[] _elem148; + _elem148 = await iprot.ReadBinaryAsync(cancellationToken); + TimestampsList.Add(_elem148); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timestampsList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.List) + { + { + TList _list149 = await iprot.ReadListBeginAsync(cancellationToken); + TypesList = new List>(_list149.Count); + for(int _i150 = 0; _i150 < _list149.Count; ++_i150) + { + List _elem151; + { + TList _list152 = await iprot.ReadListBeginAsync(cancellationToken); + _elem151 = new List(_list152.Count); + for(int _i153 = 0; _i153 < _list152.Count; ++_i153) + { + int _elem154; + _elem154 = await iprot.ReadI32Async(cancellationToken); + _elem151.Add(_elem154); + } + await iprot.ReadListEndAsync(cancellationToken); + } + TypesList.Add(_elem151); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_typesList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.List) + { + { + TList _list155 = await iprot.ReadListBeginAsync(cancellationToken); + SizeList = new List(_list155.Count); + for(int _i156 = 0; _i156 < _list155.Count; ++_i156) + { + int _elem157; + _elem157 = await iprot.ReadI32Async(cancellationToken); + SizeList.Add(_elem157); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_sizeList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.Bool) + { + IsAligned = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPaths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_measurementsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valuesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timestampsList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_typesList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_sizeList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSInsertTabletsReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPaths != null)) + { + field.Name = "prefixPaths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); + foreach (string _iter158 in PrefixPaths) + { + await oprot.WriteStringAsync(_iter158, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MeasurementsList != null)) + { + field.Name = "measurementsList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); + foreach (List _iter159 in MeasurementsList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.String, _iter159.Count), cancellationToken); + foreach (string _iter160 in _iter159) + { + await oprot.WriteStringAsync(_iter160, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValuesList != null)) + { + field.Name = "valuesList"; + field.Type = TType.List; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); + foreach (byte[] _iter161 in ValuesList) + { + await oprot.WriteBinaryAsync(_iter161, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TimestampsList != null)) + { + field.Name = "timestampsList"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, TimestampsList.Count), cancellationToken); + foreach (byte[] _iter162 in TimestampsList) + { + await oprot.WriteBinaryAsync(_iter162, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TypesList != null)) + { + field.Name = "typesList"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.List, TypesList.Count), cancellationToken); + foreach (List _iter163 in TypesList) + { + { + await oprot.WriteListBeginAsync(new TList(TType.I32, _iter163.Count), cancellationToken); + foreach (int _iter164 in _iter163) + { + await oprot.WriteI32Async(_iter164, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SizeList != null)) + { + field.Name = "sizeList"; + field.Type = TType.List; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I32, SizeList.Count), cancellationToken); + foreach (int _iter165 in SizeList) + { + await oprot.WriteI32Async(_iter165, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.isAligned) + { + field.Name = "isAligned"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(IsAligned, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSInsertTabletsReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(PrefixPaths, other.PrefixPaths) + && TCollections.Equals(MeasurementsList, other.MeasurementsList) + && TCollections.Equals(ValuesList, other.ValuesList) + && TCollections.Equals(TimestampsList, other.TimestampsList) + && TCollections.Equals(TypesList, other.TypesList) + && TCollections.Equals(SizeList, other.SizeList) + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPaths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); + } + if((MeasurementsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); + } + if((ValuesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); + } + if((TimestampsList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TimestampsList); + } + if((TypesList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TypesList); + } + if((SizeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SizeList); + } + if(__isset.isAligned) + { + hashcode = (hashcode * 397) + IsAligned.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSInsertTabletsReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPaths != null)) + { + sb.Append(", PrefixPaths: "); + PrefixPaths.ToString(sb); + } + if((MeasurementsList != null)) + { + sb.Append(", MeasurementsList: "); + MeasurementsList.ToString(sb); + } + if((ValuesList != null)) + { + sb.Append(", ValuesList: "); + ValuesList.ToString(sb); + } + if((TimestampsList != null)) + { + sb.Append(", TimestampsList: "); + TimestampsList.ToString(sb); + } + if((TypesList != null)) + { + sb.Append(", TypesList: "); + TypesList.ToString(sb); + } + if((SizeList != null)) + { + sb.Append(", SizeList: "); + SizeList.ToString(sb); + } + if(__isset.isAligned) + { + sb.Append(", IsAligned: "); + IsAligned.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs new file mode 100644 index 0000000..4f45324 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs @@ -0,0 +1,421 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSLastDataQueryReq : TBase +{ + private int _fetchSize; + private bool _enableRedirectQuery; + private bool _jdbcQuery; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long Time { get; set; } + + public long StatementId { get; set; } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool fetchSize; + public bool enableRedirectQuery; + public bool jdbcQuery; + } + + public TSLastDataQueryReq() + { + } + + public TSLastDataQueryReq(long sessionId, List paths, long time, long statementId) : this() + { + this.SessionId = sessionId; + this.Paths = paths; + this.Time = time; + this.StatementId = statementId; + } + + public TSLastDataQueryReq DeepCopy() + { + var tmp324 = new TSLastDataQueryReq(); + tmp324.SessionId = this.SessionId; + if((Paths != null)) + { + tmp324.Paths = this.Paths.DeepCopy(); + } + if(__isset.fetchSize) + { + tmp324.FetchSize = this.FetchSize; + } + tmp324.__isset.fetchSize = this.__isset.fetchSize; + tmp324.Time = this.Time; + tmp324.StatementId = this.StatementId; + if(__isset.enableRedirectQuery) + { + tmp324.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp324.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp324.JdbcQuery = this.JdbcQuery; + } + tmp324.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp324; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_time = false; + bool isset_statementId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list325 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list325.Count); + for(int _i326 = 0; _i326 < _list325.Count; ++_i326) + { + string _elem327; + _elem327 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem327); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_paths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I64) + { + Time = await iprot.ReadI64Async(cancellationToken); + isset_time = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + isset_statementId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_paths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_time) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statementId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSLastDataQueryReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) + { + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter328 in Paths) + { + await oprot.WriteStringAsync(_iter328, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.fetchSize) + { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "time"; + field.Type = TType.I64; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Time, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.enableRedirectQuery) + { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSLastDataQueryReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && System.Object.Equals(Time, other.Time) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + hashcode = (hashcode * 397) + Time.GetHashCode(); + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSLastDataQueryReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + } + sb.Append(", Time: "); + Time.ToString(sb); + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs new file mode 100644 index 0000000..dc89624 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs @@ -0,0 +1,369 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSOpenSessionReq : TBase +{ + private string _username; + private string _password; + private Dictionary _configuration; + + /// + /// + /// + /// + public TSProtocolVersion Client_protocol { get; set; } + + public string ZoneId { get; set; } + + public string Username + { + get + { + return _username; + } + set + { + __isset.username = true; + this._username = value; + } + } + + public string Password + { + get + { + return _password; + } + set + { + __isset.password = true; + this._password = value; + } + } + + public Dictionary Configuration + { + get + { + return _configuration; + } + set + { + __isset.configuration = true; + this._configuration = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool username; + public bool password; + public bool configuration; + } + + public TSOpenSessionReq() + { + this.Client_protocol = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; + } + + public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this() + { + this.Client_protocol = client_protocol; + this.ZoneId = zoneId; + } + + public TSOpenSessionReq DeepCopy() + { + var tmp68 = new TSOpenSessionReq(); + tmp68.Client_protocol = this.Client_protocol; + if((ZoneId != null)) + { + tmp68.ZoneId = this.ZoneId; + } + if((Username != null) && __isset.username) + { + tmp68.Username = this.Username; + } + tmp68.__isset.username = this.__isset.username; + if((Password != null) && __isset.password) + { + tmp68.Password = this.Password; + } + tmp68.__isset.password = this.__isset.password; + if((Configuration != null) && __isset.configuration) + { + tmp68.Configuration = this.Configuration.DeepCopy(); + } + tmp68.__isset.configuration = this.__isset.configuration; + return tmp68; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_client_protocol = false; + bool isset_zoneId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + Client_protocol = (TSProtocolVersion)await iprot.ReadI32Async(cancellationToken); + isset_client_protocol = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + ZoneId = await iprot.ReadStringAsync(cancellationToken); + isset_zoneId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + Username = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Password = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.Map) + { + { + TMap _map69 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map69.Count); + for(int _i70 = 0; _i70 < _map69.Count; ++_i70) + { + string _key71; + string _val72; + _key71 = await iprot.ReadStringAsync(cancellationToken); + _val72 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key71] = _val72; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_client_protocol) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_zoneId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSOpenSessionReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "client_protocol"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async((int)Client_protocol, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((ZoneId != null)) + { + field.Name = "zoneId"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(ZoneId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Username != null) && __isset.username) + { + field.Name = "username"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Username, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Password != null) && __isset.password) + { + field.Name = "password"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Password, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Configuration != null) && __isset.configuration) + { + field.Name = "configuration"; + field.Type = TType.Map; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); + foreach (string _iter73 in Configuration.Keys) + { + await oprot.WriteStringAsync(_iter73, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter73], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSOpenSessionReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Client_protocol, other.Client_protocol) + && System.Object.Equals(ZoneId, other.ZoneId) + && ((__isset.username == other.__isset.username) && ((!__isset.username) || (System.Object.Equals(Username, other.Username)))) + && ((__isset.password == other.__isset.password) && ((!__isset.password) || (System.Object.Equals(Password, other.Password)))) + && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + Client_protocol.GetHashCode(); + if((ZoneId != null)) + { + hashcode = (hashcode * 397) + ZoneId.GetHashCode(); + } + if((Username != null) && __isset.username) + { + hashcode = (hashcode * 397) + Username.GetHashCode(); + } + if((Password != null) && __isset.password) + { + hashcode = (hashcode * 397) + Password.GetHashCode(); + } + if((Configuration != null) && __isset.configuration) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Configuration); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSOpenSessionReq("); + sb.Append(", Client_protocol: "); + Client_protocol.ToString(sb); + if((ZoneId != null)) + { + sb.Append(", ZoneId: "); + ZoneId.ToString(sb); + } + if((Username != null) && __isset.username) + { + sb.Append(", Username: "); + Username.ToString(sb); + } + if((Password != null) && __isset.password) + { + sb.Append(", Password: "); + Password.ToString(sb); + } + if((Configuration != null) && __isset.configuration) + { + sb.Append(", Configuration: "); + Configuration.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs new file mode 100644 index 0000000..f1d2db2 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs @@ -0,0 +1,321 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSOpenSessionResp : TBase +{ + private long _sessionId; + private Dictionary _configuration; + + public TSStatus Status { get; set; } + + /// + /// + /// + /// + public TSProtocolVersion ServerProtocolVersion { get; set; } + + public long SessionId + { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } + } + + public Dictionary Configuration + { + get + { + return _configuration; + } + set + { + __isset.configuration = true; + this._configuration = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool configuration; + } + + public TSOpenSessionResp() + { + this.ServerProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V1; + } + + public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersion) : this() + { + this.Status = status; + this.ServerProtocolVersion = serverProtocolVersion; + } + + public TSOpenSessionResp DeepCopy() + { + var tmp61 = new TSOpenSessionResp(); + if((Status != null)) + { + tmp61.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp61.ServerProtocolVersion = this.ServerProtocolVersion; + if(__isset.sessionId) + { + tmp61.SessionId = this.SessionId; + } + tmp61.__isset.sessionId = this.__isset.sessionId; + if((Configuration != null) && __isset.configuration) + { + tmp61.Configuration = this.Configuration.DeepCopy(); + } + tmp61.__isset.configuration = this.__isset.configuration; + return tmp61; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_serverProtocolVersion = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + ServerProtocolVersion = (TSProtocolVersion)await iprot.ReadI32Async(cancellationToken); + isset_serverProtocolVersion = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.Map) + { + { + TMap _map62 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map62.Count); + for(int _i63 = 0; _i63 < _map62.Count; ++_i63) + { + string _key64; + string _val65; + _key64 = await iprot.ReadStringAsync(cancellationToken); + _val65 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key64] = _val65; + } + await iprot.ReadMapEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_serverProtocolVersion) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSOpenSessionResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "serverProtocolVersion"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async((int)ServerProtocolVersion, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Configuration != null) && __isset.configuration) + { + field.Name = "configuration"; + field.Type = TType.Map; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); + foreach (string _iter66 in Configuration.Keys) + { + await oprot.WriteStringAsync(_iter66, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter66], cancellationToken); + } + await oprot.WriteMapEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSOpenSessionResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(ServerProtocolVersion, other.ServerProtocolVersion) + && ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + ServerProtocolVersion.GetHashCode(); + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Configuration != null) && __isset.configuration) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Configuration); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSOpenSessionResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", ServerProtocolVersion: "); + ServerProtocolVersion.ToString(sb); + if(__isset.sessionId) + { + sb.Append(", SessionId: "); + SessionId.ToString(sb); + } + if((Configuration != null) && __isset.configuration) + { + sb.Append(", Configuration: "); + Configuration.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSProtocolVersion.cs b/src/Apache.IoTDB/Rpc/Generated/TSProtocolVersion.cs new file mode 100644 index 0000000..02f3cba --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSProtocolVersion.cs @@ -0,0 +1,16 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public enum TSProtocolVersion +{ + IOTDB_SERVICE_PROTOCOL_V1 = 0, + IOTDB_SERVICE_PROTOCOL_V2 = 1, + IOTDB_SERVICE_PROTOCOL_V3 = 2, +} diff --git a/src/Apache.IoTDB/Rpc/Generated/TSPruneSchemaTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSPruneSchemaTemplateReq.cs new file mode 100644 index 0000000..00123f8 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSPruneSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSPruneSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string Name { get; set; } + + public string Path { get; set; } + + public TSPruneSchemaTemplateReq() + { + } + + public TSPruneSchemaTemplateReq(long sessionId, string name, string path) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.Path = path; + } + + public TSPruneSchemaTemplateReq DeepCopy() + { + var tmp407 = new TSPruneSchemaTemplateReq(); + tmp407.SessionId = this.SessionId; + if((Name != null)) + { + tmp407.Name = this.Name; + } + if((Path != null)) + { + tmp407.Path = this.Path; + } + return tmp407; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_path = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + Path = await iprot.ReadStringAsync(cancellationToken); + isset_path = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_path) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSPruneSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null)) + { + field.Name = "path"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Path, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSPruneSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(Path, other.Path); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + if((Path != null)) + { + hashcode = (hashcode * 397) + Path.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSPruneSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + if((Path != null)) + { + sb.Append(", Path: "); + Path.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs b/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs new file mode 100644 index 0000000..a3801cd --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs @@ -0,0 +1,279 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryDataSet : TBase +{ + + public byte[] Time { get; set; } + + public List ValueList { get; set; } + + public List BitmapList { get; set; } + + public TSQueryDataSet() + { + } + + public TSQueryDataSet(byte[] time, List valueList, List bitmapList) : this() + { + this.Time = time; + this.ValueList = valueList; + this.BitmapList = bitmapList; + } + + public TSQueryDataSet DeepCopy() + { + var tmp8 = new TSQueryDataSet(); + if((Time != null)) + { + tmp8.Time = this.Time.ToArray(); + } + if((ValueList != null)) + { + tmp8.ValueList = this.ValueList.DeepCopy(); + } + if((BitmapList != null)) + { + tmp8.BitmapList = this.BitmapList.DeepCopy(); + } + return tmp8; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_time = false; + bool isset_valueList = false; + bool isset_bitmapList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + Time = await iprot.ReadBinaryAsync(cancellationToken); + isset_time = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list9 = await iprot.ReadListBeginAsync(cancellationToken); + ValueList = new List(_list9.Count); + for(int _i10 = 0; _i10 < _list9.Count; ++_i10) + { + byte[] _elem11; + _elem11 = await iprot.ReadBinaryAsync(cancellationToken); + ValueList.Add(_elem11); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valueList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list12 = await iprot.ReadListBeginAsync(cancellationToken); + BitmapList = new List(_list12.Count); + for(int _i13 = 0; _i13 < _list12.Count; ++_i13) + { + byte[] _elem14; + _elem14 = await iprot.ReadBinaryAsync(cancellationToken); + BitmapList.Add(_elem14); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_bitmapList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_time) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valueList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_bitmapList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryDataSet"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Time != null)) + { + field.Name = "time"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Time, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValueList != null)) + { + field.Name = "valueList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); + foreach (byte[] _iter15 in ValueList) + { + await oprot.WriteBinaryAsync(_iter15, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((BitmapList != null)) + { + field.Name = "bitmapList"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, BitmapList.Count), cancellationToken); + foreach (byte[] _iter16 in BitmapList) + { + await oprot.WriteBinaryAsync(_iter16, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryDataSet other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(Time, other.Time) + && TCollections.Equals(ValueList, other.ValueList) + && TCollections.Equals(BitmapList, other.BitmapList); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Time != null)) + { + hashcode = (hashcode * 397) + Time.GetHashCode(); + } + if((ValueList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValueList); + } + if((BitmapList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(BitmapList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryDataSet("); + if((Time != null)) + { + sb.Append(", Time: "); + Time.ToString(sb); + } + if((ValueList != null)) + { + sb.Append(", ValueList: "); + ValueList.ToString(sb); + } + if((BitmapList != null)) + { + sb.Append(", BitmapList: "); + BitmapList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs b/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs new file mode 100644 index 0000000..dd69065 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs @@ -0,0 +1,237 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryNonAlignDataSet : TBase +{ + + public List TimeList { get; set; } + + public List ValueList { get; set; } + + public TSQueryNonAlignDataSet() + { + } + + public TSQueryNonAlignDataSet(List timeList, List valueList) : this() + { + this.TimeList = timeList; + this.ValueList = valueList; + } + + public TSQueryNonAlignDataSet DeepCopy() + { + var tmp18 = new TSQueryNonAlignDataSet(); + if((TimeList != null)) + { + tmp18.TimeList = this.TimeList.DeepCopy(); + } + if((ValueList != null)) + { + tmp18.ValueList = this.ValueList.DeepCopy(); + } + return tmp18; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_timeList = false; + bool isset_valueList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.List) + { + { + TList _list19 = await iprot.ReadListBeginAsync(cancellationToken); + TimeList = new List(_list19.Count); + for(int _i20 = 0; _i20 < _list19.Count; ++_i20) + { + byte[] _elem21; + _elem21 = await iprot.ReadBinaryAsync(cancellationToken); + TimeList.Add(_elem21); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_timeList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list22 = await iprot.ReadListBeginAsync(cancellationToken); + ValueList = new List(_list22.Count); + for(int _i23 = 0; _i23 < _list22.Count; ++_i23) + { + byte[] _elem24; + _elem24 = await iprot.ReadBinaryAsync(cancellationToken); + ValueList.Add(_elem24); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_valueList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_timeList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_valueList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryNonAlignDataSet"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((TimeList != null)) + { + field.Name = "timeList"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, TimeList.Count), cancellationToken); + foreach (byte[] _iter25 in TimeList) + { + await oprot.WriteBinaryAsync(_iter25, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ValueList != null)) + { + field.Name = "valueList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); + foreach (byte[] _iter26 in ValueList) + { + await oprot.WriteBinaryAsync(_iter26, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryNonAlignDataSet other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(TimeList, other.TimeList) + && TCollections.Equals(ValueList, other.ValueList); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((TimeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(TimeList); + } + if((ValueList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ValueList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryNonAlignDataSet("); + if((TimeList != null)) + { + sb.Append(", TimeList: "); + TimeList.ToString(sb); + } + if((ValueList != null)) + { + sb.Append(", ValueList: "); + ValueList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateReq.cs new file mode 100644 index 0000000..e3680ff --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateReq.cs @@ -0,0 +1,276 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryTemplateReq : TBase +{ + private string _measurement; + + public long SessionId { get; set; } + + public string Name { get; set; } + + public int QueryType { get; set; } + + public string Measurement + { + get + { + return _measurement; + } + set + { + __isset.measurement = true; + this._measurement = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool measurement; + } + + public TSQueryTemplateReq() + { + } + + public TSQueryTemplateReq(long sessionId, string name, int queryType) : this() + { + this.SessionId = sessionId; + this.Name = name; + this.QueryType = queryType; + } + + public TSQueryTemplateReq DeepCopy() + { + var tmp409 = new TSQueryTemplateReq(); + tmp409.SessionId = this.SessionId; + if((Name != null)) + { + tmp409.Name = this.Name; + } + tmp409.QueryType = this.QueryType; + if((Measurement != null) && __isset.measurement) + { + tmp409.Measurement = this.Measurement; + } + tmp409.__isset.measurement = this.__isset.measurement; + return tmp409; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_name = false; + bool isset_queryType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Name = await iprot.ReadStringAsync(cancellationToken); + isset_name = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + QueryType = await iprot.ReadI32Async(cancellationToken); + isset_queryType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Measurement = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_name) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Name != null)) + { + field.Name = "name"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Name, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "queryType"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(QueryType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Measurement != null) && __isset.measurement) + { + field.Name = "measurement"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Measurement, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(Name, other.Name) + && System.Object.Equals(QueryType, other.QueryType) + && ((__isset.measurement == other.__isset.measurement) && ((!__isset.measurement) || (System.Object.Equals(Measurement, other.Measurement)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Name != null)) + { + hashcode = (hashcode * 397) + Name.GetHashCode(); + } + hashcode = (hashcode * 397) + QueryType.GetHashCode(); + if((Measurement != null) && __isset.measurement) + { + hashcode = (hashcode * 397) + Measurement.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Name != null)) + { + sb.Append(", Name: "); + Name.ToString(sb); + } + sb.Append(", QueryType: "); + QueryType.ToString(sb); + if((Measurement != null) && __isset.measurement) + { + sb.Append(", Measurement: "); + Measurement.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateResp.cs new file mode 100644 index 0000000..3b4bc97 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSQueryTemplateResp.cs @@ -0,0 +1,362 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSQueryTemplateResp : TBase +{ + private bool _result; + private int _count; + private List _measurements; + + public TSStatus Status { get; set; } + + public int QueryType { get; set; } + + public bool Result + { + get + { + return _result; + } + set + { + __isset.result = true; + this._result = value; + } + } + + public int Count + { + get + { + return _count; + } + set + { + __isset.count = true; + this._count = value; + } + } + + public List Measurements + { + get + { + return _measurements; + } + set + { + __isset.measurements = true; + this._measurements = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool result; + public bool count; + public bool measurements; + } + + public TSQueryTemplateResp() + { + } + + public TSQueryTemplateResp(TSStatus status, int queryType) : this() + { + this.Status = status; + this.QueryType = queryType; + } + + public TSQueryTemplateResp DeepCopy() + { + var tmp411 = new TSQueryTemplateResp(); + if((Status != null)) + { + tmp411.Status = (TSStatus)this.Status.DeepCopy(); + } + tmp411.QueryType = this.QueryType; + if(__isset.result) + { + tmp411.Result = this.Result; + } + tmp411.__isset.result = this.__isset.result; + if(__isset.count) + { + tmp411.Count = this.Count; + } + tmp411.__isset.count = this.__isset.count; + if((Measurements != null) && __isset.measurements) + { + tmp411.Measurements = this.Measurements.DeepCopy(); + } + tmp411.__isset.measurements = this.__isset.measurements; + return tmp411; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_queryType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + QueryType = await iprot.ReadI32Async(cancellationToken); + isset_queryType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Bool) + { + Result = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + Count = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.List) + { + { + TList _list412 = await iprot.ReadListBeginAsync(cancellationToken); + Measurements = new List(_list412.Count); + for(int _i413 = 0; _i413 < _list412.Count; ++_i413) + { + string _elem414; + _elem414 = await iprot.ReadStringAsync(cancellationToken); + Measurements.Add(_elem414); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_queryType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSQueryTemplateResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "queryType"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(QueryType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.result) + { + field.Name = "result"; + field.Type = TType.Bool; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(Result, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.count) + { + field.Name = "count"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Count, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Measurements != null) && __isset.measurements) + { + field.Name = "measurements"; + field.Type = TType.List; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); + foreach (string _iter415 in Measurements) + { + await oprot.WriteStringAsync(_iter415, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSQueryTemplateResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && System.Object.Equals(QueryType, other.QueryType) + && ((__isset.result == other.__isset.result) && ((!__isset.result) || (System.Object.Equals(Result, other.Result)))) + && ((__isset.count == other.__isset.count) && ((!__isset.count) || (System.Object.Equals(Count, other.Count)))) + && ((__isset.measurements == other.__isset.measurements) && ((!__isset.measurements) || (TCollections.Equals(Measurements, other.Measurements)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + hashcode = (hashcode * 397) + QueryType.GetHashCode(); + if(__isset.result) + { + hashcode = (hashcode * 397) + Result.GetHashCode(); + } + if(__isset.count) + { + hashcode = (hashcode * 397) + Count.GetHashCode(); + } + if((Measurements != null) && __isset.measurements) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSQueryTemplateResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + sb.Append(", QueryType: "); + QueryType.ToString(sb); + if(__isset.result) + { + sb.Append(", Result: "); + Result.ToString(sb); + } + if(__isset.count) + { + sb.Append(", Count: "); + Count.ToString(sb); + } + if((Measurements != null) && __isset.measurements) + { + sb.Append(", Measurements: "); + Measurements.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs new file mode 100644 index 0000000..91d4e23 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs @@ -0,0 +1,451 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSRawDataQueryReq : TBase +{ + private int _fetchSize; + private bool _enableRedirectQuery; + private bool _jdbcQuery; + + public long SessionId { get; set; } + + public List Paths { get; set; } + + public int FetchSize + { + get + { + return _fetchSize; + } + set + { + __isset.fetchSize = true; + this._fetchSize = value; + } + } + + public long StartTime { get; set; } + + public long EndTime { get; set; } + + public long StatementId { get; set; } + + public bool EnableRedirectQuery + { + get + { + return _enableRedirectQuery; + } + set + { + __isset.enableRedirectQuery = true; + this._enableRedirectQuery = value; + } + } + + public bool JdbcQuery + { + get + { + return _jdbcQuery; + } + set + { + __isset.jdbcQuery = true; + this._jdbcQuery = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool fetchSize; + public bool enableRedirectQuery; + public bool jdbcQuery; + } + + public TSRawDataQueryReq() + { + } + + public TSRawDataQueryReq(long sessionId, List paths, long startTime, long endTime, long statementId) : this() + { + this.SessionId = sessionId; + this.Paths = paths; + this.StartTime = startTime; + this.EndTime = endTime; + this.StatementId = statementId; + } + + public TSRawDataQueryReq DeepCopy() + { + var tmp318 = new TSRawDataQueryReq(); + tmp318.SessionId = this.SessionId; + if((Paths != null)) + { + tmp318.Paths = this.Paths.DeepCopy(); + } + if(__isset.fetchSize) + { + tmp318.FetchSize = this.FetchSize; + } + tmp318.__isset.fetchSize = this.__isset.fetchSize; + tmp318.StartTime = this.StartTime; + tmp318.EndTime = this.EndTime; + tmp318.StatementId = this.StatementId; + if(__isset.enableRedirectQuery) + { + tmp318.EnableRedirectQuery = this.EnableRedirectQuery; + } + tmp318.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + if(__isset.jdbcQuery) + { + tmp318.JdbcQuery = this.JdbcQuery; + } + tmp318.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp318; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_paths = false; + bool isset_startTime = false; + bool isset_endTime = false; + bool isset_statementId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list319 = await iprot.ReadListBeginAsync(cancellationToken); + Paths = new List(_list319.Count); + for(int _i320 = 0; _i320 < _list319.Count; ++_i320) + { + string _elem321; + _elem321 = await iprot.ReadStringAsync(cancellationToken); + Paths.Add(_elem321); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_paths = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + FetchSize = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I64) + { + StartTime = await iprot.ReadI64Async(cancellationToken); + isset_startTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I64) + { + EndTime = await iprot.ReadI64Async(cancellationToken); + isset_endTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.I64) + { + StatementId = await iprot.ReadI64Async(cancellationToken); + isset_statementId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Bool) + { + EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.Bool) + { + JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_paths) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_startTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_endTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_statementId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSRawDataQueryReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Paths != null)) + { + field.Name = "paths"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); + foreach (string _iter322 in Paths) + { + await oprot.WriteStringAsync(_iter322, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.fetchSize) + { + field.Name = "fetchSize"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(FetchSize, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "startTime"; + field.Type = TType.I64; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StartTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "endTime"; + field.Type = TType.I64; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(EndTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "statementId"; + field.Type = TType.I64; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StatementId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if(__isset.enableRedirectQuery) + { + field.Name = "enableRedirectQuery"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.jdbcQuery) + { + field.Name = "jdbcQuery"; + field.Type = TType.Bool; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSRawDataQueryReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && TCollections.Equals(Paths, other.Paths) + && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) + && System.Object.Equals(StartTime, other.StartTime) + && System.Object.Equals(EndTime, other.EndTime) + && System.Object.Equals(StatementId, other.StatementId) + && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((Paths != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); + } + if(__isset.fetchSize) + { + hashcode = (hashcode * 397) + FetchSize.GetHashCode(); + } + hashcode = (hashcode * 397) + StartTime.GetHashCode(); + hashcode = (hashcode * 397) + EndTime.GetHashCode(); + hashcode = (hashcode * 397) + StatementId.GetHashCode(); + if(__isset.enableRedirectQuery) + { + hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); + } + if(__isset.jdbcQuery) + { + hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSRawDataQueryReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((Paths != null)) + { + sb.Append(", Paths: "); + Paths.ToString(sb); + } + if(__isset.fetchSize) + { + sb.Append(", FetchSize: "); + FetchSize.ToString(sb); + } + sb.Append(", StartTime: "); + StartTime.ToString(sb); + sb.Append(", EndTime: "); + EndTime.ToString(sb); + sb.Append(", StatementId: "); + StatementId.ToString(sb); + if(__isset.enableRedirectQuery) + { + sb.Append(", EnableRedirectQuery: "); + EnableRedirectQuery.ToString(sb); + } + if(__isset.jdbcQuery) + { + sb.Append(", JdbcQuery: "); + JdbcQuery.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSSetSchemaTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSSetSchemaTemplateReq.cs new file mode 100644 index 0000000..4078cc6 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSSetSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSSetSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string TemplateName { get; set; } + + public string PrefixPath { get; set; } + + public TSSetSchemaTemplateReq() + { + } + + public TSSetSchemaTemplateReq(long sessionId, string templateName, string prefixPath) : this() + { + this.SessionId = sessionId; + this.TemplateName = templateName; + this.PrefixPath = prefixPath; + } + + public TSSetSchemaTemplateReq DeepCopy() + { + var tmp385 = new TSSetSchemaTemplateReq(); + tmp385.SessionId = this.SessionId; + if((TemplateName != null)) + { + tmp385.TemplateName = this.TemplateName; + } + if((PrefixPath != null)) + { + tmp385.PrefixPath = this.PrefixPath; + } + return tmp385; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_templateName = false; + bool isset_prefixPath = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSSetSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSSetSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TemplateName, other.TemplateName) + && System.Object.Equals(PrefixPath, other.PrefixPath); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSSetSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSSetTimeZoneReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSSetTimeZoneReq.cs new file mode 100644 index 0000000..7d36632 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSSetTimeZoneReq.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSSetTimeZoneReq : TBase +{ + + public long SessionId { get; set; } + + public string TimeZone { get; set; } + + public TSSetTimeZoneReq() + { + } + + public TSSetTimeZoneReq(long sessionId, string timeZone) : this() + { + this.SessionId = sessionId; + this.TimeZone = timeZone; + } + + public TSSetTimeZoneReq DeepCopy() + { + var tmp105 = new TSSetTimeZoneReq(); + tmp105.SessionId = this.SessionId; + if((TimeZone != null)) + { + tmp105.TimeZone = this.TimeZone; + } + return tmp105; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_timeZone = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + TimeZone = await iprot.ReadStringAsync(cancellationToken); + isset_timeZone = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_timeZone) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSSetTimeZoneReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((TimeZone != null)) + { + field.Name = "timeZone"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TimeZone, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSSetTimeZoneReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(TimeZone, other.TimeZone); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((TimeZone != null)) + { + hashcode = (hashcode * 397) + TimeZone.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSSetTimeZoneReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((TimeZone != null)) + { + sb.Append(", TimeZone: "); + TimeZone.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs b/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs new file mode 100644 index 0000000..ceed36e --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs @@ -0,0 +1,321 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSStatus : TBase +{ + private string _message; + private List _subStatus; + private EndPoint _redirectNode; + + public int Code { get; set; } + + public string Message + { + get + { + return _message; + } + set + { + __isset.message = true; + this._message = value; + } + } + + public List SubStatus + { + get + { + return _subStatus; + } + set + { + __isset.subStatus = true; + this._subStatus = value; + } + } + + public EndPoint RedirectNode + { + get + { + return _redirectNode; + } + set + { + __isset.redirectNode = true; + this._redirectNode = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool message; + public bool subStatus; + public bool redirectNode; + } + + public TSStatus() + { + } + + public TSStatus(int code) : this() + { + this.Code = code; + } + + public TSStatus DeepCopy() + { + var tmp2 = new TSStatus(); + tmp2.Code = this.Code; + if((Message != null) && __isset.message) + { + tmp2.Message = this.Message; + } + tmp2.__isset.message = this.__isset.message; + if((SubStatus != null) && __isset.subStatus) + { + tmp2.SubStatus = this.SubStatus.DeepCopy(); + } + tmp2.__isset.subStatus = this.__isset.subStatus; + if((RedirectNode != null) && __isset.redirectNode) + { + tmp2.RedirectNode = (EndPoint)this.RedirectNode.DeepCopy(); + } + tmp2.__isset.redirectNode = this.__isset.redirectNode; + return tmp2; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_code = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + Code = await iprot.ReadI32Async(cancellationToken); + isset_code = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Message = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list3 = await iprot.ReadListBeginAsync(cancellationToken); + SubStatus = new List(_list3.Count); + for(int _i4 = 0; _i4 < _list3.Count; ++_i4) + { + TSStatus _elem5; + _elem5 = new TSStatus(); + await _elem5.ReadAsync(iprot, cancellationToken); + SubStatus.Add(_elem5); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.Struct) + { + RedirectNode = new EndPoint(); + await RedirectNode.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_code) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSStatus"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "code"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Code, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Message != null) && __isset.message) + { + field.Name = "message"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Message, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SubStatus != null) && __isset.subStatus) + { + field.Name = "subStatus"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Struct, SubStatus.Count), cancellationToken); + foreach (TSStatus _iter6 in SubStatus) + { + await _iter6.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((RedirectNode != null) && __isset.redirectNode) + { + field.Name = "redirectNode"; + field.Type = TType.Struct; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await RedirectNode.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSStatus other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Code, other.Code) + && ((__isset.message == other.__isset.message) && ((!__isset.message) || (System.Object.Equals(Message, other.Message)))) + && ((__isset.subStatus == other.__isset.subStatus) && ((!__isset.subStatus) || (TCollections.Equals(SubStatus, other.SubStatus)))) + && ((__isset.redirectNode == other.__isset.redirectNode) && ((!__isset.redirectNode) || (System.Object.Equals(RedirectNode, other.RedirectNode)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + Code.GetHashCode(); + if((Message != null) && __isset.message) + { + hashcode = (hashcode * 397) + Message.GetHashCode(); + } + if((SubStatus != null) && __isset.subStatus) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SubStatus); + } + if((RedirectNode != null) && __isset.redirectNode) + { + hashcode = (hashcode * 397) + RedirectNode.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSStatus("); + sb.Append(", Code: "); + Code.ToString(sb); + if((Message != null) && __isset.message) + { + sb.Append(", Message: "); + Message.ToString(sb); + } + if((SubStatus != null) && __isset.subStatus) + { + sb.Append(", SubStatus: "); + SubStatus.ToString(sb); + } + if((RedirectNode != null) && __isset.redirectNode) + { + sb.Append(", RedirectNode: "); + RedirectNode.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs b/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs new file mode 100644 index 0000000..8b09f1f --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs @@ -0,0 +1,684 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSTracingInfo : TBase +{ + private int _seriesPathNum; + private int _seqFileNum; + private int _unSeqFileNum; + private int _sequenceChunkNum; + private long _sequenceChunkPointNum; + private int _unsequenceChunkNum; + private long _unsequenceChunkPointNum; + private int _totalPageNum; + private int _overlappedPageNum; + + public List ActivityList { get; set; } + + public List ElapsedTimeList { get; set; } + + public int SeriesPathNum + { + get + { + return _seriesPathNum; + } + set + { + __isset.seriesPathNum = true; + this._seriesPathNum = value; + } + } + + public int SeqFileNum + { + get + { + return _seqFileNum; + } + set + { + __isset.seqFileNum = true; + this._seqFileNum = value; + } + } + + public int UnSeqFileNum + { + get + { + return _unSeqFileNum; + } + set + { + __isset.unSeqFileNum = true; + this._unSeqFileNum = value; + } + } + + public int SequenceChunkNum + { + get + { + return _sequenceChunkNum; + } + set + { + __isset.sequenceChunkNum = true; + this._sequenceChunkNum = value; + } + } + + public long SequenceChunkPointNum + { + get + { + return _sequenceChunkPointNum; + } + set + { + __isset.sequenceChunkPointNum = true; + this._sequenceChunkPointNum = value; + } + } + + public int UnsequenceChunkNum + { + get + { + return _unsequenceChunkNum; + } + set + { + __isset.unsequenceChunkNum = true; + this._unsequenceChunkNum = value; + } + } + + public long UnsequenceChunkPointNum + { + get + { + return _unsequenceChunkPointNum; + } + set + { + __isset.unsequenceChunkPointNum = true; + this._unsequenceChunkPointNum = value; + } + } + + public int TotalPageNum + { + get + { + return _totalPageNum; + } + set + { + __isset.totalPageNum = true; + this._totalPageNum = value; + } + } + + public int OverlappedPageNum + { + get + { + return _overlappedPageNum; + } + set + { + __isset.overlappedPageNum = true; + this._overlappedPageNum = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool seriesPathNum; + public bool seqFileNum; + public bool unSeqFileNum; + public bool sequenceChunkNum; + public bool sequenceChunkPointNum; + public bool unsequenceChunkNum; + public bool unsequenceChunkPointNum; + public bool totalPageNum; + public bool overlappedPageNum; + } + + public TSTracingInfo() + { + } + + public TSTracingInfo(List activityList, List elapsedTimeList) : this() + { + this.ActivityList = activityList; + this.ElapsedTimeList = elapsedTimeList; + } + + public TSTracingInfo DeepCopy() + { + var tmp28 = new TSTracingInfo(); + if((ActivityList != null)) + { + tmp28.ActivityList = this.ActivityList.DeepCopy(); + } + if((ElapsedTimeList != null)) + { + tmp28.ElapsedTimeList = this.ElapsedTimeList.DeepCopy(); + } + if(__isset.seriesPathNum) + { + tmp28.SeriesPathNum = this.SeriesPathNum; + } + tmp28.__isset.seriesPathNum = this.__isset.seriesPathNum; + if(__isset.seqFileNum) + { + tmp28.SeqFileNum = this.SeqFileNum; + } + tmp28.__isset.seqFileNum = this.__isset.seqFileNum; + if(__isset.unSeqFileNum) + { + tmp28.UnSeqFileNum = this.UnSeqFileNum; + } + tmp28.__isset.unSeqFileNum = this.__isset.unSeqFileNum; + if(__isset.sequenceChunkNum) + { + tmp28.SequenceChunkNum = this.SequenceChunkNum; + } + tmp28.__isset.sequenceChunkNum = this.__isset.sequenceChunkNum; + if(__isset.sequenceChunkPointNum) + { + tmp28.SequenceChunkPointNum = this.SequenceChunkPointNum; + } + tmp28.__isset.sequenceChunkPointNum = this.__isset.sequenceChunkPointNum; + if(__isset.unsequenceChunkNum) + { + tmp28.UnsequenceChunkNum = this.UnsequenceChunkNum; + } + tmp28.__isset.unsequenceChunkNum = this.__isset.unsequenceChunkNum; + if(__isset.unsequenceChunkPointNum) + { + tmp28.UnsequenceChunkPointNum = this.UnsequenceChunkPointNum; + } + tmp28.__isset.unsequenceChunkPointNum = this.__isset.unsequenceChunkPointNum; + if(__isset.totalPageNum) + { + tmp28.TotalPageNum = this.TotalPageNum; + } + tmp28.__isset.totalPageNum = this.__isset.totalPageNum; + if(__isset.overlappedPageNum) + { + tmp28.OverlappedPageNum = this.OverlappedPageNum; + } + tmp28.__isset.overlappedPageNum = this.__isset.overlappedPageNum; + return tmp28; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_activityList = false; + bool isset_elapsedTimeList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.List) + { + { + TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); + ActivityList = new List(_list29.Count); + for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + { + string _elem31; + _elem31 = await iprot.ReadStringAsync(cancellationToken); + ActivityList.Add(_elem31); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_activityList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); + ElapsedTimeList = new List(_list32.Count); + for(int _i33 = 0; _i33 < _list32.Count; ++_i33) + { + long _elem34; + _elem34 = await iprot.ReadI64Async(cancellationToken); + ElapsedTimeList.Add(_elem34); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_elapsedTimeList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.I32) + { + SeriesPathNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + SeqFileNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.I32) + { + UnSeqFileNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.I32) + { + SequenceChunkNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.I64) + { + SequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 8: + if (field.Type == TType.I32) + { + UnsequenceChunkNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 9: + if (field.Type == TType.I64) + { + UnsequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 10: + if (field.Type == TType.I32) + { + TotalPageNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 11: + if (field.Type == TType.I32) + { + OverlappedPageNum = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_activityList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_elapsedTimeList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSTracingInfo"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((ActivityList != null)) + { + field.Name = "activityList"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, ActivityList.Count), cancellationToken); + foreach (string _iter35 in ActivityList) + { + await oprot.WriteStringAsync(_iter35, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ElapsedTimeList != null)) + { + field.Name = "elapsedTimeList"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.I64, ElapsedTimeList.Count), cancellationToken); + foreach (long _iter36 in ElapsedTimeList) + { + await oprot.WriteI64Async(_iter36, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.seriesPathNum) + { + field.Name = "seriesPathNum"; + field.Type = TType.I32; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SeriesPathNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.seqFileNum) + { + field.Name = "seqFileNum"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SeqFileNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unSeqFileNum) + { + field.Name = "unSeqFileNum"; + field.Type = TType.I32; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(UnSeqFileNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.sequenceChunkNum) + { + field.Name = "sequenceChunkNum"; + field.Type = TType.I32; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SequenceChunkNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.sequenceChunkPointNum) + { + field.Name = "sequenceChunkPointNum"; + field.Type = TType.I64; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SequenceChunkPointNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unsequenceChunkNum) + { + field.Name = "unsequenceChunkNum"; + field.Type = TType.I32; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(UnsequenceChunkNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.unsequenceChunkPointNum) + { + field.Name = "unsequenceChunkPointNum"; + field.Type = TType.I64; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(UnsequenceChunkPointNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.totalPageNum) + { + field.Name = "totalPageNum"; + field.Type = TType.I32; + field.ID = 10; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(TotalPageNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.overlappedPageNum) + { + field.Name = "overlappedPageNum"; + field.Type = TType.I32; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(OverlappedPageNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSTracingInfo other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(ActivityList, other.ActivityList) + && TCollections.Equals(ElapsedTimeList, other.ElapsedTimeList) + && ((__isset.seriesPathNum == other.__isset.seriesPathNum) && ((!__isset.seriesPathNum) || (System.Object.Equals(SeriesPathNum, other.SeriesPathNum)))) + && ((__isset.seqFileNum == other.__isset.seqFileNum) && ((!__isset.seqFileNum) || (System.Object.Equals(SeqFileNum, other.SeqFileNum)))) + && ((__isset.unSeqFileNum == other.__isset.unSeqFileNum) && ((!__isset.unSeqFileNum) || (System.Object.Equals(UnSeqFileNum, other.UnSeqFileNum)))) + && ((__isset.sequenceChunkNum == other.__isset.sequenceChunkNum) && ((!__isset.sequenceChunkNum) || (System.Object.Equals(SequenceChunkNum, other.SequenceChunkNum)))) + && ((__isset.sequenceChunkPointNum == other.__isset.sequenceChunkPointNum) && ((!__isset.sequenceChunkPointNum) || (System.Object.Equals(SequenceChunkPointNum, other.SequenceChunkPointNum)))) + && ((__isset.unsequenceChunkNum == other.__isset.unsequenceChunkNum) && ((!__isset.unsequenceChunkNum) || (System.Object.Equals(UnsequenceChunkNum, other.UnsequenceChunkNum)))) + && ((__isset.unsequenceChunkPointNum == other.__isset.unsequenceChunkPointNum) && ((!__isset.unsequenceChunkPointNum) || (System.Object.Equals(UnsequenceChunkPointNum, other.UnsequenceChunkPointNum)))) + && ((__isset.totalPageNum == other.__isset.totalPageNum) && ((!__isset.totalPageNum) || (System.Object.Equals(TotalPageNum, other.TotalPageNum)))) + && ((__isset.overlappedPageNum == other.__isset.overlappedPageNum) && ((!__isset.overlappedPageNum) || (System.Object.Equals(OverlappedPageNum, other.OverlappedPageNum)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((ActivityList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ActivityList); + } + if((ElapsedTimeList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ElapsedTimeList); + } + if(__isset.seriesPathNum) + { + hashcode = (hashcode * 397) + SeriesPathNum.GetHashCode(); + } + if(__isset.seqFileNum) + { + hashcode = (hashcode * 397) + SeqFileNum.GetHashCode(); + } + if(__isset.unSeqFileNum) + { + hashcode = (hashcode * 397) + UnSeqFileNum.GetHashCode(); + } + if(__isset.sequenceChunkNum) + { + hashcode = (hashcode * 397) + SequenceChunkNum.GetHashCode(); + } + if(__isset.sequenceChunkPointNum) + { + hashcode = (hashcode * 397) + SequenceChunkPointNum.GetHashCode(); + } + if(__isset.unsequenceChunkNum) + { + hashcode = (hashcode * 397) + UnsequenceChunkNum.GetHashCode(); + } + if(__isset.unsequenceChunkPointNum) + { + hashcode = (hashcode * 397) + UnsequenceChunkPointNum.GetHashCode(); + } + if(__isset.totalPageNum) + { + hashcode = (hashcode * 397) + TotalPageNum.GetHashCode(); + } + if(__isset.overlappedPageNum) + { + hashcode = (hashcode * 397) + OverlappedPageNum.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSTracingInfo("); + if((ActivityList != null)) + { + sb.Append(", ActivityList: "); + ActivityList.ToString(sb); + } + if((ElapsedTimeList != null)) + { + sb.Append(", ElapsedTimeList: "); + ElapsedTimeList.ToString(sb); + } + if(__isset.seriesPathNum) + { + sb.Append(", SeriesPathNum: "); + SeriesPathNum.ToString(sb); + } + if(__isset.seqFileNum) + { + sb.Append(", SeqFileNum: "); + SeqFileNum.ToString(sb); + } + if(__isset.unSeqFileNum) + { + sb.Append(", UnSeqFileNum: "); + UnSeqFileNum.ToString(sb); + } + if(__isset.sequenceChunkNum) + { + sb.Append(", SequenceChunkNum: "); + SequenceChunkNum.ToString(sb); + } + if(__isset.sequenceChunkPointNum) + { + sb.Append(", SequenceChunkPointNum: "); + SequenceChunkPointNum.ToString(sb); + } + if(__isset.unsequenceChunkNum) + { + sb.Append(", UnsequenceChunkNum: "); + UnsequenceChunkNum.ToString(sb); + } + if(__isset.unsequenceChunkPointNum) + { + sb.Append(", UnsequenceChunkPointNum: "); + UnsequenceChunkPointNum.ToString(sb); + } + if(__isset.totalPageNum) + { + sb.Append(", TotalPageNum: "); + TotalPageNum.ToString(sb); + } + if(__isset.overlappedPageNum) + { + sb.Append(", OverlappedPageNum: "); + OverlappedPageNum.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSUnsetSchemaTemplateReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSUnsetSchemaTemplateReq.cs new file mode 100644 index 0000000..1d99924 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSUnsetSchemaTemplateReq.cs @@ -0,0 +1,233 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSUnsetSchemaTemplateReq : TBase +{ + + public long SessionId { get; set; } + + public string PrefixPath { get; set; } + + public string TemplateName { get; set; } + + public TSUnsetSchemaTemplateReq() + { + } + + public TSUnsetSchemaTemplateReq(long sessionId, string prefixPath, string templateName) : this() + { + this.SessionId = sessionId; + this.PrefixPath = prefixPath; + this.TemplateName = templateName; + } + + public TSUnsetSchemaTemplateReq DeepCopy() + { + var tmp417 = new TSUnsetSchemaTemplateReq(); + tmp417.SessionId = this.SessionId; + if((PrefixPath != null)) + { + tmp417.PrefixPath = this.PrefixPath; + } + if((TemplateName != null)) + { + tmp417.TemplateName = this.TemplateName; + } + return tmp417; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_sessionId = false; + bool isset_prefixPath = false; + bool isset_templateName = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + isset_sessionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + PrefixPath = await iprot.ReadStringAsync(cancellationToken); + isset_prefixPath = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + TemplateName = await iprot.ReadStringAsync(cancellationToken); + isset_templateName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_sessionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_prefixPath) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_templateName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSUnsetSchemaTemplateReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((PrefixPath != null)) + { + field.Name = "prefixPath"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PrefixPath, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((TemplateName != null)) + { + field.Name = "templateName"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(TemplateName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSUnsetSchemaTemplateReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SessionId, other.SessionId) + && System.Object.Equals(PrefixPath, other.PrefixPath) + && System.Object.Equals(TemplateName, other.TemplateName); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + if((PrefixPath != null)) + { + hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); + } + if((TemplateName != null)) + { + hashcode = (hashcode * 397) + TemplateName.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSUnsetSchemaTemplateReq("); + sb.Append(", SessionId: "); + SessionId.ToString(sb); + if((PrefixPath != null)) + { + sb.Append(", PrefixPath: "); + PrefixPath.ToString(sb); + } + if((TemplateName != null)) + { + sb.Append(", TemplateName: "); + TemplateName.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs b/src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs new file mode 100644 index 0000000..a4f5a93 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs @@ -0,0 +1,322 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public static class rpcExtensions +{ + public static bool Equals(this Dictionary instance, object that) + { + if (!(that is Dictionary other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this Dictionary instance) + { + return TCollections.GetHashCode(instance); + } + + + public static Dictionary DeepCopy(this Dictionary source) + { + if (source == null) + return null; + + var tmp609 = new Dictionary(source.Count); + foreach (var pair in source) + tmp609.Add((pair.Key != null) ? pair.Key : null, pair.Value); + return tmp609; + } + + + public static bool Equals(this Dictionary instance, object that) + { + if (!(that is Dictionary other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this Dictionary instance) + { + return TCollections.GetHashCode(instance); + } + + + public static Dictionary DeepCopy(this Dictionary source) + { + if (source == null) + return null; + + var tmp610 = new Dictionary(source.Count); + foreach (var pair in source) + tmp610.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); + return tmp610; + } + + + public static bool Equals(this List> instance, object that) + { + if (!(that is List> other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List> instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List> DeepCopy(this List> source) + { + if (source == null) + return null; + + var tmp611 = new List>(source.Count); + foreach (var elem in source) + tmp611.Add((elem != null) ? elem.DeepCopy() : null); + return tmp611; + } + + + public static bool Equals(this List> instance, object that) + { + if (!(that is List> other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List> instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List> DeepCopy(this List> source) + { + if (source == null) + return null; + + var tmp612 = new List>(source.Count); + foreach (var elem in source) + tmp612.Add((elem != null) ? elem.DeepCopy() : null); + return tmp612; + } + + + public static bool Equals(this List> instance, object that) + { + if (!(that is List> other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List> instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List> DeepCopy(this List> source) + { + if (source == null) + return null; + + var tmp613 = new List>(source.Count); + foreach (var elem in source) + tmp613.Add((elem != null) ? elem.DeepCopy() : null); + return tmp613; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp614 = new List(source.Count); + foreach (var elem in source) + tmp614.Add((elem != null) ? elem.DeepCopy() : null); + return tmp614; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp615 = new List(source.Count); + foreach (var elem in source) + tmp615.Add((elem != null) ? elem.ToArray() : null); + return tmp615; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp616 = new List(source.Count); + foreach (var elem in source) + tmp616.Add(elem); + return tmp616; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp617 = new List(source.Count); + foreach (var elem in source) + tmp617.Add(elem); + return tmp617; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp618 = new List(source.Count); + foreach (var elem in source) + tmp618.Add(elem); + return tmp618; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp619 = new List(source.Count); + foreach (var elem in source) + tmp619.Add((elem != null) ? elem : null); + return tmp619; + } + + +} diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 211ad82..6be1a5a 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -5,9 +5,8 @@ using System.Threading; using System.Threading.Tasks; using Apache.IoTDB.DataStructure; -using NLog; -using NLog.Config; -using NLog.Targets; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Protocol; using Thrift.Transport; @@ -34,7 +33,7 @@ public class SessionPool private bool _debugMode; private bool _isClose = true; private ConcurrentClientQueue _clients; - private Logger _logger; + private ILogger _logger; public SessionPool(string host, int port, int poolSize) { @@ -101,18 +100,12 @@ public SessionPool( _debugMode = false; _poolSize = poolSize; } - - public void OpenDebugMode(LoggingConfiguration config = null) + ILoggerFactory factory; + public void OpenDebugMode(Action configure) { - _debugMode = true; - if (config == null) - { - config = new LoggingConfiguration(); - config.AddRule(LogLevel.Debug, LogLevel.Fatal, new ConsoleTarget("logconsole")); - } - - LogManager.Configuration = config; - _logger = LogManager.GetCurrentClassLogger(); + _debugMode = true; + factory= LoggerFactory.Create(configure); + _logger = factory.CreateLogger(nameof(Apache.IoTDB)); } public void CloseDebugMode() @@ -172,7 +165,7 @@ public async Task SetTimeZone(string zoneId) var resp = await client.ServiceClient.setTimeZoneAsync(req); if (_debugMode) { - _logger.Info("setting time zone_id as {0}, server message:{1}", zoneId, resp.Message); + _logger.LogInformation("setting time zone_id as {0}, server message:{1}", zoneId, resp.Message); } } catch (TException e) @@ -273,7 +266,7 @@ public async Task SetStorageGroup(string groupName) if (_debugMode) { - _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); + _logger.LogInformation("set storage group {0} successfully, server message is {1}", groupName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -288,7 +281,7 @@ public async Task SetStorageGroup(string groupName) var status = await client.ServiceClient.setStorageGroupAsync(client.SessionId, groupName); if (_debugMode) { - _logger.Info("set storage group {0} successfully, server message is {1}", groupName, status.Message); + _logger.LogInformation("set storage group {0} successfully, server message is {1}", groupName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); } @@ -322,7 +315,7 @@ public async Task CreateTimeSeries( if (_debugMode) { - _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); + _logger.LogInformation("creating time series {0} successfully, server message is {1}", tsPath, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -337,7 +330,7 @@ public async Task CreateTimeSeries( var status = await client.ServiceClient.createTimeseriesAsync(req); if (_debugMode) { - _logger.Info("creating time series {0} successfully, server message is {1}", tsPath, status.Message); + _logger.LogInformation("creating time series {0} successfully, server message is {1}", tsPath, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); } @@ -378,7 +371,7 @@ public async Task CreateAlignedTimeseriesAsync( if (_debugMode) { - _logger.Info("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); + _logger.LogInformation("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -393,7 +386,7 @@ public async Task CreateAlignedTimeseriesAsync( var status = await client.ServiceClient.createAlignedTimeseriesAsync(req); if (_debugMode) { - _logger.Info("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); + _logger.LogInformation("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); } @@ -419,7 +412,7 @@ public async Task DeleteStorageGroupAsync(string groupName) if (_debugMode) { - _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); + _logger.LogInformation($"delete storage group {groupName} successfully, server message is {status?.Message}"); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -436,7 +429,7 @@ public async Task DeleteStorageGroupAsync(string groupName) if (_debugMode) { - _logger.Info($"delete storage group {groupName} successfully, server message is {status?.Message}"); + _logger.LogInformation($"delete storage group {groupName} successfully, server message is {status?.Message}"); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -462,7 +455,7 @@ public async Task DeleteStorageGroupsAsync(List groupNames) if (_debugMode) { - _logger.Info( + _logger.LogInformation( "delete storage group(s) {0} successfully, server message is {1}", groupNames, status.Message); @@ -480,7 +473,7 @@ public async Task DeleteStorageGroupsAsync(List groupNames) if (_debugMode) { - _logger.Info( + _logger.LogInformation( "delete storage group(s) {0} successfully, server message is {1}", groupNames, status.Message); @@ -518,7 +511,7 @@ public async Task CreateMultiTimeSeriesAsync( if (_debugMode) { - _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); + _logger.LogInformation("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -533,7 +526,7 @@ public async Task CreateMultiTimeSeriesAsync( var status = await client.ServiceClient.createMultiTimeseriesAsync(req); if (_debugMode) { - _logger.Info("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); + _logger.LogInformation("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); } @@ -558,7 +551,7 @@ public async Task DeleteTimeSeriesAsync(List pathList) if (_debugMode) { - _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); + _logger.LogInformation("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -573,7 +566,7 @@ public async Task DeleteTimeSeriesAsync(List pathList) if (_debugMode) { - _logger.Info("deleting multiple time series {0}, server message is {1}", pathList, status.Message); + _logger.LogInformation("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -620,7 +613,7 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l if (_debugMode) { - _logger.Info( + _logger.LogInformation( "delete data from {0}, server message is {1}", tsPathLst, status.Message); @@ -639,7 +632,7 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l if (_debugMode) { - _logger.Info( + _logger.LogInformation( "delete data from {0}, server message is {1}", tsPathLst, status.Message); @@ -670,7 +663,7 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) if (_debugMode) { - _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -686,7 +679,7 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) if (_debugMode) { - _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -715,7 +708,7 @@ public async Task InsertAlignedRecordAsync(string deviceId, RowRecord recor if (_debugMode) { - _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -731,7 +724,7 @@ public async Task InsertAlignedRecordAsync(string deviceId, RowRecord recor if (_debugMode) { - _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -781,7 +774,7 @@ public async Task InsertRecordsAsync(List deviceId, List if (_debugMode) { - _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -797,7 +790,7 @@ public async Task InsertRecordsAsync(List deviceId, List if (_debugMode) { - _logger.Info("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -827,7 +820,7 @@ public async Task InsertAlignedRecordsAsync(List deviceId, List InsertAlignedRecordsAsync(List deviceId, List InsertTabletAsync(Tablet tablet) if (_debugMode) { - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + _logger.LogInformation("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -897,7 +890,7 @@ public async Task InsertTabletAsync(Tablet tablet) if (_debugMode) { - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + _logger.LogInformation("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -924,7 +917,7 @@ public async Task InsertAlignedTabletAsync(Tablet tablet) if (_debugMode) { - _logger.Info("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + _logger.LogInformation("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -940,7 +933,7 @@ public async Task InsertAlignedTabletAsync(Tablet tablet) if (_debugMode) { - _logger.Info("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); + _logger.LogInformation("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -998,7 +991,7 @@ public async Task InsertTabletsAsync(List tabletLst) if (_debugMode) { - _logger.Info("insert multiple tablets, message: {0}", status.Message); + _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1014,7 +1007,7 @@ public async Task InsertTabletsAsync(List tabletLst) if (_debugMode) { - _logger.Info("insert multiple tablets, message: {0}", status.Message); + _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1042,7 +1035,7 @@ public async Task InsertAlignedTabletsAsync(List tabletLst) if (_debugMode) { - _logger.Info("insert multiple aligned tablets, message: {0}", status.Message); + _logger.LogInformation("insert multiple aligned tablets, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1058,7 +1051,7 @@ public async Task InsertAlignedTabletsAsync(List tabletLst) if (_debugMode) { - _logger.Info("insert multiple aligned tablets, message: {0}", status.Message); + _logger.LogInformation("insert multiple aligned tablets, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1121,7 +1114,7 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List if (_debugMode) { - _logger.Info("insert records of one device, message: {0}", status.Message); + _logger.LogInformation("insert records of one device, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1137,7 +1130,7 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List if (_debugMode) { - _logger.Info("insert records of one device, message: {0}", status.Message); + _logger.LogInformation("insert records of one device, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1172,7 +1165,7 @@ public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceI if (_debugMode) { - _logger.Info("insert aligned records of one device, message: {0}", status.Message); + _logger.LogInformation("insert aligned records of one device, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1188,7 +1181,7 @@ public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceI if (_debugMode) { - _logger.Info("insert aligned records of one device, message: {0}", status.Message); + _logger.LogInformation("insert aligned records of one device, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1221,7 +1214,7 @@ public async Task TestInsertRecordAsync(string deviceId, RowRecord record) if (_debugMode) { - _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1237,7 +1230,7 @@ public async Task TestInsertRecordAsync(string deviceId, RowRecord record) if (_debugMode) { - _logger.Info("insert one record to device {0}, server message: {1}", deviceId, status.Message); + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1264,7 +1257,7 @@ public async Task TestInsertRecordsAsync(List deviceId, List TestInsertRecordsAsync(List deviceId, List TestInsertTabletAsync(Tablet tablet) if (_debugMode) { - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, + _logger.LogInformation("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } @@ -1325,7 +1318,7 @@ public async Task TestInsertTabletAsync(Tablet tablet) if (_debugMode) { - _logger.Info("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, + _logger.LogInformation("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } @@ -1354,7 +1347,7 @@ public async Task TestInsertTabletsAsync(List tabletLst) if (_debugMode) { - _logger.Info("insert multiple tablets, message: {0}", status.Message); + _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1370,7 +1363,7 @@ public async Task TestInsertTabletsAsync(List tabletLst) if (_debugMode) { - _logger.Info("insert multiple tablets, message: {0}", status.Message); + _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1449,7 +1442,7 @@ public async Task ExecuteNonQueryStatementAsync(string sql) if (_debugMode) { - _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + _logger.LogInformation("execute non-query statement {0} message: {1}", sql, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1467,7 +1460,7 @@ public async Task ExecuteNonQueryStatementAsync(string sql) if (_debugMode) { - _logger.Info("execute non-query statement {0} message: {1}", sql, status.Message); + _logger.LogInformation("execute non-query statement {0} message: {1}", sql, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1493,7 +1486,7 @@ public async Task CreateSchemaTemplateAsync(Template template) if (_debugMode) { - _logger.Info("create schema template {0} message: {1}", template.Name, status.Message); + _logger.LogInformation("create schema template {0} message: {1}", template.Name, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1509,7 +1502,7 @@ public async Task CreateSchemaTemplateAsync(Template template) if (_debugMode) { - _logger.Info("create schema template {0} message: {1}", template.Name, status.Message); + _logger.LogInformation("create schema template {0} message: {1}", template.Name, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1535,7 +1528,7 @@ public async Task DropSchemaTemplateAsync(string templateName) if (_debugMode) { - _logger.Info("drop schema template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("drop schema template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1551,7 +1544,7 @@ public async Task DropSchemaTemplateAsync(string templateName) if (_debugMode) { - _logger.Info("drop schema template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("drop schema template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1577,7 +1570,7 @@ public async Task SetSchemaTemplateAsync(string templateName, string prefix if (_debugMode) { - _logger.Info("set schema template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("set schema template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1593,7 +1586,7 @@ public async Task SetSchemaTemplateAsync(string templateName, string prefix if (_debugMode) { - _logger.Info("set schema template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("set schema template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1619,7 +1612,7 @@ public async Task UnsetSchemaTemplateAsync(string prefixPath, string templa if (_debugMode) { - _logger.Info("unset schema template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("unset schema template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1635,7 +1628,7 @@ public async Task UnsetSchemaTemplateAsync(string prefixPath, string templa if (_debugMode) { - _logger.Info("unset schema template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("unset schema template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1664,7 +1657,7 @@ public async Task AddAlignedMeasurementsInTemplateAsync(string templateName if (_debugMode) { - _logger.Info("add aligned measurements in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("add aligned measurements in template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1680,7 +1673,7 @@ public async Task AddAlignedMeasurementsInTemplateAsync(string templateName if (_debugMode) { - _logger.Info("add aligned measurements in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("add aligned measurements in template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1710,7 +1703,7 @@ public async Task AddUnalignedMeasurementsInTemplateAsync(string templateNa if (_debugMode) { - _logger.Info("add unaligned measurements in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("add unaligned measurements in template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1726,7 +1719,7 @@ public async Task AddUnalignedMeasurementsInTemplateAsync(string templateNa if (_debugMode) { - _logger.Info("add unaligned measurements in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("add unaligned measurements in template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1751,7 +1744,7 @@ public async Task DeleteNodeInTemplateAsync(string templateName, string pat if (_debugMode) { - _logger.Info("delete node in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("delete node in template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1767,7 +1760,7 @@ public async Task DeleteNodeInTemplateAsync(string templateName, string pat if (_debugMode) { - _logger.Info("delete node in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("delete node in template {0} message: {1}", templateName, status.Message); } return _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1793,7 +1786,7 @@ public async Task CountMeasurementsInTemplateAsync(string name) var status = resp.Status; if (_debugMode) { - _logger.Info("count measurements in template {0} message: {1}", name, status.Message); + _logger.LogInformation("count measurements in template {0} message: {1}", name, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1810,7 +1803,7 @@ public async Task CountMeasurementsInTemplateAsync(string name) var status = resp.Status; if (_debugMode) { - _logger.Info("count measurements in template {0} message: {1}", name, status.Message); + _logger.LogInformation("count measurements in template {0} message: {1}", name, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1837,7 +1830,7 @@ public async Task IsMeasurementInTemplateAsync(string templateName, string var status = resp.Status; if (_debugMode) { - _logger.Info("is measurement in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("is measurement in template {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1854,7 +1847,7 @@ public async Task IsMeasurementInTemplateAsync(string templateName, string var status = resp.Status; if (_debugMode) { - _logger.Info("is measurement in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("is measurement in template {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1882,7 +1875,7 @@ public async Task IsPathExistInTemplate(string templateName, string path) var status = resp.Status; if (_debugMode) { - _logger.Info("is path exist in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("is path exist in template {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1899,7 +1892,7 @@ public async Task IsPathExistInTemplate(string templateName, string path) var status = resp.Status; if (_debugMode) { - _logger.Info("is path exist in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("is path exist in template {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1927,7 +1920,7 @@ public async Task> ShowMeasurementsInTemplateAsync(string templateN var status = resp.Status; if (_debugMode) { - _logger.Info("get measurements in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("get measurements in template {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1944,7 +1937,7 @@ public async Task> ShowMeasurementsInTemplateAsync(string templateN var status = resp.Status; if (_debugMode) { - _logger.Info("get measurements in template {0} message: {1}", templateName, status.Message); + _logger.LogInformation("get measurements in template {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1970,7 +1963,7 @@ public async Task> ShowAllTemplatesAsync() var status = resp.Status; if (_debugMode) { - _logger.Info("get all templates message: {0}", status.Message); + _logger.LogInformation("get all templates message: {0}", status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -1987,7 +1980,7 @@ public async Task> ShowAllTemplatesAsync() var status = resp.Status; if (_debugMode) { - _logger.Info("get all templates message: {0}", status.Message); + _logger.LogInformation("get all templates message: {0}", status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -2013,7 +2006,7 @@ public async Task> ShowPathsTemplateSetOnAsync(string templateName) var status = resp.Status; if (_debugMode) { - _logger.Info("get paths template set on {0} message: {1}", templateName, status.Message); + _logger.LogInformation("get paths template set on {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -2030,7 +2023,7 @@ public async Task> ShowPathsTemplateSetOnAsync(string templateName) var status = resp.Status; if (_debugMode) { - _logger.Info("get paths template set on {0} message: {1}", templateName, status.Message); + _logger.LogInformation("get paths template set on {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -2056,7 +2049,7 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam var status = resp.Status; if (_debugMode) { - _logger.Info("get paths template using on {0} message: {1}", templateName, status.Message); + _logger.LogInformation("get paths template using on {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); @@ -2073,7 +2066,7 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam var status = resp.Status; if (_debugMode) { - _logger.Info("get paths template using on {0} message: {1}", templateName, status.Message); + _logger.LogInformation("get paths template using on {0} message: {1}", templateName, status.Message); } _utilFunctions.VerifySuccess(status, SuccessCode); From 3dfa8185ef10cbb5f1803a1d91228a84439e34de Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Wed, 29 Jun 2022 22:48:14 +0800 Subject: [PATCH 153/214] =?UTF-8?q?=E9=87=8D=E6=96=B0=E8=B0=83=E7=A4=BA?= =?UTF-8?q?=E4=BE=8B=E8=BF=90=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 25 +++++++++++++++++++ Apache.IoTDB.sln | 9 +++++++ docker-compose.dcproj | 15 +++++++++++ docker-compose.override.yml | 1 + docker-compose.yml | 8 ++++++ .../Apache.IoTDB.Samples.csproj | 8 +++++- samples/Apache.IoTDB.Samples/Dockerfile | 21 ++++++++++++++++ .../Properties/launchSettings.json | 10 ++++++++ 8 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 .dockerignore create mode 100644 docker-compose.dcproj create mode 100644 docker-compose.override.yml create mode 100644 docker-compose.yml create mode 100644 samples/Apache.IoTDB.Samples/Dockerfile create mode 100644 samples/Apache.IoTDB.Samples/Properties/launchSettings.json diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..bdca33b --- /dev/null +++ b/.dockerignore @@ -0,0 +1,25 @@ +**/.classpath +**/.dockerignore +**/.env +**/.git +**/.gitignore +**/.project +**/.settings +**/.toolstarget +**/.vs +**/.vscode +**/*.*proj.user +**/*.dbmdl +**/*.jfm +**/azds.yaml +**/bin +**/charts +**/docker-compose* +**/Dockerfile* +**/node_modules +**/npm-debug.log +**/obj +**/secrets.dev.yaml +**/values.dev.yaml +LICENSE +README.md \ No newline at end of file diff --git a/Apache.IoTDB.sln b/Apache.IoTDB.sln index f153697..91f5847 100644 --- a/Apache.IoTDB.sln +++ b/Apache.IoTDB.sln @@ -20,9 +20,14 @@ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{DEAC57D3-4B3A-4650-85E3-5A179CD1DBAD}" ProjectSection(SolutionItems) = preProject docs\bytebuffer_zh.md = docs\bytebuffer_zh.md + PUBLISH.md = PUBLISH.md + README.md = README.md + README_ZH.md = README_ZH.md docs\time_profile_zh.pdf = docs\time_profile_zh.pdf EndProjectSection EndProject +Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{4D457769-80CB-401F-9155-C3125C04FACD}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -45,6 +50,10 @@ Global {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.Build.0 = Debug|Any CPU {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.ActiveCfg = Release|Any CPU {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.Build.0 = Release|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/docker-compose.dcproj b/docker-compose.dcproj new file mode 100644 index 0000000..56652dd --- /dev/null +++ b/docker-compose.dcproj @@ -0,0 +1,15 @@ + + + + 2.1 + Linux + 4d457769-80cb-401f-9155-c3125c04facd + + + + docker-compose.yml + + + + + \ No newline at end of file diff --git a/docker-compose.override.yml b/docker-compose.override.yml new file mode 100644 index 0000000..af2c815 --- /dev/null +++ b/docker-compose.override.yml @@ -0,0 +1 @@ +version: '3.4' diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..318f837 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,8 @@ +version: '3.4' + +services: + apache.iotdb.samples: + image: ${DOCKER_REGISTRY-}apacheiotdbsamples + build: + context: . + dockerfile: samples/Apache.IoTDB.Samples/Dockerfile diff --git a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj index b0d4699..40047a9 100644 --- a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj +++ b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj @@ -2,9 +2,15 @@ Exe - net5.0 + net6.0 + Linux + ..\.. + + + + diff --git a/samples/Apache.IoTDB.Samples/Dockerfile b/samples/Apache.IoTDB.Samples/Dockerfile new file mode 100644 index 0000000..12de45d --- /dev/null +++ b/samples/Apache.IoTDB.Samples/Dockerfile @@ -0,0 +1,21 @@ +#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. + +FROM mcr.microsoft.com/dotnet/runtime:6.0 AS base +WORKDIR /app + +FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build +WORKDIR /src +COPY ["samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj", "samples/Apache.IoTDB.Samples/"] +COPY ["src/Apache.IoTDB/Apache.IoTDB.csproj", "src/Apache.IoTDB/"] +RUN dotnet restore "samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj" +COPY . . +WORKDIR "/src/samples/Apache.IoTDB.Samples" +RUN dotnet build "Apache.IoTDB.Samples.csproj" -c Release -o /app/build + +FROM build AS publish +RUN dotnet publish "Apache.IoTDB.Samples.csproj" -c Release -o /app/publish + +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . +ENTRYPOINT ["dotnet", "Apache.IoTDB.Samples.dll"] \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/Properties/launchSettings.json b/samples/Apache.IoTDB.Samples/Properties/launchSettings.json new file mode 100644 index 0000000..7195264 --- /dev/null +++ b/samples/Apache.IoTDB.Samples/Properties/launchSettings.json @@ -0,0 +1,10 @@ +{ + "profiles": { + "Apache.IoTDB.Samples": { + "commandName": "Project" + }, + "Docker": { + "commandName": "Docker" + } + } +} \ No newline at end of file From 2f216c855ed88172124fe604837858a02bdc46de Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Thu, 30 Jun 2022 00:11:29 +0800 Subject: [PATCH 154/214] =?UTF-8?q?=E8=B0=83docker-compose=20=20=E4=BD=BF?= =?UTF-8?q?=E5=BE=97=E6=B5=8B=E8=AF=95=E6=AD=A3=E5=B8=B8=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + docker-compose.yml | 20 +++ .../Apache.IoTDB.Samples.csproj | 3 +- samples/Apache.IoTDB.Samples/Program.cs | 22 +++- .../SessionPoolTest.AlignedRecord.cs | 4 +- .../Apache.IoTDB.Samples/SessionPoolTest.cs | 123 +++++++++--------- 6 files changed, 104 insertions(+), 69 deletions(-) diff --git a/.gitignore b/.gitignore index 725ebff..1718b22 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,4 @@ publish/ ### Rider ### .idea /.vs/Apache.IoTDB/FileContentIndex +/.vs/ProjectEvaluation diff --git a/docker-compose.yml b/docker-compose.yml index 318f837..ac64d66 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,6 +3,26 @@ version: '3.4' services: apache.iotdb.samples: image: ${DOCKER_REGISTRY-}apacheiotdbsamples + depends_on: + - iotdb + links: + - iotdb build: context: . dockerfile: samples/Apache.IoTDB.Samples/Dockerfile + networks: + - iotdb-network + + iotdb: + image: apache/iotdb:0.13.0-node + restart: always + container_name: iotdb + ports: + - 6667:6667 + networks: + - iotdb-network + +networks: + iotdb-network: + driver: bridge + diff --git a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj index 40047a9..9614c46 100644 --- a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj +++ b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj @@ -1,4 +1,4 @@ - + Exe @@ -9,6 +9,7 @@ + diff --git a/samples/Apache.IoTDB.Samples/Program.cs b/samples/Apache.IoTDB.Samples/Program.cs index 346ca7b..2a431ef 100644 --- a/samples/Apache.IoTDB.Samples/Program.cs +++ b/samples/Apache.IoTDB.Samples/Program.cs @@ -1,11 +1,25 @@ -namespace Apache.IoTDB.Samples +using Microsoft.Extensions.Logging; +using NLog.Extensions.Logging; +using System; +using System.Threading.Tasks; + +namespace Apache.IoTDB.Samples { public static class Program - { - public static void Main() + { + public static async Task Main(string[] args) { var sessionPoolTest = new SessionPoolTest("iotdb"); - sessionPoolTest.Test(); + await sessionPoolTest.Test() ; + } + + public static void OpenDebugMode(this SessionPool session) + { + session.OpenDebugMode(builder => + { + builder.AddConsole(); + builder.AddNLog(); + }); } } } \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs index 4893036..0d690f3 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs @@ -22,8 +22,8 @@ public async Task TestInsertAlignedRecord() var types = new List { TSDataType.TEXT, TSDataType.BOOLEAN, TSDataType.INT32 }; var encodings = new List { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; var compressors = new List { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }; - status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurements, types, encodings, compressors); - System.Diagnostics.Debug.Assert(status == 0); + //status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurements, types, encodings, compressors); + //System.Diagnostics.Debug.Assert(status == 0); var measures = new List { test_measurements[1], test_measurements[2], test_measurements[3] }; diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index 67b0092..572550e 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -35,68 +35,67 @@ public SessionPoolTest(string _host = "localhost") host = _host; } - public void Test() - { - Task task; - - task = TestInsertAlignedRecord(); - task.Wait(); - task = TestInsertAlignedRecords(); - task.Wait(); - task = TestInsertAlignedRecordsOfOneDevice(); - task.Wait(); - task = TestInsertAlignedTablet(); - task.Wait(); - task = TestInsertAlignedTablets(); - task.Wait(); - task = TestInsertRecord(); - task.Wait(); - task = TestCreateMultiTimeSeries(); - task.Wait(); - task = TestInsertStrRecord(); - task.Wait(); - task = TestInsertRecords(); - task.Wait(); - task = TestInsertRecordsOfOneDevice(); - task.Wait(); - task = TestInsertTablet(); - task.Wait(); - task = TestInsertTabletWithNullValue(); - task.Wait(); - task = TestInsertTablets(); - task.Wait(); - task = TestAddAlignedMeasurements(); - task.Wait(); - task = TestAddUnalignedMeasurements(); - task.Wait(); - task = TestSetAndUnsetSchemaTemplate(); - task.Wait(); - task = TestCreateAlignedTimeseries(); - task.Wait(); - task = TestCreateAndDropSchemaTemplate(); - task.Wait(); - task = TestDeleteNodeInTemplate(); - task.Wait(); - task = TestGetTimeZone(); - task.Wait(); - task = TestSetAndDeleteStorageGroup(); - task.Wait(); - task = TestCreateTimeSeries(); - task.Wait(); - task = TestDeleteTimeSeries(); - task.Wait(); - task = TestDeleteStorageGroups(); - task.Wait(); - task = TestCheckTimeSeriesExists(); - task.Wait(); - task = TestSetTimeZone(); - task.Wait(); - task = TestDeleteData(); - task.Wait(); - task = TestNonSql(); - task.Wait(); - task = TestSqlQuery(); - task.Wait(); + public async Task Test() + { + + await TestInsertAlignedRecord(); + + await TestInsertAlignedRecords(); + + await TestInsertAlignedRecordsOfOneDevice(); + + await TestInsertAlignedTablet(); + + await TestInsertAlignedTablets(); + + await TestInsertRecord(); + + await TestCreateMultiTimeSeries(); + + await TestInsertStrRecord(); + + await TestInsertRecords(); + + await TestInsertRecordsOfOneDevice(); + + await TestInsertTablet(); + + await TestInsertTabletWithNullValue(); + + await TestInsertTablets(); + + await TestAddAlignedMeasurements(); + + await TestAddUnalignedMeasurements(); + + await TestSetAndUnsetSchemaTemplate(); + + await TestCreateAlignedTimeseries(); + + await TestCreateAndDropSchemaTemplate(); + + await TestDeleteNodeInTemplate(); + + await TestGetTimeZone(); + + await TestSetAndDeleteStorageGroup(); + + await TestCreateTimeSeries(); + + await TestDeleteTimeSeries(); + + await TestDeleteStorageGroups(); + + await TestCheckTimeSeriesExists(); + + await TestSetTimeZone(); + + await TestDeleteData(); + + await TestNonSql(); + + await TestSqlQuery(); + } public async Task TestGetTimeZone() From be1da4ac8f9e34dbb6caf0c7606f0c2974c219ff Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Thu, 30 Jun 2022 00:36:17 +0800 Subject: [PATCH 155/214] add connectionString --- src/Apache.IoTDB/SessionPool.cs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 6be1a5a..5a85e2b 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -45,8 +45,24 @@ public SessionPool(string host, int port, int poolSize) _zoneId = "UTC+08:00"; _fetchSize = 1024; _poolSize = poolSize; + } + public SessionPool(string connectionString) + { + Dictionary pairs = new Dictionary(); + connectionString.Split(';', StringSplitOptions.RemoveEmptyEntries).ToList().ForEach(f => + { + var kv = f.Split('='); + pairs.TryAdd(key: kv[0], value: kv[1]); + }); + _host = pairs.GetValueOrDefault("Server") ?? "127.0.0.1"; + _port = int.Parse(pairs.GetValueOrDefault("Port") ?? "6667"); + _username = pairs.GetValueOrDefault("User") ?? "root"; + _password = pairs.GetValueOrDefault("Password") ?? "root"; + _fetchSize = int.Parse(pairs.GetValueOrDefault("fetchSize") ?? "1800"); + _enableRpcCompression = bool.Parse(pairs.GetValueOrDefault("enableRpcCompression") ?? "false"); + _poolSize = int.Parse(pairs.GetValueOrDefault("poolSize") ?? "8"); + _zoneId = pairs.GetValueOrDefault("zoneId") ?? "UTC+08:00"; } - public SessionPool( string host, int port, From b21f98ec49d80edb6fce901a0ccbc8db64266094 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Wed, 6 Jul 2022 00:45:04 +0800 Subject: [PATCH 156/214] =?UTF-8?q?=E9=9C=80=E8=A6=81=E4=BF=AE=E6=94=B9doc?= =?UTF-8?q?ker-compose.yml=EF=BC=8C=E4=BB=A5=E4=BD=BF=E5=BE=97iotdb?= =?UTF-8?q?=E5=AE=8C=E5=85=A8=E5=90=AF=E5=8A=A8=E5=90=8E=E6=89=8D=E5=BC=80?= =?UTF-8?q?=E5=A7=8B=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + docker-compose.yml | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 1718b22..3e8e156 100644 --- a/.gitignore +++ b/.gitignore @@ -68,3 +68,4 @@ publish/ .idea /.vs/Apache.IoTDB/FileContentIndex /.vs/ProjectEvaluation +/.vs/Apache.IoTDB diff --git a/docker-compose.yml b/docker-compose.yml index ac64d66..bb510ef 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,7 +4,8 @@ services: apache.iotdb.samples: image: ${DOCKER_REGISTRY-}apacheiotdbsamples depends_on: - - iotdb + iotdb: + condition: service_healthy links: - iotdb build: @@ -17,6 +18,12 @@ services: image: apache/iotdb:0.13.0-node restart: always container_name: iotdb + healthcheck: + test: ["CMD", "ls", "/iotdb/data"] + interval: 3s + timeout: 5s + retries: 30 + start_period: 30s ports: - 6667:6667 networks: From 0529faea8bee3e948f88aba0f02a1093345e9b24 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Fri, 8 Jul 2022 20:32:08 +0800 Subject: [PATCH 157/214] Fix CI due to Dockerfile Changes --- .github/workflows/dotnet.yml | 8 ++++---- .github/workflows/e2e.yml | 19 ++----------------- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index 50a7bfe..5797b16 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -16,10 +16,10 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: 5.0.x + dotnet-version: 6.0.x - name: Restore dependencies - run: dotnet restore + run: dotnet restore "src/Apache.IoTDB/Apache.IoTDB.csproj" - name: Build - run: dotnet build --no-restore + run: dotnet build --no-restore "src/Apache.IoTDB/Apache.IoTDB.csproj" - name: Test - run: dotnet test --no-build --verbosity normal + run: dotnet test --no-build --verbosity normal "tests/Apache.IoTDB.Tests/Apache.IoTDB.Tests.csproj" diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 8688820..e3a8c4e 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -19,25 +19,10 @@ jobs: - name: Check out code into the CSharp module directory uses: actions/checkout@v2 - - name: Cache local Maven repository - uses: actions/cache@v2 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven- - - - name: Set Up IoTDB - run: | - sh -c "cd /tmp/ && rm -rf iotdb && git clone https://github.com/apache/iotdb.git && cd iotdb && mvn -Dmaven.test.skip=true package -am -pl server" - mkdir -p target/iotdb - unzip -o -q /tmp/iotdb/server/target/iotdb-server-*.zip -d target/iotdb - - name: Set Docker & Run Test run: | - docker-compose -f samples/Apache.IoTDB.Samples/docker-compose.yml up --build --abort-on-container-exit --remove-orphans + docker-compose -f docker-compose.yml up --build --abort-on-container-exit --remove-orphans - name: Clean IoTDB & Shut Down Docker run: | - rm -rf /tmp/iotdb target - docker-compose -f samples/Apache.IoTDB.Samples/docker-compose.yml down + docker-compose -f docker-compose.yml down From f3320fa463b32d4dd153378560096f234ee98884 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sat, 9 Jul 2022 11:54:20 +0800 Subject: [PATCH 158/214] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=8A=A8=E7=94=9F?= =?UTF-8?q?=E6=88=90=E7=9A=84=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Apache.IoTDB.Rpc.Generated.csproj | 11 - src/Apache.IoTDB.Rpc.Generated/EndPoint.cs | 191 - .../ServerProperties.cs | 611 - .../TSAppendSchemaTemplateReq.cs | 457 - .../TSCancelOperationReq.cs | 179 - .../TSCloseOperationReq.cs | 253 - .../TSCloseSessionReq.cs | 149 - .../TSCreateAlignedTimeseriesReq.cs | 671 - .../TSCreateMultiTimeseriesReq.cs | 715 - .../TSCreateSchemaTemplateReq.cs | 233 - .../TSCreateTimeseriesReq.cs | 543 - .../TSDeleteDataReq.cs | 268 - .../TSDropSchemaTemplateReq.cs | 191 - .../TSExecuteBatchStatementReq.cs | 208 - .../TSExecuteStatementReq.cs | 423 - .../TSExecuteStatementResp.cs | 798 - .../TSFetchMetadataReq.cs | 246 - .../TSFetchMetadataResp.cs | 332 - .../TSFetchResultsReq.cs | 336 - .../TSFetchResultsResp.cs | 328 - .../TSGetOperationStatusReq.cs | 179 - .../TSGetTimeZoneResp.cs | 204 - src/Apache.IoTDB.Rpc.Generated/TSIService.cs | 16153 ---------------- .../TSInsertRecordReq.cs | 377 - .../TSInsertRecordsOfOneDeviceReq.cs | 440 - .../TSInsertRecordsReq.cs | 457 - .../TSInsertStringRecordReq.cs | 394 - .../TSInsertStringRecordsOfOneDeviceReq.cs | 457 - .../TSInsertStringRecordsReq.cs | 474 - .../TSInsertTabletReq.cs | 478 - .../TSInsertTabletsReq.cs | 592 - .../TSLastDataQueryReq.cs | 421 - .../TSOpenSessionReq.cs | 369 - .../TSOpenSessionResp.cs | 321 - .../TSProtocolVersion.cs | 16 - .../TSPruneSchemaTemplateReq.cs | 233 - .../TSQueryDataSet.cs | 279 - .../TSQueryNonAlignDataSet.cs | 237 - .../TSQueryTemplateReq.cs | 276 - .../TSQueryTemplateResp.cs | 362 - .../TSRawDataQueryReq.cs | 451 - .../TSSetSchemaTemplateReq.cs | 233 - .../TSSetTimeZoneReq.cs | 191 - src/Apache.IoTDB.Rpc.Generated/TSStatus.cs | 321 - .../TSTracingInfo.cs | 684 - .../TSUnsetSchemaTemplateReq.cs | 233 - .../rpc.Extensions.cs | 322 - 47 files changed, 32297 deletions(-) delete mode 100644 src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj delete mode 100644 src/Apache.IoTDB.Rpc.Generated/EndPoint.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSIService.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSStatus.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs delete mode 100644 src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs diff --git a/src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj b/src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj deleted file mode 100644 index 407f838..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/Apache.IoTDB.Rpc.Generated.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - netstandard2.1 - - - - - - - diff --git a/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs b/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs deleted file mode 100644 index 4f701b2..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/EndPoint.cs +++ /dev/null @@ -1,191 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class EndPoint : TBase -{ - - public string Ip { get; set; } - - public int Port { get; set; } - - public EndPoint() - { - } - - public EndPoint(string ip, int port) : this() - { - this.Ip = ip; - this.Port = port; - } - - public EndPoint DeepCopy() - { - var tmp0 = new EndPoint(); - if((Ip != null)) - { - tmp0.Ip = this.Ip; - } - tmp0.Port = this.Port; - return tmp0; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_ip = false; - bool isset_port = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.String) - { - Ip = await iprot.ReadStringAsync(cancellationToken); - isset_ip = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I32) - { - Port = await iprot.ReadI32Async(cancellationToken); - isset_port = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_ip) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_port) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("EndPoint"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Ip != null)) - { - field.Name = "ip"; - field.Type = TType.String; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Ip, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "port"; - field.Type = TType.I32; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Port, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is EndPoint other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Ip, other.Ip) - && System.Object.Equals(Port, other.Port); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Ip != null)) - { - hashcode = (hashcode * 397) + Ip.GetHashCode(); - } - hashcode = (hashcode * 397) + Port.GetHashCode(); - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("EndPoint("); - if((Ip != null)) - { - sb.Append(", Ip: "); - Ip.ToString(sb); - } - sb.Append(", Port: "); - Port.ToString(sb); - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs b/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs deleted file mode 100644 index 6653d70..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/ServerProperties.cs +++ /dev/null @@ -1,611 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class ServerProperties : TBase -{ - private int _maxConcurrentClientNum; - private string _watermarkSecretKey; - private string _watermarkBitString; - private int _watermarkParamMarkRate; - private int _watermarkParamMaxRightBit; - private int _thriftMaxFrameSize; - private bool _isReadOnly; - - public string Version { get; set; } - - public List SupportedTimeAggregationOperations { get; set; } - - public string TimestampPrecision { get; set; } - - public int MaxConcurrentClientNum - { - get - { - return _maxConcurrentClientNum; - } - set - { - __isset.maxConcurrentClientNum = true; - this._maxConcurrentClientNum = value; - } - } - - public string WatermarkSecretKey - { - get - { - return _watermarkSecretKey; - } - set - { - __isset.watermarkSecretKey = true; - this._watermarkSecretKey = value; - } - } - - public string WatermarkBitString - { - get - { - return _watermarkBitString; - } - set - { - __isset.watermarkBitString = true; - this._watermarkBitString = value; - } - } - - public int WatermarkParamMarkRate - { - get - { - return _watermarkParamMarkRate; - } - set - { - __isset.watermarkParamMarkRate = true; - this._watermarkParamMarkRate = value; - } - } - - public int WatermarkParamMaxRightBit - { - get - { - return _watermarkParamMaxRightBit; - } - set - { - __isset.watermarkParamMaxRightBit = true; - this._watermarkParamMaxRightBit = value; - } - } - - public int ThriftMaxFrameSize - { - get - { - return _thriftMaxFrameSize; - } - set - { - __isset.thriftMaxFrameSize = true; - this._thriftMaxFrameSize = value; - } - } - - public bool IsReadOnly - { - get - { - return _isReadOnly; - } - set - { - __isset.isReadOnly = true; - this._isReadOnly = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool maxConcurrentClientNum; - public bool watermarkSecretKey; - public bool watermarkBitString; - public bool watermarkParamMarkRate; - public bool watermarkParamMaxRightBit; - public bool thriftMaxFrameSize; - public bool isReadOnly; - } - - public ServerProperties() - { - } - - public ServerProperties(string version, List supportedTimeAggregationOperations, string timestampPrecision) : this() - { - this.Version = version; - this.SupportedTimeAggregationOperations = supportedTimeAggregationOperations; - this.TimestampPrecision = timestampPrecision; - } - - public ServerProperties DeepCopy() - { - var tmp379 = new ServerProperties(); - if((Version != null)) - { - tmp379.Version = this.Version; - } - if((SupportedTimeAggregationOperations != null)) - { - tmp379.SupportedTimeAggregationOperations = this.SupportedTimeAggregationOperations.DeepCopy(); - } - if((TimestampPrecision != null)) - { - tmp379.TimestampPrecision = this.TimestampPrecision; - } - if(__isset.maxConcurrentClientNum) - { - tmp379.MaxConcurrentClientNum = this.MaxConcurrentClientNum; - } - tmp379.__isset.maxConcurrentClientNum = this.__isset.maxConcurrentClientNum; - if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) - { - tmp379.WatermarkSecretKey = this.WatermarkSecretKey; - } - tmp379.__isset.watermarkSecretKey = this.__isset.watermarkSecretKey; - if((WatermarkBitString != null) && __isset.watermarkBitString) - { - tmp379.WatermarkBitString = this.WatermarkBitString; - } - tmp379.__isset.watermarkBitString = this.__isset.watermarkBitString; - if(__isset.watermarkParamMarkRate) - { - tmp379.WatermarkParamMarkRate = this.WatermarkParamMarkRate; - } - tmp379.__isset.watermarkParamMarkRate = this.__isset.watermarkParamMarkRate; - if(__isset.watermarkParamMaxRightBit) - { - tmp379.WatermarkParamMaxRightBit = this.WatermarkParamMaxRightBit; - } - tmp379.__isset.watermarkParamMaxRightBit = this.__isset.watermarkParamMaxRightBit; - if(__isset.thriftMaxFrameSize) - { - tmp379.ThriftMaxFrameSize = this.ThriftMaxFrameSize; - } - tmp379.__isset.thriftMaxFrameSize = this.__isset.thriftMaxFrameSize; - if(__isset.isReadOnly) - { - tmp379.IsReadOnly = this.IsReadOnly; - } - tmp379.__isset.isReadOnly = this.__isset.isReadOnly; - return tmp379; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_version = false; - bool isset_supportedTimeAggregationOperations = false; - bool isset_timestampPrecision = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.String) - { - Version = await iprot.ReadStringAsync(cancellationToken); - isset_version = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list380 = await iprot.ReadListBeginAsync(cancellationToken); - SupportedTimeAggregationOperations = new List(_list380.Count); - for(int _i381 = 0; _i381 < _list380.Count; ++_i381) - { - string _elem382; - _elem382 = await iprot.ReadStringAsync(cancellationToken); - SupportedTimeAggregationOperations.Add(_elem382); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_supportedTimeAggregationOperations = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - TimestampPrecision = await iprot.ReadStringAsync(cancellationToken); - isset_timestampPrecision = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I32) - { - MaxConcurrentClientNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.String) - { - WatermarkSecretKey = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.String) - { - WatermarkBitString = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.I32) - { - WatermarkParamMarkRate = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.I32) - { - WatermarkParamMaxRightBit = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 9: - if (field.Type == TType.I32) - { - ThriftMaxFrameSize = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 10: - if (field.Type == TType.Bool) - { - IsReadOnly = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_version) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_supportedTimeAggregationOperations) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestampPrecision) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("ServerProperties"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Version != null)) - { - field.Name = "version"; - field.Type = TType.String; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Version, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((SupportedTimeAggregationOperations != null)) - { - field.Name = "supportedTimeAggregationOperations"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, SupportedTimeAggregationOperations.Count), cancellationToken); - foreach (string _iter383 in SupportedTimeAggregationOperations) - { - await oprot.WriteStringAsync(_iter383, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TimestampPrecision != null)) - { - field.Name = "timestampPrecision"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(TimestampPrecision, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.maxConcurrentClientNum) - { - field.Name = "maxConcurrentClientNum"; - field.Type = TType.I32; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(MaxConcurrentClientNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) - { - field.Name = "watermarkSecretKey"; - field.Type = TType.String; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(WatermarkSecretKey, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((WatermarkBitString != null) && __isset.watermarkBitString) - { - field.Name = "watermarkBitString"; - field.Type = TType.String; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(WatermarkBitString, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.watermarkParamMarkRate) - { - field.Name = "watermarkParamMarkRate"; - field.Type = TType.I32; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(WatermarkParamMarkRate, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.watermarkParamMaxRightBit) - { - field.Name = "watermarkParamMaxRightBit"; - field.Type = TType.I32; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(WatermarkParamMaxRightBit, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.thriftMaxFrameSize) - { - field.Name = "thriftMaxFrameSize"; - field.Type = TType.I32; - field.ID = 9; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(ThriftMaxFrameSize, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.isReadOnly) - { - field.Name = "isReadOnly"; - field.Type = TType.Bool; - field.ID = 10; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsReadOnly, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is ServerProperties other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Version, other.Version) - && TCollections.Equals(SupportedTimeAggregationOperations, other.SupportedTimeAggregationOperations) - && System.Object.Equals(TimestampPrecision, other.TimestampPrecision) - && ((__isset.maxConcurrentClientNum == other.__isset.maxConcurrentClientNum) && ((!__isset.maxConcurrentClientNum) || (System.Object.Equals(MaxConcurrentClientNum, other.MaxConcurrentClientNum)))) - && ((__isset.watermarkSecretKey == other.__isset.watermarkSecretKey) && ((!__isset.watermarkSecretKey) || (System.Object.Equals(WatermarkSecretKey, other.WatermarkSecretKey)))) - && ((__isset.watermarkBitString == other.__isset.watermarkBitString) && ((!__isset.watermarkBitString) || (System.Object.Equals(WatermarkBitString, other.WatermarkBitString)))) - && ((__isset.watermarkParamMarkRate == other.__isset.watermarkParamMarkRate) && ((!__isset.watermarkParamMarkRate) || (System.Object.Equals(WatermarkParamMarkRate, other.WatermarkParamMarkRate)))) - && ((__isset.watermarkParamMaxRightBit == other.__isset.watermarkParamMaxRightBit) && ((!__isset.watermarkParamMaxRightBit) || (System.Object.Equals(WatermarkParamMaxRightBit, other.WatermarkParamMaxRightBit)))) - && ((__isset.thriftMaxFrameSize == other.__isset.thriftMaxFrameSize) && ((!__isset.thriftMaxFrameSize) || (System.Object.Equals(ThriftMaxFrameSize, other.ThriftMaxFrameSize)))) - && ((__isset.isReadOnly == other.__isset.isReadOnly) && ((!__isset.isReadOnly) || (System.Object.Equals(IsReadOnly, other.IsReadOnly)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Version != null)) - { - hashcode = (hashcode * 397) + Version.GetHashCode(); - } - if((SupportedTimeAggregationOperations != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(SupportedTimeAggregationOperations); - } - if((TimestampPrecision != null)) - { - hashcode = (hashcode * 397) + TimestampPrecision.GetHashCode(); - } - if(__isset.maxConcurrentClientNum) - { - hashcode = (hashcode * 397) + MaxConcurrentClientNum.GetHashCode(); - } - if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) - { - hashcode = (hashcode * 397) + WatermarkSecretKey.GetHashCode(); - } - if((WatermarkBitString != null) && __isset.watermarkBitString) - { - hashcode = (hashcode * 397) + WatermarkBitString.GetHashCode(); - } - if(__isset.watermarkParamMarkRate) - { - hashcode = (hashcode * 397) + WatermarkParamMarkRate.GetHashCode(); - } - if(__isset.watermarkParamMaxRightBit) - { - hashcode = (hashcode * 397) + WatermarkParamMaxRightBit.GetHashCode(); - } - if(__isset.thriftMaxFrameSize) - { - hashcode = (hashcode * 397) + ThriftMaxFrameSize.GetHashCode(); - } - if(__isset.isReadOnly) - { - hashcode = (hashcode * 397) + IsReadOnly.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("ServerProperties("); - if((Version != null)) - { - sb.Append(", Version: "); - Version.ToString(sb); - } - if((SupportedTimeAggregationOperations != null)) - { - sb.Append(", SupportedTimeAggregationOperations: "); - SupportedTimeAggregationOperations.ToString(sb); - } - if((TimestampPrecision != null)) - { - sb.Append(", TimestampPrecision: "); - TimestampPrecision.ToString(sb); - } - if(__isset.maxConcurrentClientNum) - { - sb.Append(", MaxConcurrentClientNum: "); - MaxConcurrentClientNum.ToString(sb); - } - if((WatermarkSecretKey != null) && __isset.watermarkSecretKey) - { - sb.Append(", WatermarkSecretKey: "); - WatermarkSecretKey.ToString(sb); - } - if((WatermarkBitString != null) && __isset.watermarkBitString) - { - sb.Append(", WatermarkBitString: "); - WatermarkBitString.ToString(sb); - } - if(__isset.watermarkParamMarkRate) - { - sb.Append(", WatermarkParamMarkRate: "); - WatermarkParamMarkRate.ToString(sb); - } - if(__isset.watermarkParamMaxRightBit) - { - sb.Append(", WatermarkParamMaxRightBit: "); - WatermarkParamMaxRightBit.ToString(sb); - } - if(__isset.thriftMaxFrameSize) - { - sb.Append(", ThriftMaxFrameSize: "); - ThriftMaxFrameSize.ToString(sb); - } - if(__isset.isReadOnly) - { - sb.Append(", IsReadOnly: "); - IsReadOnly.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs deleted file mode 100644 index ed9994e..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSAppendSchemaTemplateReq.cs +++ /dev/null @@ -1,457 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSAppendSchemaTemplateReq : TBase -{ - - public long SessionId { get; set; } - - public string Name { get; set; } - - public bool IsAligned { get; set; } - - public List Measurements { get; set; } - - public List DataTypes { get; set; } - - public List Encodings { get; set; } - - public List Compressors { get; set; } - - public TSAppendSchemaTemplateReq() - { - } - - public TSAppendSchemaTemplateReq(long sessionId, string name, bool isAligned, List measurements, List dataTypes, List encodings, List compressors) : this() - { - this.SessionId = sessionId; - this.Name = name; - this.IsAligned = isAligned; - this.Measurements = measurements; - this.DataTypes = dataTypes; - this.Encodings = encodings; - this.Compressors = compressors; - } - - public TSAppendSchemaTemplateReq DeepCopy() - { - var tmp389 = new TSAppendSchemaTemplateReq(); - tmp389.SessionId = this.SessionId; - if((Name != null)) - { - tmp389.Name = this.Name; - } - tmp389.IsAligned = this.IsAligned; - if((Measurements != null)) - { - tmp389.Measurements = this.Measurements.DeepCopy(); - } - if((DataTypes != null)) - { - tmp389.DataTypes = this.DataTypes.DeepCopy(); - } - if((Encodings != null)) - { - tmp389.Encodings = this.Encodings.DeepCopy(); - } - if((Compressors != null)) - { - tmp389.Compressors = this.Compressors.DeepCopy(); - } - return tmp389; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_name = false; - bool isset_isAligned = false; - bool isset_measurements = false; - bool isset_dataTypes = false; - bool isset_encodings = false; - bool isset_compressors = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Name = await iprot.ReadStringAsync(cancellationToken); - isset_name = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - isset_isAligned = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list390 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list390.Count); - for(int _i391 = 0; _i391 < _list390.Count; ++_i391) - { - string _elem392; - _elem392 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem392); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurements = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list393 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypes = new List(_list393.Count); - for(int _i394 = 0; _i394 < _list393.Count; ++_i394) - { - int _elem395; - _elem395 = await iprot.ReadI32Async(cancellationToken); - DataTypes.Add(_elem395); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_dataTypes = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.List) - { - { - TList _list396 = await iprot.ReadListBeginAsync(cancellationToken); - Encodings = new List(_list396.Count); - for(int _i397 = 0; _i397 < _list396.Count; ++_i397) - { - int _elem398; - _elem398 = await iprot.ReadI32Async(cancellationToken); - Encodings.Add(_elem398); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_encodings = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.List) - { - { - TList _list399 = await iprot.ReadListBeginAsync(cancellationToken); - Compressors = new List(_list399.Count); - for(int _i400 = 0; _i400 < _list399.Count; ++_i400) - { - int _elem401; - _elem401 = await iprot.ReadI32Async(cancellationToken); - Compressors.Add(_elem401); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_compressors = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_name) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_isAligned) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurements) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_dataTypes) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_encodings) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_compressors) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSAppendSchemaTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Name != null)) - { - field.Name = "name"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Name, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Measurements != null)) - { - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter402 in Measurements) - { - await oprot.WriteStringAsync(_iter402, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((DataTypes != null)) - { - field.Name = "dataTypes"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); - foreach (int _iter403 in DataTypes) - { - await oprot.WriteI32Async(_iter403, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Encodings != null)) - { - field.Name = "encodings"; - field.Type = TType.List; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); - foreach (int _iter404 in Encodings) - { - await oprot.WriteI32Async(_iter404, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Compressors != null)) - { - field.Name = "compressors"; - field.Type = TType.List; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); - foreach (int _iter405 in Compressors) - { - await oprot.WriteI32Async(_iter405, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSAppendSchemaTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Name, other.Name) - && System.Object.Equals(IsAligned, other.IsAligned) - && TCollections.Equals(Measurements, other.Measurements) - && TCollections.Equals(DataTypes, other.DataTypes) - && TCollections.Equals(Encodings, other.Encodings) - && TCollections.Equals(Compressors, other.Compressors); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Name != null)) - { - hashcode = (hashcode * 397) + Name.GetHashCode(); - } - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - if((Measurements != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); - } - if((DataTypes != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); - } - if((Encodings != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); - } - if((Compressors != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSAppendSchemaTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Name != null)) - { - sb.Append(", Name: "); - Name.ToString(sb); - } - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - if((Measurements != null)) - { - sb.Append(", Measurements: "); - Measurements.ToString(sb); - } - if((DataTypes != null)) - { - sb.Append(", DataTypes: "); - DataTypes.ToString(sb); - } - if((Encodings != null)) - { - sb.Append(", Encodings: "); - Encodings.ToString(sb); - } - if((Compressors != null)) - { - sb.Append(", Compressors: "); - Compressors.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs deleted file mode 100644 index ed59e75..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCancelOperationReq.cs +++ /dev/null @@ -1,179 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCancelOperationReq : TBase -{ - - public long SessionId { get; set; } - - public long QueryId { get; set; } - - public TSCancelOperationReq() - { - } - - public TSCancelOperationReq(long sessionId, long queryId) : this() - { - this.SessionId = sessionId; - this.QueryId = queryId; - } - - public TSCancelOperationReq DeepCopy() - { - var tmp87 = new TSCancelOperationReq(); - tmp87.SessionId = this.SessionId; - tmp87.QueryId = this.QueryId; - return tmp87; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_queryId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I64) - { - QueryId = await iprot.ReadI64Async(cancellationToken); - isset_queryId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_queryId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCancelOperationReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "queryId"; - field.Type = TType.I64; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(QueryId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCancelOperationReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(QueryId, other.QueryId); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - hashcode = (hashcode * 397) + QueryId.GetHashCode(); - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCancelOperationReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - sb.Append(", QueryId: "); - QueryId.ToString(sb); - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs deleted file mode 100644 index 7b5d173..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCloseOperationReq.cs +++ /dev/null @@ -1,253 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCloseOperationReq : TBase -{ - private long _queryId; - private long _statementId; - - public long SessionId { get; set; } - - public long QueryId - { - get - { - return _queryId; - } - set - { - __isset.queryId = true; - this._queryId = value; - } - } - - public long StatementId - { - get - { - return _statementId; - } - set - { - __isset.statementId = true; - this._statementId = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool queryId; - public bool statementId; - } - - public TSCloseOperationReq() - { - } - - public TSCloseOperationReq(long sessionId) : this() - { - this.SessionId = sessionId; - } - - public TSCloseOperationReq DeepCopy() - { - var tmp89 = new TSCloseOperationReq(); - tmp89.SessionId = this.SessionId; - if(__isset.queryId) - { - tmp89.QueryId = this.QueryId; - } - tmp89.__isset.queryId = this.__isset.queryId; - if(__isset.statementId) - { - tmp89.StatementId = this.StatementId; - } - tmp89.__isset.statementId = this.__isset.statementId; - return tmp89; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I64) - { - QueryId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I64) - { - StatementId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCloseOperationReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.queryId) - { - field.Name = "queryId"; - field.Type = TType.I64; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(QueryId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.statementId) - { - field.Name = "statementId"; - field.Type = TType.I64; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(StatementId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCloseOperationReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && ((__isset.queryId == other.__isset.queryId) && ((!__isset.queryId) || (System.Object.Equals(QueryId, other.QueryId)))) - && ((__isset.statementId == other.__isset.statementId) && ((!__isset.statementId) || (System.Object.Equals(StatementId, other.StatementId)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if(__isset.queryId) - { - hashcode = (hashcode * 397) + QueryId.GetHashCode(); - } - if(__isset.statementId) - { - hashcode = (hashcode * 397) + StatementId.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCloseOperationReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if(__isset.queryId) - { - sb.Append(", QueryId: "); - QueryId.ToString(sb); - } - if(__isset.statementId) - { - sb.Append(", StatementId: "); - StatementId.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs deleted file mode 100644 index 1d97b91..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCloseSessionReq.cs +++ /dev/null @@ -1,149 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCloseSessionReq : TBase -{ - - public long SessionId { get; set; } - - public TSCloseSessionReq() - { - } - - public TSCloseSessionReq(long sessionId) : this() - { - this.SessionId = sessionId; - } - - public TSCloseSessionReq DeepCopy() - { - var tmp75 = new TSCloseSessionReq(); - tmp75.SessionId = this.SessionId; - return tmp75; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCloseSessionReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCloseSessionReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCloseSessionReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs deleted file mode 100644 index 7aa50fa..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateAlignedTimeseriesReq.cs +++ /dev/null @@ -1,671 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCreateAlignedTimeseriesReq : TBase -{ - private List _measurementAlias; - private List> _tagsList; - private List> _attributesList; - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public List Measurements { get; set; } - - public List DataTypes { get; set; } - - public List Encodings { get; set; } - - public List Compressors { get; set; } - - public List MeasurementAlias - { - get - { - return _measurementAlias; - } - set - { - __isset.measurementAlias = true; - this._measurementAlias = value; - } - } - - public List> TagsList - { - get - { - return _tagsList; - } - set - { - __isset.tagsList = true; - this._tagsList = value; - } - } - - public List> AttributesList - { - get - { - return _attributesList; - } - set - { - __isset.attributesList = true; - this._attributesList = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool measurementAlias; - public bool tagsList; - public bool attributesList; - } - - public TSCreateAlignedTimeseriesReq() - { - } - - public TSCreateAlignedTimeseriesReq(long sessionId, string prefixPath, List measurements, List dataTypes, List encodings, List compressors) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.Measurements = measurements; - this.DataTypes = dataTypes; - this.Encodings = encodings; - this.Compressors = compressors; - } - - public TSCreateAlignedTimeseriesReq DeepCopy() - { - var tmp278 = new TSCreateAlignedTimeseriesReq(); - tmp278.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp278.PrefixPath = this.PrefixPath; - } - if((Measurements != null)) - { - tmp278.Measurements = this.Measurements.DeepCopy(); - } - if((DataTypes != null)) - { - tmp278.DataTypes = this.DataTypes.DeepCopy(); - } - if((Encodings != null)) - { - tmp278.Encodings = this.Encodings.DeepCopy(); - } - if((Compressors != null)) - { - tmp278.Compressors = this.Compressors.DeepCopy(); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - tmp278.MeasurementAlias = this.MeasurementAlias.DeepCopy(); - } - tmp278.__isset.measurementAlias = this.__isset.measurementAlias; - if((TagsList != null) && __isset.tagsList) - { - tmp278.TagsList = this.TagsList.DeepCopy(); - } - tmp278.__isset.tagsList = this.__isset.tagsList; - if((AttributesList != null) && __isset.attributesList) - { - tmp278.AttributesList = this.AttributesList.DeepCopy(); - } - tmp278.__isset.attributesList = this.__isset.attributesList; - return tmp278; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_measurements = false; - bool isset_dataTypes = false; - bool isset_encodings = false; - bool isset_compressors = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list279 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list279.Count); - for(int _i280 = 0; _i280 < _list279.Count; ++_i280) - { - string _elem281; - _elem281 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem281); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurements = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list282 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypes = new List(_list282.Count); - for(int _i283 = 0; _i283 < _list282.Count; ++_i283) - { - int _elem284; - _elem284 = await iprot.ReadI32Async(cancellationToken); - DataTypes.Add(_elem284); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_dataTypes = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list285 = await iprot.ReadListBeginAsync(cancellationToken); - Encodings = new List(_list285.Count); - for(int _i286 = 0; _i286 < _list285.Count; ++_i286) - { - int _elem287; - _elem287 = await iprot.ReadI32Async(cancellationToken); - Encodings.Add(_elem287); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_encodings = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.List) - { - { - TList _list288 = await iprot.ReadListBeginAsync(cancellationToken); - Compressors = new List(_list288.Count); - for(int _i289 = 0; _i289 < _list288.Count; ++_i289) - { - int _elem290; - _elem290 = await iprot.ReadI32Async(cancellationToken); - Compressors.Add(_elem290); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_compressors = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.List) - { - { - TList _list291 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementAlias = new List(_list291.Count); - for(int _i292 = 0; _i292 < _list291.Count; ++_i292) - { - string _elem293; - _elem293 = await iprot.ReadStringAsync(cancellationToken); - MeasurementAlias.Add(_elem293); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.List) - { - { - TList _list294 = await iprot.ReadListBeginAsync(cancellationToken); - TagsList = new List>(_list294.Count); - for(int _i295 = 0; _i295 < _list294.Count; ++_i295) - { - Dictionary _elem296; - { - TMap _map297 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem296 = new Dictionary(_map297.Count); - for(int _i298 = 0; _i298 < _map297.Count; ++_i298) - { - string _key299; - string _val300; - _key299 = await iprot.ReadStringAsync(cancellationToken); - _val300 = await iprot.ReadStringAsync(cancellationToken); - _elem296[_key299] = _val300; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - TagsList.Add(_elem296); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 9: - if (field.Type == TType.List) - { - { - TList _list301 = await iprot.ReadListBeginAsync(cancellationToken); - AttributesList = new List>(_list301.Count); - for(int _i302 = 0; _i302 < _list301.Count; ++_i302) - { - Dictionary _elem303; - { - TMap _map304 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem303 = new Dictionary(_map304.Count); - for(int _i305 = 0; _i305 < _map304.Count; ++_i305) - { - string _key306; - string _val307; - _key306 = await iprot.ReadStringAsync(cancellationToken); - _val307 = await iprot.ReadStringAsync(cancellationToken); - _elem303[_key306] = _val307; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - AttributesList.Add(_elem303); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurements) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_dataTypes) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_encodings) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_compressors) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCreateAlignedTimeseriesReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Measurements != null)) - { - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter308 in Measurements) - { - await oprot.WriteStringAsync(_iter308, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((DataTypes != null)) - { - field.Name = "dataTypes"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); - foreach (int _iter309 in DataTypes) - { - await oprot.WriteI32Async(_iter309, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Encodings != null)) - { - field.Name = "encodings"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); - foreach (int _iter310 in Encodings) - { - await oprot.WriteI32Async(_iter310, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Compressors != null)) - { - field.Name = "compressors"; - field.Type = TType.List; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); - foreach (int _iter311 in Compressors) - { - await oprot.WriteI32Async(_iter311, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - field.Name = "measurementAlias"; - field.Type = TType.List; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAlias.Count), cancellationToken); - foreach (string _iter312 in MeasurementAlias) - { - await oprot.WriteStringAsync(_iter312, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TagsList != null) && __isset.tagsList) - { - field.Name = "tagsList"; - field.Type = TType.List; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); - foreach (Dictionary _iter313 in TagsList) - { - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter313.Count), cancellationToken); - foreach (string _iter314 in _iter313.Keys) - { - await oprot.WriteStringAsync(_iter314, cancellationToken); - await oprot.WriteStringAsync(_iter313[_iter314], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((AttributesList != null) && __isset.attributesList) - { - field.Name = "attributesList"; - field.Type = TType.List; - field.ID = 9; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); - foreach (Dictionary _iter315 in AttributesList) - { - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter315.Count), cancellationToken); - foreach (string _iter316 in _iter315.Keys) - { - await oprot.WriteStringAsync(_iter316, cancellationToken); - await oprot.WriteStringAsync(_iter315[_iter316], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCreateAlignedTimeseriesReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && TCollections.Equals(Measurements, other.Measurements) - && TCollections.Equals(DataTypes, other.DataTypes) - && TCollections.Equals(Encodings, other.Encodings) - && TCollections.Equals(Compressors, other.Compressors) - && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (TCollections.Equals(MeasurementAlias, other.MeasurementAlias)))) - && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) - && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((Measurements != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); - } - if((DataTypes != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); - } - if((Encodings != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); - } - if((Compressors != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAlias); - } - if((TagsList != null) && __isset.tagsList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); - } - if((AttributesList != null) && __isset.attributesList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCreateAlignedTimeseriesReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((Measurements != null)) - { - sb.Append(", Measurements: "); - Measurements.ToString(sb); - } - if((DataTypes != null)) - { - sb.Append(", DataTypes: "); - DataTypes.ToString(sb); - } - if((Encodings != null)) - { - sb.Append(", Encodings: "); - Encodings.ToString(sb); - } - if((Compressors != null)) - { - sb.Append(", Compressors: "); - Compressors.ToString(sb); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - sb.Append(", MeasurementAlias: "); - MeasurementAlias.ToString(sb); - } - if((TagsList != null) && __isset.tagsList) - { - sb.Append(", TagsList: "); - TagsList.ToString(sb); - } - if((AttributesList != null) && __isset.attributesList) - { - sb.Append(", AttributesList: "); - AttributesList.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs deleted file mode 100644 index 64f9e17..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateMultiTimeseriesReq.cs +++ /dev/null @@ -1,715 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCreateMultiTimeseriesReq : TBase -{ - private List> _propsList; - private List> _tagsList; - private List> _attributesList; - private List _measurementAliasList; - - public long SessionId { get; set; } - - public List Paths { get; set; } - - public List DataTypes { get; set; } - - public List Encodings { get; set; } - - public List Compressors { get; set; } - - public List> PropsList - { - get - { - return _propsList; - } - set - { - __isset.propsList = true; - this._propsList = value; - } - } - - public List> TagsList - { - get - { - return _tagsList; - } - set - { - __isset.tagsList = true; - this._tagsList = value; - } - } - - public List> AttributesList - { - get - { - return _attributesList; - } - set - { - __isset.attributesList = true; - this._attributesList = value; - } - } - - public List MeasurementAliasList - { - get - { - return _measurementAliasList; - } - set - { - __isset.measurementAliasList = true; - this._measurementAliasList = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool propsList; - public bool tagsList; - public bool attributesList; - public bool measurementAliasList; - } - - public TSCreateMultiTimeseriesReq() - { - } - - public TSCreateMultiTimeseriesReq(long sessionId, List paths, List dataTypes, List encodings, List compressors) : this() - { - this.SessionId = sessionId; - this.Paths = paths; - this.DataTypes = dataTypes; - this.Encodings = encodings; - this.Compressors = compressors; - } - - public TSCreateMultiTimeseriesReq DeepCopy() - { - var tmp330 = new TSCreateMultiTimeseriesReq(); - tmp330.SessionId = this.SessionId; - if((Paths != null)) - { - tmp330.Paths = this.Paths.DeepCopy(); - } - if((DataTypes != null)) - { - tmp330.DataTypes = this.DataTypes.DeepCopy(); - } - if((Encodings != null)) - { - tmp330.Encodings = this.Encodings.DeepCopy(); - } - if((Compressors != null)) - { - tmp330.Compressors = this.Compressors.DeepCopy(); - } - if((PropsList != null) && __isset.propsList) - { - tmp330.PropsList = this.PropsList.DeepCopy(); - } - tmp330.__isset.propsList = this.__isset.propsList; - if((TagsList != null) && __isset.tagsList) - { - tmp330.TagsList = this.TagsList.DeepCopy(); - } - tmp330.__isset.tagsList = this.__isset.tagsList; - if((AttributesList != null) && __isset.attributesList) - { - tmp330.AttributesList = this.AttributesList.DeepCopy(); - } - tmp330.__isset.attributesList = this.__isset.attributesList; - if((MeasurementAliasList != null) && __isset.measurementAliasList) - { - tmp330.MeasurementAliasList = this.MeasurementAliasList.DeepCopy(); - } - tmp330.__isset.measurementAliasList = this.__isset.measurementAliasList; - return tmp330; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_paths = false; - bool isset_dataTypes = false; - bool isset_encodings = false; - bool isset_compressors = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list331 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list331.Count); - for(int _i332 = 0; _i332 < _list331.Count; ++_i332) - { - string _elem333; - _elem333 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem333); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_paths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list334 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypes = new List(_list334.Count); - for(int _i335 = 0; _i335 < _list334.Count; ++_i335) - { - int _elem336; - _elem336 = await iprot.ReadI32Async(cancellationToken); - DataTypes.Add(_elem336); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_dataTypes = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list337 = await iprot.ReadListBeginAsync(cancellationToken); - Encodings = new List(_list337.Count); - for(int _i338 = 0; _i338 < _list337.Count; ++_i338) - { - int _elem339; - _elem339 = await iprot.ReadI32Async(cancellationToken); - Encodings.Add(_elem339); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_encodings = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list340 = await iprot.ReadListBeginAsync(cancellationToken); - Compressors = new List(_list340.Count); - for(int _i341 = 0; _i341 < _list340.Count; ++_i341) - { - int _elem342; - _elem342 = await iprot.ReadI32Async(cancellationToken); - Compressors.Add(_elem342); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_compressors = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.List) - { - { - TList _list343 = await iprot.ReadListBeginAsync(cancellationToken); - PropsList = new List>(_list343.Count); - for(int _i344 = 0; _i344 < _list343.Count; ++_i344) - { - Dictionary _elem345; - { - TMap _map346 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem345 = new Dictionary(_map346.Count); - for(int _i347 = 0; _i347 < _map346.Count; ++_i347) - { - string _key348; - string _val349; - _key348 = await iprot.ReadStringAsync(cancellationToken); - _val349 = await iprot.ReadStringAsync(cancellationToken); - _elem345[_key348] = _val349; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - PropsList.Add(_elem345); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.List) - { - { - TList _list350 = await iprot.ReadListBeginAsync(cancellationToken); - TagsList = new List>(_list350.Count); - for(int _i351 = 0; _i351 < _list350.Count; ++_i351) - { - Dictionary _elem352; - { - TMap _map353 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem352 = new Dictionary(_map353.Count); - for(int _i354 = 0; _i354 < _map353.Count; ++_i354) - { - string _key355; - string _val356; - _key355 = await iprot.ReadStringAsync(cancellationToken); - _val356 = await iprot.ReadStringAsync(cancellationToken); - _elem352[_key355] = _val356; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - TagsList.Add(_elem352); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.List) - { - { - TList _list357 = await iprot.ReadListBeginAsync(cancellationToken); - AttributesList = new List>(_list357.Count); - for(int _i358 = 0; _i358 < _list357.Count; ++_i358) - { - Dictionary _elem359; - { - TMap _map360 = await iprot.ReadMapBeginAsync(cancellationToken); - _elem359 = new Dictionary(_map360.Count); - for(int _i361 = 0; _i361 < _map360.Count; ++_i361) - { - string _key362; - string _val363; - _key362 = await iprot.ReadStringAsync(cancellationToken); - _val363 = await iprot.ReadStringAsync(cancellationToken); - _elem359[_key362] = _val363; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - AttributesList.Add(_elem359); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 9: - if (field.Type == TType.List) - { - { - TList _list364 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementAliasList = new List(_list364.Count); - for(int _i365 = 0; _i365 < _list364.Count; ++_i365) - { - string _elem366; - _elem366 = await iprot.ReadStringAsync(cancellationToken); - MeasurementAliasList.Add(_elem366); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_paths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_dataTypes) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_encodings) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_compressors) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCreateMultiTimeseriesReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Paths != null)) - { - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter367 in Paths) - { - await oprot.WriteStringAsync(_iter367, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((DataTypes != null)) - { - field.Name = "dataTypes"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, DataTypes.Count), cancellationToken); - foreach (int _iter368 in DataTypes) - { - await oprot.WriteI32Async(_iter368, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Encodings != null)) - { - field.Name = "encodings"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Encodings.Count), cancellationToken); - foreach (int _iter369 in Encodings) - { - await oprot.WriteI32Async(_iter369, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Compressors != null)) - { - field.Name = "compressors"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Compressors.Count), cancellationToken); - foreach (int _iter370 in Compressors) - { - await oprot.WriteI32Async(_iter370, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((PropsList != null) && __isset.propsList) - { - field.Name = "propsList"; - field.Type = TType.List; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Map, PropsList.Count), cancellationToken); - foreach (Dictionary _iter371 in PropsList) - { - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter371.Count), cancellationToken); - foreach (string _iter372 in _iter371.Keys) - { - await oprot.WriteStringAsync(_iter372, cancellationToken); - await oprot.WriteStringAsync(_iter371[_iter372], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TagsList != null) && __isset.tagsList) - { - field.Name = "tagsList"; - field.Type = TType.List; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Map, TagsList.Count), cancellationToken); - foreach (Dictionary _iter373 in TagsList) - { - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter373.Count), cancellationToken); - foreach (string _iter374 in _iter373.Keys) - { - await oprot.WriteStringAsync(_iter374, cancellationToken); - await oprot.WriteStringAsync(_iter373[_iter374], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((AttributesList != null) && __isset.attributesList) - { - field.Name = "attributesList"; - field.Type = TType.List; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Map, AttributesList.Count), cancellationToken); - foreach (Dictionary _iter375 in AttributesList) - { - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, _iter375.Count), cancellationToken); - foreach (string _iter376 in _iter375.Keys) - { - await oprot.WriteStringAsync(_iter376, cancellationToken); - await oprot.WriteStringAsync(_iter375[_iter376], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementAliasList != null) && __isset.measurementAliasList) - { - field.Name = "measurementAliasList"; - field.Type = TType.List; - field.ID = 9; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, MeasurementAliasList.Count), cancellationToken); - foreach (string _iter377 in MeasurementAliasList) - { - await oprot.WriteStringAsync(_iter377, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCreateMultiTimeseriesReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(Paths, other.Paths) - && TCollections.Equals(DataTypes, other.DataTypes) - && TCollections.Equals(Encodings, other.Encodings) - && TCollections.Equals(Compressors, other.Compressors) - && ((__isset.propsList == other.__isset.propsList) && ((!__isset.propsList) || (TCollections.Equals(PropsList, other.PropsList)))) - && ((__isset.tagsList == other.__isset.tagsList) && ((!__isset.tagsList) || (TCollections.Equals(TagsList, other.TagsList)))) - && ((__isset.attributesList == other.__isset.attributesList) && ((!__isset.attributesList) || (TCollections.Equals(AttributesList, other.AttributesList)))) - && ((__isset.measurementAliasList == other.__isset.measurementAliasList) && ((!__isset.measurementAliasList) || (TCollections.Equals(MeasurementAliasList, other.MeasurementAliasList)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Paths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); - } - if((DataTypes != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypes); - } - if((Encodings != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Encodings); - } - if((Compressors != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Compressors); - } - if((PropsList != null) && __isset.propsList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(PropsList); - } - if((TagsList != null) && __isset.tagsList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(TagsList); - } - if((AttributesList != null) && __isset.attributesList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(AttributesList); - } - if((MeasurementAliasList != null) && __isset.measurementAliasList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementAliasList); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCreateMultiTimeseriesReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Paths != null)) - { - sb.Append(", Paths: "); - Paths.ToString(sb); - } - if((DataTypes != null)) - { - sb.Append(", DataTypes: "); - DataTypes.ToString(sb); - } - if((Encodings != null)) - { - sb.Append(", Encodings: "); - Encodings.ToString(sb); - } - if((Compressors != null)) - { - sb.Append(", Compressors: "); - Compressors.ToString(sb); - } - if((PropsList != null) && __isset.propsList) - { - sb.Append(", PropsList: "); - PropsList.ToString(sb); - } - if((TagsList != null) && __isset.tagsList) - { - sb.Append(", TagsList: "); - TagsList.ToString(sb); - } - if((AttributesList != null) && __isset.attributesList) - { - sb.Append(", AttributesList: "); - AttributesList.ToString(sb); - } - if((MeasurementAliasList != null) && __isset.measurementAliasList) - { - sb.Append(", MeasurementAliasList: "); - MeasurementAliasList.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs deleted file mode 100644 index 7ad6092..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateSchemaTemplateReq.cs +++ /dev/null @@ -1,233 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCreateSchemaTemplateReq : TBase -{ - - public long SessionId { get; set; } - - public string Name { get; set; } - - public byte[] SerializedTemplate { get; set; } - - public TSCreateSchemaTemplateReq() - { - } - - public TSCreateSchemaTemplateReq(long sessionId, string name, byte[] serializedTemplate) : this() - { - this.SessionId = sessionId; - this.Name = name; - this.SerializedTemplate = serializedTemplate; - } - - public TSCreateSchemaTemplateReq DeepCopy() - { - var tmp387 = new TSCreateSchemaTemplateReq(); - tmp387.SessionId = this.SessionId; - if((Name != null)) - { - tmp387.Name = this.Name; - } - if((SerializedTemplate != null)) - { - tmp387.SerializedTemplate = this.SerializedTemplate.ToArray(); - } - return tmp387; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_name = false; - bool isset_serializedTemplate = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Name = await iprot.ReadStringAsync(cancellationToken); - isset_name = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - SerializedTemplate = await iprot.ReadBinaryAsync(cancellationToken); - isset_serializedTemplate = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_name) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_serializedTemplate) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCreateSchemaTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Name != null)) - { - field.Name = "name"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Name, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((SerializedTemplate != null)) - { - field.Name = "serializedTemplate"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBinaryAsync(SerializedTemplate, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCreateSchemaTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Name, other.Name) - && TCollections.Equals(SerializedTemplate, other.SerializedTemplate); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Name != null)) - { - hashcode = (hashcode * 397) + Name.GetHashCode(); - } - if((SerializedTemplate != null)) - { - hashcode = (hashcode * 397) + SerializedTemplate.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCreateSchemaTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Name != null)) - { - sb.Append(", Name: "); - Name.ToString(sb); - } - if((SerializedTemplate != null)) - { - sb.Append(", SerializedTemplate: "); - SerializedTemplate.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs deleted file mode 100644 index d2c2f7c..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSCreateTimeseriesReq.cs +++ /dev/null @@ -1,543 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSCreateTimeseriesReq : TBase -{ - private Dictionary _props; - private Dictionary _tags; - private Dictionary _attributes; - private string _measurementAlias; - - public long SessionId { get; set; } - - public string Path { get; set; } - - public int DataType { get; set; } - - public int Encoding { get; set; } - - public int Compressor { get; set; } - - public Dictionary Props - { - get - { - return _props; - } - set - { - __isset.props = true; - this._props = value; - } - } - - public Dictionary Tags - { - get - { - return _tags; - } - set - { - __isset.tags = true; - this._tags = value; - } - } - - public Dictionary Attributes - { - get - { - return _attributes; - } - set - { - __isset.attributes = true; - this._attributes = value; - } - } - - public string MeasurementAlias - { - get - { - return _measurementAlias; - } - set - { - __isset.measurementAlias = true; - this._measurementAlias = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool props; - public bool tags; - public bool attributes; - public bool measurementAlias; - } - - public TSCreateTimeseriesReq() - { - } - - public TSCreateTimeseriesReq(long sessionId, string path, int dataType, int encoding, int compressor) : this() - { - this.SessionId = sessionId; - this.Path = path; - this.DataType = dataType; - this.Encoding = encoding; - this.Compressor = compressor; - } - - public TSCreateTimeseriesReq DeepCopy() - { - var tmp261 = new TSCreateTimeseriesReq(); - tmp261.SessionId = this.SessionId; - if((Path != null)) - { - tmp261.Path = this.Path; - } - tmp261.DataType = this.DataType; - tmp261.Encoding = this.Encoding; - tmp261.Compressor = this.Compressor; - if((Props != null) && __isset.props) - { - tmp261.Props = this.Props.DeepCopy(); - } - tmp261.__isset.props = this.__isset.props; - if((Tags != null) && __isset.tags) - { - tmp261.Tags = this.Tags.DeepCopy(); - } - tmp261.__isset.tags = this.__isset.tags; - if((Attributes != null) && __isset.attributes) - { - tmp261.Attributes = this.Attributes.DeepCopy(); - } - tmp261.__isset.attributes = this.__isset.attributes; - if((MeasurementAlias != null) && __isset.measurementAlias) - { - tmp261.MeasurementAlias = this.MeasurementAlias; - } - tmp261.__isset.measurementAlias = this.__isset.measurementAlias; - return tmp261; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_path = false; - bool isset_dataType = false; - bool isset_encoding = false; - bool isset_compressor = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Path = await iprot.ReadStringAsync(cancellationToken); - isset_path = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I32) - { - DataType = await iprot.ReadI32Async(cancellationToken); - isset_dataType = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I32) - { - Encoding = await iprot.ReadI32Async(cancellationToken); - isset_encoding = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I32) - { - Compressor = await iprot.ReadI32Async(cancellationToken); - isset_compressor = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Map) - { - { - TMap _map262 = await iprot.ReadMapBeginAsync(cancellationToken); - Props = new Dictionary(_map262.Count); - for(int _i263 = 0; _i263 < _map262.Count; ++_i263) - { - string _key264; - string _val265; - _key264 = await iprot.ReadStringAsync(cancellationToken); - _val265 = await iprot.ReadStringAsync(cancellationToken); - Props[_key264] = _val265; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.Map) - { - { - TMap _map266 = await iprot.ReadMapBeginAsync(cancellationToken); - Tags = new Dictionary(_map266.Count); - for(int _i267 = 0; _i267 < _map266.Count; ++_i267) - { - string _key268; - string _val269; - _key268 = await iprot.ReadStringAsync(cancellationToken); - _val269 = await iprot.ReadStringAsync(cancellationToken); - Tags[_key268] = _val269; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.Map) - { - { - TMap _map270 = await iprot.ReadMapBeginAsync(cancellationToken); - Attributes = new Dictionary(_map270.Count); - for(int _i271 = 0; _i271 < _map270.Count; ++_i271) - { - string _key272; - string _val273; - _key272 = await iprot.ReadStringAsync(cancellationToken); - _val273 = await iprot.ReadStringAsync(cancellationToken); - Attributes[_key272] = _val273; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 9: - if (field.Type == TType.String) - { - MeasurementAlias = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_path) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_dataType) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_encoding) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_compressor) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSCreateTimeseriesReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Path != null)) - { - field.Name = "path"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Path, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "dataType"; - field.Type = TType.I32; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(DataType, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "encoding"; - field.Type = TType.I32; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Encoding, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "compressor"; - field.Type = TType.I32; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Compressor, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Props != null) && __isset.props) - { - field.Name = "props"; - field.Type = TType.Map; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Props.Count), cancellationToken); - foreach (string _iter274 in Props.Keys) - { - await oprot.WriteStringAsync(_iter274, cancellationToken); - await oprot.WriteStringAsync(Props[_iter274], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Tags != null) && __isset.tags) - { - field.Name = "tags"; - field.Type = TType.Map; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Tags.Count), cancellationToken); - foreach (string _iter275 in Tags.Keys) - { - await oprot.WriteStringAsync(_iter275, cancellationToken); - await oprot.WriteStringAsync(Tags[_iter275], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Attributes != null) && __isset.attributes) - { - field.Name = "attributes"; - field.Type = TType.Map; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Attributes.Count), cancellationToken); - foreach (string _iter276 in Attributes.Keys) - { - await oprot.WriteStringAsync(_iter276, cancellationToken); - await oprot.WriteStringAsync(Attributes[_iter276], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - field.Name = "measurementAlias"; - field.Type = TType.String; - field.ID = 9; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(MeasurementAlias, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSCreateTimeseriesReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Path, other.Path) - && System.Object.Equals(DataType, other.DataType) - && System.Object.Equals(Encoding, other.Encoding) - && System.Object.Equals(Compressor, other.Compressor) - && ((__isset.props == other.__isset.props) && ((!__isset.props) || (TCollections.Equals(Props, other.Props)))) - && ((__isset.tags == other.__isset.tags) && ((!__isset.tags) || (TCollections.Equals(Tags, other.Tags)))) - && ((__isset.attributes == other.__isset.attributes) && ((!__isset.attributes) || (TCollections.Equals(Attributes, other.Attributes)))) - && ((__isset.measurementAlias == other.__isset.measurementAlias) && ((!__isset.measurementAlias) || (System.Object.Equals(MeasurementAlias, other.MeasurementAlias)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Path != null)) - { - hashcode = (hashcode * 397) + Path.GetHashCode(); - } - hashcode = (hashcode * 397) + DataType.GetHashCode(); - hashcode = (hashcode * 397) + Encoding.GetHashCode(); - hashcode = (hashcode * 397) + Compressor.GetHashCode(); - if((Props != null) && __isset.props) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Props); - } - if((Tags != null) && __isset.tags) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Tags); - } - if((Attributes != null) && __isset.attributes) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Attributes); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - hashcode = (hashcode * 397) + MeasurementAlias.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSCreateTimeseriesReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Path != null)) - { - sb.Append(", Path: "); - Path.ToString(sb); - } - sb.Append(", DataType: "); - DataType.ToString(sb); - sb.Append(", Encoding: "); - Encoding.ToString(sb); - sb.Append(", Compressor: "); - Compressor.ToString(sb); - if((Props != null) && __isset.props) - { - sb.Append(", Props: "); - Props.ToString(sb); - } - if((Tags != null) && __isset.tags) - { - sb.Append(", Tags: "); - Tags.ToString(sb); - } - if((Attributes != null) && __isset.attributes) - { - sb.Append(", Attributes: "); - Attributes.ToString(sb); - } - if((MeasurementAlias != null) && __isset.measurementAlias) - { - sb.Append(", MeasurementAlias: "); - MeasurementAlias.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs deleted file mode 100644 index c3e9977..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSDeleteDataReq.cs +++ /dev/null @@ -1,268 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSDeleteDataReq : TBase -{ - - public long SessionId { get; set; } - - public List Paths { get; set; } - - public long StartTime { get; set; } - - public long EndTime { get; set; } - - public TSDeleteDataReq() - { - } - - public TSDeleteDataReq(long sessionId, List paths, long startTime, long endTime) : this() - { - this.SessionId = sessionId; - this.Paths = paths; - this.StartTime = startTime; - this.EndTime = endTime; - } - - public TSDeleteDataReq DeepCopy() - { - var tmp255 = new TSDeleteDataReq(); - tmp255.SessionId = this.SessionId; - if((Paths != null)) - { - tmp255.Paths = this.Paths.DeepCopy(); - } - tmp255.StartTime = this.StartTime; - tmp255.EndTime = this.EndTime; - return tmp255; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_paths = false; - bool isset_startTime = false; - bool isset_endTime = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list256 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list256.Count); - for(int _i257 = 0; _i257 < _list256.Count; ++_i257) - { - string _elem258; - _elem258 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem258); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_paths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I64) - { - StartTime = await iprot.ReadI64Async(cancellationToken); - isset_startTime = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I64) - { - EndTime = await iprot.ReadI64Async(cancellationToken); - isset_endTime = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_paths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_startTime) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_endTime) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSDeleteDataReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Paths != null)) - { - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter259 in Paths) - { - await oprot.WriteStringAsync(_iter259, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "startTime"; - field.Type = TType.I64; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(StartTime, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "endTime"; - field.Type = TType.I64; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(EndTime, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSDeleteDataReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(Paths, other.Paths) - && System.Object.Equals(StartTime, other.StartTime) - && System.Object.Equals(EndTime, other.EndTime); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Paths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); - } - hashcode = (hashcode * 397) + StartTime.GetHashCode(); - hashcode = (hashcode * 397) + EndTime.GetHashCode(); - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSDeleteDataReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Paths != null)) - { - sb.Append(", Paths: "); - Paths.ToString(sb); - } - sb.Append(", StartTime: "); - StartTime.ToString(sb); - sb.Append(", EndTime: "); - EndTime.ToString(sb); - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs deleted file mode 100644 index 7d8b01c..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSDropSchemaTemplateReq.cs +++ /dev/null @@ -1,191 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSDropSchemaTemplateReq : TBase -{ - - public long SessionId { get; set; } - - public string TemplateName { get; set; } - - public TSDropSchemaTemplateReq() - { - } - - public TSDropSchemaTemplateReq(long sessionId, string templateName) : this() - { - this.SessionId = sessionId; - this.TemplateName = templateName; - } - - public TSDropSchemaTemplateReq DeepCopy() - { - var tmp419 = new TSDropSchemaTemplateReq(); - tmp419.SessionId = this.SessionId; - if((TemplateName != null)) - { - tmp419.TemplateName = this.TemplateName; - } - return tmp419; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_templateName = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - TemplateName = await iprot.ReadStringAsync(cancellationToken); - isset_templateName = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_templateName) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSDropSchemaTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((TemplateName != null)) - { - field.Name = "templateName"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(TemplateName, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSDropSchemaTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(TemplateName, other.TemplateName); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((TemplateName != null)) - { - hashcode = (hashcode * 397) + TemplateName.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSDropSchemaTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((TemplateName != null)) - { - sb.Append(", TemplateName: "); - TemplateName.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs deleted file mode 100644 index f6f3cf4..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteBatchStatementReq.cs +++ /dev/null @@ -1,208 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSExecuteBatchStatementReq : TBase -{ - - public long SessionId { get; set; } - - public List Statements { get; set; } - - public TSExecuteBatchStatementReq() - { - } - - public TSExecuteBatchStatementReq(long sessionId, List statements) : this() - { - this.SessionId = sessionId; - this.Statements = statements; - } - - public TSExecuteBatchStatementReq DeepCopy() - { - var tmp79 = new TSExecuteBatchStatementReq(); - tmp79.SessionId = this.SessionId; - if((Statements != null)) - { - tmp79.Statements = this.Statements.DeepCopy(); - } - return tmp79; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_statements = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list80 = await iprot.ReadListBeginAsync(cancellationToken); - Statements = new List(_list80.Count); - for(int _i81 = 0; _i81 < _list80.Count; ++_i81) - { - string _elem82; - _elem82 = await iprot.ReadStringAsync(cancellationToken); - Statements.Add(_elem82); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_statements = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_statements) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSExecuteBatchStatementReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Statements != null)) - { - field.Name = "statements"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Statements.Count), cancellationToken); - foreach (string _iter83 in Statements) - { - await oprot.WriteStringAsync(_iter83, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSExecuteBatchStatementReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(Statements, other.Statements); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Statements != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Statements); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSExecuteBatchStatementReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Statements != null)) - { - sb.Append(", Statements: "); - Statements.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs deleted file mode 100644 index 71c6ef0..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementReq.cs +++ /dev/null @@ -1,423 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSExecuteStatementReq : TBase -{ - private int _fetchSize; - private long _timeout; - private bool _enableRedirectQuery; - private bool _jdbcQuery; - - public long SessionId { get; set; } - - public string Statement { get; set; } - - public long StatementId { get; set; } - - public int FetchSize - { - get - { - return _fetchSize; - } - set - { - __isset.fetchSize = true; - this._fetchSize = value; - } - } - - public long Timeout - { - get - { - return _timeout; - } - set - { - __isset.timeout = true; - this._timeout = value; - } - } - - public bool EnableRedirectQuery - { - get - { - return _enableRedirectQuery; - } - set - { - __isset.enableRedirectQuery = true; - this._enableRedirectQuery = value; - } - } - - public bool JdbcQuery - { - get - { - return _jdbcQuery; - } - set - { - __isset.jdbcQuery = true; - this._jdbcQuery = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool fetchSize; - public bool timeout; - public bool enableRedirectQuery; - public bool jdbcQuery; - } - - public TSExecuteStatementReq() - { - } - - public TSExecuteStatementReq(long sessionId, string statement, long statementId) : this() - { - this.SessionId = sessionId; - this.Statement = statement; - this.StatementId = statementId; - } - - public TSExecuteStatementReq DeepCopy() - { - var tmp77 = new TSExecuteStatementReq(); - tmp77.SessionId = this.SessionId; - if((Statement != null)) - { - tmp77.Statement = this.Statement; - } - tmp77.StatementId = this.StatementId; - if(__isset.fetchSize) - { - tmp77.FetchSize = this.FetchSize; - } - tmp77.__isset.fetchSize = this.__isset.fetchSize; - if(__isset.timeout) - { - tmp77.Timeout = this.Timeout; - } - tmp77.__isset.timeout = this.__isset.timeout; - if(__isset.enableRedirectQuery) - { - tmp77.EnableRedirectQuery = this.EnableRedirectQuery; - } - tmp77.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - if(__isset.jdbcQuery) - { - tmp77.JdbcQuery = this.JdbcQuery; - } - tmp77.__isset.jdbcQuery = this.__isset.jdbcQuery; - return tmp77; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_statement = false; - bool isset_statementId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Statement = await iprot.ReadStringAsync(cancellationToken); - isset_statement = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I64) - { - StatementId = await iprot.ReadI64Async(cancellationToken); - isset_statementId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I32) - { - FetchSize = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I64) - { - Timeout = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.Bool) - { - JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_statement) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_statementId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSExecuteStatementReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Statement != null)) - { - field.Name = "statement"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Statement, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "statementId"; - field.Type = TType.I64; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(StatementId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.fetchSize) - { - field.Name = "fetchSize"; - field.Type = TType.I32; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(FetchSize, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.timeout) - { - field.Name = "timeout"; - field.Type = TType.I64; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Timeout, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.enableRedirectQuery) - { - field.Name = "enableRedirectQuery"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.jdbcQuery) - { - field.Name = "jdbcQuery"; - field.Type = TType.Bool; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSExecuteStatementReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Statement, other.Statement) - && System.Object.Equals(StatementId, other.StatementId) - && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) - && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) - && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Statement != null)) - { - hashcode = (hashcode * 397) + Statement.GetHashCode(); - } - hashcode = (hashcode * 397) + StatementId.GetHashCode(); - if(__isset.fetchSize) - { - hashcode = (hashcode * 397) + FetchSize.GetHashCode(); - } - if(__isset.timeout) - { - hashcode = (hashcode * 397) + Timeout.GetHashCode(); - } - if(__isset.enableRedirectQuery) - { - hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); - } - if(__isset.jdbcQuery) - { - hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSExecuteStatementReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Statement != null)) - { - sb.Append(", Statement: "); - Statement.ToString(sb); - } - sb.Append(", StatementId: "); - StatementId.ToString(sb); - if(__isset.fetchSize) - { - sb.Append(", FetchSize: "); - FetchSize.ToString(sb); - } - if(__isset.timeout) - { - sb.Append(", Timeout: "); - Timeout.ToString(sb); - } - if(__isset.enableRedirectQuery) - { - sb.Append(", EnableRedirectQuery: "); - EnableRedirectQuery.ToString(sb); - } - if(__isset.jdbcQuery) - { - sb.Append(", JdbcQuery: "); - JdbcQuery.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs deleted file mode 100644 index 62aaecd..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSExecuteStatementResp.cs +++ /dev/null @@ -1,798 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSExecuteStatementResp : TBase -{ - private long _queryId; - private List _columns; - private string _operationType; - private bool _ignoreTimeStamp; - private List _dataTypeList; - private TSQueryDataSet _queryDataSet; - private TSQueryNonAlignDataSet _nonAlignQueryDataSet; - private Dictionary _columnNameIndexMap; - private List _sgColumns; - private List _aliasColumns; - private TSTracingInfo _tracingInfo; - - public TSStatus Status { get; set; } - - public long QueryId - { - get - { - return _queryId; - } - set - { - __isset.queryId = true; - this._queryId = value; - } - } - - public List Columns - { - get - { - return _columns; - } - set - { - __isset.columns = true; - this._columns = value; - } - } - - public string OperationType - { - get - { - return _operationType; - } - set - { - __isset.operationType = true; - this._operationType = value; - } - } - - public bool IgnoreTimeStamp - { - get - { - return _ignoreTimeStamp; - } - set - { - __isset.ignoreTimeStamp = true; - this._ignoreTimeStamp = value; - } - } - - public List DataTypeList - { - get - { - return _dataTypeList; - } - set - { - __isset.dataTypeList = true; - this._dataTypeList = value; - } - } - - public TSQueryDataSet QueryDataSet - { - get - { - return _queryDataSet; - } - set - { - __isset.queryDataSet = true; - this._queryDataSet = value; - } - } - - public TSQueryNonAlignDataSet NonAlignQueryDataSet - { - get - { - return _nonAlignQueryDataSet; - } - set - { - __isset.nonAlignQueryDataSet = true; - this._nonAlignQueryDataSet = value; - } - } - - public Dictionary ColumnNameIndexMap - { - get - { - return _columnNameIndexMap; - } - set - { - __isset.columnNameIndexMap = true; - this._columnNameIndexMap = value; - } - } - - public List SgColumns - { - get - { - return _sgColumns; - } - set - { - __isset.sgColumns = true; - this._sgColumns = value; - } - } - - public List AliasColumns - { - get - { - return _aliasColumns; - } - set - { - __isset.aliasColumns = true; - this._aliasColumns = value; - } - } - - public TSTracingInfo TracingInfo - { - get - { - return _tracingInfo; - } - set - { - __isset.tracingInfo = true; - this._tracingInfo = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool queryId; - public bool columns; - public bool operationType; - public bool ignoreTimeStamp; - public bool dataTypeList; - public bool queryDataSet; - public bool nonAlignQueryDataSet; - public bool columnNameIndexMap; - public bool sgColumns; - public bool aliasColumns; - public bool tracingInfo; - } - - public TSExecuteStatementResp() - { - } - - public TSExecuteStatementResp(TSStatus status) : this() - { - this.Status = status; - } - - public TSExecuteStatementResp DeepCopy() - { - var tmp38 = new TSExecuteStatementResp(); - if((Status != null)) - { - tmp38.Status = (TSStatus)this.Status.DeepCopy(); - } - if(__isset.queryId) - { - tmp38.QueryId = this.QueryId; - } - tmp38.__isset.queryId = this.__isset.queryId; - if((Columns != null) && __isset.columns) - { - tmp38.Columns = this.Columns.DeepCopy(); - } - tmp38.__isset.columns = this.__isset.columns; - if((OperationType != null) && __isset.operationType) - { - tmp38.OperationType = this.OperationType; - } - tmp38.__isset.operationType = this.__isset.operationType; - if(__isset.ignoreTimeStamp) - { - tmp38.IgnoreTimeStamp = this.IgnoreTimeStamp; - } - tmp38.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; - if((DataTypeList != null) && __isset.dataTypeList) - { - tmp38.DataTypeList = this.DataTypeList.DeepCopy(); - } - tmp38.__isset.dataTypeList = this.__isset.dataTypeList; - if((QueryDataSet != null) && __isset.queryDataSet) - { - tmp38.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); - } - tmp38.__isset.queryDataSet = this.__isset.queryDataSet; - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - tmp38.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); - } - tmp38.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; - if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) - { - tmp38.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); - } - tmp38.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; - if((SgColumns != null) && __isset.sgColumns) - { - tmp38.SgColumns = this.SgColumns.DeepCopy(); - } - tmp38.__isset.sgColumns = this.__isset.sgColumns; - if((AliasColumns != null) && __isset.aliasColumns) - { - tmp38.AliasColumns = this.AliasColumns.DeepCopy(); - } - tmp38.__isset.aliasColumns = this.__isset.aliasColumns; - if((TracingInfo != null) && __isset.tracingInfo) - { - tmp38.TracingInfo = (TSTracingInfo)this.TracingInfo.DeepCopy(); - } - tmp38.__isset.tracingInfo = this.__isset.tracingInfo; - return tmp38; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_status = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Status = new TSStatus(); - await Status.ReadAsync(iprot, cancellationToken); - isset_status = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I64) - { - QueryId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list39 = await iprot.ReadListBeginAsync(cancellationToken); - Columns = new List(_list39.Count); - for(int _i40 = 0; _i40 < _list39.Count; ++_i40) - { - string _elem41; - _elem41 = await iprot.ReadStringAsync(cancellationToken); - Columns.Add(_elem41); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.String) - { - OperationType = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.Bool) - { - IgnoreTimeStamp = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.List) - { - { - TList _list42 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypeList = new List(_list42.Count); - for(int _i43 = 0; _i43 < _list42.Count; ++_i43) - { - string _elem44; - _elem44 = await iprot.ReadStringAsync(cancellationToken); - DataTypeList.Add(_elem44); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.Struct) - { - QueryDataSet = new TSQueryDataSet(); - await QueryDataSet.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.Struct) - { - NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); - await NonAlignQueryDataSet.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 9: - if (field.Type == TType.Map) - { - { - TMap _map45 = await iprot.ReadMapBeginAsync(cancellationToken); - ColumnNameIndexMap = new Dictionary(_map45.Count); - for(int _i46 = 0; _i46 < _map45.Count; ++_i46) - { - string _key47; - int _val48; - _key47 = await iprot.ReadStringAsync(cancellationToken); - _val48 = await iprot.ReadI32Async(cancellationToken); - ColumnNameIndexMap[_key47] = _val48; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 10: - if (field.Type == TType.List) - { - { - TList _list49 = await iprot.ReadListBeginAsync(cancellationToken); - SgColumns = new List(_list49.Count); - for(int _i50 = 0; _i50 < _list49.Count; ++_i50) - { - string _elem51; - _elem51 = await iprot.ReadStringAsync(cancellationToken); - SgColumns.Add(_elem51); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 11: - if (field.Type == TType.List) - { - { - TList _list52 = await iprot.ReadListBeginAsync(cancellationToken); - AliasColumns = new List(_list52.Count); - for(int _i53 = 0; _i53 < _list52.Count; ++_i53) - { - sbyte _elem54; - _elem54 = await iprot.ReadByteAsync(cancellationToken); - AliasColumns.Add(_elem54); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 12: - if (field.Type == TType.Struct) - { - TracingInfo = new TSTracingInfo(); - await TracingInfo.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_status) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSExecuteStatementResp"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Status != null)) - { - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Status.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.queryId) - { - field.Name = "queryId"; - field.Type = TType.I64; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(QueryId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Columns != null) && __isset.columns) - { - field.Name = "columns"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Columns.Count), cancellationToken); - foreach (string _iter55 in Columns) - { - await oprot.WriteStringAsync(_iter55, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((OperationType != null) && __isset.operationType) - { - field.Name = "operationType"; - field.Type = TType.String; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(OperationType, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.ignoreTimeStamp) - { - field.Name = "ignoreTimeStamp"; - field.Type = TType.Bool; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IgnoreTimeStamp, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((DataTypeList != null) && __isset.dataTypeList) - { - field.Name = "dataTypeList"; - field.Type = TType.List; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, DataTypeList.Count), cancellationToken); - foreach (string _iter56 in DataTypeList) - { - await oprot.WriteStringAsync(_iter56, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((QueryDataSet != null) && __isset.queryDataSet) - { - field.Name = "queryDataSet"; - field.Type = TType.Struct; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await QueryDataSet.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - field.Name = "nonAlignQueryDataSet"; - field.Type = TType.Struct; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) - { - field.Name = "columnNameIndexMap"; - field.Type = TType.Map; - field.ID = 9; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count), cancellationToken); - foreach (string _iter57 in ColumnNameIndexMap.Keys) - { - await oprot.WriteStringAsync(_iter57, cancellationToken); - await oprot.WriteI32Async(ColumnNameIndexMap[_iter57], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((SgColumns != null) && __isset.sgColumns) - { - field.Name = "sgColumns"; - field.Type = TType.List; - field.ID = 10; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, SgColumns.Count), cancellationToken); - foreach (string _iter58 in SgColumns) - { - await oprot.WriteStringAsync(_iter58, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((AliasColumns != null) && __isset.aliasColumns) - { - field.Name = "aliasColumns"; - field.Type = TType.List; - field.ID = 11; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Byte, AliasColumns.Count), cancellationToken); - foreach (sbyte _iter59 in AliasColumns) - { - await oprot.WriteByteAsync(_iter59, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TracingInfo != null) && __isset.tracingInfo) - { - field.Name = "tracingInfo"; - field.Type = TType.Struct; - field.ID = 12; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await TracingInfo.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSExecuteStatementResp other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Status, other.Status) - && ((__isset.queryId == other.__isset.queryId) && ((!__isset.queryId) || (System.Object.Equals(QueryId, other.QueryId)))) - && ((__isset.columns == other.__isset.columns) && ((!__isset.columns) || (TCollections.Equals(Columns, other.Columns)))) - && ((__isset.operationType == other.__isset.operationType) && ((!__isset.operationType) || (System.Object.Equals(OperationType, other.OperationType)))) - && ((__isset.ignoreTimeStamp == other.__isset.ignoreTimeStamp) && ((!__isset.ignoreTimeStamp) || (System.Object.Equals(IgnoreTimeStamp, other.IgnoreTimeStamp)))) - && ((__isset.dataTypeList == other.__isset.dataTypeList) && ((!__isset.dataTypeList) || (TCollections.Equals(DataTypeList, other.DataTypeList)))) - && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) - && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))) - && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))) - && ((__isset.sgColumns == other.__isset.sgColumns) && ((!__isset.sgColumns) || (TCollections.Equals(SgColumns, other.SgColumns)))) - && ((__isset.aliasColumns == other.__isset.aliasColumns) && ((!__isset.aliasColumns) || (TCollections.Equals(AliasColumns, other.AliasColumns)))) - && ((__isset.tracingInfo == other.__isset.tracingInfo) && ((!__isset.tracingInfo) || (System.Object.Equals(TracingInfo, other.TracingInfo)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Status != null)) - { - hashcode = (hashcode * 397) + Status.GetHashCode(); - } - if(__isset.queryId) - { - hashcode = (hashcode * 397) + QueryId.GetHashCode(); - } - if((Columns != null) && __isset.columns) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Columns); - } - if((OperationType != null) && __isset.operationType) - { - hashcode = (hashcode * 397) + OperationType.GetHashCode(); - } - if(__isset.ignoreTimeStamp) - { - hashcode = (hashcode * 397) + IgnoreTimeStamp.GetHashCode(); - } - if((DataTypeList != null) && __isset.dataTypeList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(DataTypeList); - } - if((QueryDataSet != null) && __isset.queryDataSet) - { - hashcode = (hashcode * 397) + QueryDataSet.GetHashCode(); - } - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); - } - if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnNameIndexMap); - } - if((SgColumns != null) && __isset.sgColumns) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(SgColumns); - } - if((AliasColumns != null) && __isset.aliasColumns) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(AliasColumns); - } - if((TracingInfo != null) && __isset.tracingInfo) - { - hashcode = (hashcode * 397) + TracingInfo.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSExecuteStatementResp("); - if((Status != null)) - { - sb.Append(", Status: "); - Status.ToString(sb); - } - if(__isset.queryId) - { - sb.Append(", QueryId: "); - QueryId.ToString(sb); - } - if((Columns != null) && __isset.columns) - { - sb.Append(", Columns: "); - Columns.ToString(sb); - } - if((OperationType != null) && __isset.operationType) - { - sb.Append(", OperationType: "); - OperationType.ToString(sb); - } - if(__isset.ignoreTimeStamp) - { - sb.Append(", IgnoreTimeStamp: "); - IgnoreTimeStamp.ToString(sb); - } - if((DataTypeList != null) && __isset.dataTypeList) - { - sb.Append(", DataTypeList: "); - DataTypeList.ToString(sb); - } - if((QueryDataSet != null) && __isset.queryDataSet) - { - sb.Append(", QueryDataSet: "); - QueryDataSet.ToString(sb); - } - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - sb.Append(", NonAlignQueryDataSet: "); - NonAlignQueryDataSet.ToString(sb); - } - if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) - { - sb.Append(", ColumnNameIndexMap: "); - ColumnNameIndexMap.ToString(sb); - } - if((SgColumns != null) && __isset.sgColumns) - { - sb.Append(", SgColumns: "); - SgColumns.ToString(sb); - } - if((AliasColumns != null) && __isset.aliasColumns) - { - sb.Append(", AliasColumns: "); - AliasColumns.ToString(sb); - } - if((TracingInfo != null) && __isset.tracingInfo) - { - sb.Append(", TracingInfo: "); - TracingInfo.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs deleted file mode 100644 index 4b998c3..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataReq.cs +++ /dev/null @@ -1,246 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSFetchMetadataReq : TBase -{ - private string _columnPath; - - public long SessionId { get; set; } - - public string Type { get; set; } - - public string ColumnPath - { - get - { - return _columnPath; - } - set - { - __isset.columnPath = true; - this._columnPath = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool columnPath; - } - - public TSFetchMetadataReq() - { - } - - public TSFetchMetadataReq(long sessionId, string type) : this() - { - this.SessionId = sessionId; - this.Type = type; - } - - public TSFetchMetadataReq DeepCopy() - { - var tmp101 = new TSFetchMetadataReq(); - tmp101.SessionId = this.SessionId; - if((Type != null)) - { - tmp101.Type = this.Type; - } - if((ColumnPath != null) && __isset.columnPath) - { - tmp101.ColumnPath = this.ColumnPath; - } - tmp101.__isset.columnPath = this.__isset.columnPath; - return tmp101; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_type = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Type = await iprot.ReadStringAsync(cancellationToken); - isset_type = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - ColumnPath = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_type) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSFetchMetadataReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Type != null)) - { - field.Name = "type"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Type, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ColumnPath != null) && __isset.columnPath) - { - field.Name = "columnPath"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(ColumnPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSFetchMetadataReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Type, other.Type) - && ((__isset.columnPath == other.__isset.columnPath) && ((!__isset.columnPath) || (System.Object.Equals(ColumnPath, other.ColumnPath)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Type != null)) - { - hashcode = (hashcode * 397) + Type.GetHashCode(); - } - if((ColumnPath != null) && __isset.columnPath) - { - hashcode = (hashcode * 397) + ColumnPath.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSFetchMetadataReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Type != null)) - { - sb.Append(", Type: "); - Type.ToString(sb); - } - if((ColumnPath != null) && __isset.columnPath) - { - sb.Append(", ColumnPath: "); - ColumnPath.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs deleted file mode 100644 index 751f6d9..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchMetadataResp.cs +++ /dev/null @@ -1,332 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSFetchMetadataResp : TBase -{ - private string _metadataInJson; - private List _columnsList; - private string _dataType; - - public TSStatus Status { get; set; } - - public string MetadataInJson - { - get - { - return _metadataInJson; - } - set - { - __isset.metadataInJson = true; - this._metadataInJson = value; - } - } - - public List ColumnsList - { - get - { - return _columnsList; - } - set - { - __isset.columnsList = true; - this._columnsList = value; - } - } - - public string DataType - { - get - { - return _dataType; - } - set - { - __isset.dataType = true; - this._dataType = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool metadataInJson; - public bool columnsList; - public bool dataType; - } - - public TSFetchMetadataResp() - { - } - - public TSFetchMetadataResp(TSStatus status) : this() - { - this.Status = status; - } - - public TSFetchMetadataResp DeepCopy() - { - var tmp95 = new TSFetchMetadataResp(); - if((Status != null)) - { - tmp95.Status = (TSStatus)this.Status.DeepCopy(); - } - if((MetadataInJson != null) && __isset.metadataInJson) - { - tmp95.MetadataInJson = this.MetadataInJson; - } - tmp95.__isset.metadataInJson = this.__isset.metadataInJson; - if((ColumnsList != null) && __isset.columnsList) - { - tmp95.ColumnsList = this.ColumnsList.DeepCopy(); - } - tmp95.__isset.columnsList = this.__isset.columnsList; - if((DataType != null) && __isset.dataType) - { - tmp95.DataType = this.DataType; - } - tmp95.__isset.dataType = this.__isset.dataType; - return tmp95; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_status = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Status = new TSStatus(); - await Status.ReadAsync(iprot, cancellationToken); - isset_status = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - MetadataInJson = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list96 = await iprot.ReadListBeginAsync(cancellationToken); - ColumnsList = new List(_list96.Count); - for(int _i97 = 0; _i97 < _list96.Count; ++_i97) - { - string _elem98; - _elem98 = await iprot.ReadStringAsync(cancellationToken); - ColumnsList.Add(_elem98); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.String) - { - DataType = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_status) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSFetchMetadataResp"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Status != null)) - { - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Status.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MetadataInJson != null) && __isset.metadataInJson) - { - field.Name = "metadataInJson"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(MetadataInJson, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ColumnsList != null) && __isset.columnsList) - { - field.Name = "columnsList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ColumnsList.Count), cancellationToken); - foreach (string _iter99 in ColumnsList) - { - await oprot.WriteStringAsync(_iter99, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((DataType != null) && __isset.dataType) - { - field.Name = "dataType"; - field.Type = TType.String; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(DataType, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSFetchMetadataResp other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Status, other.Status) - && ((__isset.metadataInJson == other.__isset.metadataInJson) && ((!__isset.metadataInJson) || (System.Object.Equals(MetadataInJson, other.MetadataInJson)))) - && ((__isset.columnsList == other.__isset.columnsList) && ((!__isset.columnsList) || (TCollections.Equals(ColumnsList, other.ColumnsList)))) - && ((__isset.dataType == other.__isset.dataType) && ((!__isset.dataType) || (System.Object.Equals(DataType, other.DataType)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Status != null)) - { - hashcode = (hashcode * 397) + Status.GetHashCode(); - } - if((MetadataInJson != null) && __isset.metadataInJson) - { - hashcode = (hashcode * 397) + MetadataInJson.GetHashCode(); - } - if((ColumnsList != null) && __isset.columnsList) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ColumnsList); - } - if((DataType != null) && __isset.dataType) - { - hashcode = (hashcode * 397) + DataType.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSFetchMetadataResp("); - if((Status != null)) - { - sb.Append(", Status: "); - Status.ToString(sb); - } - if((MetadataInJson != null) && __isset.metadataInJson) - { - sb.Append(", MetadataInJson: "); - MetadataInJson.ToString(sb); - } - if((ColumnsList != null) && __isset.columnsList) - { - sb.Append(", ColumnsList: "); - ColumnsList.ToString(sb); - } - if((DataType != null) && __isset.dataType) - { - sb.Append(", DataType: "); - DataType.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs deleted file mode 100644 index 9ef28d6..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsReq.cs +++ /dev/null @@ -1,336 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSFetchResultsReq : TBase -{ - private long _timeout; - - public long SessionId { get; set; } - - public string Statement { get; set; } - - public int FetchSize { get; set; } - - public long QueryId { get; set; } - - public bool IsAlign { get; set; } - - public long Timeout - { - get - { - return _timeout; - } - set - { - __isset.timeout = true; - this._timeout = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool timeout; - } - - public TSFetchResultsReq() - { - } - - public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long queryId, bool isAlign) : this() - { - this.SessionId = sessionId; - this.Statement = statement; - this.FetchSize = fetchSize; - this.QueryId = queryId; - this.IsAlign = isAlign; - } - - public TSFetchResultsReq DeepCopy() - { - var tmp91 = new TSFetchResultsReq(); - tmp91.SessionId = this.SessionId; - if((Statement != null)) - { - tmp91.Statement = this.Statement; - } - tmp91.FetchSize = this.FetchSize; - tmp91.QueryId = this.QueryId; - tmp91.IsAlign = this.IsAlign; - if(__isset.timeout) - { - tmp91.Timeout = this.Timeout; - } - tmp91.__isset.timeout = this.__isset.timeout; - return tmp91; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_statement = false; - bool isset_fetchSize = false; - bool isset_queryId = false; - bool isset_isAlign = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Statement = await iprot.ReadStringAsync(cancellationToken); - isset_statement = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I32) - { - FetchSize = await iprot.ReadI32Async(cancellationToken); - isset_fetchSize = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I64) - { - QueryId = await iprot.ReadI64Async(cancellationToken); - isset_queryId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.Bool) - { - IsAlign = await iprot.ReadBoolAsync(cancellationToken); - isset_isAlign = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.I64) - { - Timeout = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_statement) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_fetchSize) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_queryId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_isAlign) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSFetchResultsReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Statement != null)) - { - field.Name = "statement"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Statement, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "fetchSize"; - field.Type = TType.I32; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(FetchSize, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "queryId"; - field.Type = TType.I64; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(QueryId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "isAlign"; - field.Type = TType.Bool; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAlign, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.timeout) - { - field.Name = "timeout"; - field.Type = TType.I64; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Timeout, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSFetchResultsReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Statement, other.Statement) - && System.Object.Equals(FetchSize, other.FetchSize) - && System.Object.Equals(QueryId, other.QueryId) - && System.Object.Equals(IsAlign, other.IsAlign) - && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Statement != null)) - { - hashcode = (hashcode * 397) + Statement.GetHashCode(); - } - hashcode = (hashcode * 397) + FetchSize.GetHashCode(); - hashcode = (hashcode * 397) + QueryId.GetHashCode(); - hashcode = (hashcode * 397) + IsAlign.GetHashCode(); - if(__isset.timeout) - { - hashcode = (hashcode * 397) + Timeout.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSFetchResultsReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Statement != null)) - { - sb.Append(", Statement: "); - Statement.ToString(sb); - } - sb.Append(", FetchSize: "); - FetchSize.ToString(sb); - sb.Append(", QueryId: "); - QueryId.ToString(sb); - sb.Append(", IsAlign: "); - IsAlign.ToString(sb); - if(__isset.timeout) - { - sb.Append(", Timeout: "); - Timeout.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs deleted file mode 100644 index 6b178c5..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSFetchResultsResp.cs +++ /dev/null @@ -1,328 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSFetchResultsResp : TBase -{ - private TSQueryDataSet _queryDataSet; - private TSQueryNonAlignDataSet _nonAlignQueryDataSet; - - public TSStatus Status { get; set; } - - public bool HasResultSet { get; set; } - - public bool IsAlign { get; set; } - - public TSQueryDataSet QueryDataSet - { - get - { - return _queryDataSet; - } - set - { - __isset.queryDataSet = true; - this._queryDataSet = value; - } - } - - public TSQueryNonAlignDataSet NonAlignQueryDataSet - { - get - { - return _nonAlignQueryDataSet; - } - set - { - __isset.nonAlignQueryDataSet = true; - this._nonAlignQueryDataSet = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool queryDataSet; - public bool nonAlignQueryDataSet; - } - - public TSFetchResultsResp() - { - } - - public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : this() - { - this.Status = status; - this.HasResultSet = hasResultSet; - this.IsAlign = isAlign; - } - - public TSFetchResultsResp DeepCopy() - { - var tmp93 = new TSFetchResultsResp(); - if((Status != null)) - { - tmp93.Status = (TSStatus)this.Status.DeepCopy(); - } - tmp93.HasResultSet = this.HasResultSet; - tmp93.IsAlign = this.IsAlign; - if((QueryDataSet != null) && __isset.queryDataSet) - { - tmp93.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); - } - tmp93.__isset.queryDataSet = this.__isset.queryDataSet; - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - tmp93.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); - } - tmp93.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; - return tmp93; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_status = false; - bool isset_hasResultSet = false; - bool isset_isAlign = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Status = new TSStatus(); - await Status.ReadAsync(iprot, cancellationToken); - isset_status = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.Bool) - { - HasResultSet = await iprot.ReadBoolAsync(cancellationToken); - isset_hasResultSet = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.Bool) - { - IsAlign = await iprot.ReadBoolAsync(cancellationToken); - isset_isAlign = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.Struct) - { - QueryDataSet = new TSQueryDataSet(); - await QueryDataSet.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.Struct) - { - NonAlignQueryDataSet = new TSQueryNonAlignDataSet(); - await NonAlignQueryDataSet.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_status) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_hasResultSet) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_isAlign) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSFetchResultsResp"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Status != null)) - { - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Status.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "hasResultSet"; - field.Type = TType.Bool; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(HasResultSet, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "isAlign"; - field.Type = TType.Bool; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAlign, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((QueryDataSet != null) && __isset.queryDataSet) - { - field.Name = "queryDataSet"; - field.Type = TType.Struct; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await QueryDataSet.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - field.Name = "nonAlignQueryDataSet"; - field.Type = TType.Struct; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSFetchResultsResp other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Status, other.Status) - && System.Object.Equals(HasResultSet, other.HasResultSet) - && System.Object.Equals(IsAlign, other.IsAlign) - && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) - && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Status != null)) - { - hashcode = (hashcode * 397) + Status.GetHashCode(); - } - hashcode = (hashcode * 397) + HasResultSet.GetHashCode(); - hashcode = (hashcode * 397) + IsAlign.GetHashCode(); - if((QueryDataSet != null) && __isset.queryDataSet) - { - hashcode = (hashcode * 397) + QueryDataSet.GetHashCode(); - } - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSFetchResultsResp("); - if((Status != null)) - { - sb.Append(", Status: "); - Status.ToString(sb); - } - sb.Append(", HasResultSet: "); - HasResultSet.ToString(sb); - sb.Append(", IsAlign: "); - IsAlign.ToString(sb); - if((QueryDataSet != null) && __isset.queryDataSet) - { - sb.Append(", QueryDataSet: "); - QueryDataSet.ToString(sb); - } - if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) - { - sb.Append(", NonAlignQueryDataSet: "); - NonAlignQueryDataSet.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs deleted file mode 100644 index 27718fb..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSGetOperationStatusReq.cs +++ /dev/null @@ -1,179 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSGetOperationStatusReq : TBase -{ - - public long SessionId { get; set; } - - public long QueryId { get; set; } - - public TSGetOperationStatusReq() - { - } - - public TSGetOperationStatusReq(long sessionId, long queryId) : this() - { - this.SessionId = sessionId; - this.QueryId = queryId; - } - - public TSGetOperationStatusReq DeepCopy() - { - var tmp85 = new TSGetOperationStatusReq(); - tmp85.SessionId = this.SessionId; - tmp85.QueryId = this.QueryId; - return tmp85; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_queryId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I64) - { - QueryId = await iprot.ReadI64Async(cancellationToken); - isset_queryId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_queryId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSGetOperationStatusReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "queryId"; - field.Type = TType.I64; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(QueryId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSGetOperationStatusReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(QueryId, other.QueryId); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - hashcode = (hashcode * 397) + QueryId.GetHashCode(); - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSGetOperationStatusReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - sb.Append(", QueryId: "); - QueryId.ToString(sb); - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs deleted file mode 100644 index 4dca3ad..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSGetTimeZoneResp.cs +++ /dev/null @@ -1,204 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSGetTimeZoneResp : TBase -{ - - public TSStatus Status { get; set; } - - public string TimeZone { get; set; } - - public TSGetTimeZoneResp() - { - } - - public TSGetTimeZoneResp(TSStatus status, string timeZone) : this() - { - this.Status = status; - this.TimeZone = timeZone; - } - - public TSGetTimeZoneResp DeepCopy() - { - var tmp103 = new TSGetTimeZoneResp(); - if((Status != null)) - { - tmp103.Status = (TSStatus)this.Status.DeepCopy(); - } - if((TimeZone != null)) - { - tmp103.TimeZone = this.TimeZone; - } - return tmp103; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_status = false; - bool isset_timeZone = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Status = new TSStatus(); - await Status.ReadAsync(iprot, cancellationToken); - isset_status = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - TimeZone = await iprot.ReadStringAsync(cancellationToken); - isset_timeZone = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_status) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timeZone) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSGetTimeZoneResp"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Status != null)) - { - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Status.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TimeZone != null)) - { - field.Name = "timeZone"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(TimeZone, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSGetTimeZoneResp other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Status, other.Status) - && System.Object.Equals(TimeZone, other.TimeZone); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Status != null)) - { - hashcode = (hashcode * 397) + Status.GetHashCode(); - } - if((TimeZone != null)) - { - hashcode = (hashcode * 397) + TimeZone.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSGetTimeZoneResp("); - if((Status != null)) - { - sb.Append(", Status: "); - Status.ToString(sb); - } - if((TimeZone != null)) - { - sb.Append(", TimeZone: "); - TimeZone.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSIService.cs b/src/Apache.IoTDB.Rpc.Generated/TSIService.cs deleted file mode 100644 index 964e1aa..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSIService.cs +++ /dev/null @@ -1,16153 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - -public partial class TSIService -{ - public interface IAsync - { - global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task executeStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task executeBatchStatementAsync(TSExecuteBatchStatementReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task executeQueryStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task executeUpdateStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task fetchResultsAsync(TSFetchResultsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task fetchMetadataAsync(TSFetchMetadataReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task cancelOperationAsync(TSCancelOperationReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task closeOperationAsync(TSCloseOperationReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task getTimeZoneAsync(long sessionId, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task setTimeZoneAsync(TSSetTimeZoneReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task getPropertiesAsync(CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task setStorageGroupAsync(long sessionId, string storageGroup, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task deleteStorageGroupsAsync(long sessionId, List storageGroup, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task testInsertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task deleteDataAsync(TSDeleteDataReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default); - - global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default); - - } - - - public class Client : TBaseClient, IDisposable, IAsync - { - public Client(TProtocol protocol) : this(protocol, protocol) - { - } - - public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputProtocol, outputProtocol) { - } - public async global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.openSessionArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.openSessionResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "openSession failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.closeSessionArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.closeSessionResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeSession failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task executeStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.executeStatementArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.executeStatementResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeStatement failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task executeBatchStatementAsync(TSExecuteBatchStatementReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.executeBatchStatementArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.executeBatchStatementResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeBatchStatement failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task executeQueryStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.executeQueryStatementArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.executeQueryStatementResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeQueryStatement failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task executeUpdateStatementAsync(TSExecuteStatementReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.executeUpdateStatementArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.executeUpdateStatementResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeUpdateStatement failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task fetchResultsAsync(TSFetchResultsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.fetchResultsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.fetchResultsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchResults failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task fetchMetadataAsync(TSFetchMetadataReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.fetchMetadataArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.fetchMetadataResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchMetadata failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task cancelOperationAsync(TSCancelOperationReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.cancelOperationArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.cancelOperationResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "cancelOperation failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task closeOperationAsync(TSCloseOperationReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.closeOperationArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.closeOperationResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "closeOperation failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task getTimeZoneAsync(long sessionId, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.getTimeZoneArgs() { - SessionId = sessionId, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.getTimeZoneResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getTimeZone failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task setTimeZoneAsync(TSSetTimeZoneReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.setTimeZoneArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.setTimeZoneResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setTimeZone failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task getPropertiesAsync(CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.getPropertiesArgs() { - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.getPropertiesResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getProperties failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task setStorageGroupAsync(long sessionId, string storageGroup, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.setStorageGroupArgs() { - SessionId = sessionId, - StorageGroup = storageGroup, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.setStorageGroupResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setStorageGroup failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task createTimeseriesAsync(TSCreateTimeseriesReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.createTimeseriesArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.createTimeseriesResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createTimeseries failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task createAlignedTimeseriesAsync(TSCreateAlignedTimeseriesReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.createAlignedTimeseriesArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.createAlignedTimeseriesResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createAlignedTimeseries failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task createMultiTimeseriesAsync(TSCreateMultiTimeseriesReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.createMultiTimeseriesArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.createMultiTimeseriesResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createMultiTimeseries failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task deleteTimeseriesAsync(long sessionId, List path, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.deleteTimeseriesArgs() { - SessionId = sessionId, - Path = path, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.deleteTimeseriesResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteTimeseries failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task deleteStorageGroupsAsync(long sessionId, List storageGroup, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.deleteStorageGroupsArgs() { - SessionId = sessionId, - StorageGroup = storageGroup, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.deleteStorageGroupsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteStorageGroups failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertRecordArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertRecordResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecord failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertStringRecordArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertStringRecordResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecord failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertTabletArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertTabletResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablet failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertTabletsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertTabletsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertTablets failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertRecordsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertRecordsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecords failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertRecordsOfOneDeviceArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertRecordsOfOneDeviceResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertRecordsOfOneDevice failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDeviceAsync(TSInsertStringRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecordsOfOneDevice failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task insertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.insertStringRecordsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.insertStringRecordsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "insertStringRecords failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertTabletAsync(TSInsertTabletReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertTabletArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertTabletResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablet failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertTabletsAsync(TSInsertTabletsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertTabletsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertTabletsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertTablets failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertRecordAsync(TSInsertRecordReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertRecordArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertRecordResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecord failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertStringRecordAsync(TSInsertStringRecordReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertStringRecordArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertStringRecordResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecord failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertRecordsAsync(TSInsertRecordsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertRecordsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertRecordsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecords failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertRecordsOfOneDeviceAsync(TSInsertRecordsOfOneDeviceReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertRecordsOfOneDeviceArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertRecordsOfOneDeviceResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertRecordsOfOneDevice failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task testInsertStringRecordsAsync(TSInsertStringRecordsReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.testInsertStringRecordsArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.testInsertStringRecordsResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "testInsertStringRecords failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task deleteDataAsync(TSDeleteDataReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.deleteDataArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.deleteDataResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "deleteData failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task executeRawDataQueryAsync(TSRawDataQueryReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.executeRawDataQueryArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.executeRawDataQueryResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQuery failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task executeLastDataQueryAsync(TSLastDataQueryReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.executeLastDataQueryArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.executeLastDataQueryResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeLastDataQuery failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task requestStatementIdAsync(long sessionId, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.requestStatementIdArgs() { - SessionId = sessionId, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.requestStatementIdResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "requestStatementId failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task createSchemaTemplateAsync(TSCreateSchemaTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.createSchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.createSchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "createSchemaTemplate failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task appendSchemaTemplateAsync(TSAppendSchemaTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.appendSchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.appendSchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "appendSchemaTemplate failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task pruneSchemaTemplateAsync(TSPruneSchemaTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.pruneSchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.pruneSchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "pruneSchemaTemplate failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task querySchemaTemplateAsync(TSQueryTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.querySchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.querySchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "querySchemaTemplate failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task setSchemaTemplateAsync(TSSetSchemaTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.setSchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.setSchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "setSchemaTemplate failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task unsetSchemaTemplateAsync(TSUnsetSchemaTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.unsetSchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.unsetSchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "unsetSchemaTemplate failed: unknown result"); - } - - public async global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default) - { - await OutputProtocol.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Call, SeqId), cancellationToken); - - var args = new InternalStructs.dropSchemaTemplateArgs() { - Req = req, - }; - - await args.WriteAsync(OutputProtocol, cancellationToken); - await OutputProtocol.WriteMessageEndAsync(cancellationToken); - await OutputProtocol.Transport.FlushAsync(cancellationToken); - - var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); - if (msg.Type == TMessageType.Exception) - { - var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - throw x; - } - - var result = new InternalStructs.dropSchemaTemplateResult(); - await result.ReadAsync(InputProtocol, cancellationToken); - await InputProtocol.ReadMessageEndAsync(cancellationToken); - if (result.__isset.success) - { - return result.Success; - } - throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "dropSchemaTemplate failed: unknown result"); - } - - } - - public class AsyncProcessor : ITAsyncProcessor - { - private readonly IAsync _iAsync; - private readonly ILogger _logger; - - public AsyncProcessor(IAsync iAsync, ILogger logger = default) - { - _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); - _logger = logger; - processMap_["openSession"] = openSession_ProcessAsync; - processMap_["closeSession"] = closeSession_ProcessAsync; - processMap_["executeStatement"] = executeStatement_ProcessAsync; - processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; - processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; - processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; - processMap_["fetchResults"] = fetchResults_ProcessAsync; - processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; - processMap_["cancelOperation"] = cancelOperation_ProcessAsync; - processMap_["closeOperation"] = closeOperation_ProcessAsync; - processMap_["getTimeZone"] = getTimeZone_ProcessAsync; - processMap_["setTimeZone"] = setTimeZone_ProcessAsync; - processMap_["getProperties"] = getProperties_ProcessAsync; - processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; - processMap_["createTimeseries"] = createTimeseries_ProcessAsync; - processMap_["createAlignedTimeseries"] = createAlignedTimeseries_ProcessAsync; - processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; - processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; - processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; - processMap_["insertRecord"] = insertRecord_ProcessAsync; - processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; - processMap_["insertTablet"] = insertTablet_ProcessAsync; - processMap_["insertTablets"] = insertTablets_ProcessAsync; - processMap_["insertRecords"] = insertRecords_ProcessAsync; - processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; - processMap_["insertStringRecordsOfOneDevice"] = insertStringRecordsOfOneDevice_ProcessAsync; - processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; - processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; - processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; - processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; - processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; - processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; - processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; - processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; - processMap_["deleteData"] = deleteData_ProcessAsync; - processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; - processMap_["executeLastDataQuery"] = executeLastDataQuery_ProcessAsync; - processMap_["requestStatementId"] = requestStatementId_ProcessAsync; - processMap_["createSchemaTemplate"] = createSchemaTemplate_ProcessAsync; - processMap_["appendSchemaTemplate"] = appendSchemaTemplate_ProcessAsync; - processMap_["pruneSchemaTemplate"] = pruneSchemaTemplate_ProcessAsync; - processMap_["querySchemaTemplate"] = querySchemaTemplate_ProcessAsync; - processMap_["setSchemaTemplate"] = setSchemaTemplate_ProcessAsync; - processMap_["unsetSchemaTemplate"] = unsetSchemaTemplate_ProcessAsync; - processMap_["dropSchemaTemplate"] = dropSchemaTemplate_ProcessAsync; - } - - protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); - protected Dictionary processMap_ = new Dictionary(); - - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) - { - return await ProcessAsync(iprot, oprot, CancellationToken.None); - } - - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - try - { - var msg = await iprot.ReadMessageBeginAsync(cancellationToken); - - processMap_.TryGetValue(msg.Name, out ProcessFunction fn); - - if (fn == null) - { - await TProtocolUtil.SkipAsync(iprot, TType.Struct, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var x = new TApplicationException (TApplicationException.ExceptionType.UnknownMethod, "Invalid method name: '" + msg.Name + "'"); - await oprot.WriteMessageBeginAsync(new TMessage(msg.Name, TMessageType.Exception, msg.SeqID), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - return true; - } - - await fn(msg.SeqID, iprot, oprot, cancellationToken); - - } - catch (IOException) - { - return false; - } - - return true; - } - - public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.openSessionArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.openSessionResult(); - try - { - result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.closeSessionArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.closeSessionResult(); - try - { - result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task executeStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.executeStatementArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeStatementResult(); - try - { - result.Success = await _iAsync.executeStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task executeBatchStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.executeBatchStatementArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeBatchStatementResult(); - try - { - result.Success = await _iAsync.executeBatchStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task executeQueryStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.executeQueryStatementArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeQueryStatementResult(); - try - { - result.Success = await _iAsync.executeQueryStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task executeUpdateStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.executeUpdateStatementArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeUpdateStatementResult(); - try - { - result.Success = await _iAsync.executeUpdateStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task fetchResults_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.fetchResultsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.fetchResultsResult(); - try - { - result.Success = await _iAsync.fetchResultsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task fetchMetadata_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.fetchMetadataArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.fetchMetadataResult(); - try - { - result.Success = await _iAsync.fetchMetadataAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task cancelOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.cancelOperationArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.cancelOperationResult(); - try - { - result.Success = await _iAsync.cancelOperationAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task closeOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.closeOperationArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.closeOperationResult(); - try - { - result.Success = await _iAsync.closeOperationAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task getTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.getTimeZoneArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.getTimeZoneResult(); - try - { - result.Success = await _iAsync.getTimeZoneAsync(args.SessionId, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task setTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.setTimeZoneArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.setTimeZoneResult(); - try - { - result.Success = await _iAsync.setTimeZoneAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("setTimeZone", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task getProperties_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.getPropertiesArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.getPropertiesResult(); - try - { - result.Success = await _iAsync.getPropertiesAsync(cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("getProperties", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task setStorageGroup_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.setStorageGroupArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.setStorageGroupResult(); - try - { - result.Success = await _iAsync.setStorageGroupAsync(args.SessionId, args.StorageGroup, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("setStorageGroup", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task createTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.createTimeseriesArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.createTimeseriesResult(); - try - { - result.Success = await _iAsync.createTimeseriesAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("createTimeseries", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task createAlignedTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.createAlignedTimeseriesArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.createAlignedTimeseriesResult(); - try - { - result.Success = await _iAsync.createAlignedTimeseriesAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("createAlignedTimeseries", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task createMultiTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.createMultiTimeseriesArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.createMultiTimeseriesResult(); - try - { - result.Success = await _iAsync.createMultiTimeseriesAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("createMultiTimeseries", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task deleteTimeseries_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.deleteTimeseriesArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.deleteTimeseriesResult(); - try - { - result.Success = await _iAsync.deleteTimeseriesAsync(args.SessionId, args.Path, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("deleteTimeseries", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task deleteStorageGroups_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.deleteStorageGroupsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.deleteStorageGroupsResult(); - try - { - result.Success = await _iAsync.deleteStorageGroupsAsync(args.SessionId, args.StorageGroup, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("deleteStorageGroups", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertRecordArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertRecordResult(); - try - { - result.Success = await _iAsync.insertRecordAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertRecord", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertStringRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertStringRecordArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertStringRecordResult(); - try - { - result.Success = await _iAsync.insertStringRecordAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecord", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertTablet_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertTabletArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertTabletResult(); - try - { - result.Success = await _iAsync.insertTabletAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertTablet", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertTablets_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertTabletsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertTabletsResult(); - try - { - result.Success = await _iAsync.insertTabletsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertTablets", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertRecordsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertRecordsResult(); - try - { - result.Success = await _iAsync.insertRecordsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertRecords", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertRecordsOfOneDeviceArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertRecordsOfOneDeviceResult(); - try - { - result.Success = await _iAsync.insertRecordsOfOneDeviceAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertStringRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertStringRecordsOfOneDeviceArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertStringRecordsOfOneDeviceResult(); - try - { - result.Success = await _iAsync.insertStringRecordsOfOneDeviceAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task insertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.insertStringRecordsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.insertStringRecordsResult(); - try - { - result.Success = await _iAsync.insertStringRecordsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("insertStringRecords", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertTablet_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertTabletArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertTabletResult(); - try - { - result.Success = await _iAsync.testInsertTabletAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablet", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertTablets_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertTabletsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertTabletsResult(); - try - { - result.Success = await _iAsync.testInsertTabletsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertTablets", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertRecordArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertRecordResult(); - try - { - result.Success = await _iAsync.testInsertRecordAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecord", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertStringRecord_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertStringRecordArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertStringRecordResult(); - try - { - result.Success = await _iAsync.testInsertStringRecordAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecord", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertRecordsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertRecordsResult(); - try - { - result.Success = await _iAsync.testInsertRecordsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecords", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertRecordsOfOneDevice_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertRecordsOfOneDeviceArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertRecordsOfOneDeviceResult(); - try - { - result.Success = await _iAsync.testInsertRecordsOfOneDeviceAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertRecordsOfOneDevice", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task testInsertStringRecords_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.testInsertStringRecordsArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.testInsertStringRecordsResult(); - try - { - result.Success = await _iAsync.testInsertStringRecordsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("testInsertStringRecords", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task deleteData_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.deleteDataArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.deleteDataResult(); - try - { - result.Success = await _iAsync.deleteDataAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("deleteData", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task executeRawDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.executeRawDataQueryArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeRawDataQueryResult(); - try - { - result.Success = await _iAsync.executeRawDataQueryAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQuery", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task executeLastDataQuery_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.executeLastDataQueryArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeLastDataQueryResult(); - try - { - result.Success = await _iAsync.executeLastDataQueryAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQuery", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task requestStatementId_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.requestStatementIdArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.requestStatementIdResult(); - try - { - result.Success = await _iAsync.requestStatementIdAsync(args.SessionId, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("requestStatementId", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task createSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.createSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.createSchemaTemplateResult(); - try - { - result.Success = await _iAsync.createSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("createSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task appendSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.appendSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.appendSchemaTemplateResult(); - try - { - result.Success = await _iAsync.appendSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("appendSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task pruneSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.pruneSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.pruneSchemaTemplateResult(); - try - { - result.Success = await _iAsync.pruneSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("pruneSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task querySchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.querySchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.querySchemaTemplateResult(); - try - { - result.Success = await _iAsync.querySchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("querySchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task setSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.setSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.setSchemaTemplateResult(); - try - { - result.Success = await _iAsync.setSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task unsetSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.unsetSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.unsetSchemaTemplateResult(); - try - { - result.Success = await _iAsync.unsetSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - public async global::System.Threading.Tasks.Task dropSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.dropSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.dropSchemaTemplateResult(); - try - { - result.Success = await _iAsync.dropSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); - } - catch (TTransportException) - { - throw; - } - catch (Exception ex) - { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - - } - - public class InternalStructs - { - - public partial class openSessionArgs : TBase - { - private TSOpenSessionReq _req; - - public TSOpenSessionReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public openSessionArgs() - { - } - - public openSessionArgs DeepCopy() - { - var tmp421 = new openSessionArgs(); - if((Req != null) && __isset.req) - { - tmp421.Req = (TSOpenSessionReq)this.Req.DeepCopy(); - } - tmp421.__isset.req = this.__isset.req; - return tmp421; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSOpenSessionReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("openSession_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is openSessionArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("openSession_args("); - int tmp422 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp422++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class openSessionResult : TBase - { - private TSOpenSessionResp _success; - - public TSOpenSessionResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public openSessionResult() - { - } - - public openSessionResult DeepCopy() - { - var tmp423 = new openSessionResult(); - if((Success != null) && __isset.success) - { - tmp423.Success = (TSOpenSessionResp)this.Success.DeepCopy(); - } - tmp423.__isset.success = this.__isset.success; - return tmp423; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSOpenSessionResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("openSession_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is openSessionResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("openSession_result("); - int tmp424 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp424++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class closeSessionArgs : TBase - { - private TSCloseSessionReq _req; - - public TSCloseSessionReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public closeSessionArgs() - { - } - - public closeSessionArgs DeepCopy() - { - var tmp425 = new closeSessionArgs(); - if((Req != null) && __isset.req) - { - tmp425.Req = (TSCloseSessionReq)this.Req.DeepCopy(); - } - tmp425.__isset.req = this.__isset.req; - return tmp425; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCloseSessionReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("closeSession_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is closeSessionArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("closeSession_args("); - int tmp426 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp426++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class closeSessionResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public closeSessionResult() - { - } - - public closeSessionResult DeepCopy() - { - var tmp427 = new closeSessionResult(); - if((Success != null) && __isset.success) - { - tmp427.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp427.__isset.success = this.__isset.success; - return tmp427; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("closeSession_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is closeSessionResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("closeSession_result("); - int tmp428 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp428++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeStatementArgs : TBase - { - private TSExecuteStatementReq _req; - - public TSExecuteStatementReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public executeStatementArgs() - { - } - - public executeStatementArgs DeepCopy() - { - var tmp429 = new executeStatementArgs(); - if((Req != null) && __isset.req) - { - tmp429.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); - } - tmp429.__isset.req = this.__isset.req; - return tmp429; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSExecuteStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeStatement_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeStatementArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeStatement_args("); - int tmp430 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp430++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeStatementResult : TBase - { - private TSExecuteStatementResp _success; - - public TSExecuteStatementResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public executeStatementResult() - { - } - - public executeStatementResult DeepCopy() - { - var tmp431 = new executeStatementResult(); - if((Success != null) && __isset.success) - { - tmp431.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); - } - tmp431.__isset.success = this.__isset.success; - return tmp431; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSExecuteStatementResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeStatement_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeStatementResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeStatement_result("); - int tmp432 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp432++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeBatchStatementArgs : TBase - { - private TSExecuteBatchStatementReq _req; - - public TSExecuteBatchStatementReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public executeBatchStatementArgs() - { - } - - public executeBatchStatementArgs DeepCopy() - { - var tmp433 = new executeBatchStatementArgs(); - if((Req != null) && __isset.req) - { - tmp433.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); - } - tmp433.__isset.req = this.__isset.req; - return tmp433; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSExecuteBatchStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeBatchStatement_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeBatchStatementArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeBatchStatement_args("); - int tmp434 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp434++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeBatchStatementResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public executeBatchStatementResult() - { - } - - public executeBatchStatementResult DeepCopy() - { - var tmp435 = new executeBatchStatementResult(); - if((Success != null) && __isset.success) - { - tmp435.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp435.__isset.success = this.__isset.success; - return tmp435; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeBatchStatement_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeBatchStatementResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeBatchStatement_result("); - int tmp436 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp436++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeQueryStatementArgs : TBase - { - private TSExecuteStatementReq _req; - - public TSExecuteStatementReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public executeQueryStatementArgs() - { - } - - public executeQueryStatementArgs DeepCopy() - { - var tmp437 = new executeQueryStatementArgs(); - if((Req != null) && __isset.req) - { - tmp437.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); - } - tmp437.__isset.req = this.__isset.req; - return tmp437; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSExecuteStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeQueryStatement_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeQueryStatementArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeQueryStatement_args("); - int tmp438 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp438++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeQueryStatementResult : TBase - { - private TSExecuteStatementResp _success; - - public TSExecuteStatementResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public executeQueryStatementResult() - { - } - - public executeQueryStatementResult DeepCopy() - { - var tmp439 = new executeQueryStatementResult(); - if((Success != null) && __isset.success) - { - tmp439.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); - } - tmp439.__isset.success = this.__isset.success; - return tmp439; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSExecuteStatementResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeQueryStatement_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeQueryStatementResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeQueryStatement_result("); - int tmp440 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp440++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeUpdateStatementArgs : TBase - { - private TSExecuteStatementReq _req; - - public TSExecuteStatementReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public executeUpdateStatementArgs() - { - } - - public executeUpdateStatementArgs DeepCopy() - { - var tmp441 = new executeUpdateStatementArgs(); - if((Req != null) && __isset.req) - { - tmp441.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); - } - tmp441.__isset.req = this.__isset.req; - return tmp441; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSExecuteStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeUpdateStatement_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeUpdateStatementArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeUpdateStatement_args("); - int tmp442 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp442++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeUpdateStatementResult : TBase - { - private TSExecuteStatementResp _success; - - public TSExecuteStatementResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public executeUpdateStatementResult() - { - } - - public executeUpdateStatementResult DeepCopy() - { - var tmp443 = new executeUpdateStatementResult(); - if((Success != null) && __isset.success) - { - tmp443.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); - } - tmp443.__isset.success = this.__isset.success; - return tmp443; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSExecuteStatementResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeUpdateStatement_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeUpdateStatementResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeUpdateStatement_result("); - int tmp444 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp444++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class fetchResultsArgs : TBase - { - private TSFetchResultsReq _req; - - public TSFetchResultsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public fetchResultsArgs() - { - } - - public fetchResultsArgs DeepCopy() - { - var tmp445 = new fetchResultsArgs(); - if((Req != null) && __isset.req) - { - tmp445.Req = (TSFetchResultsReq)this.Req.DeepCopy(); - } - tmp445.__isset.req = this.__isset.req; - return tmp445; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSFetchResultsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("fetchResults_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is fetchResultsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("fetchResults_args("); - int tmp446 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp446++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class fetchResultsResult : TBase - { - private TSFetchResultsResp _success; - - public TSFetchResultsResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public fetchResultsResult() - { - } - - public fetchResultsResult DeepCopy() - { - var tmp447 = new fetchResultsResult(); - if((Success != null) && __isset.success) - { - tmp447.Success = (TSFetchResultsResp)this.Success.DeepCopy(); - } - tmp447.__isset.success = this.__isset.success; - return tmp447; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSFetchResultsResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("fetchResults_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is fetchResultsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("fetchResults_result("); - int tmp448 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp448++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class fetchMetadataArgs : TBase - { - private TSFetchMetadataReq _req; - - public TSFetchMetadataReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public fetchMetadataArgs() - { - } - - public fetchMetadataArgs DeepCopy() - { - var tmp449 = new fetchMetadataArgs(); - if((Req != null) && __isset.req) - { - tmp449.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); - } - tmp449.__isset.req = this.__isset.req; - return tmp449; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSFetchMetadataReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("fetchMetadata_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is fetchMetadataArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("fetchMetadata_args("); - int tmp450 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp450++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class fetchMetadataResult : TBase - { - private TSFetchMetadataResp _success; - - public TSFetchMetadataResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public fetchMetadataResult() - { - } - - public fetchMetadataResult DeepCopy() - { - var tmp451 = new fetchMetadataResult(); - if((Success != null) && __isset.success) - { - tmp451.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); - } - tmp451.__isset.success = this.__isset.success; - return tmp451; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSFetchMetadataResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("fetchMetadata_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is fetchMetadataResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("fetchMetadata_result("); - int tmp452 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp452++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class cancelOperationArgs : TBase - { - private TSCancelOperationReq _req; - - public TSCancelOperationReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public cancelOperationArgs() - { - } - - public cancelOperationArgs DeepCopy() - { - var tmp453 = new cancelOperationArgs(); - if((Req != null) && __isset.req) - { - tmp453.Req = (TSCancelOperationReq)this.Req.DeepCopy(); - } - tmp453.__isset.req = this.__isset.req; - return tmp453; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCancelOperationReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("cancelOperation_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is cancelOperationArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("cancelOperation_args("); - int tmp454 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp454++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class cancelOperationResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public cancelOperationResult() - { - } - - public cancelOperationResult DeepCopy() - { - var tmp455 = new cancelOperationResult(); - if((Success != null) && __isset.success) - { - tmp455.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp455.__isset.success = this.__isset.success; - return tmp455; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("cancelOperation_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is cancelOperationResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("cancelOperation_result("); - int tmp456 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp456++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class closeOperationArgs : TBase - { - private TSCloseOperationReq _req; - - public TSCloseOperationReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public closeOperationArgs() - { - } - - public closeOperationArgs DeepCopy() - { - var tmp457 = new closeOperationArgs(); - if((Req != null) && __isset.req) - { - tmp457.Req = (TSCloseOperationReq)this.Req.DeepCopy(); - } - tmp457.__isset.req = this.__isset.req; - return tmp457; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCloseOperationReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("closeOperation_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is closeOperationArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("closeOperation_args("); - int tmp458 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp458++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class closeOperationResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public closeOperationResult() - { - } - - public closeOperationResult DeepCopy() - { - var tmp459 = new closeOperationResult(); - if((Success != null) && __isset.success) - { - tmp459.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp459.__isset.success = this.__isset.success; - return tmp459; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("closeOperation_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is closeOperationResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("closeOperation_result("); - int tmp460 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp460++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class getTimeZoneArgs : TBase - { - private long _sessionId; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool sessionId; - } - - public getTimeZoneArgs() - { - } - - public getTimeZoneArgs DeepCopy() - { - var tmp461 = new getTimeZoneArgs(); - if(__isset.sessionId) - { - tmp461.SessionId = this.SessionId; - } - tmp461.__isset.sessionId = this.__isset.sessionId; - return tmp461; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("getTimeZone_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if(__isset.sessionId) - { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is getTimeZoneArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("getTimeZone_args("); - int tmp462 = 0; - if(__isset.sessionId) - { - if(0 < tmp462++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class getTimeZoneResult : TBase - { - private TSGetTimeZoneResp _success; - - public TSGetTimeZoneResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public getTimeZoneResult() - { - } - - public getTimeZoneResult DeepCopy() - { - var tmp463 = new getTimeZoneResult(); - if((Success != null) && __isset.success) - { - tmp463.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); - } - tmp463.__isset.success = this.__isset.success; - return tmp463; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSGetTimeZoneResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("getTimeZone_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is getTimeZoneResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("getTimeZone_result("); - int tmp464 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp464++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class setTimeZoneArgs : TBase - { - private TSSetTimeZoneReq _req; - - public TSSetTimeZoneReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public setTimeZoneArgs() - { - } - - public setTimeZoneArgs DeepCopy() - { - var tmp465 = new setTimeZoneArgs(); - if((Req != null) && __isset.req) - { - tmp465.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); - } - tmp465.__isset.req = this.__isset.req; - return tmp465; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSSetTimeZoneReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("setTimeZone_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is setTimeZoneArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("setTimeZone_args("); - int tmp466 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp466++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class setTimeZoneResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public setTimeZoneResult() - { - } - - public setTimeZoneResult DeepCopy() - { - var tmp467 = new setTimeZoneResult(); - if((Success != null) && __isset.success) - { - tmp467.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp467.__isset.success = this.__isset.success; - return tmp467; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("setTimeZone_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is setTimeZoneResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("setTimeZone_result("); - int tmp468 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp468++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class getPropertiesArgs : TBase - { - - public getPropertiesArgs() - { - } - - public getPropertiesArgs DeepCopy() - { - var tmp469 = new getPropertiesArgs(); - return tmp469; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("getProperties_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is getPropertiesArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return true; - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("getProperties_args("); - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class getPropertiesResult : TBase - { - private ServerProperties _success; - - public ServerProperties Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public getPropertiesResult() - { - } - - public getPropertiesResult DeepCopy() - { - var tmp471 = new getPropertiesResult(); - if((Success != null) && __isset.success) - { - tmp471.Success = (ServerProperties)this.Success.DeepCopy(); - } - tmp471.__isset.success = this.__isset.success; - return tmp471; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new ServerProperties(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("getProperties_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is getPropertiesResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("getProperties_result("); - int tmp472 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp472++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class setStorageGroupArgs : TBase - { - private long _sessionId; - private string _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } - - public string StorageGroup - { - get - { - return _storageGroup; - } - set - { - __isset.storageGroup = true; - this._storageGroup = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool sessionId; - public bool storageGroup; - } - - public setStorageGroupArgs() - { - } - - public setStorageGroupArgs DeepCopy() - { - var tmp473 = new setStorageGroupArgs(); - if(__isset.sessionId) - { - tmp473.SessionId = this.SessionId; - } - tmp473.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) - { - tmp473.StorageGroup = this.StorageGroup; - } - tmp473.__isset.storageGroup = this.__isset.storageGroup; - return tmp473; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - StorageGroup = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("setStorageGroup_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if(__isset.sessionId) - { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(StorageGroup, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is setStorageGroupArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) - { - hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("setStorageGroup_args("); - int tmp474 = 0; - if(__isset.sessionId) - { - if(0 < tmp474++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) - { - if(0 < tmp474++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class setStorageGroupResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public setStorageGroupResult() - { - } - - public setStorageGroupResult DeepCopy() - { - var tmp475 = new setStorageGroupResult(); - if((Success != null) && __isset.success) - { - tmp475.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp475.__isset.success = this.__isset.success; - return tmp475; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("setStorageGroup_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is setStorageGroupResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("setStorageGroup_result("); - int tmp476 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp476++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createTimeseriesArgs : TBase - { - private TSCreateTimeseriesReq _req; - - public TSCreateTimeseriesReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public createTimeseriesArgs() - { - } - - public createTimeseriesArgs DeepCopy() - { - var tmp477 = new createTimeseriesArgs(); - if((Req != null) && __isset.req) - { - tmp477.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); - } - tmp477.__isset.req = this.__isset.req; - return tmp477; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCreateTimeseriesReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createTimeseries_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createTimeseriesArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createTimeseries_args("); - int tmp478 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp478++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createTimeseriesResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public createTimeseriesResult() - { - } - - public createTimeseriesResult DeepCopy() - { - var tmp479 = new createTimeseriesResult(); - if((Success != null) && __isset.success) - { - tmp479.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp479.__isset.success = this.__isset.success; - return tmp479; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createTimeseries_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createTimeseriesResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createTimeseries_result("); - int tmp480 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp480++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createAlignedTimeseriesArgs : TBase - { - private TSCreateAlignedTimeseriesReq _req; - - public TSCreateAlignedTimeseriesReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public createAlignedTimeseriesArgs() - { - } - - public createAlignedTimeseriesArgs DeepCopy() - { - var tmp481 = new createAlignedTimeseriesArgs(); - if((Req != null) && __isset.req) - { - tmp481.Req = (TSCreateAlignedTimeseriesReq)this.Req.DeepCopy(); - } - tmp481.__isset.req = this.__isset.req; - return tmp481; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCreateAlignedTimeseriesReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createAlignedTimeseries_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createAlignedTimeseriesArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createAlignedTimeseries_args("); - int tmp482 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp482++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createAlignedTimeseriesResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public createAlignedTimeseriesResult() - { - } - - public createAlignedTimeseriesResult DeepCopy() - { - var tmp483 = new createAlignedTimeseriesResult(); - if((Success != null) && __isset.success) - { - tmp483.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp483.__isset.success = this.__isset.success; - return tmp483; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createAlignedTimeseries_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createAlignedTimeseriesResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createAlignedTimeseries_result("); - int tmp484 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp484++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createMultiTimeseriesArgs : TBase - { - private TSCreateMultiTimeseriesReq _req; - - public TSCreateMultiTimeseriesReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public createMultiTimeseriesArgs() - { - } - - public createMultiTimeseriesArgs DeepCopy() - { - var tmp485 = new createMultiTimeseriesArgs(); - if((Req != null) && __isset.req) - { - tmp485.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); - } - tmp485.__isset.req = this.__isset.req; - return tmp485; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCreateMultiTimeseriesReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createMultiTimeseries_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createMultiTimeseriesArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createMultiTimeseries_args("); - int tmp486 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp486++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createMultiTimeseriesResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public createMultiTimeseriesResult() - { - } - - public createMultiTimeseriesResult DeepCopy() - { - var tmp487 = new createMultiTimeseriesResult(); - if((Success != null) && __isset.success) - { - tmp487.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp487.__isset.success = this.__isset.success; - return tmp487; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createMultiTimeseries_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createMultiTimeseriesResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createMultiTimeseries_result("); - int tmp488 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp488++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class deleteTimeseriesArgs : TBase - { - private long _sessionId; - private List _path; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } - - public List Path - { - get - { - return _path; - } - set - { - __isset.path = true; - this._path = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool sessionId; - public bool path; - } - - public deleteTimeseriesArgs() - { - } - - public deleteTimeseriesArgs DeepCopy() - { - var tmp489 = new deleteTimeseriesArgs(); - if(__isset.sessionId) - { - tmp489.SessionId = this.SessionId; - } - tmp489.__isset.sessionId = this.__isset.sessionId; - if((Path != null) && __isset.path) - { - tmp489.Path = this.Path.DeepCopy(); - } - tmp489.__isset.path = this.__isset.path; - return tmp489; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list490 = await iprot.ReadListBeginAsync(cancellationToken); - Path = new List(_list490.Count); - for(int _i491 = 0; _i491 < _list490.Count; ++_i491) - { - string _elem492; - _elem492 = await iprot.ReadStringAsync(cancellationToken); - Path.Add(_elem492); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("deleteTimeseries_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if(__isset.sessionId) - { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Path != null) && __isset.path) - { - field.Name = "path"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); - foreach (string _iter493 in Path) - { - await oprot.WriteStringAsync(_iter493, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is deleteTimeseriesArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((Path != null) && __isset.path) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("deleteTimeseries_args("); - int tmp494 = 0; - if(__isset.sessionId) - { - if(0 < tmp494++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((Path != null) && __isset.path) - { - if(0 < tmp494++) { sb.Append(", "); } - sb.Append("Path: "); - Path.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class deleteTimeseriesResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public deleteTimeseriesResult() - { - } - - public deleteTimeseriesResult DeepCopy() - { - var tmp495 = new deleteTimeseriesResult(); - if((Success != null) && __isset.success) - { - tmp495.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp495.__isset.success = this.__isset.success; - return tmp495; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("deleteTimeseries_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is deleteTimeseriesResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("deleteTimeseries_result("); - int tmp496 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp496++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class deleteStorageGroupsArgs : TBase - { - private long _sessionId; - private List _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } - - public List StorageGroup - { - get - { - return _storageGroup; - } - set - { - __isset.storageGroup = true; - this._storageGroup = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool sessionId; - public bool storageGroup; - } - - public deleteStorageGroupsArgs() - { - } - - public deleteStorageGroupsArgs DeepCopy() - { - var tmp497 = new deleteStorageGroupsArgs(); - if(__isset.sessionId) - { - tmp497.SessionId = this.SessionId; - } - tmp497.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) - { - tmp497.StorageGroup = this.StorageGroup.DeepCopy(); - } - tmp497.__isset.storageGroup = this.__isset.storageGroup; - return tmp497; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list498 = await iprot.ReadListBeginAsync(cancellationToken); - StorageGroup = new List(_list498.Count); - for(int _i499 = 0; _i499 < _list498.Count; ++_i499) - { - string _elem500; - _elem500 = await iprot.ReadStringAsync(cancellationToken); - StorageGroup.Add(_elem500); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("deleteStorageGroups_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if(__isset.sessionId) - { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); - foreach (string _iter501 in StorageGroup) - { - await oprot.WriteStringAsync(_iter501, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is deleteStorageGroupsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("deleteStorageGroups_args("); - int tmp502 = 0; - if(__isset.sessionId) - { - if(0 < tmp502++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) - { - if(0 < tmp502++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class deleteStorageGroupsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public deleteStorageGroupsResult() - { - } - - public deleteStorageGroupsResult DeepCopy() - { - var tmp503 = new deleteStorageGroupsResult(); - if((Success != null) && __isset.success) - { - tmp503.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp503.__isset.success = this.__isset.success; - return tmp503; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("deleteStorageGroups_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is deleteStorageGroupsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("deleteStorageGroups_result("); - int tmp504 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp504++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertRecordArgs : TBase - { - private TSInsertRecordReq _req; - - public TSInsertRecordReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertRecordArgs() - { - } - - public insertRecordArgs DeepCopy() - { - var tmp505 = new insertRecordArgs(); - if((Req != null) && __isset.req) - { - tmp505.Req = (TSInsertRecordReq)this.Req.DeepCopy(); - } - tmp505.__isset.req = this.__isset.req; - return tmp505; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertRecordReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertRecord_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertRecordArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertRecord_args("); - int tmp506 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp506++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertRecordResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertRecordResult() - { - } - - public insertRecordResult DeepCopy() - { - var tmp507 = new insertRecordResult(); - if((Success != null) && __isset.success) - { - tmp507.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp507.__isset.success = this.__isset.success; - return tmp507; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertRecord_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertRecordResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertRecord_result("); - int tmp508 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp508++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertStringRecordArgs : TBase - { - private TSInsertStringRecordReq _req; - - public TSInsertStringRecordReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertStringRecordArgs() - { - } - - public insertStringRecordArgs DeepCopy() - { - var tmp509 = new insertStringRecordArgs(); - if((Req != null) && __isset.req) - { - tmp509.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); - } - tmp509.__isset.req = this.__isset.req; - return tmp509; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertStringRecordReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertStringRecord_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertStringRecordArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertStringRecord_args("); - int tmp510 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp510++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertStringRecordResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertStringRecordResult() - { - } - - public insertStringRecordResult DeepCopy() - { - var tmp511 = new insertStringRecordResult(); - if((Success != null) && __isset.success) - { - tmp511.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp511.__isset.success = this.__isset.success; - return tmp511; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertStringRecord_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertStringRecordResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertStringRecord_result("); - int tmp512 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp512++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertTabletArgs : TBase - { - private TSInsertTabletReq _req; - - public TSInsertTabletReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertTabletArgs() - { - } - - public insertTabletArgs DeepCopy() - { - var tmp513 = new insertTabletArgs(); - if((Req != null) && __isset.req) - { - tmp513.Req = (TSInsertTabletReq)this.Req.DeepCopy(); - } - tmp513.__isset.req = this.__isset.req; - return tmp513; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertTabletReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertTablet_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertTabletArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertTablet_args("); - int tmp514 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp514++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertTabletResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertTabletResult() - { - } - - public insertTabletResult DeepCopy() - { - var tmp515 = new insertTabletResult(); - if((Success != null) && __isset.success) - { - tmp515.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp515.__isset.success = this.__isset.success; - return tmp515; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertTablet_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertTabletResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertTablet_result("); - int tmp516 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp516++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertTabletsArgs : TBase - { - private TSInsertTabletsReq _req; - - public TSInsertTabletsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertTabletsArgs() - { - } - - public insertTabletsArgs DeepCopy() - { - var tmp517 = new insertTabletsArgs(); - if((Req != null) && __isset.req) - { - tmp517.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); - } - tmp517.__isset.req = this.__isset.req; - return tmp517; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertTabletsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertTablets_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertTabletsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertTablets_args("); - int tmp518 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp518++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertTabletsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertTabletsResult() - { - } - - public insertTabletsResult DeepCopy() - { - var tmp519 = new insertTabletsResult(); - if((Success != null) && __isset.success) - { - tmp519.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp519.__isset.success = this.__isset.success; - return tmp519; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertTablets_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertTabletsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertTablets_result("); - int tmp520 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp520++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertRecordsArgs : TBase - { - private TSInsertRecordsReq _req; - - public TSInsertRecordsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertRecordsArgs() - { - } - - public insertRecordsArgs DeepCopy() - { - var tmp521 = new insertRecordsArgs(); - if((Req != null) && __isset.req) - { - tmp521.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); - } - tmp521.__isset.req = this.__isset.req; - return tmp521; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertRecordsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertRecords_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertRecordsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertRecords_args("); - int tmp522 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp522++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertRecordsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertRecordsResult() - { - } - - public insertRecordsResult DeepCopy() - { - var tmp523 = new insertRecordsResult(); - if((Success != null) && __isset.success) - { - tmp523.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp523.__isset.success = this.__isset.success; - return tmp523; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertRecords_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertRecordsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertRecords_result("); - int tmp524 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp524++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertRecordsOfOneDeviceArgs : TBase - { - private TSInsertRecordsOfOneDeviceReq _req; - - public TSInsertRecordsOfOneDeviceReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertRecordsOfOneDeviceArgs() - { - } - - public insertRecordsOfOneDeviceArgs DeepCopy() - { - var tmp525 = new insertRecordsOfOneDeviceArgs(); - if((Req != null) && __isset.req) - { - tmp525.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); - } - tmp525.__isset.req = this.__isset.req; - return tmp525; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertRecordsOfOneDeviceReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertRecordsOfOneDevice_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertRecordsOfOneDeviceArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertRecordsOfOneDevice_args("); - int tmp526 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp526++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertRecordsOfOneDeviceResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertRecordsOfOneDeviceResult() - { - } - - public insertRecordsOfOneDeviceResult DeepCopy() - { - var tmp527 = new insertRecordsOfOneDeviceResult(); - if((Success != null) && __isset.success) - { - tmp527.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp527.__isset.success = this.__isset.success; - return tmp527; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertRecordsOfOneDevice_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertRecordsOfOneDeviceResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertRecordsOfOneDevice_result("); - int tmp528 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp528++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertStringRecordsOfOneDeviceArgs : TBase - { - private TSInsertStringRecordsOfOneDeviceReq _req; - - public TSInsertStringRecordsOfOneDeviceReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertStringRecordsOfOneDeviceArgs() - { - } - - public insertStringRecordsOfOneDeviceArgs DeepCopy() - { - var tmp529 = new insertStringRecordsOfOneDeviceArgs(); - if((Req != null) && __isset.req) - { - tmp529.Req = (TSInsertStringRecordsOfOneDeviceReq)this.Req.DeepCopy(); - } - tmp529.__isset.req = this.__isset.req; - return tmp529; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertStringRecordsOfOneDeviceReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertStringRecordsOfOneDevice_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertStringRecordsOfOneDeviceArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertStringRecordsOfOneDevice_args("); - int tmp530 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp530++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertStringRecordsOfOneDeviceResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertStringRecordsOfOneDeviceResult() - { - } - - public insertStringRecordsOfOneDeviceResult DeepCopy() - { - var tmp531 = new insertStringRecordsOfOneDeviceResult(); - if((Success != null) && __isset.success) - { - tmp531.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp531.__isset.success = this.__isset.success; - return tmp531; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertStringRecordsOfOneDevice_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertStringRecordsOfOneDeviceResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertStringRecordsOfOneDevice_result("); - int tmp532 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp532++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertStringRecordsArgs : TBase - { - private TSInsertStringRecordsReq _req; - - public TSInsertStringRecordsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public insertStringRecordsArgs() - { - } - - public insertStringRecordsArgs DeepCopy() - { - var tmp533 = new insertStringRecordsArgs(); - if((Req != null) && __isset.req) - { - tmp533.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); - } - tmp533.__isset.req = this.__isset.req; - return tmp533; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertStringRecordsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertStringRecords_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertStringRecordsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertStringRecords_args("); - int tmp534 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp534++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class insertStringRecordsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public insertStringRecordsResult() - { - } - - public insertStringRecordsResult DeepCopy() - { - var tmp535 = new insertStringRecordsResult(); - if((Success != null) && __isset.success) - { - tmp535.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp535.__isset.success = this.__isset.success; - return tmp535; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("insertStringRecords_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is insertStringRecordsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("insertStringRecords_result("); - int tmp536 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp536++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertTabletArgs : TBase - { - private TSInsertTabletReq _req; - - public TSInsertTabletReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertTabletArgs() - { - } - - public testInsertTabletArgs DeepCopy() - { - var tmp537 = new testInsertTabletArgs(); - if((Req != null) && __isset.req) - { - tmp537.Req = (TSInsertTabletReq)this.Req.DeepCopy(); - } - tmp537.__isset.req = this.__isset.req; - return tmp537; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertTabletReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertTablet_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertTabletArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertTablet_args("); - int tmp538 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp538++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertTabletResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertTabletResult() - { - } - - public testInsertTabletResult DeepCopy() - { - var tmp539 = new testInsertTabletResult(); - if((Success != null) && __isset.success) - { - tmp539.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp539.__isset.success = this.__isset.success; - return tmp539; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertTablet_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertTabletResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertTablet_result("); - int tmp540 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp540++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertTabletsArgs : TBase - { - private TSInsertTabletsReq _req; - - public TSInsertTabletsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertTabletsArgs() - { - } - - public testInsertTabletsArgs DeepCopy() - { - var tmp541 = new testInsertTabletsArgs(); - if((Req != null) && __isset.req) - { - tmp541.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); - } - tmp541.__isset.req = this.__isset.req; - return tmp541; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertTabletsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertTablets_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertTabletsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertTablets_args("); - int tmp542 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp542++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertTabletsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertTabletsResult() - { - } - - public testInsertTabletsResult DeepCopy() - { - var tmp543 = new testInsertTabletsResult(); - if((Success != null) && __isset.success) - { - tmp543.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp543.__isset.success = this.__isset.success; - return tmp543; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertTablets_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertTabletsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertTablets_result("); - int tmp544 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp544++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertRecordArgs : TBase - { - private TSInsertRecordReq _req; - - public TSInsertRecordReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertRecordArgs() - { - } - - public testInsertRecordArgs DeepCopy() - { - var tmp545 = new testInsertRecordArgs(); - if((Req != null) && __isset.req) - { - tmp545.Req = (TSInsertRecordReq)this.Req.DeepCopy(); - } - tmp545.__isset.req = this.__isset.req; - return tmp545; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertRecordReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertRecord_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertRecordArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertRecord_args("); - int tmp546 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp546++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertRecordResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertRecordResult() - { - } - - public testInsertRecordResult DeepCopy() - { - var tmp547 = new testInsertRecordResult(); - if((Success != null) && __isset.success) - { - tmp547.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp547.__isset.success = this.__isset.success; - return tmp547; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertRecord_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertRecordResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertRecord_result("); - int tmp548 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp548++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertStringRecordArgs : TBase - { - private TSInsertStringRecordReq _req; - - public TSInsertStringRecordReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertStringRecordArgs() - { - } - - public testInsertStringRecordArgs DeepCopy() - { - var tmp549 = new testInsertStringRecordArgs(); - if((Req != null) && __isset.req) - { - tmp549.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); - } - tmp549.__isset.req = this.__isset.req; - return tmp549; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertStringRecordReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertStringRecord_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertStringRecordArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertStringRecord_args("); - int tmp550 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp550++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertStringRecordResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertStringRecordResult() - { - } - - public testInsertStringRecordResult DeepCopy() - { - var tmp551 = new testInsertStringRecordResult(); - if((Success != null) && __isset.success) - { - tmp551.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp551.__isset.success = this.__isset.success; - return tmp551; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertStringRecord_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertStringRecordResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertStringRecord_result("); - int tmp552 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp552++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertRecordsArgs : TBase - { - private TSInsertRecordsReq _req; - - public TSInsertRecordsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertRecordsArgs() - { - } - - public testInsertRecordsArgs DeepCopy() - { - var tmp553 = new testInsertRecordsArgs(); - if((Req != null) && __isset.req) - { - tmp553.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); - } - tmp553.__isset.req = this.__isset.req; - return tmp553; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertRecordsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertRecords_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertRecordsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertRecords_args("); - int tmp554 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp554++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertRecordsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertRecordsResult() - { - } - - public testInsertRecordsResult DeepCopy() - { - var tmp555 = new testInsertRecordsResult(); - if((Success != null) && __isset.success) - { - tmp555.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp555.__isset.success = this.__isset.success; - return tmp555; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertRecords_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertRecordsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertRecords_result("); - int tmp556 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp556++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertRecordsOfOneDeviceArgs : TBase - { - private TSInsertRecordsOfOneDeviceReq _req; - - public TSInsertRecordsOfOneDeviceReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertRecordsOfOneDeviceArgs() - { - } - - public testInsertRecordsOfOneDeviceArgs DeepCopy() - { - var tmp557 = new testInsertRecordsOfOneDeviceArgs(); - if((Req != null) && __isset.req) - { - tmp557.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); - } - tmp557.__isset.req = this.__isset.req; - return tmp557; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertRecordsOfOneDeviceReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertRecordsOfOneDevice_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); - int tmp558 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp558++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertRecordsOfOneDeviceResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertRecordsOfOneDeviceResult() - { - } - - public testInsertRecordsOfOneDeviceResult DeepCopy() - { - var tmp559 = new testInsertRecordsOfOneDeviceResult(); - if((Success != null) && __isset.success) - { - tmp559.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp559.__isset.success = this.__isset.success; - return tmp559; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertRecordsOfOneDevice_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); - int tmp560 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp560++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertStringRecordsArgs : TBase - { - private TSInsertStringRecordsReq _req; - - public TSInsertStringRecordsReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public testInsertStringRecordsArgs() - { - } - - public testInsertStringRecordsArgs DeepCopy() - { - var tmp561 = new testInsertStringRecordsArgs(); - if((Req != null) && __isset.req) - { - tmp561.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); - } - tmp561.__isset.req = this.__isset.req; - return tmp561; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSInsertStringRecordsReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertStringRecords_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertStringRecordsArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertStringRecords_args("); - int tmp562 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp562++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class testInsertStringRecordsResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public testInsertStringRecordsResult() - { - } - - public testInsertStringRecordsResult DeepCopy() - { - var tmp563 = new testInsertStringRecordsResult(); - if((Success != null) && __isset.success) - { - tmp563.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp563.__isset.success = this.__isset.success; - return tmp563; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("testInsertStringRecords_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is testInsertStringRecordsResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("testInsertStringRecords_result("); - int tmp564 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp564++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class deleteDataArgs : TBase - { - private TSDeleteDataReq _req; - - public TSDeleteDataReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public deleteDataArgs() - { - } - - public deleteDataArgs DeepCopy() - { - var tmp565 = new deleteDataArgs(); - if((Req != null) && __isset.req) - { - tmp565.Req = (TSDeleteDataReq)this.Req.DeepCopy(); - } - tmp565.__isset.req = this.__isset.req; - return tmp565; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSDeleteDataReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("deleteData_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is deleteDataArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("deleteData_args("); - int tmp566 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp566++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class deleteDataResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public deleteDataResult() - { - } - - public deleteDataResult DeepCopy() - { - var tmp567 = new deleteDataResult(); - if((Success != null) && __isset.success) - { - tmp567.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp567.__isset.success = this.__isset.success; - return tmp567; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("deleteData_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is deleteDataResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("deleteData_result("); - int tmp568 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp568++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeRawDataQueryArgs : TBase - { - private TSRawDataQueryReq _req; - - public TSRawDataQueryReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public executeRawDataQueryArgs() - { - } - - public executeRawDataQueryArgs DeepCopy() - { - var tmp569 = new executeRawDataQueryArgs(); - if((Req != null) && __isset.req) - { - tmp569.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); - } - tmp569.__isset.req = this.__isset.req; - return tmp569; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSRawDataQueryReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeRawDataQuery_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeRawDataQueryArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeRawDataQuery_args("); - int tmp570 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp570++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeRawDataQueryResult : TBase - { - private TSExecuteStatementResp _success; - - public TSExecuteStatementResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public executeRawDataQueryResult() - { - } - - public executeRawDataQueryResult DeepCopy() - { - var tmp571 = new executeRawDataQueryResult(); - if((Success != null) && __isset.success) - { - tmp571.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); - } - tmp571.__isset.success = this.__isset.success; - return tmp571; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSExecuteStatementResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeRawDataQuery_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeRawDataQueryResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeRawDataQuery_result("); - int tmp572 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp572++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeLastDataQueryArgs : TBase - { - private TSLastDataQueryReq _req; - - public TSLastDataQueryReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public executeLastDataQueryArgs() - { - } - - public executeLastDataQueryArgs DeepCopy() - { - var tmp573 = new executeLastDataQueryArgs(); - if((Req != null) && __isset.req) - { - tmp573.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); - } - tmp573.__isset.req = this.__isset.req; - return tmp573; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSLastDataQueryReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeLastDataQuery_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeLastDataQueryArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeLastDataQuery_args("); - int tmp574 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp574++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class executeLastDataQueryResult : TBase - { - private TSExecuteStatementResp _success; - - public TSExecuteStatementResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public executeLastDataQueryResult() - { - } - - public executeLastDataQueryResult DeepCopy() - { - var tmp575 = new executeLastDataQueryResult(); - if((Success != null) && __isset.success) - { - tmp575.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); - } - tmp575.__isset.success = this.__isset.success; - return tmp575; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSExecuteStatementResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("executeLastDataQuery_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is executeLastDataQueryResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("executeLastDataQuery_result("); - int tmp576 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp576++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class requestStatementIdArgs : TBase - { - private long _sessionId; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool sessionId; - } - - public requestStatementIdArgs() - { - } - - public requestStatementIdArgs DeepCopy() - { - var tmp577 = new requestStatementIdArgs(); - if(__isset.sessionId) - { - tmp577.SessionId = this.SessionId; - } - tmp577.__isset.sessionId = this.__isset.sessionId; - return tmp577; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("requestStatementId_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if(__isset.sessionId) - { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is requestStatementIdArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("requestStatementId_args("); - int tmp578 = 0; - if(__isset.sessionId) - { - if(0 < tmp578++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class requestStatementIdResult : TBase - { - private long _success; - - public long Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public requestStatementIdResult() - { - } - - public requestStatementIdResult DeepCopy() - { - var tmp579 = new requestStatementIdResult(); - if(__isset.success) - { - tmp579.Success = this.Success; - } - tmp579.__isset.success = this.__isset.success; - return tmp579; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.I64) - { - Success = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("requestStatementId_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - field.Name = "Success"; - field.Type = TType.I64; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Success, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is requestStatementIdResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if(__isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("requestStatementId_result("); - int tmp580 = 0; - if(__isset.success) - { - if(0 < tmp580++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createSchemaTemplateArgs : TBase - { - private TSCreateSchemaTemplateReq _req; - - public TSCreateSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public createSchemaTemplateArgs() - { - } - - public createSchemaTemplateArgs DeepCopy() - { - var tmp581 = new createSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp581.Req = (TSCreateSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp581.__isset.req = this.__isset.req; - return tmp581; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSCreateSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createSchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createSchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createSchemaTemplate_args("); - int tmp582 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp582++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class createSchemaTemplateResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public createSchemaTemplateResult() - { - } - - public createSchemaTemplateResult DeepCopy() - { - var tmp583 = new createSchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp583.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp583.__isset.success = this.__isset.success; - return tmp583; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("createSchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is createSchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("createSchemaTemplate_result("); - int tmp584 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp584++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class appendSchemaTemplateArgs : TBase - { - private TSAppendSchemaTemplateReq _req; - - public TSAppendSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public appendSchemaTemplateArgs() - { - } - - public appendSchemaTemplateArgs DeepCopy() - { - var tmp585 = new appendSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp585.Req = (TSAppendSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp585.__isset.req = this.__isset.req; - return tmp585; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSAppendSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("appendSchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is appendSchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("appendSchemaTemplate_args("); - int tmp586 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp586++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class appendSchemaTemplateResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public appendSchemaTemplateResult() - { - } - - public appendSchemaTemplateResult DeepCopy() - { - var tmp587 = new appendSchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp587.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp587.__isset.success = this.__isset.success; - return tmp587; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("appendSchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is appendSchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("appendSchemaTemplate_result("); - int tmp588 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp588++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class pruneSchemaTemplateArgs : TBase - { - private TSPruneSchemaTemplateReq _req; - - public TSPruneSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public pruneSchemaTemplateArgs() - { - } - - public pruneSchemaTemplateArgs DeepCopy() - { - var tmp589 = new pruneSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp589.Req = (TSPruneSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp589.__isset.req = this.__isset.req; - return tmp589; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSPruneSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("pruneSchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is pruneSchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("pruneSchemaTemplate_args("); - int tmp590 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp590++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class pruneSchemaTemplateResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public pruneSchemaTemplateResult() - { - } - - public pruneSchemaTemplateResult DeepCopy() - { - var tmp591 = new pruneSchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp591.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp591.__isset.success = this.__isset.success; - return tmp591; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("pruneSchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is pruneSchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("pruneSchemaTemplate_result("); - int tmp592 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp592++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class querySchemaTemplateArgs : TBase - { - private TSQueryTemplateReq _req; - - public TSQueryTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public querySchemaTemplateArgs() - { - } - - public querySchemaTemplateArgs DeepCopy() - { - var tmp593 = new querySchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp593.Req = (TSQueryTemplateReq)this.Req.DeepCopy(); - } - tmp593.__isset.req = this.__isset.req; - return tmp593; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSQueryTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("querySchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is querySchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("querySchemaTemplate_args("); - int tmp594 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp594++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class querySchemaTemplateResult : TBase - { - private TSQueryTemplateResp _success; - - public TSQueryTemplateResp Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public querySchemaTemplateResult() - { - } - - public querySchemaTemplateResult DeepCopy() - { - var tmp595 = new querySchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp595.Success = (TSQueryTemplateResp)this.Success.DeepCopy(); - } - tmp595.__isset.success = this.__isset.success; - return tmp595; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSQueryTemplateResp(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("querySchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is querySchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("querySchemaTemplate_result("); - int tmp596 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp596++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class setSchemaTemplateArgs : TBase - { - private TSSetSchemaTemplateReq _req; - - public TSSetSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public setSchemaTemplateArgs() - { - } - - public setSchemaTemplateArgs DeepCopy() - { - var tmp597 = new setSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp597.Req = (TSSetSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp597.__isset.req = this.__isset.req; - return tmp597; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSSetSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("setSchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is setSchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("setSchemaTemplate_args("); - int tmp598 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp598++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class setSchemaTemplateResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public setSchemaTemplateResult() - { - } - - public setSchemaTemplateResult DeepCopy() - { - var tmp599 = new setSchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp599.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp599.__isset.success = this.__isset.success; - return tmp599; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("setSchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is setSchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("setSchemaTemplate_result("); - int tmp600 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp600++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class unsetSchemaTemplateArgs : TBase - { - private TSUnsetSchemaTemplateReq _req; - - public TSUnsetSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public unsetSchemaTemplateArgs() - { - } - - public unsetSchemaTemplateArgs DeepCopy() - { - var tmp601 = new unsetSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp601.Req = (TSUnsetSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp601.__isset.req = this.__isset.req; - return tmp601; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSUnsetSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("unsetSchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is unsetSchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("unsetSchemaTemplate_args("); - int tmp602 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp602++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class unsetSchemaTemplateResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public unsetSchemaTemplateResult() - { - } - - public unsetSchemaTemplateResult DeepCopy() - { - var tmp603 = new unsetSchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp603.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp603.__isset.success = this.__isset.success; - return tmp603; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("unsetSchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is unsetSchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("unsetSchemaTemplate_result("); - int tmp604 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp604++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class dropSchemaTemplateArgs : TBase - { - private TSDropSchemaTemplateReq _req; - - public TSDropSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public dropSchemaTemplateArgs() - { - } - - public dropSchemaTemplateArgs DeepCopy() - { - var tmp605 = new dropSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp605.Req = (TSDropSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp605.__isset.req = this.__isset.req; - return tmp605; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSDropSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("dropSchemaTemplate_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is dropSchemaTemplateArgs other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("dropSchemaTemplate_args("); - int tmp606 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp606++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - - public partial class dropSchemaTemplateResult : TBase - { - private TSStatus _success; - - public TSStatus Success - { - get - { - return _success; - } - set - { - __isset.success = true; - this._success = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool success; - } - - public dropSchemaTemplateResult() - { - } - - public dropSchemaTemplateResult DeepCopy() - { - var tmp607 = new dropSchemaTemplateResult(); - if((Success != null) && __isset.success) - { - tmp607.Success = (TSStatus)this.Success.DeepCopy(); - } - tmp607.__isset.success = this.__isset.success; - return tmp607; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 0: - if (field.Type == TType.Struct) - { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("dropSchemaTemplate_result"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - - if(this.__isset.success) - { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is dropSchemaTemplateResult other)) return false; - if (ReferenceEquals(this, other)) return true; - return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Success != null) && __isset.success) - { - hashcode = (hashcode * 397) + Success.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("dropSchemaTemplate_result("); - int tmp608 = 0; - if((Success != null) && __isset.success) - { - if(0 < tmp608++) { sb.Append(", "); } - sb.Append("Success: "); - Success.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } - } - - } - -} diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs deleted file mode 100644 index ebd4a21..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordReq.cs +++ /dev/null @@ -1,377 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertRecordReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public List Measurements { get; set; } - - public byte[] Values { get; set; } - - public long Timestamp { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertRecordReq() - { - } - - public TSInsertRecordReq(long sessionId, string prefixPath, List measurements, byte[] values, long timestamp) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.Measurements = measurements; - this.Values = values; - this.Timestamp = timestamp; - } - - public TSInsertRecordReq DeepCopy() - { - var tmp107 = new TSInsertRecordReq(); - tmp107.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp107.PrefixPath = this.PrefixPath; - } - if((Measurements != null)) - { - tmp107.Measurements = this.Measurements.DeepCopy(); - } - if((Values != null)) - { - tmp107.Values = this.Values.ToArray(); - } - tmp107.Timestamp = this.Timestamp; - if(__isset.isAligned) - { - tmp107.IsAligned = this.IsAligned; - } - tmp107.__isset.isAligned = this.__isset.isAligned; - return tmp107; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_measurements = false; - bool isset_values = false; - bool isset_timestamp = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list108 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list108.Count); - for(int _i109 = 0; _i109 < _list108.Count; ++_i109) - { - string _elem110; - _elem110 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem110); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurements = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.String) - { - Values = await iprot.ReadBinaryAsync(cancellationToken); - isset_values = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I64) - { - Timestamp = await iprot.ReadI64Async(cancellationToken); - isset_timestamp = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurements) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_values) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamp) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertRecordReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Measurements != null)) - { - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter111 in Measurements) - { - await oprot.WriteStringAsync(_iter111, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Values != null)) - { - field.Name = "values"; - field.Type = TType.String; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBinaryAsync(Values, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "timestamp"; - field.Type = TType.I64; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Timestamp, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertRecordReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && TCollections.Equals(Measurements, other.Measurements) - && TCollections.Equals(Values, other.Values) - && System.Object.Equals(Timestamp, other.Timestamp) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((Measurements != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); - } - if((Values != null)) - { - hashcode = (hashcode * 397) + Values.GetHashCode(); - } - hashcode = (hashcode * 397) + Timestamp.GetHashCode(); - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertRecordReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((Measurements != null)) - { - sb.Append(", Measurements: "); - Measurements.ToString(sb); - } - if((Values != null)) - { - sb.Append(", Values: "); - Values.ToString(sb); - } - sb.Append(", Timestamp: "); - Timestamp.ToString(sb); - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs deleted file mode 100644 index 5117ce8..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsOfOneDeviceReq.cs +++ /dev/null @@ -1,440 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertRecordsOfOneDeviceReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public List> MeasurementsList { get; set; } - - public List ValuesList { get; set; } - - public List Timestamps { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertRecordsOfOneDeviceReq() - { - } - - public TSInsertRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List valuesList, List timestamps) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.MeasurementsList = measurementsList; - this.ValuesList = valuesList; - this.Timestamps = timestamps; - } - - public TSInsertRecordsOfOneDeviceReq DeepCopy() - { - var tmp189 = new TSInsertRecordsOfOneDeviceReq(); - tmp189.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp189.PrefixPath = this.PrefixPath; - } - if((MeasurementsList != null)) - { - tmp189.MeasurementsList = this.MeasurementsList.DeepCopy(); - } - if((ValuesList != null)) - { - tmp189.ValuesList = this.ValuesList.DeepCopy(); - } - if((Timestamps != null)) - { - tmp189.Timestamps = this.Timestamps.DeepCopy(); - } - if(__isset.isAligned) - { - tmp189.IsAligned = this.IsAligned; - } - tmp189.__isset.isAligned = this.__isset.isAligned; - return tmp189; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_measurementsList = false; - bool isset_valuesList = false; - bool isset_timestamps = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list190 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list190.Count); - for(int _i191 = 0; _i191 < _list190.Count; ++_i191) - { - List _elem192; - { - TList _list193 = await iprot.ReadListBeginAsync(cancellationToken); - _elem192 = new List(_list193.Count); - for(int _i194 = 0; _i194 < _list193.Count; ++_i194) - { - string _elem195; - _elem195 = await iprot.ReadStringAsync(cancellationToken); - _elem192.Add(_elem195); - } - await iprot.ReadListEndAsync(cancellationToken); - } - MeasurementsList.Add(_elem192); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurementsList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list196 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list196.Count); - for(int _i197 = 0; _i197 < _list196.Count; ++_i197) - { - byte[] _elem198; - _elem198 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem198); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valuesList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list199 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list199.Count); - for(int _i200 = 0; _i200 < _list199.Count; ++_i200) - { - long _elem201; - _elem201 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem201); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_timestamps = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurementsList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valuesList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamps) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertRecordsOfOneDeviceReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementsList != null)) - { - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter202 in MeasurementsList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter202.Count), cancellationToken); - foreach (string _iter203 in _iter202) - { - await oprot.WriteStringAsync(_iter203, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValuesList != null)) - { - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter204 in ValuesList) - { - await oprot.WriteBinaryAsync(_iter204, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Timestamps != null)) - { - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter205 in Timestamps) - { - await oprot.WriteI64Async(_iter205, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertRecordsOfOneDeviceReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && TCollections.Equals(MeasurementsList, other.MeasurementsList) - && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((MeasurementsList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); - } - if((ValuesList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); - } - if((Timestamps != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); - } - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertRecordsOfOneDeviceReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((MeasurementsList != null)) - { - sb.Append(", MeasurementsList: "); - MeasurementsList.ToString(sb); - } - if((ValuesList != null)) - { - sb.Append(", ValuesList: "); - ValuesList.ToString(sb); - } - if((Timestamps != null)) - { - sb.Append(", Timestamps: "); - Timestamps.ToString(sb); - } - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs deleted file mode 100644 index 6d1fc41..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertRecordsReq.cs +++ /dev/null @@ -1,457 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertRecordsReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public List PrefixPaths { get; set; } - - public List> MeasurementsList { get; set; } - - public List ValuesList { get; set; } - - public List Timestamps { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertRecordsReq() - { - } - - public TSInsertRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestamps) : this() - { - this.SessionId = sessionId; - this.PrefixPaths = prefixPaths; - this.MeasurementsList = measurementsList; - this.ValuesList = valuesList; - this.Timestamps = timestamps; - } - - public TSInsertRecordsReq DeepCopy() - { - var tmp167 = new TSInsertRecordsReq(); - tmp167.SessionId = this.SessionId; - if((PrefixPaths != null)) - { - tmp167.PrefixPaths = this.PrefixPaths.DeepCopy(); - } - if((MeasurementsList != null)) - { - tmp167.MeasurementsList = this.MeasurementsList.DeepCopy(); - } - if((ValuesList != null)) - { - tmp167.ValuesList = this.ValuesList.DeepCopy(); - } - if((Timestamps != null)) - { - tmp167.Timestamps = this.Timestamps.DeepCopy(); - } - if(__isset.isAligned) - { - tmp167.IsAligned = this.IsAligned; - } - tmp167.__isset.isAligned = this.__isset.isAligned; - return tmp167; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPaths = false; - bool isset_measurementsList = false; - bool isset_valuesList = false; - bool isset_timestamps = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list168 = await iprot.ReadListBeginAsync(cancellationToken); - PrefixPaths = new List(_list168.Count); - for(int _i169 = 0; _i169 < _list168.Count; ++_i169) - { - string _elem170; - _elem170 = await iprot.ReadStringAsync(cancellationToken); - PrefixPaths.Add(_elem170); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_prefixPaths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list171 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list171.Count); - for(int _i172 = 0; _i172 < _list171.Count; ++_i172) - { - List _elem173; - { - TList _list174 = await iprot.ReadListBeginAsync(cancellationToken); - _elem173 = new List(_list174.Count); - for(int _i175 = 0; _i175 < _list174.Count; ++_i175) - { - string _elem176; - _elem176 = await iprot.ReadStringAsync(cancellationToken); - _elem173.Add(_elem176); - } - await iprot.ReadListEndAsync(cancellationToken); - } - MeasurementsList.Add(_elem173); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurementsList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list177 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list177.Count); - for(int _i178 = 0; _i178 < _list177.Count; ++_i178) - { - byte[] _elem179; - _elem179 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem179); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valuesList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list180 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list180.Count); - for(int _i181 = 0; _i181 < _list180.Count; ++_i181) - { - long _elem182; - _elem182 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem182); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_timestamps = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPaths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurementsList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valuesList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamps) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertRecordsReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPaths != null)) - { - field.Name = "prefixPaths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); - foreach (string _iter183 in PrefixPaths) - { - await oprot.WriteStringAsync(_iter183, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementsList != null)) - { - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter184 in MeasurementsList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter184.Count), cancellationToken); - foreach (string _iter185 in _iter184) - { - await oprot.WriteStringAsync(_iter185, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValuesList != null)) - { - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter186 in ValuesList) - { - await oprot.WriteBinaryAsync(_iter186, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Timestamps != null)) - { - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter187 in Timestamps) - { - await oprot.WriteI64Async(_iter187, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertRecordsReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(PrefixPaths, other.PrefixPaths) - && TCollections.Equals(MeasurementsList, other.MeasurementsList) - && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPaths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); - } - if((MeasurementsList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); - } - if((ValuesList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); - } - if((Timestamps != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); - } - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertRecordsReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPaths != null)) - { - sb.Append(", PrefixPaths: "); - PrefixPaths.ToString(sb); - } - if((MeasurementsList != null)) - { - sb.Append(", MeasurementsList: "); - MeasurementsList.ToString(sb); - } - if((ValuesList != null)) - { - sb.Append(", ValuesList: "); - ValuesList.ToString(sb); - } - if((Timestamps != null)) - { - sb.Append(", Timestamps: "); - Timestamps.ToString(sb); - } - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs deleted file mode 100644 index 228fac5..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordReq.cs +++ /dev/null @@ -1,394 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertStringRecordReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public List Measurements { get; set; } - - public List Values { get; set; } - - public long Timestamp { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertStringRecordReq() - { - } - - public TSInsertStringRecordReq(long sessionId, string prefixPath, List measurements, List values, long timestamp) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.Measurements = measurements; - this.Values = values; - this.Timestamp = timestamp; - } - - public TSInsertStringRecordReq DeepCopy() - { - var tmp113 = new TSInsertStringRecordReq(); - tmp113.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp113.PrefixPath = this.PrefixPath; - } - if((Measurements != null)) - { - tmp113.Measurements = this.Measurements.DeepCopy(); - } - if((Values != null)) - { - tmp113.Values = this.Values.DeepCopy(); - } - tmp113.Timestamp = this.Timestamp; - if(__isset.isAligned) - { - tmp113.IsAligned = this.IsAligned; - } - tmp113.__isset.isAligned = this.__isset.isAligned; - return tmp113; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_measurements = false; - bool isset_values = false; - bool isset_timestamp = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list114 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list114.Count); - for(int _i115 = 0; _i115 < _list114.Count; ++_i115) - { - string _elem116; - _elem116 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem116); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurements = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list117 = await iprot.ReadListBeginAsync(cancellationToken); - Values = new List(_list117.Count); - for(int _i118 = 0; _i118 < _list117.Count; ++_i118) - { - string _elem119; - _elem119 = await iprot.ReadStringAsync(cancellationToken); - Values.Add(_elem119); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_values = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I64) - { - Timestamp = await iprot.ReadI64Async(cancellationToken); - isset_timestamp = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurements) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_values) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamp) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertStringRecordReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Measurements != null)) - { - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter120 in Measurements) - { - await oprot.WriteStringAsync(_iter120, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Values != null)) - { - field.Name = "values"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Values.Count), cancellationToken); - foreach (string _iter121 in Values) - { - await oprot.WriteStringAsync(_iter121, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "timestamp"; - field.Type = TType.I64; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Timestamp, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertStringRecordReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && TCollections.Equals(Measurements, other.Measurements) - && TCollections.Equals(Values, other.Values) - && System.Object.Equals(Timestamp, other.Timestamp) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((Measurements != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); - } - if((Values != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Values); - } - hashcode = (hashcode * 397) + Timestamp.GetHashCode(); - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertStringRecordReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((Measurements != null)) - { - sb.Append(", Measurements: "); - Measurements.ToString(sb); - } - if((Values != null)) - { - sb.Append(", Values: "); - Values.ToString(sb); - } - sb.Append(", Timestamp: "); - Timestamp.ToString(sb); - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs deleted file mode 100644 index 6e5fefb..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsOfOneDeviceReq.cs +++ /dev/null @@ -1,457 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertStringRecordsOfOneDeviceReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public List> MeasurementsList { get; set; } - - public List> ValuesList { get; set; } - - public List Timestamps { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertStringRecordsOfOneDeviceReq() - { - } - - public TSInsertStringRecordsOfOneDeviceReq(long sessionId, string prefixPath, List> measurementsList, List> valuesList, List timestamps) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.MeasurementsList = measurementsList; - this.ValuesList = valuesList; - this.Timestamps = timestamps; - } - - public TSInsertStringRecordsOfOneDeviceReq DeepCopy() - { - var tmp207 = new TSInsertStringRecordsOfOneDeviceReq(); - tmp207.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp207.PrefixPath = this.PrefixPath; - } - if((MeasurementsList != null)) - { - tmp207.MeasurementsList = this.MeasurementsList.DeepCopy(); - } - if((ValuesList != null)) - { - tmp207.ValuesList = this.ValuesList.DeepCopy(); - } - if((Timestamps != null)) - { - tmp207.Timestamps = this.Timestamps.DeepCopy(); - } - if(__isset.isAligned) - { - tmp207.IsAligned = this.IsAligned; - } - tmp207.__isset.isAligned = this.__isset.isAligned; - return tmp207; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_measurementsList = false; - bool isset_valuesList = false; - bool isset_timestamps = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list208 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list208.Count); - for(int _i209 = 0; _i209 < _list208.Count; ++_i209) - { - List _elem210; - { - TList _list211 = await iprot.ReadListBeginAsync(cancellationToken); - _elem210 = new List(_list211.Count); - for(int _i212 = 0; _i212 < _list211.Count; ++_i212) - { - string _elem213; - _elem213 = await iprot.ReadStringAsync(cancellationToken); - _elem210.Add(_elem213); - } - await iprot.ReadListEndAsync(cancellationToken); - } - MeasurementsList.Add(_elem210); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurementsList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list214 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List>(_list214.Count); - for(int _i215 = 0; _i215 < _list214.Count; ++_i215) - { - List _elem216; - { - TList _list217 = await iprot.ReadListBeginAsync(cancellationToken); - _elem216 = new List(_list217.Count); - for(int _i218 = 0; _i218 < _list217.Count; ++_i218) - { - string _elem219; - _elem219 = await iprot.ReadStringAsync(cancellationToken); - _elem216.Add(_elem219); - } - await iprot.ReadListEndAsync(cancellationToken); - } - ValuesList.Add(_elem216); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valuesList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list220 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list220.Count); - for(int _i221 = 0; _i221 < _list220.Count; ++_i221) - { - long _elem222; - _elem222 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem222); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_timestamps = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurementsList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valuesList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamps) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertStringRecordsOfOneDeviceReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementsList != null)) - { - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter223 in MeasurementsList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter223.Count), cancellationToken); - foreach (string _iter224 in _iter223) - { - await oprot.WriteStringAsync(_iter224, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValuesList != null)) - { - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); - foreach (List _iter225 in ValuesList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter225.Count), cancellationToken); - foreach (string _iter226 in _iter225) - { - await oprot.WriteStringAsync(_iter226, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Timestamps != null)) - { - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter227 in Timestamps) - { - await oprot.WriteI64Async(_iter227, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertStringRecordsOfOneDeviceReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && TCollections.Equals(MeasurementsList, other.MeasurementsList) - && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((MeasurementsList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); - } - if((ValuesList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); - } - if((Timestamps != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); - } - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertStringRecordsOfOneDeviceReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((MeasurementsList != null)) - { - sb.Append(", MeasurementsList: "); - MeasurementsList.ToString(sb); - } - if((ValuesList != null)) - { - sb.Append(", ValuesList: "); - ValuesList.ToString(sb); - } - if((Timestamps != null)) - { - sb.Append(", Timestamps: "); - Timestamps.ToString(sb); - } - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs deleted file mode 100644 index 82dc577..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertStringRecordsReq.cs +++ /dev/null @@ -1,474 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertStringRecordsReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public List PrefixPaths { get; set; } - - public List> MeasurementsList { get; set; } - - public List> ValuesList { get; set; } - - public List Timestamps { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertStringRecordsReq() - { - } - - public TSInsertStringRecordsReq(long sessionId, List prefixPaths, List> measurementsList, List> valuesList, List timestamps) : this() - { - this.SessionId = sessionId; - this.PrefixPaths = prefixPaths; - this.MeasurementsList = measurementsList; - this.ValuesList = valuesList; - this.Timestamps = timestamps; - } - - public TSInsertStringRecordsReq DeepCopy() - { - var tmp229 = new TSInsertStringRecordsReq(); - tmp229.SessionId = this.SessionId; - if((PrefixPaths != null)) - { - tmp229.PrefixPaths = this.PrefixPaths.DeepCopy(); - } - if((MeasurementsList != null)) - { - tmp229.MeasurementsList = this.MeasurementsList.DeepCopy(); - } - if((ValuesList != null)) - { - tmp229.ValuesList = this.ValuesList.DeepCopy(); - } - if((Timestamps != null)) - { - tmp229.Timestamps = this.Timestamps.DeepCopy(); - } - if(__isset.isAligned) - { - tmp229.IsAligned = this.IsAligned; - } - tmp229.__isset.isAligned = this.__isset.isAligned; - return tmp229; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPaths = false; - bool isset_measurementsList = false; - bool isset_valuesList = false; - bool isset_timestamps = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list230 = await iprot.ReadListBeginAsync(cancellationToken); - PrefixPaths = new List(_list230.Count); - for(int _i231 = 0; _i231 < _list230.Count; ++_i231) - { - string _elem232; - _elem232 = await iprot.ReadStringAsync(cancellationToken); - PrefixPaths.Add(_elem232); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_prefixPaths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list233 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list233.Count); - for(int _i234 = 0; _i234 < _list233.Count; ++_i234) - { - List _elem235; - { - TList _list236 = await iprot.ReadListBeginAsync(cancellationToken); - _elem235 = new List(_list236.Count); - for(int _i237 = 0; _i237 < _list236.Count; ++_i237) - { - string _elem238; - _elem238 = await iprot.ReadStringAsync(cancellationToken); - _elem235.Add(_elem238); - } - await iprot.ReadListEndAsync(cancellationToken); - } - MeasurementsList.Add(_elem235); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurementsList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list239 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List>(_list239.Count); - for(int _i240 = 0; _i240 < _list239.Count; ++_i240) - { - List _elem241; - { - TList _list242 = await iprot.ReadListBeginAsync(cancellationToken); - _elem241 = new List(_list242.Count); - for(int _i243 = 0; _i243 < _list242.Count; ++_i243) - { - string _elem244; - _elem244 = await iprot.ReadStringAsync(cancellationToken); - _elem241.Add(_elem244); - } - await iprot.ReadListEndAsync(cancellationToken); - } - ValuesList.Add(_elem241); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valuesList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list245 = await iprot.ReadListBeginAsync(cancellationToken); - Timestamps = new List(_list245.Count); - for(int _i246 = 0; _i246 < _list245.Count; ++_i246) - { - long _elem247; - _elem247 = await iprot.ReadI64Async(cancellationToken); - Timestamps.Add(_elem247); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_timestamps = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPaths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurementsList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valuesList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamps) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertStringRecordsReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPaths != null)) - { - field.Name = "prefixPaths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); - foreach (string _iter248 in PrefixPaths) - { - await oprot.WriteStringAsync(_iter248, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementsList != null)) - { - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter249 in MeasurementsList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter249.Count), cancellationToken); - foreach (string _iter250 in _iter249) - { - await oprot.WriteStringAsync(_iter250, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValuesList != null)) - { - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, ValuesList.Count), cancellationToken); - foreach (List _iter251 in ValuesList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter251.Count), cancellationToken); - foreach (string _iter252 in _iter251) - { - await oprot.WriteStringAsync(_iter252, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Timestamps != null)) - { - field.Name = "timestamps"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I64, Timestamps.Count), cancellationToken); - foreach (long _iter253 in Timestamps) - { - await oprot.WriteI64Async(_iter253, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertStringRecordsReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(PrefixPaths, other.PrefixPaths) - && TCollections.Equals(MeasurementsList, other.MeasurementsList) - && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(Timestamps, other.Timestamps) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPaths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); - } - if((MeasurementsList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); - } - if((ValuesList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); - } - if((Timestamps != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Timestamps); - } - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertStringRecordsReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPaths != null)) - { - sb.Append(", PrefixPaths: "); - PrefixPaths.ToString(sb); - } - if((MeasurementsList != null)) - { - sb.Append(", MeasurementsList: "); - MeasurementsList.ToString(sb); - } - if((ValuesList != null)) - { - sb.Append(", ValuesList: "); - ValuesList.ToString(sb); - } - if((Timestamps != null)) - { - sb.Append(", Timestamps: "); - Timestamps.ToString(sb); - } - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs deleted file mode 100644 index b57ef0c..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletReq.cs +++ /dev/null @@ -1,478 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertTabletReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public List Measurements { get; set; } - - public byte[] Values { get; set; } - - public byte[] Timestamps { get; set; } - - public List Types { get; set; } - - public int Size { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertTabletReq() - { - } - - public TSInsertTabletReq(long sessionId, string prefixPath, List measurements, byte[] values, byte[] timestamps, List types, int size) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.Measurements = measurements; - this.Values = values; - this.Timestamps = timestamps; - this.Types = types; - this.Size = size; - } - - public TSInsertTabletReq DeepCopy() - { - var tmp123 = new TSInsertTabletReq(); - tmp123.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp123.PrefixPath = this.PrefixPath; - } - if((Measurements != null)) - { - tmp123.Measurements = this.Measurements.DeepCopy(); - } - if((Values != null)) - { - tmp123.Values = this.Values.ToArray(); - } - if((Timestamps != null)) - { - tmp123.Timestamps = this.Timestamps.ToArray(); - } - if((Types != null)) - { - tmp123.Types = this.Types.DeepCopy(); - } - tmp123.Size = this.Size; - if(__isset.isAligned) - { - tmp123.IsAligned = this.IsAligned; - } - tmp123.__isset.isAligned = this.__isset.isAligned; - return tmp123; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_measurements = false; - bool isset_values = false; - bool isset_timestamps = false; - bool isset_types = false; - bool isset_size = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list124 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list124.Count); - for(int _i125 = 0; _i125 < _list124.Count; ++_i125) - { - string _elem126; - _elem126 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem126); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurements = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.String) - { - Values = await iprot.ReadBinaryAsync(cancellationToken); - isset_values = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.String) - { - Timestamps = await iprot.ReadBinaryAsync(cancellationToken); - isset_timestamps = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.List) - { - { - TList _list127 = await iprot.ReadListBeginAsync(cancellationToken); - Types = new List(_list127.Count); - for(int _i128 = 0; _i128 < _list127.Count; ++_i128) - { - int _elem129; - _elem129 = await iprot.ReadI32Async(cancellationToken); - Types.Add(_elem129); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_types = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.I32) - { - Size = await iprot.ReadI32Async(cancellationToken); - isset_size = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurements) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_values) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestamps) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_types) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_size) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertTabletReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Measurements != null)) - { - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter130 in Measurements) - { - await oprot.WriteStringAsync(_iter130, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Values != null)) - { - field.Name = "values"; - field.Type = TType.String; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBinaryAsync(Values, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Timestamps != null)) - { - field.Name = "timestamps"; - field.Type = TType.String; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBinaryAsync(Timestamps, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Types != null)) - { - field.Name = "types"; - field.Type = TType.List; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, Types.Count), cancellationToken); - foreach (int _iter131 in Types) - { - await oprot.WriteI32Async(_iter131, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "size"; - field.Type = TType.I32; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Size, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertTabletReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && TCollections.Equals(Measurements, other.Measurements) - && TCollections.Equals(Values, other.Values) - && TCollections.Equals(Timestamps, other.Timestamps) - && TCollections.Equals(Types, other.Types) - && System.Object.Equals(Size, other.Size) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((Measurements != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); - } - if((Values != null)) - { - hashcode = (hashcode * 397) + Values.GetHashCode(); - } - if((Timestamps != null)) - { - hashcode = (hashcode * 397) + Timestamps.GetHashCode(); - } - if((Types != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Types); - } - hashcode = (hashcode * 397) + Size.GetHashCode(); - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertTabletReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((Measurements != null)) - { - sb.Append(", Measurements: "); - Measurements.ToString(sb); - } - if((Values != null)) - { - sb.Append(", Values: "); - Values.ToString(sb); - } - if((Timestamps != null)) - { - sb.Append(", Timestamps: "); - Timestamps.ToString(sb); - } - if((Types != null)) - { - sb.Append(", Types: "); - Types.ToString(sb); - } - sb.Append(", Size: "); - Size.ToString(sb); - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs deleted file mode 100644 index b33fd9c..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSInsertTabletsReq.cs +++ /dev/null @@ -1,592 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSInsertTabletsReq : TBase -{ - private bool _isAligned; - - public long SessionId { get; set; } - - public List PrefixPaths { get; set; } - - public List> MeasurementsList { get; set; } - - public List ValuesList { get; set; } - - public List TimestampsList { get; set; } - - public List> TypesList { get; set; } - - public List SizeList { get; set; } - - public bool IsAligned - { - get - { - return _isAligned; - } - set - { - __isset.isAligned = true; - this._isAligned = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool isAligned; - } - - public TSInsertTabletsReq() - { - } - - public TSInsertTabletsReq(long sessionId, List prefixPaths, List> measurementsList, List valuesList, List timestampsList, List> typesList, List sizeList) : this() - { - this.SessionId = sessionId; - this.PrefixPaths = prefixPaths; - this.MeasurementsList = measurementsList; - this.ValuesList = valuesList; - this.TimestampsList = timestampsList; - this.TypesList = typesList; - this.SizeList = sizeList; - } - - public TSInsertTabletsReq DeepCopy() - { - var tmp133 = new TSInsertTabletsReq(); - tmp133.SessionId = this.SessionId; - if((PrefixPaths != null)) - { - tmp133.PrefixPaths = this.PrefixPaths.DeepCopy(); - } - if((MeasurementsList != null)) - { - tmp133.MeasurementsList = this.MeasurementsList.DeepCopy(); - } - if((ValuesList != null)) - { - tmp133.ValuesList = this.ValuesList.DeepCopy(); - } - if((TimestampsList != null)) - { - tmp133.TimestampsList = this.TimestampsList.DeepCopy(); - } - if((TypesList != null)) - { - tmp133.TypesList = this.TypesList.DeepCopy(); - } - if((SizeList != null)) - { - tmp133.SizeList = this.SizeList.DeepCopy(); - } - if(__isset.isAligned) - { - tmp133.IsAligned = this.IsAligned; - } - tmp133.__isset.isAligned = this.__isset.isAligned; - return tmp133; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPaths = false; - bool isset_measurementsList = false; - bool isset_valuesList = false; - bool isset_timestampsList = false; - bool isset_typesList = false; - bool isset_sizeList = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list134 = await iprot.ReadListBeginAsync(cancellationToken); - PrefixPaths = new List(_list134.Count); - for(int _i135 = 0; _i135 < _list134.Count; ++_i135) - { - string _elem136; - _elem136 = await iprot.ReadStringAsync(cancellationToken); - PrefixPaths.Add(_elem136); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_prefixPaths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list137 = await iprot.ReadListBeginAsync(cancellationToken); - MeasurementsList = new List>(_list137.Count); - for(int _i138 = 0; _i138 < _list137.Count; ++_i138) - { - List _elem139; - { - TList _list140 = await iprot.ReadListBeginAsync(cancellationToken); - _elem139 = new List(_list140.Count); - for(int _i141 = 0; _i141 < _list140.Count; ++_i141) - { - string _elem142; - _elem142 = await iprot.ReadStringAsync(cancellationToken); - _elem139.Add(_elem142); - } - await iprot.ReadListEndAsync(cancellationToken); - } - MeasurementsList.Add(_elem139); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_measurementsList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.List) - { - { - TList _list143 = await iprot.ReadListBeginAsync(cancellationToken); - ValuesList = new List(_list143.Count); - for(int _i144 = 0; _i144 < _list143.Count; ++_i144) - { - byte[] _elem145; - _elem145 = await iprot.ReadBinaryAsync(cancellationToken); - ValuesList.Add(_elem145); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valuesList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list146 = await iprot.ReadListBeginAsync(cancellationToken); - TimestampsList = new List(_list146.Count); - for(int _i147 = 0; _i147 < _list146.Count; ++_i147) - { - byte[] _elem148; - _elem148 = await iprot.ReadBinaryAsync(cancellationToken); - TimestampsList.Add(_elem148); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_timestampsList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.List) - { - { - TList _list149 = await iprot.ReadListBeginAsync(cancellationToken); - TypesList = new List>(_list149.Count); - for(int _i150 = 0; _i150 < _list149.Count; ++_i150) - { - List _elem151; - { - TList _list152 = await iprot.ReadListBeginAsync(cancellationToken); - _elem151 = new List(_list152.Count); - for(int _i153 = 0; _i153 < _list152.Count; ++_i153) - { - int _elem154; - _elem154 = await iprot.ReadI32Async(cancellationToken); - _elem151.Add(_elem154); - } - await iprot.ReadListEndAsync(cancellationToken); - } - TypesList.Add(_elem151); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_typesList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.List) - { - { - TList _list155 = await iprot.ReadListBeginAsync(cancellationToken); - SizeList = new List(_list155.Count); - for(int _i156 = 0; _i156 < _list155.Count; ++_i156) - { - int _elem157; - _elem157 = await iprot.ReadI32Async(cancellationToken); - SizeList.Add(_elem157); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_sizeList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.Bool) - { - IsAligned = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPaths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_measurementsList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valuesList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timestampsList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_typesList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_sizeList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSInsertTabletsReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPaths != null)) - { - field.Name = "prefixPaths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, PrefixPaths.Count), cancellationToken); - foreach (string _iter158 in PrefixPaths) - { - await oprot.WriteStringAsync(_iter158, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((MeasurementsList != null)) - { - field.Name = "measurementsList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, MeasurementsList.Count), cancellationToken); - foreach (List _iter159 in MeasurementsList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.String, _iter159.Count), cancellationToken); - foreach (string _iter160 in _iter159) - { - await oprot.WriteStringAsync(_iter160, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValuesList != null)) - { - field.Name = "valuesList"; - field.Type = TType.List; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ValuesList.Count), cancellationToken); - foreach (byte[] _iter161 in ValuesList) - { - await oprot.WriteBinaryAsync(_iter161, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TimestampsList != null)) - { - field.Name = "timestampsList"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, TimestampsList.Count), cancellationToken); - foreach (byte[] _iter162 in TimestampsList) - { - await oprot.WriteBinaryAsync(_iter162, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TypesList != null)) - { - field.Name = "typesList"; - field.Type = TType.List; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.List, TypesList.Count), cancellationToken); - foreach (List _iter163 in TypesList) - { - { - await oprot.WriteListBeginAsync(new TList(TType.I32, _iter163.Count), cancellationToken); - foreach (int _iter164 in _iter163) - { - await oprot.WriteI32Async(_iter164, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((SizeList != null)) - { - field.Name = "sizeList"; - field.Type = TType.List; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I32, SizeList.Count), cancellationToken); - foreach (int _iter165 in SizeList) - { - await oprot.WriteI32Async(_iter165, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.isAligned) - { - field.Name = "isAligned"; - field.Type = TType.Bool; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(IsAligned, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSInsertTabletsReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(PrefixPaths, other.PrefixPaths) - && TCollections.Equals(MeasurementsList, other.MeasurementsList) - && TCollections.Equals(ValuesList, other.ValuesList) - && TCollections.Equals(TimestampsList, other.TimestampsList) - && TCollections.Equals(TypesList, other.TypesList) - && TCollections.Equals(SizeList, other.SizeList) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPaths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(PrefixPaths); - } - if((MeasurementsList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(MeasurementsList); - } - if((ValuesList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValuesList); - } - if((TimestampsList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(TimestampsList); - } - if((TypesList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(TypesList); - } - if((SizeList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(SizeList); - } - if(__isset.isAligned) - { - hashcode = (hashcode * 397) + IsAligned.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSInsertTabletsReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPaths != null)) - { - sb.Append(", PrefixPaths: "); - PrefixPaths.ToString(sb); - } - if((MeasurementsList != null)) - { - sb.Append(", MeasurementsList: "); - MeasurementsList.ToString(sb); - } - if((ValuesList != null)) - { - sb.Append(", ValuesList: "); - ValuesList.ToString(sb); - } - if((TimestampsList != null)) - { - sb.Append(", TimestampsList: "); - TimestampsList.ToString(sb); - } - if((TypesList != null)) - { - sb.Append(", TypesList: "); - TypesList.ToString(sb); - } - if((SizeList != null)) - { - sb.Append(", SizeList: "); - SizeList.ToString(sb); - } - if(__isset.isAligned) - { - sb.Append(", IsAligned: "); - IsAligned.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs deleted file mode 100644 index 4f45324..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSLastDataQueryReq.cs +++ /dev/null @@ -1,421 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSLastDataQueryReq : TBase -{ - private int _fetchSize; - private bool _enableRedirectQuery; - private bool _jdbcQuery; - - public long SessionId { get; set; } - - public List Paths { get; set; } - - public int FetchSize - { - get - { - return _fetchSize; - } - set - { - __isset.fetchSize = true; - this._fetchSize = value; - } - } - - public long Time { get; set; } - - public long StatementId { get; set; } - - public bool EnableRedirectQuery - { - get - { - return _enableRedirectQuery; - } - set - { - __isset.enableRedirectQuery = true; - this._enableRedirectQuery = value; - } - } - - public bool JdbcQuery - { - get - { - return _jdbcQuery; - } - set - { - __isset.jdbcQuery = true; - this._jdbcQuery = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool fetchSize; - public bool enableRedirectQuery; - public bool jdbcQuery; - } - - public TSLastDataQueryReq() - { - } - - public TSLastDataQueryReq(long sessionId, List paths, long time, long statementId) : this() - { - this.SessionId = sessionId; - this.Paths = paths; - this.Time = time; - this.StatementId = statementId; - } - - public TSLastDataQueryReq DeepCopy() - { - var tmp324 = new TSLastDataQueryReq(); - tmp324.SessionId = this.SessionId; - if((Paths != null)) - { - tmp324.Paths = this.Paths.DeepCopy(); - } - if(__isset.fetchSize) - { - tmp324.FetchSize = this.FetchSize; - } - tmp324.__isset.fetchSize = this.__isset.fetchSize; - tmp324.Time = this.Time; - tmp324.StatementId = this.StatementId; - if(__isset.enableRedirectQuery) - { - tmp324.EnableRedirectQuery = this.EnableRedirectQuery; - } - tmp324.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - if(__isset.jdbcQuery) - { - tmp324.JdbcQuery = this.JdbcQuery; - } - tmp324.__isset.jdbcQuery = this.__isset.jdbcQuery; - return tmp324; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_paths = false; - bool isset_time = false; - bool isset_statementId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list325 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list325.Count); - for(int _i326 = 0; _i326 < _list325.Count; ++_i326) - { - string _elem327; - _elem327 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem327); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_paths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I32) - { - FetchSize = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I64) - { - Time = await iprot.ReadI64Async(cancellationToken); - isset_time = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I64) - { - StatementId = await iprot.ReadI64Async(cancellationToken); - isset_statementId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.Bool) - { - EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.Bool) - { - JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_paths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_time) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_statementId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSLastDataQueryReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Paths != null)) - { - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter328 in Paths) - { - await oprot.WriteStringAsync(_iter328, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.fetchSize) - { - field.Name = "fetchSize"; - field.Type = TType.I32; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(FetchSize, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "time"; - field.Type = TType.I64; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Time, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "statementId"; - field.Type = TType.I64; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(StatementId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.enableRedirectQuery) - { - field.Name = "enableRedirectQuery"; - field.Type = TType.Bool; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.jdbcQuery) - { - field.Name = "jdbcQuery"; - field.Type = TType.Bool; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSLastDataQueryReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(Paths, other.Paths) - && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) - && System.Object.Equals(Time, other.Time) - && System.Object.Equals(StatementId, other.StatementId) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) - && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Paths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); - } - if(__isset.fetchSize) - { - hashcode = (hashcode * 397) + FetchSize.GetHashCode(); - } - hashcode = (hashcode * 397) + Time.GetHashCode(); - hashcode = (hashcode * 397) + StatementId.GetHashCode(); - if(__isset.enableRedirectQuery) - { - hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); - } - if(__isset.jdbcQuery) - { - hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSLastDataQueryReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Paths != null)) - { - sb.Append(", Paths: "); - Paths.ToString(sb); - } - if(__isset.fetchSize) - { - sb.Append(", FetchSize: "); - FetchSize.ToString(sb); - } - sb.Append(", Time: "); - Time.ToString(sb); - sb.Append(", StatementId: "); - StatementId.ToString(sb); - if(__isset.enableRedirectQuery) - { - sb.Append(", EnableRedirectQuery: "); - EnableRedirectQuery.ToString(sb); - } - if(__isset.jdbcQuery) - { - sb.Append(", JdbcQuery: "); - JdbcQuery.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs deleted file mode 100644 index dc89624..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionReq.cs +++ /dev/null @@ -1,369 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSOpenSessionReq : TBase -{ - private string _username; - private string _password; - private Dictionary _configuration; - - /// - /// - /// - /// - public TSProtocolVersion Client_protocol { get; set; } - - public string ZoneId { get; set; } - - public string Username - { - get - { - return _username; - } - set - { - __isset.username = true; - this._username = value; - } - } - - public string Password - { - get - { - return _password; - } - set - { - __isset.password = true; - this._password = value; - } - } - - public Dictionary Configuration - { - get - { - return _configuration; - } - set - { - __isset.configuration = true; - this._configuration = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool username; - public bool password; - public bool configuration; - } - - public TSOpenSessionReq() - { - this.Client_protocol = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; - } - - public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this() - { - this.Client_protocol = client_protocol; - this.ZoneId = zoneId; - } - - public TSOpenSessionReq DeepCopy() - { - var tmp68 = new TSOpenSessionReq(); - tmp68.Client_protocol = this.Client_protocol; - if((ZoneId != null)) - { - tmp68.ZoneId = this.ZoneId; - } - if((Username != null) && __isset.username) - { - tmp68.Username = this.Username; - } - tmp68.__isset.username = this.__isset.username; - if((Password != null) && __isset.password) - { - tmp68.Password = this.Password; - } - tmp68.__isset.password = this.__isset.password; - if((Configuration != null) && __isset.configuration) - { - tmp68.Configuration = this.Configuration.DeepCopy(); - } - tmp68.__isset.configuration = this.__isset.configuration; - return tmp68; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_client_protocol = false; - bool isset_zoneId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I32) - { - Client_protocol = (TSProtocolVersion)await iprot.ReadI32Async(cancellationToken); - isset_client_protocol = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - ZoneId = await iprot.ReadStringAsync(cancellationToken); - isset_zoneId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - Username = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.String) - { - Password = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.Map) - { - { - TMap _map69 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map69.Count); - for(int _i70 = 0; _i70 < _map69.Count; ++_i70) - { - string _key71; - string _val72; - _key71 = await iprot.ReadStringAsync(cancellationToken); - _val72 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key71] = _val72; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_client_protocol) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_zoneId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSOpenSessionReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "client_protocol"; - field.Type = TType.I32; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async((int)Client_protocol, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((ZoneId != null)) - { - field.Name = "zoneId"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(ZoneId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Username != null) && __isset.username) - { - field.Name = "username"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Username, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Password != null) && __isset.password) - { - field.Name = "password"; - field.Type = TType.String; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Password, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Configuration != null) && __isset.configuration) - { - field.Name = "configuration"; - field.Type = TType.Map; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter73 in Configuration.Keys) - { - await oprot.WriteStringAsync(_iter73, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter73], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSOpenSessionReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Client_protocol, other.Client_protocol) - && System.Object.Equals(ZoneId, other.ZoneId) - && ((__isset.username == other.__isset.username) && ((!__isset.username) || (System.Object.Equals(Username, other.Username)))) - && ((__isset.password == other.__isset.password) && ((!__isset.password) || (System.Object.Equals(Password, other.Password)))) - && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + Client_protocol.GetHashCode(); - if((ZoneId != null)) - { - hashcode = (hashcode * 397) + ZoneId.GetHashCode(); - } - if((Username != null) && __isset.username) - { - hashcode = (hashcode * 397) + Username.GetHashCode(); - } - if((Password != null) && __isset.password) - { - hashcode = (hashcode * 397) + Password.GetHashCode(); - } - if((Configuration != null) && __isset.configuration) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Configuration); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSOpenSessionReq("); - sb.Append(", Client_protocol: "); - Client_protocol.ToString(sb); - if((ZoneId != null)) - { - sb.Append(", ZoneId: "); - ZoneId.ToString(sb); - } - if((Username != null) && __isset.username) - { - sb.Append(", Username: "); - Username.ToString(sb); - } - if((Password != null) && __isset.password) - { - sb.Append(", Password: "); - Password.ToString(sb); - } - if((Configuration != null) && __isset.configuration) - { - sb.Append(", Configuration: "); - Configuration.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs deleted file mode 100644 index f1d2db2..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSOpenSessionResp.cs +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSOpenSessionResp : TBase -{ - private long _sessionId; - private Dictionary _configuration; - - public TSStatus Status { get; set; } - - /// - /// - /// - /// - public TSProtocolVersion ServerProtocolVersion { get; set; } - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } - - public Dictionary Configuration - { - get - { - return _configuration; - } - set - { - __isset.configuration = true; - this._configuration = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool sessionId; - public bool configuration; - } - - public TSOpenSessionResp() - { - this.ServerProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V1; - } - - public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersion) : this() - { - this.Status = status; - this.ServerProtocolVersion = serverProtocolVersion; - } - - public TSOpenSessionResp DeepCopy() - { - var tmp61 = new TSOpenSessionResp(); - if((Status != null)) - { - tmp61.Status = (TSStatus)this.Status.DeepCopy(); - } - tmp61.ServerProtocolVersion = this.ServerProtocolVersion; - if(__isset.sessionId) - { - tmp61.SessionId = this.SessionId; - } - tmp61.__isset.sessionId = this.__isset.sessionId; - if((Configuration != null) && __isset.configuration) - { - tmp61.Configuration = this.Configuration.DeepCopy(); - } - tmp61.__isset.configuration = this.__isset.configuration; - return tmp61; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_status = false; - bool isset_serverProtocolVersion = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Status = new TSStatus(); - await Status.ReadAsync(iprot, cancellationToken); - isset_status = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I32) - { - ServerProtocolVersion = (TSProtocolVersion)await iprot.ReadI32Async(cancellationToken); - isset_serverProtocolVersion = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.Map) - { - { - TMap _map62 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map62.Count); - for(int _i63 = 0; _i63 < _map62.Count; ++_i63) - { - string _key64; - string _val65; - _key64 = await iprot.ReadStringAsync(cancellationToken); - _val65 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key64] = _val65; - } - await iprot.ReadMapEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_status) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_serverProtocolVersion) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSOpenSessionResp"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Status != null)) - { - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Status.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "serverProtocolVersion"; - field.Type = TType.I32; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async((int)ServerProtocolVersion, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.sessionId) - { - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Configuration != null) && __isset.configuration) - { - field.Name = "configuration"; - field.Type = TType.Map; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter66 in Configuration.Keys) - { - await oprot.WriteStringAsync(_iter66, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter66], cancellationToken); - } - await oprot.WriteMapEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSOpenSessionResp other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Status, other.Status) - && System.Object.Equals(ServerProtocolVersion, other.ServerProtocolVersion) - && ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Status != null)) - { - hashcode = (hashcode * 397) + Status.GetHashCode(); - } - hashcode = (hashcode * 397) + ServerProtocolVersion.GetHashCode(); - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((Configuration != null) && __isset.configuration) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Configuration); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSOpenSessionResp("); - if((Status != null)) - { - sb.Append(", Status: "); - Status.ToString(sb); - } - sb.Append(", ServerProtocolVersion: "); - ServerProtocolVersion.ToString(sb); - if(__isset.sessionId) - { - sb.Append(", SessionId: "); - SessionId.ToString(sb); - } - if((Configuration != null) && __isset.configuration) - { - sb.Append(", Configuration: "); - Configuration.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs b/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs deleted file mode 100644 index 02f3cba..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSProtocolVersion.cs +++ /dev/null @@ -1,16 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - -public enum TSProtocolVersion -{ - IOTDB_SERVICE_PROTOCOL_V1 = 0, - IOTDB_SERVICE_PROTOCOL_V2 = 1, - IOTDB_SERVICE_PROTOCOL_V3 = 2, -} diff --git a/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs deleted file mode 100644 index 00123f8..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSPruneSchemaTemplateReq.cs +++ /dev/null @@ -1,233 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSPruneSchemaTemplateReq : TBase -{ - - public long SessionId { get; set; } - - public string Name { get; set; } - - public string Path { get; set; } - - public TSPruneSchemaTemplateReq() - { - } - - public TSPruneSchemaTemplateReq(long sessionId, string name, string path) : this() - { - this.SessionId = sessionId; - this.Name = name; - this.Path = path; - } - - public TSPruneSchemaTemplateReq DeepCopy() - { - var tmp407 = new TSPruneSchemaTemplateReq(); - tmp407.SessionId = this.SessionId; - if((Name != null)) - { - tmp407.Name = this.Name; - } - if((Path != null)) - { - tmp407.Path = this.Path; - } - return tmp407; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_name = false; - bool isset_path = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Name = await iprot.ReadStringAsync(cancellationToken); - isset_name = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - Path = await iprot.ReadStringAsync(cancellationToken); - isset_path = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_name) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_path) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSPruneSchemaTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Name != null)) - { - field.Name = "name"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Name, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Path != null)) - { - field.Name = "path"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Path, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSPruneSchemaTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Name, other.Name) - && System.Object.Equals(Path, other.Path); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Name != null)) - { - hashcode = (hashcode * 397) + Name.GetHashCode(); - } - if((Path != null)) - { - hashcode = (hashcode * 397) + Path.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSPruneSchemaTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Name != null)) - { - sb.Append(", Name: "); - Name.ToString(sb); - } - if((Path != null)) - { - sb.Append(", Path: "); - Path.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs deleted file mode 100644 index a3801cd..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryDataSet.cs +++ /dev/null @@ -1,279 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSQueryDataSet : TBase -{ - - public byte[] Time { get; set; } - - public List ValueList { get; set; } - - public List BitmapList { get; set; } - - public TSQueryDataSet() - { - } - - public TSQueryDataSet(byte[] time, List valueList, List bitmapList) : this() - { - this.Time = time; - this.ValueList = valueList; - this.BitmapList = bitmapList; - } - - public TSQueryDataSet DeepCopy() - { - var tmp8 = new TSQueryDataSet(); - if((Time != null)) - { - tmp8.Time = this.Time.ToArray(); - } - if((ValueList != null)) - { - tmp8.ValueList = this.ValueList.DeepCopy(); - } - if((BitmapList != null)) - { - tmp8.BitmapList = this.BitmapList.DeepCopy(); - } - return tmp8; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_time = false; - bool isset_valueList = false; - bool isset_bitmapList = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.String) - { - Time = await iprot.ReadBinaryAsync(cancellationToken); - isset_time = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list9 = await iprot.ReadListBeginAsync(cancellationToken); - ValueList = new List(_list9.Count); - for(int _i10 = 0; _i10 < _list9.Count; ++_i10) - { - byte[] _elem11; - _elem11 = await iprot.ReadBinaryAsync(cancellationToken); - ValueList.Add(_elem11); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valueList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list12 = await iprot.ReadListBeginAsync(cancellationToken); - BitmapList = new List(_list12.Count); - for(int _i13 = 0; _i13 < _list12.Count; ++_i13) - { - byte[] _elem14; - _elem14 = await iprot.ReadBinaryAsync(cancellationToken); - BitmapList.Add(_elem14); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_bitmapList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_time) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valueList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_bitmapList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSQueryDataSet"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Time != null)) - { - field.Name = "time"; - field.Type = TType.String; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBinaryAsync(Time, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValueList != null)) - { - field.Name = "valueList"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); - foreach (byte[] _iter15 in ValueList) - { - await oprot.WriteBinaryAsync(_iter15, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((BitmapList != null)) - { - field.Name = "bitmapList"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, BitmapList.Count), cancellationToken); - foreach (byte[] _iter16 in BitmapList) - { - await oprot.WriteBinaryAsync(_iter16, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSQueryDataSet other)) return false; - if (ReferenceEquals(this, other)) return true; - return TCollections.Equals(Time, other.Time) - && TCollections.Equals(ValueList, other.ValueList) - && TCollections.Equals(BitmapList, other.BitmapList); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Time != null)) - { - hashcode = (hashcode * 397) + Time.GetHashCode(); - } - if((ValueList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValueList); - } - if((BitmapList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(BitmapList); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSQueryDataSet("); - if((Time != null)) - { - sb.Append(", Time: "); - Time.ToString(sb); - } - if((ValueList != null)) - { - sb.Append(", ValueList: "); - ValueList.ToString(sb); - } - if((BitmapList != null)) - { - sb.Append(", BitmapList: "); - BitmapList.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs deleted file mode 100644 index dd69065..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryNonAlignDataSet.cs +++ /dev/null @@ -1,237 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSQueryNonAlignDataSet : TBase -{ - - public List TimeList { get; set; } - - public List ValueList { get; set; } - - public TSQueryNonAlignDataSet() - { - } - - public TSQueryNonAlignDataSet(List timeList, List valueList) : this() - { - this.TimeList = timeList; - this.ValueList = valueList; - } - - public TSQueryNonAlignDataSet DeepCopy() - { - var tmp18 = new TSQueryNonAlignDataSet(); - if((TimeList != null)) - { - tmp18.TimeList = this.TimeList.DeepCopy(); - } - if((ValueList != null)) - { - tmp18.ValueList = this.ValueList.DeepCopy(); - } - return tmp18; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_timeList = false; - bool isset_valueList = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.List) - { - { - TList _list19 = await iprot.ReadListBeginAsync(cancellationToken); - TimeList = new List(_list19.Count); - for(int _i20 = 0; _i20 < _list19.Count; ++_i20) - { - byte[] _elem21; - _elem21 = await iprot.ReadBinaryAsync(cancellationToken); - TimeList.Add(_elem21); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_timeList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list22 = await iprot.ReadListBeginAsync(cancellationToken); - ValueList = new List(_list22.Count); - for(int _i23 = 0; _i23 < _list22.Count; ++_i23) - { - byte[] _elem24; - _elem24 = await iprot.ReadBinaryAsync(cancellationToken); - ValueList.Add(_elem24); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_valueList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_timeList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_valueList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSQueryNonAlignDataSet"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((TimeList != null)) - { - field.Name = "timeList"; - field.Type = TType.List; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, TimeList.Count), cancellationToken); - foreach (byte[] _iter25 in TimeList) - { - await oprot.WriteBinaryAsync(_iter25, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ValueList != null)) - { - field.Name = "valueList"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); - foreach (byte[] _iter26 in ValueList) - { - await oprot.WriteBinaryAsync(_iter26, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSQueryNonAlignDataSet other)) return false; - if (ReferenceEquals(this, other)) return true; - return TCollections.Equals(TimeList, other.TimeList) - && TCollections.Equals(ValueList, other.ValueList); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((TimeList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(TimeList); - } - if((ValueList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ValueList); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSQueryNonAlignDataSet("); - if((TimeList != null)) - { - sb.Append(", TimeList: "); - TimeList.ToString(sb); - } - if((ValueList != null)) - { - sb.Append(", ValueList: "); - ValueList.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs deleted file mode 100644 index e3680ff..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateReq.cs +++ /dev/null @@ -1,276 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSQueryTemplateReq : TBase -{ - private string _measurement; - - public long SessionId { get; set; } - - public string Name { get; set; } - - public int QueryType { get; set; } - - public string Measurement - { - get - { - return _measurement; - } - set - { - __isset.measurement = true; - this._measurement = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool measurement; - } - - public TSQueryTemplateReq() - { - } - - public TSQueryTemplateReq(long sessionId, string name, int queryType) : this() - { - this.SessionId = sessionId; - this.Name = name; - this.QueryType = queryType; - } - - public TSQueryTemplateReq DeepCopy() - { - var tmp409 = new TSQueryTemplateReq(); - tmp409.SessionId = this.SessionId; - if((Name != null)) - { - tmp409.Name = this.Name; - } - tmp409.QueryType = this.QueryType; - if((Measurement != null) && __isset.measurement) - { - tmp409.Measurement = this.Measurement; - } - tmp409.__isset.measurement = this.__isset.measurement; - return tmp409; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_name = false; - bool isset_queryType = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Name = await iprot.ReadStringAsync(cancellationToken); - isset_name = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I32) - { - QueryType = await iprot.ReadI32Async(cancellationToken); - isset_queryType = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.String) - { - Measurement = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_name) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_queryType) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSQueryTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Name != null)) - { - field.Name = "name"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Name, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "queryType"; - field.Type = TType.I32; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(QueryType, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Measurement != null) && __isset.measurement) - { - field.Name = "measurement"; - field.Type = TType.String; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Measurement, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSQueryTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(Name, other.Name) - && System.Object.Equals(QueryType, other.QueryType) - && ((__isset.measurement == other.__isset.measurement) && ((!__isset.measurement) || (System.Object.Equals(Measurement, other.Measurement)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Name != null)) - { - hashcode = (hashcode * 397) + Name.GetHashCode(); - } - hashcode = (hashcode * 397) + QueryType.GetHashCode(); - if((Measurement != null) && __isset.measurement) - { - hashcode = (hashcode * 397) + Measurement.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSQueryTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Name != null)) - { - sb.Append(", Name: "); - Name.ToString(sb); - } - sb.Append(", QueryType: "); - QueryType.ToString(sb); - if((Measurement != null) && __isset.measurement) - { - sb.Append(", Measurement: "); - Measurement.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs b/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs deleted file mode 100644 index 3b4bc97..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSQueryTemplateResp.cs +++ /dev/null @@ -1,362 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSQueryTemplateResp : TBase -{ - private bool _result; - private int _count; - private List _measurements; - - public TSStatus Status { get; set; } - - public int QueryType { get; set; } - - public bool Result - { - get - { - return _result; - } - set - { - __isset.result = true; - this._result = value; - } - } - - public int Count - { - get - { - return _count; - } - set - { - __isset.count = true; - this._count = value; - } - } - - public List Measurements - { - get - { - return _measurements; - } - set - { - __isset.measurements = true; - this._measurements = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool result; - public bool count; - public bool measurements; - } - - public TSQueryTemplateResp() - { - } - - public TSQueryTemplateResp(TSStatus status, int queryType) : this() - { - this.Status = status; - this.QueryType = queryType; - } - - public TSQueryTemplateResp DeepCopy() - { - var tmp411 = new TSQueryTemplateResp(); - if((Status != null)) - { - tmp411.Status = (TSStatus)this.Status.DeepCopy(); - } - tmp411.QueryType = this.QueryType; - if(__isset.result) - { - tmp411.Result = this.Result; - } - tmp411.__isset.result = this.__isset.result; - if(__isset.count) - { - tmp411.Count = this.Count; - } - tmp411.__isset.count = this.__isset.count; - if((Measurements != null) && __isset.measurements) - { - tmp411.Measurements = this.Measurements.DeepCopy(); - } - tmp411.__isset.measurements = this.__isset.measurements; - return tmp411; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_status = false; - bool isset_queryType = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.Struct) - { - Status = new TSStatus(); - await Status.ReadAsync(iprot, cancellationToken); - isset_status = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.I32) - { - QueryType = await iprot.ReadI32Async(cancellationToken); - isset_queryType = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.Bool) - { - Result = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I32) - { - Count = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.List) - { - { - TList _list412 = await iprot.ReadListBeginAsync(cancellationToken); - Measurements = new List(_list412.Count); - for(int _i413 = 0; _i413 < _list412.Count; ++_i413) - { - string _elem414; - _elem414 = await iprot.ReadStringAsync(cancellationToken); - Measurements.Add(_elem414); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_status) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_queryType) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSQueryTemplateResp"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Status != null)) - { - field.Name = "status"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Status.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "queryType"; - field.Type = TType.I32; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(QueryType, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.result) - { - field.Name = "result"; - field.Type = TType.Bool; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(Result, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.count) - { - field.Name = "count"; - field.Type = TType.I32; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Count, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Measurements != null) && __isset.measurements) - { - field.Name = "measurements"; - field.Type = TType.List; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Measurements.Count), cancellationToken); - foreach (string _iter415 in Measurements) - { - await oprot.WriteStringAsync(_iter415, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSQueryTemplateResp other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Status, other.Status) - && System.Object.Equals(QueryType, other.QueryType) - && ((__isset.result == other.__isset.result) && ((!__isset.result) || (System.Object.Equals(Result, other.Result)))) - && ((__isset.count == other.__isset.count) && ((!__isset.count) || (System.Object.Equals(Count, other.Count)))) - && ((__isset.measurements == other.__isset.measurements) && ((!__isset.measurements) || (TCollections.Equals(Measurements, other.Measurements)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((Status != null)) - { - hashcode = (hashcode * 397) + Status.GetHashCode(); - } - hashcode = (hashcode * 397) + QueryType.GetHashCode(); - if(__isset.result) - { - hashcode = (hashcode * 397) + Result.GetHashCode(); - } - if(__isset.count) - { - hashcode = (hashcode * 397) + Count.GetHashCode(); - } - if((Measurements != null) && __isset.measurements) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Measurements); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSQueryTemplateResp("); - if((Status != null)) - { - sb.Append(", Status: "); - Status.ToString(sb); - } - sb.Append(", QueryType: "); - QueryType.ToString(sb); - if(__isset.result) - { - sb.Append(", Result: "); - Result.ToString(sb); - } - if(__isset.count) - { - sb.Append(", Count: "); - Count.ToString(sb); - } - if((Measurements != null) && __isset.measurements) - { - sb.Append(", Measurements: "); - Measurements.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs deleted file mode 100644 index 91d4e23..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSRawDataQueryReq.cs +++ /dev/null @@ -1,451 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSRawDataQueryReq : TBase -{ - private int _fetchSize; - private bool _enableRedirectQuery; - private bool _jdbcQuery; - - public long SessionId { get; set; } - - public List Paths { get; set; } - - public int FetchSize - { - get - { - return _fetchSize; - } - set - { - __isset.fetchSize = true; - this._fetchSize = value; - } - } - - public long StartTime { get; set; } - - public long EndTime { get; set; } - - public long StatementId { get; set; } - - public bool EnableRedirectQuery - { - get - { - return _enableRedirectQuery; - } - set - { - __isset.enableRedirectQuery = true; - this._enableRedirectQuery = value; - } - } - - public bool JdbcQuery - { - get - { - return _jdbcQuery; - } - set - { - __isset.jdbcQuery = true; - this._jdbcQuery = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool fetchSize; - public bool enableRedirectQuery; - public bool jdbcQuery; - } - - public TSRawDataQueryReq() - { - } - - public TSRawDataQueryReq(long sessionId, List paths, long startTime, long endTime, long statementId) : this() - { - this.SessionId = sessionId; - this.Paths = paths; - this.StartTime = startTime; - this.EndTime = endTime; - this.StatementId = statementId; - } - - public TSRawDataQueryReq DeepCopy() - { - var tmp318 = new TSRawDataQueryReq(); - tmp318.SessionId = this.SessionId; - if((Paths != null)) - { - tmp318.Paths = this.Paths.DeepCopy(); - } - if(__isset.fetchSize) - { - tmp318.FetchSize = this.FetchSize; - } - tmp318.__isset.fetchSize = this.__isset.fetchSize; - tmp318.StartTime = this.StartTime; - tmp318.EndTime = this.EndTime; - tmp318.StatementId = this.StatementId; - if(__isset.enableRedirectQuery) - { - tmp318.EnableRedirectQuery = this.EnableRedirectQuery; - } - tmp318.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; - if(__isset.jdbcQuery) - { - tmp318.JdbcQuery = this.JdbcQuery; - } - tmp318.__isset.jdbcQuery = this.__isset.jdbcQuery; - return tmp318; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_paths = false; - bool isset_startTime = false; - bool isset_endTime = false; - bool isset_statementId = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list319 = await iprot.ReadListBeginAsync(cancellationToken); - Paths = new List(_list319.Count); - for(int _i320 = 0; _i320 < _list319.Count; ++_i320) - { - string _elem321; - _elem321 = await iprot.ReadStringAsync(cancellationToken); - Paths.Add(_elem321); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_paths = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I32) - { - FetchSize = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I64) - { - StartTime = await iprot.ReadI64Async(cancellationToken); - isset_startTime = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I64) - { - EndTime = await iprot.ReadI64Async(cancellationToken); - isset_endTime = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.I64) - { - StatementId = await iprot.ReadI64Async(cancellationToken); - isset_statementId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.Bool) - { - EnableRedirectQuery = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.Bool) - { - JdbcQuery = await iprot.ReadBoolAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_paths) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_startTime) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_endTime) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_statementId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSRawDataQueryReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Paths != null)) - { - field.Name = "paths"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Paths.Count), cancellationToken); - foreach (string _iter322 in Paths) - { - await oprot.WriteStringAsync(_iter322, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.fetchSize) - { - field.Name = "fetchSize"; - field.Type = TType.I32; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(FetchSize, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - field.Name = "startTime"; - field.Type = TType.I64; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(StartTime, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "endTime"; - field.Type = TType.I64; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(EndTime, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - field.Name = "statementId"; - field.Type = TType.I64; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(StatementId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if(__isset.enableRedirectQuery) - { - field.Name = "enableRedirectQuery"; - field.Type = TType.Bool; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(EnableRedirectQuery, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.jdbcQuery) - { - field.Name = "jdbcQuery"; - field.Type = TType.Bool; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSRawDataQueryReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && TCollections.Equals(Paths, other.Paths) - && ((__isset.fetchSize == other.__isset.fetchSize) && ((!__isset.fetchSize) || (System.Object.Equals(FetchSize, other.FetchSize)))) - && System.Object.Equals(StartTime, other.StartTime) - && System.Object.Equals(EndTime, other.EndTime) - && System.Object.Equals(StatementId, other.StatementId) - && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) - && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((Paths != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Paths); - } - if(__isset.fetchSize) - { - hashcode = (hashcode * 397) + FetchSize.GetHashCode(); - } - hashcode = (hashcode * 397) + StartTime.GetHashCode(); - hashcode = (hashcode * 397) + EndTime.GetHashCode(); - hashcode = (hashcode * 397) + StatementId.GetHashCode(); - if(__isset.enableRedirectQuery) - { - hashcode = (hashcode * 397) + EnableRedirectQuery.GetHashCode(); - } - if(__isset.jdbcQuery) - { - hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSRawDataQueryReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((Paths != null)) - { - sb.Append(", Paths: "); - Paths.ToString(sb); - } - if(__isset.fetchSize) - { - sb.Append(", FetchSize: "); - FetchSize.ToString(sb); - } - sb.Append(", StartTime: "); - StartTime.ToString(sb); - sb.Append(", EndTime: "); - EndTime.ToString(sb); - sb.Append(", StatementId: "); - StatementId.ToString(sb); - if(__isset.enableRedirectQuery) - { - sb.Append(", EnableRedirectQuery: "); - EnableRedirectQuery.ToString(sb); - } - if(__isset.jdbcQuery) - { - sb.Append(", JdbcQuery: "); - JdbcQuery.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs deleted file mode 100644 index 4078cc6..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSSetSchemaTemplateReq.cs +++ /dev/null @@ -1,233 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSSetSchemaTemplateReq : TBase -{ - - public long SessionId { get; set; } - - public string TemplateName { get; set; } - - public string PrefixPath { get; set; } - - public TSSetSchemaTemplateReq() - { - } - - public TSSetSchemaTemplateReq(long sessionId, string templateName, string prefixPath) : this() - { - this.SessionId = sessionId; - this.TemplateName = templateName; - this.PrefixPath = prefixPath; - } - - public TSSetSchemaTemplateReq DeepCopy() - { - var tmp385 = new TSSetSchemaTemplateReq(); - tmp385.SessionId = this.SessionId; - if((TemplateName != null)) - { - tmp385.TemplateName = this.TemplateName; - } - if((PrefixPath != null)) - { - tmp385.PrefixPath = this.PrefixPath; - } - return tmp385; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_templateName = false; - bool isset_prefixPath = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - TemplateName = await iprot.ReadStringAsync(cancellationToken); - isset_templateName = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_templateName) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSSetSchemaTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((TemplateName != null)) - { - field.Name = "templateName"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(TemplateName, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSSetSchemaTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(TemplateName, other.TemplateName) - && System.Object.Equals(PrefixPath, other.PrefixPath); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((TemplateName != null)) - { - hashcode = (hashcode * 397) + TemplateName.GetHashCode(); - } - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSSetSchemaTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((TemplateName != null)) - { - sb.Append(", TemplateName: "); - TemplateName.ToString(sb); - } - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs deleted file mode 100644 index 7d36632..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSSetTimeZoneReq.cs +++ /dev/null @@ -1,191 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSSetTimeZoneReq : TBase -{ - - public long SessionId { get; set; } - - public string TimeZone { get; set; } - - public TSSetTimeZoneReq() - { - } - - public TSSetTimeZoneReq(long sessionId, string timeZone) : this() - { - this.SessionId = sessionId; - this.TimeZone = timeZone; - } - - public TSSetTimeZoneReq DeepCopy() - { - var tmp105 = new TSSetTimeZoneReq(); - tmp105.SessionId = this.SessionId; - if((TimeZone != null)) - { - tmp105.TimeZone = this.TimeZone; - } - return tmp105; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_timeZone = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - TimeZone = await iprot.ReadStringAsync(cancellationToken); - isset_timeZone = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_timeZone) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSSetTimeZoneReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((TimeZone != null)) - { - field.Name = "timeZone"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(TimeZone, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSSetTimeZoneReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(TimeZone, other.TimeZone); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((TimeZone != null)) - { - hashcode = (hashcode * 397) + TimeZone.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSSetTimeZoneReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((TimeZone != null)) - { - sb.Append(", TimeZone: "); - TimeZone.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs b/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs deleted file mode 100644 index ceed36e..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSStatus.cs +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSStatus : TBase -{ - private string _message; - private List _subStatus; - private EndPoint _redirectNode; - - public int Code { get; set; } - - public string Message - { - get - { - return _message; - } - set - { - __isset.message = true; - this._message = value; - } - } - - public List SubStatus - { - get - { - return _subStatus; - } - set - { - __isset.subStatus = true; - this._subStatus = value; - } - } - - public EndPoint RedirectNode - { - get - { - return _redirectNode; - } - set - { - __isset.redirectNode = true; - this._redirectNode = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool message; - public bool subStatus; - public bool redirectNode; - } - - public TSStatus() - { - } - - public TSStatus(int code) : this() - { - this.Code = code; - } - - public TSStatus DeepCopy() - { - var tmp2 = new TSStatus(); - tmp2.Code = this.Code; - if((Message != null) && __isset.message) - { - tmp2.Message = this.Message; - } - tmp2.__isset.message = this.__isset.message; - if((SubStatus != null) && __isset.subStatus) - { - tmp2.SubStatus = this.SubStatus.DeepCopy(); - } - tmp2.__isset.subStatus = this.__isset.subStatus; - if((RedirectNode != null) && __isset.redirectNode) - { - tmp2.RedirectNode = (EndPoint)this.RedirectNode.DeepCopy(); - } - tmp2.__isset.redirectNode = this.__isset.redirectNode; - return tmp2; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_code = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I32) - { - Code = await iprot.ReadI32Async(cancellationToken); - isset_code = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Message = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list3 = await iprot.ReadListBeginAsync(cancellationToken); - SubStatus = new List(_list3.Count); - for(int _i4 = 0; _i4 < _list3.Count; ++_i4) - { - TSStatus _elem5; - _elem5 = new TSStatus(); - await _elem5.ReadAsync(iprot, cancellationToken); - SubStatus.Add(_elem5); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.Struct) - { - RedirectNode = new EndPoint(); - await RedirectNode.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_code) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSStatus"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "code"; - field.Type = TType.I32; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Code, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Message != null) && __isset.message) - { - field.Name = "message"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Message, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((SubStatus != null) && __isset.subStatus) - { - field.Name = "subStatus"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Struct, SubStatus.Count), cancellationToken); - foreach (TSStatus _iter6 in SubStatus) - { - await _iter6.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((RedirectNode != null) && __isset.redirectNode) - { - field.Name = "redirectNode"; - field.Type = TType.Struct; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await RedirectNode.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSStatus other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Code, other.Code) - && ((__isset.message == other.__isset.message) && ((!__isset.message) || (System.Object.Equals(Message, other.Message)))) - && ((__isset.subStatus == other.__isset.subStatus) && ((!__isset.subStatus) || (TCollections.Equals(SubStatus, other.SubStatus)))) - && ((__isset.redirectNode == other.__isset.redirectNode) && ((!__isset.redirectNode) || (System.Object.Equals(RedirectNode, other.RedirectNode)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + Code.GetHashCode(); - if((Message != null) && __isset.message) - { - hashcode = (hashcode * 397) + Message.GetHashCode(); - } - if((SubStatus != null) && __isset.subStatus) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(SubStatus); - } - if((RedirectNode != null) && __isset.redirectNode) - { - hashcode = (hashcode * 397) + RedirectNode.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSStatus("); - sb.Append(", Code: "); - Code.ToString(sb); - if((Message != null) && __isset.message) - { - sb.Append(", Message: "); - Message.ToString(sb); - } - if((SubStatus != null) && __isset.subStatus) - { - sb.Append(", SubStatus: "); - SubStatus.ToString(sb); - } - if((RedirectNode != null) && __isset.redirectNode) - { - sb.Append(", RedirectNode: "); - RedirectNode.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs b/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs deleted file mode 100644 index 8b09f1f..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSTracingInfo.cs +++ /dev/null @@ -1,684 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSTracingInfo : TBase -{ - private int _seriesPathNum; - private int _seqFileNum; - private int _unSeqFileNum; - private int _sequenceChunkNum; - private long _sequenceChunkPointNum; - private int _unsequenceChunkNum; - private long _unsequenceChunkPointNum; - private int _totalPageNum; - private int _overlappedPageNum; - - public List ActivityList { get; set; } - - public List ElapsedTimeList { get; set; } - - public int SeriesPathNum - { - get - { - return _seriesPathNum; - } - set - { - __isset.seriesPathNum = true; - this._seriesPathNum = value; - } - } - - public int SeqFileNum - { - get - { - return _seqFileNum; - } - set - { - __isset.seqFileNum = true; - this._seqFileNum = value; - } - } - - public int UnSeqFileNum - { - get - { - return _unSeqFileNum; - } - set - { - __isset.unSeqFileNum = true; - this._unSeqFileNum = value; - } - } - - public int SequenceChunkNum - { - get - { - return _sequenceChunkNum; - } - set - { - __isset.sequenceChunkNum = true; - this._sequenceChunkNum = value; - } - } - - public long SequenceChunkPointNum - { - get - { - return _sequenceChunkPointNum; - } - set - { - __isset.sequenceChunkPointNum = true; - this._sequenceChunkPointNum = value; - } - } - - public int UnsequenceChunkNum - { - get - { - return _unsequenceChunkNum; - } - set - { - __isset.unsequenceChunkNum = true; - this._unsequenceChunkNum = value; - } - } - - public long UnsequenceChunkPointNum - { - get - { - return _unsequenceChunkPointNum; - } - set - { - __isset.unsequenceChunkPointNum = true; - this._unsequenceChunkPointNum = value; - } - } - - public int TotalPageNum - { - get - { - return _totalPageNum; - } - set - { - __isset.totalPageNum = true; - this._totalPageNum = value; - } - } - - public int OverlappedPageNum - { - get - { - return _overlappedPageNum; - } - set - { - __isset.overlappedPageNum = true; - this._overlappedPageNum = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool seriesPathNum; - public bool seqFileNum; - public bool unSeqFileNum; - public bool sequenceChunkNum; - public bool sequenceChunkPointNum; - public bool unsequenceChunkNum; - public bool unsequenceChunkPointNum; - public bool totalPageNum; - public bool overlappedPageNum; - } - - public TSTracingInfo() - { - } - - public TSTracingInfo(List activityList, List elapsedTimeList) : this() - { - this.ActivityList = activityList; - this.ElapsedTimeList = elapsedTimeList; - } - - public TSTracingInfo DeepCopy() - { - var tmp28 = new TSTracingInfo(); - if((ActivityList != null)) - { - tmp28.ActivityList = this.ActivityList.DeepCopy(); - } - if((ElapsedTimeList != null)) - { - tmp28.ElapsedTimeList = this.ElapsedTimeList.DeepCopy(); - } - if(__isset.seriesPathNum) - { - tmp28.SeriesPathNum = this.SeriesPathNum; - } - tmp28.__isset.seriesPathNum = this.__isset.seriesPathNum; - if(__isset.seqFileNum) - { - tmp28.SeqFileNum = this.SeqFileNum; - } - tmp28.__isset.seqFileNum = this.__isset.seqFileNum; - if(__isset.unSeqFileNum) - { - tmp28.UnSeqFileNum = this.UnSeqFileNum; - } - tmp28.__isset.unSeqFileNum = this.__isset.unSeqFileNum; - if(__isset.sequenceChunkNum) - { - tmp28.SequenceChunkNum = this.SequenceChunkNum; - } - tmp28.__isset.sequenceChunkNum = this.__isset.sequenceChunkNum; - if(__isset.sequenceChunkPointNum) - { - tmp28.SequenceChunkPointNum = this.SequenceChunkPointNum; - } - tmp28.__isset.sequenceChunkPointNum = this.__isset.sequenceChunkPointNum; - if(__isset.unsequenceChunkNum) - { - tmp28.UnsequenceChunkNum = this.UnsequenceChunkNum; - } - tmp28.__isset.unsequenceChunkNum = this.__isset.unsequenceChunkNum; - if(__isset.unsequenceChunkPointNum) - { - tmp28.UnsequenceChunkPointNum = this.UnsequenceChunkPointNum; - } - tmp28.__isset.unsequenceChunkPointNum = this.__isset.unsequenceChunkPointNum; - if(__isset.totalPageNum) - { - tmp28.TotalPageNum = this.TotalPageNum; - } - tmp28.__isset.totalPageNum = this.__isset.totalPageNum; - if(__isset.overlappedPageNum) - { - tmp28.OverlappedPageNum = this.OverlappedPageNum; - } - tmp28.__isset.overlappedPageNum = this.__isset.overlappedPageNum; - return tmp28; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_activityList = false; - bool isset_elapsedTimeList = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.List) - { - { - TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); - ActivityList = new List(_list29.Count); - for(int _i30 = 0; _i30 < _list29.Count; ++_i30) - { - string _elem31; - _elem31 = await iprot.ReadStringAsync(cancellationToken); - ActivityList.Add(_elem31); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_activityList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) - { - { - TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); - ElapsedTimeList = new List(_list32.Count); - for(int _i33 = 0; _i33 < _list32.Count; ++_i33) - { - long _elem34; - _elem34 = await iprot.ReadI64Async(cancellationToken); - ElapsedTimeList.Add(_elem34); - } - await iprot.ReadListEndAsync(cancellationToken); - } - isset_elapsedTimeList = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.I32) - { - SeriesPathNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.I32) - { - SeqFileNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 5: - if (field.Type == TType.I32) - { - UnSeqFileNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 6: - if (field.Type == TType.I32) - { - SequenceChunkNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 7: - if (field.Type == TType.I64) - { - SequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 8: - if (field.Type == TType.I32) - { - UnsequenceChunkNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 9: - if (field.Type == TType.I64) - { - UnsequenceChunkPointNum = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 10: - if (field.Type == TType.I32) - { - TotalPageNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 11: - if (field.Type == TType.I32) - { - OverlappedPageNum = await iprot.ReadI32Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_activityList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_elapsedTimeList) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSTracingInfo"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((ActivityList != null)) - { - field.Name = "activityList"; - field.Type = TType.List; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, ActivityList.Count), cancellationToken); - foreach (string _iter35 in ActivityList) - { - await oprot.WriteStringAsync(_iter35, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((ElapsedTimeList != null)) - { - field.Name = "elapsedTimeList"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.I64, ElapsedTimeList.Count), cancellationToken); - foreach (long _iter36 in ElapsedTimeList) - { - await oprot.WriteI64Async(_iter36, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.seriesPathNum) - { - field.Name = "seriesPathNum"; - field.Type = TType.I32; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(SeriesPathNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.seqFileNum) - { - field.Name = "seqFileNum"; - field.Type = TType.I32; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(SeqFileNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.unSeqFileNum) - { - field.Name = "unSeqFileNum"; - field.Type = TType.I32; - field.ID = 5; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(UnSeqFileNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.sequenceChunkNum) - { - field.Name = "sequenceChunkNum"; - field.Type = TType.I32; - field.ID = 6; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(SequenceChunkNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.sequenceChunkPointNum) - { - field.Name = "sequenceChunkPointNum"; - field.Type = TType.I64; - field.ID = 7; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SequenceChunkPointNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.unsequenceChunkNum) - { - field.Name = "unsequenceChunkNum"; - field.Type = TType.I32; - field.ID = 8; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(UnsequenceChunkNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.unsequenceChunkPointNum) - { - field.Name = "unsequenceChunkPointNum"; - field.Type = TType.I64; - field.ID = 9; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(UnsequenceChunkPointNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.totalPageNum) - { - field.Name = "totalPageNum"; - field.Type = TType.I32; - field.ID = 10; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(TotalPageNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if(__isset.overlappedPageNum) - { - field.Name = "overlappedPageNum"; - field.Type = TType.I32; - field.ID = 11; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(OverlappedPageNum, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSTracingInfo other)) return false; - if (ReferenceEquals(this, other)) return true; - return TCollections.Equals(ActivityList, other.ActivityList) - && TCollections.Equals(ElapsedTimeList, other.ElapsedTimeList) - && ((__isset.seriesPathNum == other.__isset.seriesPathNum) && ((!__isset.seriesPathNum) || (System.Object.Equals(SeriesPathNum, other.SeriesPathNum)))) - && ((__isset.seqFileNum == other.__isset.seqFileNum) && ((!__isset.seqFileNum) || (System.Object.Equals(SeqFileNum, other.SeqFileNum)))) - && ((__isset.unSeqFileNum == other.__isset.unSeqFileNum) && ((!__isset.unSeqFileNum) || (System.Object.Equals(UnSeqFileNum, other.UnSeqFileNum)))) - && ((__isset.sequenceChunkNum == other.__isset.sequenceChunkNum) && ((!__isset.sequenceChunkNum) || (System.Object.Equals(SequenceChunkNum, other.SequenceChunkNum)))) - && ((__isset.sequenceChunkPointNum == other.__isset.sequenceChunkPointNum) && ((!__isset.sequenceChunkPointNum) || (System.Object.Equals(SequenceChunkPointNum, other.SequenceChunkPointNum)))) - && ((__isset.unsequenceChunkNum == other.__isset.unsequenceChunkNum) && ((!__isset.unsequenceChunkNum) || (System.Object.Equals(UnsequenceChunkNum, other.UnsequenceChunkNum)))) - && ((__isset.unsequenceChunkPointNum == other.__isset.unsequenceChunkPointNum) && ((!__isset.unsequenceChunkPointNum) || (System.Object.Equals(UnsequenceChunkPointNum, other.UnsequenceChunkPointNum)))) - && ((__isset.totalPageNum == other.__isset.totalPageNum) && ((!__isset.totalPageNum) || (System.Object.Equals(TotalPageNum, other.TotalPageNum)))) - && ((__isset.overlappedPageNum == other.__isset.overlappedPageNum) && ((!__isset.overlappedPageNum) || (System.Object.Equals(OverlappedPageNum, other.OverlappedPageNum)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - if((ActivityList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ActivityList); - } - if((ElapsedTimeList != null)) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(ElapsedTimeList); - } - if(__isset.seriesPathNum) - { - hashcode = (hashcode * 397) + SeriesPathNum.GetHashCode(); - } - if(__isset.seqFileNum) - { - hashcode = (hashcode * 397) + SeqFileNum.GetHashCode(); - } - if(__isset.unSeqFileNum) - { - hashcode = (hashcode * 397) + UnSeqFileNum.GetHashCode(); - } - if(__isset.sequenceChunkNum) - { - hashcode = (hashcode * 397) + SequenceChunkNum.GetHashCode(); - } - if(__isset.sequenceChunkPointNum) - { - hashcode = (hashcode * 397) + SequenceChunkPointNum.GetHashCode(); - } - if(__isset.unsequenceChunkNum) - { - hashcode = (hashcode * 397) + UnsequenceChunkNum.GetHashCode(); - } - if(__isset.unsequenceChunkPointNum) - { - hashcode = (hashcode * 397) + UnsequenceChunkPointNum.GetHashCode(); - } - if(__isset.totalPageNum) - { - hashcode = (hashcode * 397) + TotalPageNum.GetHashCode(); - } - if(__isset.overlappedPageNum) - { - hashcode = (hashcode * 397) + OverlappedPageNum.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSTracingInfo("); - if((ActivityList != null)) - { - sb.Append(", ActivityList: "); - ActivityList.ToString(sb); - } - if((ElapsedTimeList != null)) - { - sb.Append(", ElapsedTimeList: "); - ElapsedTimeList.ToString(sb); - } - if(__isset.seriesPathNum) - { - sb.Append(", SeriesPathNum: "); - SeriesPathNum.ToString(sb); - } - if(__isset.seqFileNum) - { - sb.Append(", SeqFileNum: "); - SeqFileNum.ToString(sb); - } - if(__isset.unSeqFileNum) - { - sb.Append(", UnSeqFileNum: "); - UnSeqFileNum.ToString(sb); - } - if(__isset.sequenceChunkNum) - { - sb.Append(", SequenceChunkNum: "); - SequenceChunkNum.ToString(sb); - } - if(__isset.sequenceChunkPointNum) - { - sb.Append(", SequenceChunkPointNum: "); - SequenceChunkPointNum.ToString(sb); - } - if(__isset.unsequenceChunkNum) - { - sb.Append(", UnsequenceChunkNum: "); - UnsequenceChunkNum.ToString(sb); - } - if(__isset.unsequenceChunkPointNum) - { - sb.Append(", UnsequenceChunkPointNum: "); - UnsequenceChunkPointNum.ToString(sb); - } - if(__isset.totalPageNum) - { - sb.Append(", TotalPageNum: "); - TotalPageNum.ToString(sb); - } - if(__isset.overlappedPageNum) - { - sb.Append(", OverlappedPageNum: "); - OverlappedPageNum.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs b/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs deleted file mode 100644 index 1d99924..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/TSUnsetSchemaTemplateReq.cs +++ /dev/null @@ -1,233 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSUnsetSchemaTemplateReq : TBase -{ - - public long SessionId { get; set; } - - public string PrefixPath { get; set; } - - public string TemplateName { get; set; } - - public TSUnsetSchemaTemplateReq() - { - } - - public TSUnsetSchemaTemplateReq(long sessionId, string prefixPath, string templateName) : this() - { - this.SessionId = sessionId; - this.PrefixPath = prefixPath; - this.TemplateName = templateName; - } - - public TSUnsetSchemaTemplateReq DeepCopy() - { - var tmp417 = new TSUnsetSchemaTemplateReq(); - tmp417.SessionId = this.SessionId; - if((PrefixPath != null)) - { - tmp417.PrefixPath = this.PrefixPath; - } - if((TemplateName != null)) - { - tmp417.TemplateName = this.TemplateName; - } - return tmp417; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_sessionId = false; - bool isset_prefixPath = false; - bool isset_templateName = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - isset_sessionId = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - PrefixPath = await iprot.ReadStringAsync(cancellationToken); - isset_prefixPath = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.String) - { - TemplateName = await iprot.ReadStringAsync(cancellationToken); - isset_templateName = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_sessionId) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_prefixPath) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - if (!isset_templateName) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSUnsetSchemaTemplateReq"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "sessionId"; - field.Type = TType.I64; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((PrefixPath != null)) - { - field.Name = "prefixPath"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(PrefixPath, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((TemplateName != null)) - { - field.Name = "templateName"; - field.Type = TType.String; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(TemplateName, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSUnsetSchemaTemplateReq other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(SessionId, other.SessionId) - && System.Object.Equals(PrefixPath, other.PrefixPath) - && System.Object.Equals(TemplateName, other.TemplateName); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - if((PrefixPath != null)) - { - hashcode = (hashcode * 397) + PrefixPath.GetHashCode(); - } - if((TemplateName != null)) - { - hashcode = (hashcode * 397) + TemplateName.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSUnsetSchemaTemplateReq("); - sb.Append(", SessionId: "); - SessionId.ToString(sb); - if((PrefixPath != null)) - { - sb.Append(", PrefixPath: "); - PrefixPath.ToString(sb); - } - if((TemplateName != null)) - { - sb.Append(", TemplateName: "); - TemplateName.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs b/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs deleted file mode 100644 index a4f5a93..0000000 --- a/src/Apache.IoTDB.Rpc.Generated/rpc.Extensions.cs +++ /dev/null @@ -1,322 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - -public static class rpcExtensions -{ - public static bool Equals(this Dictionary instance, object that) - { - if (!(that is Dictionary other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this Dictionary instance) - { - return TCollections.GetHashCode(instance); - } - - - public static Dictionary DeepCopy(this Dictionary source) - { - if (source == null) - return null; - - var tmp609 = new Dictionary(source.Count); - foreach (var pair in source) - tmp609.Add((pair.Key != null) ? pair.Key : null, pair.Value); - return tmp609; - } - - - public static bool Equals(this Dictionary instance, object that) - { - if (!(that is Dictionary other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this Dictionary instance) - { - return TCollections.GetHashCode(instance); - } - - - public static Dictionary DeepCopy(this Dictionary source) - { - if (source == null) - return null; - - var tmp610 = new Dictionary(source.Count); - foreach (var pair in source) - tmp610.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); - return tmp610; - } - - - public static bool Equals(this List> instance, object that) - { - if (!(that is List> other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List> instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List> DeepCopy(this List> source) - { - if (source == null) - return null; - - var tmp611 = new List>(source.Count); - foreach (var elem in source) - tmp611.Add((elem != null) ? elem.DeepCopy() : null); - return tmp611; - } - - - public static bool Equals(this List> instance, object that) - { - if (!(that is List> other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List> instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List> DeepCopy(this List> source) - { - if (source == null) - return null; - - var tmp612 = new List>(source.Count); - foreach (var elem in source) - tmp612.Add((elem != null) ? elem.DeepCopy() : null); - return tmp612; - } - - - public static bool Equals(this List> instance, object that) - { - if (!(that is List> other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List> instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List> DeepCopy(this List> source) - { - if (source == null) - return null; - - var tmp613 = new List>(source.Count); - foreach (var elem in source) - tmp613.Add((elem != null) ? elem.DeepCopy() : null); - return tmp613; - } - - - public static bool Equals(this List instance, object that) - { - if (!(that is List other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp614 = new List(source.Count); - foreach (var elem in source) - tmp614.Add((elem != null) ? elem.DeepCopy() : null); - return tmp614; - } - - - public static bool Equals(this List instance, object that) - { - if (!(that is List other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp615 = new List(source.Count); - foreach (var elem in source) - tmp615.Add((elem != null) ? elem.ToArray() : null); - return tmp615; - } - - - public static bool Equals(this List instance, object that) - { - if (!(that is List other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp616 = new List(source.Count); - foreach (var elem in source) - tmp616.Add(elem); - return tmp616; - } - - - public static bool Equals(this List instance, object that) - { - if (!(that is List other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp617 = new List(source.Count); - foreach (var elem in source) - tmp617.Add(elem); - return tmp617; - } - - - public static bool Equals(this List instance, object that) - { - if (!(that is List other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp618 = new List(source.Count); - foreach (var elem in source) - tmp618.Add(elem); - return tmp618; - } - - - public static bool Equals(this List instance, object that) - { - if (!(that is List other)) return false; - if (ReferenceEquals(instance, other)) return true; - - return TCollections.Equals(instance, other); - } - - - public static int GetHashCode(this List instance) - { - return TCollections.GetHashCode(instance); - } - - - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp619 = new List(source.Count); - foreach (var elem in source) - tmp619.Add((elem != null) ? elem : null); - return tmp619; - } - - -} From 62ff4e16ccd68ce8b632d2ff222f8d1eb46c1d93 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sat, 9 Jul 2022 23:09:19 +0800 Subject: [PATCH 159/214] =?UTF-8?q?=E5=AE=9E=E7=8E=B0Apache.IoTDB.Data?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Apache.IoTDB.sln | 59 ++ courgette.log | 0 .../Apache.IoTDB.Samples.csproj | 10 + samples/Apache.IoTDB.Samples/Dockerfile | 1 + .../Apache.IoTDB.Samples/SessionPoolTest.cs | 51 +- .../Apache - Backup (1).IoTDB.Data.csproj | 160 +++++ .../Apache - Backup.IoTDB.Data.csproj | 162 ++++++ .../Apache.IoTDB.Data.csproj | 26 + src/Apache.IoTDB.Data/DataReaderExtensions.cs | 134 +++++ src/Apache.IoTDB.Data/GlobalSuppressions.cs | 8 + src/Apache.IoTDB.Data/IoTDBCommand.cs | 548 ++++++++++++++++++ src/Apache.IoTDB.Data/IoTDBConnection.cs | 353 +++++++++++ .../IoTDBConnectionStringBuilder.cs | 387 +++++++++++++ src/Apache.IoTDB.Data/IoTDBDataReader.cs | 530 +++++++++++++++++ src/Apache.IoTDB.Data/IoTDBException.cs | 69 +++ src/Apache.IoTDB.Data/IoTDBFactory.cs | 48 ++ src/Apache.IoTDB.Data/IoTDBParameter.cs | 208 +++++++ .../IoTDBParameterCollection.cs | 352 +++++++++++ src/Apache.IoTDB.Data/IoTDBResult.cs | 16 + src/Apache.IoTDB.Data/IoTDBTransaction.cs | 109 ++++ src/Apache.IoTDB.Data/IoTDBType.cs | 30 + .../Properties/AssemblyInfo.cs | 5 + src/Apache.IoTDB/Apache.IoTDB.csproj | 4 +- src/Apache.IoTDB/DataStructure/RowRecord.cs | 83 +++ .../DataStructure/SessionDataSet.cs | 24 +- src/Apache.IoTDB/SessionPool.cs | 30 +- 26 files changed, 3370 insertions(+), 37 deletions(-) create mode 100644 courgette.log create mode 100644 src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj create mode 100644 src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj create mode 100644 src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj create mode 100644 src/Apache.IoTDB.Data/DataReaderExtensions.cs create mode 100644 src/Apache.IoTDB.Data/GlobalSuppressions.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBCommand.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBConnection.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBDataReader.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBException.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBFactory.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBParameter.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBParameterCollection.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBResult.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBTransaction.cs create mode 100644 src/Apache.IoTDB.Data/IoTDBType.cs create mode 100644 src/Apache.IoTDB.Data/Properties/AssemblyInfo.cs diff --git a/Apache.IoTDB.sln b/Apache.IoTDB.sln index 91f5847..15d47ba 100644 --- a/Apache.IoTDB.sln +++ b/Apache.IoTDB.sln @@ -28,32 +28,90 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{DEAC57D3-4 EndProject Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{4D457769-80CB-401F-9155-C3125C04FACD}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Apache.IoTDB.Data", "src\Apache.IoTDB.Data\Apache.IoTDB.Data.csproj", "{4308656F-D174-49A6-ACE4-15894B017D55}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|Any CPU.Build.0 = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|x64.ActiveCfg = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|x64.Build.0 = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|x86.ActiveCfg = Debug|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Debug|x86.Build.0 = Debug|Any CPU {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.ActiveCfg = Release|Any CPU {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|Any CPU.Build.0 = Release|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|x64.ActiveCfg = Release|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|x64.Build.0 = Release|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|x86.ActiveCfg = Release|Any CPU + {60FE924D-19EC-41A9-A114-70DD21A30545}.Release|x86.Build.0 = Release|Any CPU {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|x64.ActiveCfg = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|x64.Build.0 = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|x86.ActiveCfg = Debug|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Debug|x86.Build.0 = Debug|Any CPU {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.ActiveCfg = Release|Any CPU {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|Any CPU.Build.0 = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|x64.ActiveCfg = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|x64.Build.0 = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|x86.ActiveCfg = Release|Any CPU + {5B88D865-EFFD-4A13-8489-2172777859F5}.Release|x86.Build.0 = Release|Any CPU {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|x64.ActiveCfg = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|x64.Build.0 = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|x86.ActiveCfg = Debug|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Debug|x86.Build.0 = Debug|Any CPU {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.ActiveCfg = Release|Any CPU {414B31CD-57EB-478B-B734-542644CE48B0}.Release|Any CPU.Build.0 = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|x64.ActiveCfg = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|x64.Build.0 = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|x86.ActiveCfg = Release|Any CPU + {414B31CD-57EB-478B-B734-542644CE48B0}.Release|x86.Build.0 = Release|Any CPU {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|x64.ActiveCfg = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|x64.Build.0 = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|x86.ActiveCfg = Debug|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Debug|x86.Build.0 = Debug|Any CPU {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.ActiveCfg = Release|Any CPU {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|Any CPU.Build.0 = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|x64.ActiveCfg = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|x64.Build.0 = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|x86.ActiveCfg = Release|Any CPU + {133ECF70-6B6B-492B-A2A4-AA759CEE54BB}.Release|x86.Build.0 = Release|Any CPU {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|x64.ActiveCfg = Debug|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|x64.Build.0 = Debug|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|x86.ActiveCfg = Debug|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Debug|x86.Build.0 = Debug|Any CPU {4D457769-80CB-401F-9155-C3125C04FACD}.Release|Any CPU.ActiveCfg = Release|Any CPU {4D457769-80CB-401F-9155-C3125C04FACD}.Release|Any CPU.Build.0 = Release|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Release|x64.ActiveCfg = Release|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Release|x64.Build.0 = Release|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Release|x86.ActiveCfg = Release|Any CPU + {4D457769-80CB-401F-9155-C3125C04FACD}.Release|x86.Build.0 = Release|Any CPU + {4308656F-D174-49A6-ACE4-15894B017D55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4308656F-D174-49A6-ACE4-15894B017D55}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4308656F-D174-49A6-ACE4-15894B017D55}.Debug|x64.ActiveCfg = Debug|x64 + {4308656F-D174-49A6-ACE4-15894B017D55}.Debug|x64.Build.0 = Debug|x64 + {4308656F-D174-49A6-ACE4-15894B017D55}.Debug|x86.ActiveCfg = Debug|x86 + {4308656F-D174-49A6-ACE4-15894B017D55}.Debug|x86.Build.0 = Debug|x86 + {4308656F-D174-49A6-ACE4-15894B017D55}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4308656F-D174-49A6-ACE4-15894B017D55}.Release|Any CPU.Build.0 = Release|Any CPU + {4308656F-D174-49A6-ACE4-15894B017D55}.Release|x64.ActiveCfg = Release|x64 + {4308656F-D174-49A6-ACE4-15894B017D55}.Release|x64.Build.0 = Release|x64 + {4308656F-D174-49A6-ACE4-15894B017D55}.Release|x86.ActiveCfg = Release|x86 + {4308656F-D174-49A6-ACE4-15894B017D55}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -63,6 +121,7 @@ Global {5B88D865-EFFD-4A13-8489-2172777859F5} = {AF185F16-80A9-49A8-98B4-B761FD197FF7} {414B31CD-57EB-478B-B734-542644CE48B0} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} {133ECF70-6B6B-492B-A2A4-AA759CEE54BB} = {11051AD6-88B3-44B4-A066-C59ED2E35AFD} + {4308656F-D174-49A6-ACE4-15894B017D55} = {AE9EFF1C-CB25-4089-B764-D834AC132501} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {F1C2DE69-7374-4521-9D86-500AA2517D4E} diff --git a/courgette.log b/courgette.log new file mode 100644 index 0000000..e69de29 diff --git a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj index 9614c46..96a9dfb 100644 --- a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj +++ b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj @@ -7,12 +7,22 @@ ..\.. + + default + + + + default + + + + diff --git a/samples/Apache.IoTDB.Samples/Dockerfile b/samples/Apache.IoTDB.Samples/Dockerfile index 12de45d..e9ecdf1 100644 --- a/samples/Apache.IoTDB.Samples/Dockerfile +++ b/samples/Apache.IoTDB.Samples/Dockerfile @@ -7,6 +7,7 @@ FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build WORKDIR /src COPY ["samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj", "samples/Apache.IoTDB.Samples/"] COPY ["src/Apache.IoTDB/Apache.IoTDB.csproj", "src/Apache.IoTDB/"] +COPY ["src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj", "src/Apache.IoTDB.Data/"] RUN dotnet restore "samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj" COPY . . WORKDIR "/src/samples/Apache.IoTDB.Samples" diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index 572550e..8931ff5 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -2,8 +2,10 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using Apache.IoTDB.Data; using Apache.IoTDB.DataStructure; - +using ConsoleTableExt; + namespace Apache.IoTDB.Samples { public partial class SessionPoolTest @@ -92,10 +94,12 @@ public async Task Test() await TestDeleteData(); - await TestNonSql(); - - await TestSqlQuery(); - + await TestNonSql(); + + + await TestSqlQuery(); + + await TestNonSqlBy_ADO(); } public async Task TestGetTimeZone() @@ -266,6 +270,43 @@ await session_pool.ExecuteNonQueryStatementAsync( System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestNonSql Passed"); + } + + public async Task TestNonSqlBy_ADO() + { + var cnts = new IoTDB.Data.IoTDBConnectionStringBuilder(); + cnts.DataSource = host; + var cnt = new IoTDB.Data.IoTDBConnection(cnts.ConnectionString); + await cnt.OpenAsync(); + var session_pool = cnt.SessionPool; + System.Diagnostics.Debug.Assert(cnt.State == System.Data.ConnectionState.Open); + var status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await cnt.CreateCommand( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN").ExecuteNonQueryAsync(); + await cnt.CreateCommand( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN").ExecuteNonQueryAsync(); + await cnt.CreateCommand( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN").ExecuteNonQueryAsync(); + status = await cnt.CreateCommand( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')").ExecuteNonQueryAsync(); + System.Diagnostics.Debug.Assert(status == 0); + await cnt.CreateCommand( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (5, true, 12, 'myy')").ExecuteNonQueryAsync(); + await cnt.CreateCommand( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (6, true, 21, 'lz')").ExecuteNonQueryAsync(); + await cnt.CreateCommand( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')").ExecuteNonQueryAsync(); + await cnt.CreateCommand( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')").ExecuteNonQueryAsync(); + var reader = await cnt.CreateCommand( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10").ExecuteReaderAsync(); + ConsoleTableBuilder.From(reader.ToDataTable()).WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + await cnt.CloseAsync(); + + System.Diagnostics.Debug.Assert(status == 0); + + Console.WriteLine("TestNonSqlBy_ADO Passed"); } public async Task TestSqlQuery() diff --git a/src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj new file mode 100644 index 0000000..89810b6 --- /dev/null +++ b/src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj @@ -0,0 +1,160 @@ + + + + Apache.IoTDB.Data + $(AssemblyName) + Apache.IoTDB.Data + + IoTDB implementation of the System.Data.Common provider model. + Commonly Used Types: + Apache.IoTDB.Data.IoTDBCommand + Apache.IoTDB.Data.IoTDBConnection + Apache.IoTDB.Data.IoTDBConnectionStringBuilder + Apache.IoTDB.Data.IoTDBDataReader + Apache.IoTDB.Data.IoTDBException + Apache.IoTDB.Data.IoTDBFactory + Apache.IoTDB.Data.IoTDBParameter + Apache.IoTDB.Data.IoTDBTransaction + + net5;net6;netstandard2.1 + 10 + + + Apache.IoTDB + + true + + + + + + + + Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net 访问IoTDB数据库。 + + LICENSE + + + + 1.0.1 + + AnyCPU;x64;x86 + + 48876650.jpg + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj new file mode 100644 index 0000000..e3e4b6d --- /dev/null +++ b/src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj @@ -0,0 +1,162 @@ + + + + Apache.IoTDB.Data + $(AssemblyName) + Apache.IoTDB.Data + + IoTDB implementation of the System.Data.Common provider model. + Commonly Used Types: + Apache.IoTDB.Data.IoTDBCommand + Apache.IoTDB.Data.IoTDBConnection + Apache.IoTDB.Data.IoTDBConnectionStringBuilder + Apache.IoTDB.Data.IoTDBDataReader + Apache.IoTDB.Data.IoTDBException + Apache.IoTDB.Data.IoTDBFactory + Apache.IoTDB.Data.IoTDBParameter + Apache.IoTDB.Data.IoTDBTransaction + + net5;net6;netstandard2.1 + 10 + IoTDB;Data;ADO.NET;Entity Framework,;EF; Core;Data O/RM,;entity-framework-core;TDengine;IoTSharp + + Apache.IoTDB + + true + + https://github.com/IoTSharp/EntityFrameworkCore.IoTDB + + + + https://github.com/IoTSharp/EntityFrameworkCore.IoTDB + + + Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net Core 访问TDengine数据库。 + + + LICENSE + + Copyright © 2019-2022 IoTSharp All rights reserved. + + 1.0.1 + + AnyCPU;x64;x86 + + 48876650.jpg + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + default + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj new file mode 100644 index 0000000..d86b54c --- /dev/null +++ b/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj @@ -0,0 +1,26 @@ + + + + Apache.IoTDB.Data + $(AssemblyName) + Apache.IoTDB.Data + + IoTDB implementation of the System.Data.Common provider model. + Commonly Used Types: + Apache.IoTDB.Data.IoTDBCommand + Apache.IoTDB.Data.IoTDBConnection + Apache.IoTDB.Data.IoTDBConnectionStringBuilder + Apache.IoTDB.Data.IoTDBDataReader + Apache.IoTDB.Data.IoTDBException + Apache.IoTDB.Data.IoTDBFactory + Apache.IoTDB.Data.IoTDBParameter + Apache.IoTDB.Data.IoTDBTransaction + + net5;net6;netstandard2.1 + 10 + Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net 访问IoTDB数据库。 + + + + + \ No newline at end of file diff --git a/src/Apache.IoTDB.Data/DataReaderExtensions.cs b/src/Apache.IoTDB.Data/DataReaderExtensions.cs new file mode 100644 index 0000000..99e0f1c --- /dev/null +++ b/src/Apache.IoTDB.Data/DataReaderExtensions.cs @@ -0,0 +1,134 @@ + +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; +using System.Data; +using System.Data.Common; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; + +namespace Apache.IoTDB.Data +{ + public static class DataReaderExtensions + { + public static SessionPool CreateSession(this IoTDBConnectionStringBuilder db) + { + return new SessionPool(db.DataSource, db.Port, db.Username, db.Password, db.FetchSize, db.ZoneId, db.PoolSize); + } + + public static List ToObject(this IDataReader dataReader) + { + List jArray = new List(); + try + { + var t = typeof(T); + var pots = t.GetProperties(); + while (dataReader.Read()) + { + T jObject = Activator.CreateInstance(); + for (int i = 0; i < dataReader.FieldCount; i++) + { + try + { + string strKey = dataReader.GetName(i); + if (dataReader[i] != DBNull.Value) + { + var pr = from p in pots where (p.Name == strKey || p.ColumnNameIs(strKey)) && p.CanWrite select p; + if (pr.Any()) + { + var pi = pr.FirstOrDefault(); + pi.SetValue(jObject, Convert.ChangeType(dataReader[i], pi.PropertyType)); + } + } + } + catch (Exception) + { + + } + } + jArray.Add(jObject); + } + } + catch (Exception ex) + { + IoTDBException.ThrowExceptionForRC(-10002, $"ToObject<{nameof(T)}> Error", ex); + } + return jArray; + } + + internal static bool ColumnNameIs(this System.Reflection.PropertyInfo p, string strKey) + { + return (p.IsDefined(typeof(ColumnAttribute), true) && (p.GetCustomAttributes(typeof(ColumnAttribute), true) as ColumnAttribute[])?.FirstOrDefault().Name == strKey); + } + + + public static DataTable ToDataTable(this IDataReader reader) + { var dt = new DataTable(); + try + { + + dt.Load(reader, LoadOption.OverwriteChanges, (object sender, FillErrorEventArgs e) => + { + + }); + } + catch (Exception) + { + + + } + return dt; + } + public static string RemoveNull(this string str) + { + return str?.Trim('\0'); + } + + public static IntPtr ToIntPtr(this long val) + { + IntPtr lenPtr = Marshal.AllocHGlobal(sizeof(long)); + Marshal.WriteInt64(lenPtr, val); + return lenPtr; + } + public static IntPtr ToIntPtr(this int val) + { + IntPtr lenPtr = Marshal.AllocHGlobal(sizeof(int )); + Marshal.WriteInt32(lenPtr, val); + return lenPtr; + } + internal struct UTF8IntPtrStruct + { + public IntPtr ptr; + public int len; + } + + internal static UTF8IntPtrStruct ToUTF8IntPtr(this string command) + { + UTF8IntPtrStruct result; +#if NET5_0_OR_GREATER + IntPtr commandBuffer = Marshal.StringToCoTaskMemUTF8(command); + int bufferlen = Encoding.UTF8.GetByteCount(command); +#else + var bytes = Encoding.UTF8.GetBytes(command); + int bufferlen = bytes.Length; + IntPtr commandBuffer = Marshal.AllocHGlobal(bufferlen); + Marshal.Copy(bytes, 0, commandBuffer, bufferlen); +#endif + result.ptr = commandBuffer; + result.len = bufferlen; + return result; + } + + public static void FreeUtf8IntPtr(this IntPtr ptr) + { +#if NET5_0_OR_GREATER + Marshal.FreeCoTaskMem(ptr); +#else + Marshal.FreeHGlobal(ptr); +#endif + } + + + } +} diff --git a/src/Apache.IoTDB.Data/GlobalSuppressions.cs b/src/Apache.IoTDB.Data/GlobalSuppressions.cs new file mode 100644 index 0000000..fed869c --- /dev/null +++ b/src/Apache.IoTDB.Data/GlobalSuppressions.cs @@ -0,0 +1,8 @@ +// This file is used by Code Analysis to maintain SuppressMessage +// attributes that are applied to this project. +// Project-level suppressions either have no target or are given +// a specific target and scoped to a namespace, type, member, etc. + +using System.Diagnostics.CodeAnalysis; + +[assembly: SuppressMessage("Globalization", "CA2101:Specify marshaling for P/Invoke string arguments")] diff --git a/src/Apache.IoTDB.Data/IoTDBCommand.cs b/src/Apache.IoTDB.Data/IoTDBCommand.cs new file mode 100644 index 0000000..f43f010 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBCommand.cs @@ -0,0 +1,548 @@ + + +using Apache.IoTDB.DataStructure; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Data.Common; +using System.Diagnostics; +using System.Linq; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Threading; +using System.Threading.Tasks; + + +namespace Apache.IoTDB.Data +{ + /// + /// Represents a SQL statement to be executed against a IoTDB database. + /// + public class IoTDBCommand : DbCommand + { + private readonly Lazy _parameters = new Lazy( + () => new IoTDBParameterCollection()); + private readonly DateTime _dt1970; + private IoTDBConnection _connection; + private string _commandText; + private SessionPool _IoTDB => _connection._IoTDB; + /// + /// Initializes a new instance of the class. + /// + public IoTDBCommand() + { + _dt1970 = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); + } + + /// + /// Initializes a new instance of the class. + /// + /// The SQL to execute against the database. + public IoTDBCommand(string commandText) + => CommandText = commandText; + + /// + /// Initializes a new instance of the class. + /// + /// The SQL to execute against the database. + /// The connection used by the command. + public IoTDBCommand(string commandText, IoTDBConnection connection) + : this(commandText) + { + Connection = connection; + CommandTimeout = connection.DefaultTimeout; + } + + /// + /// Initializes a new instance of the class. + /// + /// The SQL to execute against the database. + /// The connection used by the command. + /// The transaction within which the command executes. + public IoTDBCommand(string commandText, IoTDBConnection connection, IoTDBTransaction transaction) + : this(commandText, connection) + => Transaction = transaction; + + /// + /// Gets or sets a value indicating how is interpreted. Only + /// is supported. + /// + /// A value indicating how is interpreted. + public override CommandType CommandType + { + get => CommandType.Text; + set + { + if (value != CommandType.Text) + { + throw new ArgumentException($"Invalid CommandType{value}"); + } + } + } + + /// + /// Gets or sets the SQL to execute against the database. + /// + /// The SQL to execute against the database. + public override string CommandText + { + get => _commandText; + set + { + if (DataReader != null) + { + throw new InvalidOperationException($"SetRequiresNoOpenReader{nameof(CommandText)}"); + } + + if (value != _commandText) + { + _commandText = value; + } + } + } + + /// + /// Gets or sets the connection used by the command. + /// + /// The connection used by the command. + public new virtual IoTDBConnection Connection + { + get => _connection; + set + { + if (DataReader != null) + { + throw new InvalidOperationException($"SetRequiresNoOpenReader{nameof(Connection)}"); + } + + if (value != _connection) + { + + _connection?.RemoveCommand(this); + _connection = value; + value?.AddCommand(this); + } + } + } + + /// + /// Gets or sets the connection used by the command. Must be a . + /// + /// The connection used by the command. + protected override DbConnection DbConnection + { + get => Connection; + set => Connection = (IoTDBConnection)value; + } + + /// + /// Gets or sets the transaction within which the command executes. + /// + /// The transaction within which the command executes. + public new virtual IoTDBTransaction Transaction { get; set; } + + /// + /// Gets or sets the transaction within which the command executes. Must be a . + /// + /// The transaction within which the command executes. + protected override DbTransaction DbTransaction + { + get => Transaction; + set => Transaction = (IoTDBTransaction)value; + } + + /// + /// Gets the collection of parameters used by the command. + /// + /// The collection of parameters used by the command. + public new virtual IoTDBParameterCollection Parameters + => _parameters.Value; + + /// + /// Gets the collection of parameters used by the command. + /// + /// The collection of parameters used by the command. + protected override DbParameterCollection DbParameterCollection + => Parameters; + + /// + /// Gets or sets the number of seconds to wait before terminating the attempt to execute the command. Defaults to 30. + /// + /// The number of seconds to wait before terminating the attempt to execute the command. + /// + /// The timeout is used when the command is waiting to obtain a lock on the table. + /// + public override int CommandTimeout { get; set; } = 30; + + /// + /// Gets or sets a value indicating whether the command should be visible in an interface control. + /// + /// A value indicating whether the command should be visible in an interface control. + public override bool DesignTimeVisible { get; set; } + + /// + /// Gets or sets a value indicating how the results are applied to the row being updated. + /// + /// A value indicating how the results are applied to the row being updated. + public override UpdateRowSource UpdatedRowSource { get; set; } + + /// + /// Gets or sets the data reader currently being used by the command, or null if none. + /// + /// The data reader currently being used by the command. + protected internal virtual IoTDBDataReader DataReader { get; set; } + + /// + /// Releases any resources used by the connection and closes it. + /// + /// + /// true to release managed and unmanaged resources; false to release only unmanaged resources. + /// + protected override void Dispose(bool disposing) + { + + base.Dispose(disposing); + } + + /// + /// Creates a new parameter. + /// + /// The new parameter. + public new virtual IoTDBParameter CreateParameter() + => new IoTDBParameter(); + + /// + /// Creates a new parameter. + /// + /// The new parameter. + protected override DbParameter CreateDbParameter() + => CreateParameter(); + + /// + /// Creates a prepared version of the command on the database. + /// + public override void Prepare() + { + if (_connection?.State != ConnectionState.Open) + { + throw new InvalidOperationException($"CallRequiresOpenConnection{nameof(Prepare)}"); + } + + if (string.IsNullOrEmpty(_commandText)) + { + throw new InvalidOperationException($"CallRequiresSetCommandText{nameof(Prepare)}"); + } + + } + + /// + /// Executes the against the database and returns a data reader. + /// + /// The data reader. + /// A IoTDB error occurs during execution. + public new virtual IoTDBDataReader ExecuteReader() + => ExecuteReader(CommandBehavior.Default); + + + + + /// + /// Executes the against the database and returns a data reader. + /// + /// + /// A description of the results of the query and its effect on the database. + /// + /// Only , , + /// , , and + /// are supported. + /// + /// + /// The data reader. + /// A IoTDB error occurs during execution. + public new virtual IoTDBDataReader ExecuteReader(CommandBehavior behavior) + { + if ((behavior & ~(CommandBehavior.Default | CommandBehavior.SequentialAccess | CommandBehavior.SingleResult + | CommandBehavior.SingleRow | CommandBehavior.CloseConnection)) != 0) + { + throw new ArgumentException($"InvalidCommandBehavior{behavior}"); + } + + if (DataReader != null) + { + throw new InvalidOperationException($"DataReaderOpen"); + } + + if (_connection?.State != ConnectionState.Open) + { + _connection.Open(); + if (_connection?.State != ConnectionState.Open) + { + throw new InvalidOperationException($"CallRequiresOpenConnection{nameof(ExecuteReader)}"); + } + } + + + if (string.IsNullOrEmpty(_commandText)) + { + throw new InvalidOperationException($"CallRequiresSetCommandText{nameof(ExecuteReader)}"); + } + + var unprepared = false; + IoTDBDataReader dataReader = null; + var closeConnection = (behavior & CommandBehavior.CloseConnection) != 0; + try + { +#if DEBUG + Debug.WriteLine($"_commandText:{_commandText}"); +#endif + int _affectRows = 0; + SessionDataSet dataSet=null; + bool isok = false; + Task taskDataSet =null; + if (_parameters.IsValueCreated) + { + + var pms = _parameters.Value; + var record = BindParamters(pms); + + } + else + { + + var sessionData = Task.Run(() => _IoTDB.ExecuteQueryStatementAsync(_commandText)); + isok = sessionData.Wait(TimeSpan.FromSeconds(CommandTimeout)); + if (isok) + { + dataSet = sessionData.Result; + _affectRows = dataSet.FetchSize; + } + } + + if (isok && dataSet != null ) + { + dataReader = new IoTDBDataReader(this, dataSet, closeConnection ); + } + else if (taskDataSet.Status == TaskStatus.Running || !isok) + { + IoTDBException.ThrowExceptionForRC(-10006, "Execute sql command timeout", null); + } + else if (taskDataSet.IsCanceled) + { + IoTDBException.ThrowExceptionForRC(-10003, "Command is Canceled", null); + } + else if (taskDataSet.IsFaulted) + { + IoTDBException.ThrowExceptionForRC(-10004, taskDataSet.Exception.Message, taskDataSet.Exception?.InnerException); + } + else + { + IoTDBException.ThrowExceptionForRC(_commandText, new IoTDBErrorResult() { Code = -10007, Error = $"Unknow Exception" }); + } + } + catch when (unprepared) + { + throw; + } + return dataReader; + } + + private RowRecord BindParamters(IoTDBParameterCollection pms) + { + var measures = new List(); + var values = new List (); + + + for (int i = 0; i < pms.Count; i++) + { + + var tp = pms[i]; + measures.Add(tp.ParameterName); + // _commandText = _commandText.Replace(tp.ParameterName, "?"); + switch (TypeInfo.GetTypeCode(tp.Value?.GetType())) + { + case TypeCode.Boolean: + values.Add ((tp.Value as bool?).GetValueOrDefault()); + break; + case TypeCode.Char: + values.Add(tp.Value as string); + break; + case TypeCode.Byte: + case TypeCode.SByte: + values.Add((tp.Value as byte?).GetValueOrDefault()); + break; + case TypeCode.DateTime: + var t0 = tp.Value as DateTime?; + if (!t0.HasValue) + { + throw new ArgumentException($"InvalidArgumentOfDateTime{tp.Value}"); + } + values.Add(t0.GetValueOrDefault()); + break; + case TypeCode.DBNull: + + break; + case TypeCode.Single: + values.Add((tp.Value as float?).GetValueOrDefault()); + break; + case TypeCode.Decimal: + case TypeCode.Double: + values.Add((tp.Value as double?).GetValueOrDefault()); + break; + case TypeCode.Int16: + values.Add((tp.Value as short?).GetValueOrDefault()); + break; + case TypeCode.Int32: + values.Add((tp.Value as int?).GetValueOrDefault()); + break; + case TypeCode.Int64: + values.Add((tp.Value as long?).GetValueOrDefault()); + break; + case TypeCode.UInt16: + values.Add((tp.Value as short?).GetValueOrDefault()); + break; + case TypeCode.UInt32: + values.Add((tp.Value as uint?).GetValueOrDefault()); + break; + case TypeCode.UInt64: + values.Add((tp.Value as ulong?).GetValueOrDefault()); + break; + case TypeCode.String: + default: + values.Add(tp.Value as string); + break; + } + } + + return new RowRecord(DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),values,measures); + } + + /// + /// Executes the against the database and returns a data reader. + /// + /// A description of query's results and its effect on the database. + /// The data reader. + protected override DbDataReader ExecuteDbDataReader(CommandBehavior behavior) + => ExecuteReader(behavior); + + /// + /// Executes the asynchronously against the database and returns a data reader. + /// + /// A task representing the asynchronous operation. + /// + /// IoTDB does not support asynchronous execution. Use write-ahead logging instead. + /// + /// Write-Ahead Logging + public new virtual Task ExecuteReaderAsync() + => ExecuteReaderAsync(CommandBehavior.Default, CancellationToken.None); + + /// + /// Executes the asynchronously against the database and returns a data reader. + /// + /// The token to monitor for cancellation requests. + /// A task representing the asynchronous operation. + /// + /// IoTDB does not support asynchronous execution. Use write-ahead logging instead. + /// + /// Write-Ahead Logging + public new virtual Task ExecuteReaderAsync(CancellationToken cancellationToken) + => ExecuteReaderAsync(CommandBehavior.Default, cancellationToken); + + /// + /// Executes the asynchronously against the database and returns a data reader. + /// + /// A description of query's results and its effect on the database. + /// A task representing the asynchronous operation. + /// + /// IoTDB does not support asynchronous execution. Use write-ahead logging instead. + /// + /// Write-Ahead Logging + public new virtual Task ExecuteReaderAsync(CommandBehavior behavior) + => ExecuteReaderAsync(behavior, CancellationToken.None); + + /// + /// Executes the asynchronously against the database and returns a data reader. + /// + /// A description of query's results and its effect on the database. + /// The token to monitor for cancellation requests. + /// A task representing the asynchronous operation. + /// + /// IoTDB does not support asynchronous execution. Use write-ahead logging instead. + /// + /// Write-Ahead Logging + public new virtual Task ExecuteReaderAsync( + CommandBehavior behavior, + CancellationToken cancellationToken) + { + cancellationToken.ThrowIfCancellationRequested(); + + return Task.FromResult(ExecuteReader(behavior)); + } + + /// + /// Executes the asynchronously against the database and returns a data reader. + /// + /// A description of query's results and its effect on the database. + /// The token to monitor for cancellation requests. + /// A task representing the asynchronous operation. + protected override async Task ExecuteDbDataReaderAsync( + CommandBehavior behavior, + CancellationToken cancellationToken) + => await ExecuteReaderAsync(behavior, cancellationToken); + + /// + /// Executes the against the database. + /// + /// The number of rows inserted, updated, or deleted. -1 for SELECT statements. + /// A IoTDB error occurs during execution. + public override int ExecuteNonQuery() + { + if (_connection?.State != ConnectionState.Open) + { + throw new InvalidOperationException($"CallRequiresOpenConnection{nameof(ExecuteNonQuery)}"); + } + if (_commandText == null) + { + throw new InvalidOperationException($"CallRequiresSetCommandText{nameof(ExecuteNonQuery)}"); + } + var result = Task.Run(() => _IoTDB.ExecuteNonQueryStatementAsync(_commandText)); + var ok = result.Wait(TimeSpan.FromSeconds(CommandTimeout)); + if (!ok) throw new TimeoutException(); + return result.Result; + } + + /// + /// Executes the against the database and returns the result. + /// + /// The first column of the first row of the results, or null if no results. + /// A IoTDB error occurs during execution. + public override object ExecuteScalar() + { + if (_connection?.State != ConnectionState.Open) + { + throw new InvalidOperationException($"CallRequiresOpenConnection{nameof(ExecuteScalar)}"); + } + if (_commandText == null) + { + throw new InvalidOperationException($"CallRequiresSetCommandText{nameof(ExecuteScalar)}"); + } + + using (var reader = ExecuteReader()) + { + return reader.Read() + ? reader.GetValue(0) + : null; + } + } + + /// + /// Attempts to cancel the execution of the command. Does nothing. + /// + public override void Cancel() + { + } + + + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBConnection.cs b/src/Apache.IoTDB.Data/IoTDBConnection.cs new file mode 100644 index 0000000..7efbaa4 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBConnection.cs @@ -0,0 +1,353 @@ +// Copyright (c) maikebing All rights reserved. +//// Licensed under the MIT License, See License.txt in the project root for license information. + + +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.Common; +using System.Diagnostics; +using System.IO; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Text; + +using System.Linq; +using System.Threading.Tasks; +using System.Threading; + +namespace Apache.IoTDB.Data +{ + /// + /// Represents a connection to a IoTDB database. + /// + public partial class IoTDBConnection : DbConnection + { + + + private readonly IList> _commands = new List>(); + + private string _connectionString; + private ConnectionState _state; + internal SessionPool _IoTDB; + + + + /// + /// Initializes a new instance of the class. + /// + public IoTDBConnection() + { + _IoTDB = (ConnectionStringBuilder ?? new IoTDBConnectionStringBuilder()).CreateSession(); + } + public SessionPool SessionPool => _IoTDB; + + /// + /// Initializes a new instance of the class. + /// + /// The string used to open the connection. + /// + public IoTDBConnection(string connectionString) : this() + { + ConnectionStringBuilder = new IoTDBConnectionStringBuilder(connectionString); + ConnectionString = connectionString; + } + + + + /// + /// Gets or sets a string used to open the connection. + /// + /// A string used to open the connection. + /// + public override string ConnectionString + { + get => _connectionString; + set + { + _connectionString = value; + ConnectionStringBuilder = new IoTDBConnectionStringBuilder(value); + _IoTDB = ConnectionStringBuilder.CreateSession(); + } + } + + internal IoTDBConnectionStringBuilder ConnectionStringBuilder { get; set; } + + + /// + /// Gets the path to the database file. Will be absolute for open connections. + /// + /// The path to the database file. + public override string DataSource + { + get + { + string dataSource = null; + + return dataSource ?? ConnectionStringBuilder.DataSource; + } + } + + /// + /// Gets or sets the default value for commands created using + /// this connection. This is also used for internal commands in methods like + /// . + /// + /// The default value + public virtual int DefaultTimeout { get; set; } = 60; + + + + /// + /// Gets the version of IoTDB used by the connection. + /// + /// The version of IoTDB used by the connection. + public override string ServerVersion + { + get + { + throw new NotImplementedException(); + } + } + public string ClientVersion + { + get + { + + throw new NotImplementedException(); + } + } + /// + /// Gets the current state of the connection. + /// + /// The current state of the connection. + public override ConnectionState State + => _state; + + /// + /// Gets the for this connection. + /// + /// The . + protected override DbProviderFactory DbProviderFactory + => IoTDBFactory.Instance; + + /// + /// Gets or sets the transaction currently being used by the connection, or null if none. + /// + /// The transaction currently being used by the connection. + protected internal virtual IoTDBTransaction Transaction { get; set; } + + + + + + + private void SetState(ConnectionState value) + { + var originalState = _state; + if (originalState != value) + { + _state = value; + OnStateChange(new StateChangeEventArgs(originalState, value)); + } + } + + /// + /// Opens a connection to the database using the value of . If + /// Mode=ReadWriteCreate is used (the default) the file is created, if it doesn't already exist. + /// + /// A IoTDB error occurs while opening the connection. + public override void Open() + { + OpenAsync().GetAwaiter().GetResult(); + } + public override async Task OpenAsync(CancellationToken cancellationToken=default) + { + + if (State == ConnectionState.Open) + { + return; + } + if (ConnectionString == null) + { + throw new InvalidOperationException("Open Requires Set ConnectionString"); + } + + await _IoTDB.Open(ConnectionStringBuilder.Compression, cancellationToken); + if (!_IoTDB.IsOpen()) + { + IoTDBException.ThrowExceptionForRC(-1, "Can't open IoTDB server."); + } + else + { + SetState(ConnectionState.Open); + } + } + + /// + /// Closes the connection to the database. Open transactions are rolled back. + /// + public override void Close() + { + CloseAsync().GetAwaiter().GetResult(); ; + } + public override async Task CloseAsync() + { + if (State != ConnectionState.Closed) + await _IoTDB.Close(); + Transaction?.Dispose(); + _nowdatabase = string.Empty; + foreach (var reference in _commands) + { + if (reference.TryGetTarget(out var command)) + { + command.Dispose(); + } + } + _commands.Clear(); + SetState(ConnectionState.Closed); + } + + /// + /// Releases any resources used by the connection and closes it. + /// + /// + /// true to release managed and unmanaged resources; false to release only unmanaged resources. + /// + protected override void Dispose(bool disposing) + { + if (disposing) + { + Close(); + } + base.Dispose(disposing); + } + + /// + /// Creates a new command associated with the connection. + /// + /// The new command. + /// + /// The command's property will also be set to the current + /// transaction. + /// + public new virtual IoTDBCommand CreateCommand() + => new IoTDBCommand { Connection = this, CommandTimeout = DefaultTimeout, Transaction = Transaction }; + public virtual IoTDBCommand CreateCommand(string commandtext) + => new IoTDBCommand { Connection = this, CommandText = commandtext, CommandTimeout = DefaultTimeout, Transaction = Transaction }; + + /// + /// Creates a new command associated with the connection. + /// + /// The new command. + protected override DbCommand CreateDbCommand() + => CreateCommand(); + + internal void AddCommand(IoTDBCommand command) + => _commands.Add(new WeakReference(command)); + + internal void RemoveCommand(IoTDBCommand command) + { + for (var i = _commands.Count - 1; i >= 0; i--) + { + if (!_commands[i].TryGetTarget(out var item) + || item == command) + { + _commands.RemoveAt(i); + } + } + } + + /// + /// Create custom collation. + /// + /// Name of the collation. + /// Method that compares two strings. + public virtual void CreateCollation(string name, Comparison comparison) + => CreateCollation(name, null, comparison != null ? (_, s1, s2) => comparison(s1, s2) : (Func)null); + + /// + /// Create custom collation. + /// + /// The type of the state object. + /// Name of the collation. + /// State object passed to each invocation of the collation. + /// Method that compares two strings, using additional state. + public virtual void CreateCollation(string name, T state, Func comparison) + { + if (string.IsNullOrEmpty(name)) + { + throw new ArgumentNullException(nameof(name)); + } + + if (State != ConnectionState.Open) + { + throw new InvalidOperationException($"CallRequiresOpenConnection{nameof(CreateCollation)}"); + } + + + } + + /// + /// Begins a transaction on the connection. + /// + /// The transaction. + public new virtual IoTDBTransaction BeginTransaction() + => BeginTransaction(IsolationLevel.Unspecified); + + /// + /// Begins a transaction on the connection. + /// + /// The isolation level of the transaction. + /// The transaction. + protected override DbTransaction BeginDbTransaction(IsolationLevel isolationLevel) + => BeginTransaction(isolationLevel); + + /// + /// Begins a transaction on the connection. + /// + /// The isolation level of the transaction. + /// The transaction. + public new virtual IoTDBTransaction BeginTransaction(IsolationLevel isolationLevel) + { + if (State != ConnectionState.Open) + { + throw new InvalidOperationException($"CallRequiresOpenConnection{nameof(BeginTransaction)}"); + } + if (Transaction != null) + { + throw new InvalidOperationException($"ParallelTransactionsNotSupported"); + } + + return Transaction = new IoTDBTransaction(this, isolationLevel); + } + internal string _nowdatabase = string.Empty; + + internal bool SelectedDataBase => _nowdatabase != string.Empty ; + + public override string Database => throw new NotSupportedException(); + + /// + /// Changes the current database. + /// + /// The name of the database to use. + /// + public override void ChangeDatabase(string databaseName) + { + throw new NotSupportedException(); + } + /// + /// + /// + /// + /// + /// + public bool DatabaseExists(string databaseName) + { + throw new NotSupportedException(); + } + + + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs b/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs new file mode 100644 index 0000000..598b802 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs @@ -0,0 +1,387 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Data.Common; +using System.Diagnostics; +using System.Globalization; +using System.Reflection; + +namespace Apache.IoTDB.Data +{ + /// + /// Provides a simple way to create and manage the contents of connection strings used by + /// . + /// + public class IoTDBConnectionStringBuilder : DbConnectionStringBuilder + { + private const string DataSourceKeyword = "DataSource"; + private const string UserNameKeyword = "Username"; + private const string PasswordKeyword = "Password"; + private const string PortKeyword = "Port"; + private const string FetchSizeKeyword = "FetchSize"; + private const string CompressionKeyword = "Compression"; + private const string PoolSizeKeyword = "PoolSize"; + private const string ZoneIdKeyword = "ZoneId"; + + private enum Keywords + { + DataSource, + Username, + Password, + Port, + FetchSize, + Compression, + PoolSize, + ZoneId + } + + private static readonly IReadOnlyList _validKeywords; + private static readonly IReadOnlyDictionary _keywords; + + private string _dataSource = "127.0.0.1"; + private string _userName = "root"; + private string _password = "root"; + private bool _enableRpcCompression = false; + private int _fetchSize = 1800; + private string _zoneId = "UTC+08:00"; + private int _port = 6667; + private int _poolSize =8; + static IoTDBConnectionStringBuilder() + { + var validKeywords = new string[8]; + validKeywords[(int)Keywords.DataSource] = DataSourceKeyword; + validKeywords[(int)Keywords.Username] = UserNameKeyword; + validKeywords[(int)Keywords.Password] = PasswordKeyword; + validKeywords[(int)Keywords.Port] = PortKeyword; + validKeywords[(int)Keywords.FetchSize] = FetchSizeKeyword; + validKeywords[(int)Keywords.Compression] = CompressionKeyword; + validKeywords[(int)Keywords.PoolSize] = PoolSizeKeyword; + validKeywords[(int)Keywords.ZoneId] = ZoneIdKeyword; + _validKeywords = validKeywords; + + _keywords = new Dictionary(6, StringComparer.OrdinalIgnoreCase) + { + [DataSourceKeyword] = Keywords.DataSource, + [UserNameKeyword] = Keywords.Username, + [PasswordKeyword] = Keywords.Password, + [PortKeyword] = Keywords.Port, + [FetchSizeKeyword] = Keywords.FetchSize, + [CompressionKeyword] = Keywords.Compression, + [PoolSizeKeyword] = Keywords.PoolSize, + [ZoneIdKeyword] = Keywords.ZoneId + }; + } + + /// + /// Initializes a new instance of the class. + /// + public IoTDBConnectionStringBuilder() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// + /// The initial connection string the builder will represent. Can be null. + /// + public IoTDBConnectionStringBuilder(string connectionString) + => ConnectionString = connectionString; + + /// + /// Gets or sets the database file. + /// + /// The database file. + public virtual string DataSource + { + get => _dataSource; + set => base[DataSourceKeyword] = _dataSource = value; + } + public virtual string Username + { + get => _userName; + set => base[UserNameKeyword] = _userName = value; + } + + public virtual string Password + { + get => _password; + set => base[PasswordKeyword] = _password = value; + } + public virtual int Port + { + get => _port; + set => base[PortKeyword] = _port = value; + } + + public virtual int FetchSize + { + get => _fetchSize; + set => base[FetchSizeKeyword] = _fetchSize = value; + } + public virtual bool Compression + { + get => _enableRpcCompression; + set => base[CompressionKeyword] = _enableRpcCompression = value; + } + public virtual int PoolSize + { + get => _poolSize; + set => base[PoolSizeKeyword] = _poolSize = value; + } + public virtual string ZoneId + { + get => _zoneId; + set => base[ZoneIdKeyword] = _zoneId = value; + } + + + + /// + /// Gets a collection containing the keys used by the connection string. + /// + /// A collection containing the keys used by the connection string. + public override ICollection Keys + => new ReadOnlyCollection((string[])_validKeywords); + + /// + /// Gets a collection containing the values used by the connection string. + /// + /// A collection containing the values used by the connection string. + public override ICollection Values + { + get + { + var values = new object[_validKeywords.Count]; + for (var i = 0; i < _validKeywords.Count; i++) + { + values[i] = GetAt((Keywords)i); + } + + return new ReadOnlyCollection(values); + } + } + + + + + + /// + /// Gets or sets the value associated with the specified key. + /// + /// The key. + /// The value. + public override object this[string keyword] + { + get => GetAt(GetIndex(keyword)); + set + { + if (value == null) + { + Remove(keyword); + + return; + } + + switch (GetIndex(keyword)) + { + case Keywords.DataSource: + DataSource = Convert.ToString(value, CultureInfo.InvariantCulture); + return; + case Keywords.Username: + Username= Convert.ToString(value, CultureInfo.InvariantCulture); + return; + case Keywords.Password: + Password = Convert.ToString(value, CultureInfo.InvariantCulture); + return; + + case Keywords.Port: + Port = Convert.ToInt32(value, CultureInfo.InvariantCulture); + return; + case Keywords.FetchSize: + FetchSize = Convert.ToInt32(value, CultureInfo.InvariantCulture); + return; + case Keywords.Compression: + Compression = Convert.ToBoolean(value, CultureInfo.InvariantCulture); + return; + case Keywords.PoolSize: + PoolSize = Convert.ToInt32(value, CultureInfo.InvariantCulture); + return; + case Keywords.ZoneId: + ZoneId = Convert.ToString(value, CultureInfo.InvariantCulture); + return; + default: + Debug.WriteLine(false, "Unexpected keyword: " + keyword); + return; + } + } + } + + private static TEnum ConvertToEnum(object value) + where TEnum : struct + { + if (value is string stringValue) + { + return (TEnum)Enum.Parse(typeof(TEnum), stringValue, ignoreCase: true); + } + + if (value is TEnum enumValue) + { + enumValue = (TEnum)value; + } + else if (value.GetType().GetTypeInfo().IsEnum) + { + throw new ArgumentException($"ConvertFailed{value.GetType()},{typeof(TEnum)}"); + } + else + { + enumValue = (TEnum)Enum.ToObject(typeof(TEnum), value); + } + + if (!Enum.IsDefined(typeof(TEnum), enumValue)) + { + throw new ArgumentOutOfRangeException( + nameof(value), + value, + $"Invalid Enum Value{typeof(TEnum)},{enumValue}"); + } + + return enumValue; + } + + /// + /// Clears the contents of the builder. + /// + public override void Clear() + { + base.Clear(); + + for (var i = 0; i < _validKeywords.Count; i++) + { + Reset((Keywords)i); + } + } + + /// + /// Determines whether the specified key is used by the connection string. + /// + /// The key to look for. + /// true if it is use; otherwise, false. + public override bool ContainsKey(string keyword) + => _keywords.ContainsKey(keyword); + + /// + /// Removes the specified key and its value from the connection string. + /// + /// The key to remove. + /// true if the key was used; otherwise, false. + public override bool Remove(string keyword) + { + if (!_keywords.TryGetValue(keyword, out var index) + || !base.Remove(_validKeywords[(int)index])) + { + return false; + } + + Reset(index); + + return true; + } + + /// + /// Determines whether the specified key should be serialized into the connection string. + /// + /// The key to check. + /// true if it should be serialized; otherwise, false. + public override bool ShouldSerialize(string keyword) + => _keywords.TryGetValue(keyword, out var index) && base.ShouldSerialize(_validKeywords[(int)index]); + + /// + /// Gets the value of the specified key if it is used. + /// + /// The key. + /// The value. + /// true if the key was used; otherwise, false. + public override bool TryGetValue(string keyword, out object value) + { + if (!_keywords.TryGetValue(keyword, out var index)) + { + value = null; + + return false; + } + + value = GetAt(index); + + return true; + } + + private object GetAt(Keywords index) + { + + switch (index) + { + case Keywords.DataSource: + return DataSource; + case Keywords.Password: + return Password; + case Keywords.Username: + return Username; + + case Keywords.Port: + return Port; + case Keywords.FetchSize: + return FetchSize; + case Keywords.Compression: + return Compression; + case Keywords.PoolSize: + return PoolSize; + case Keywords.ZoneId: + return ZoneId; + default: + Debug.Assert(false, "Unexpected keyword: " + index); + return null; + } + } + + private static Keywords GetIndex(string keyword) + => !_keywords.TryGetValue(keyword, out var index) + ? throw new ArgumentException($"Keyword Not Supported{keyword}") + : index; + + private void Reset(Keywords index) + { + switch (index) + { + case Keywords.DataSource: + _dataSource = "127.0.0.1"; + return; + case Keywords.Password: + _password = "root"; + return; + case Keywords.Username: + _userName = "root"; + return; + case Keywords.Port: + _port=6667; + return; + case Keywords.FetchSize: + _fetchSize = 1800; + return; + case Keywords.Compression: + _enableRpcCompression = false; + return; + case Keywords.PoolSize: + _poolSize = 8; + return; + case Keywords.ZoneId: + _zoneId = "UTC+08:00"; + return; + default: + Debug.Assert(false, "Unexpected keyword: " + index); + return; + } + } + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBDataReader.cs b/src/Apache.IoTDB.Data/IoTDBDataReader.cs new file mode 100644 index 0000000..c9c7021 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBDataReader.cs @@ -0,0 +1,530 @@ + + +using Apache.IoTDB.DataStructure; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Data; +using System.Data.Common; +using System.IO; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; + + +namespace Apache.IoTDB.Data +{ + /// + /// Provides methods for reading the result of a command executed against a IoTDB database. + /// + public class IoTDBDataReader : DbDataReader + { + private readonly SessionPool _IoTDB; + private readonly IoTDBCommand _command; + private bool _hasRows; + private readonly int _recordsAffected; + private bool _closed; + private readonly List _metas; + private bool _closeConnection; + + private int _fieldCount; + + RowRecord rowdata= null; + + + SessionDataSet _dataSet; + internal IoTDBDataReader(IoTDBCommand IoTDBCommand, SessionDataSet dataSet, bool closeConnection) + { + _IoTDB = IoTDBCommand.Connection._IoTDB; + _command = IoTDBCommand; + _closeConnection = closeConnection; + _fieldCount = dataSet.ColumnNames.Count; + _hasRows = dataSet.FetchSize > 0; + _recordsAffected = dataSet.FetchSize; + _closed = _closeConnection; + _metas = dataSet.ColumnNames; + _dataSet = dataSet; + } + + /// + /// Gets the depth of nesting for the current row. Always zero. + /// + /// The depth of nesting for the current row. + public override int Depth => 0; + + /// + /// Gets the number of columns in the current row. + /// + /// The number of columns in the current row. + public override int FieldCount => _fieldCount; + + /// + /// Gets a value indicating whether the data reader contains any rows. + /// + /// A value indicating whether the data reader contains any rows. + public override bool HasRows + => _hasRows; + + + /// + /// Gets a value indicating whether the data reader is closed. + /// + /// A value indicating whether the data reader is closed. + public override bool IsClosed + => _closed; + + /// + /// Gets the number of rows inserted, updated, or deleted. -1 for SELECT statements. + /// + /// The number of rows inserted, updated, or deleted. + public override int RecordsAffected + { + get + { + return _recordsAffected; ; + } + } + + /// + /// Gets the value of the specified column. + /// + /// The name of the column. The value is case-sensitive. + /// The value. + public override object this[string name] + => this[GetOrdinal(name)]; + + /// + /// Gets the value of the specified column. + /// + /// The zero-based column ordinal. + /// The value. + public override object this[int ordinal] + => GetValue(ordinal); + + /// + /// Gets an enumerator that can be used to iterate through the rows in the data reader. + /// + /// The enumerator. + public override IEnumerator GetEnumerator() + => new DbEnumerator(this, closeReader: false); + + + /// + /// Advances to the next row in the result set. + /// + /// true if there are more rows; otherwise, false. + public override bool Read() + { + if (_closed) + { + throw new InvalidOperationException($"DataReaderClosed{nameof(Read)}"); + } + if (_dataSet.HasNext()) + { + rowdata = _dataSet.Next(); + } + else + { + rowdata = null; + } + return rowdata != null; + + } + + /// + /// Advances to the next result set for batched statements. + /// + /// true if there are more result sets; otherwise, false. + public override bool NextResult() + { + return Read(); + } + + /// + /// Closes the data reader. + /// + public override void Close() + => Dispose(true); + + /// + /// Releases any resources used by the data reader and closes it. + /// + /// + /// true to release managed and unmanaged resources; false to release only unmanaged resources. + /// + protected override void Dispose(bool disposing) + { + if (!disposing) + { + return; + } + _dataSet.Close().GetAwaiter().GetResult(); + _command.DataReader = null; + + if (_closeConnection ) + { + _command.Connection.Close(); + _closed = true; + } + rowdata = null; + + } + + /// + /// Gets the name of the specified column. + /// + /// The zero-based column ordinal. + /// The name of the column. + public override string GetName(int ordinal) + { + return rowdata.Measurements[ordinal]; + } + + /// + /// Gets the ordinal of the specified column. + /// + /// The name of the column. + /// The zero-based column ordinal. + public override int GetOrdinal(string name) + => rowdata.Measurements.IndexOf( name); + + public override string GetDataTypeName(int ordinal) + { + return GetFieldType(ordinal).Name; + } + + /// + /// Gets the data type of the specified column. + /// + /// The zero-based column ordinal. + /// The data type of the column. + public override Type GetFieldType(int ordinal) + { + if (_metas == null || ordinal >= _metas.Count) + { + throw new InvalidOperationException($"DataReaderClosed{nameof(GetFieldType)}"); + } + + return rowdata.GetCrlType(ordinal); + } + + /// + /// Gets a value indicating whether the specified column is . + /// + /// The zero-based column ordinal. + /// true if the specified column is ; otherwise, false. + public override bool IsDBNull(int ordinal) + => GetValue(ordinal) == DBNull.Value; + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override bool GetBoolean(int ordinal) => GetFieldValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override byte GetByte(int ordinal) => GetFieldValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override char GetChar(int ordinal) => GetFieldValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override DateTime GetDateTime(int ordinal) + { + return GetFieldValue(ordinal); + } + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public virtual DateTimeOffset GetDateTimeOffset(int ordinal) + { + return GetDateTime(ordinal); + } + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public virtual TimeSpan GetTimeSpan(int ordinal) + { + var val = GetInt64(ordinal); + return TimeSpan.FromMilliseconds(val); + } + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override decimal GetDecimal(int ordinal) => (decimal)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override double GetDouble(int ordinal) => (double)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override float GetFloat(int ordinal) => (float)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override Guid GetGuid(int ordinal) => GetFieldValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override short GetInt16(int ordinal) => (short)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public ushort GetUInt16(int ordinal) => (ushort)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override int GetInt32(int ordinal) => (int)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public uint GetUInt32(int ordinal) => (uint)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override long GetInt64(int ordinal) => (long)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public ulong GetUInt64(int ordinal) => (ulong)GetValue(ordinal); + + /// + /// Gets the value of the specified column as a . + /// + /// The zero-based column ordinal. + /// The value of the column. + public override string GetString(int ordinal) => (string)GetValue(ordinal); + + + /// + /// Reads a stream of bytes from the specified column. Not supported. + /// + /// The zero-based column ordinal. + /// The index from which to begin the read operation. + /// The buffer into which the data is copied. + /// The index to which the data will be copied. + /// The maximum number of bytes to read. + /// The actual number of bytes read. + public override long GetBytes(int ordinal, long dataOffset, byte[] buffer, int bufferOffset, int length) + { + throw new NotSupportedException(); + } + + /// + /// Reads a stream of characters from the specified column. Not supported. + /// + /// The zero-based column ordinal. + /// The index from which to begin the read operation. + /// The buffer into which the data is copied. + /// The index to which the data will be copied. + /// The maximum number of characters to read. + /// The actual number of characters read. + public override long GetChars(int ordinal, long dataOffset, char[] buffer, int bufferOffset, int length) + => throw new NotSupportedException(); + + /// + /// Retrieves data as a Stream. Not supported. + /// + /// The zero-based column ordinal. + /// The returned object. + public override Stream GetStream(int ordinal) + => throw new NotSupportedException(); + /// + /// Gets the value of the specified column. + /// + /// The type of the value. + /// The zero-based column ordinal. + /// The value of the column. + public override T GetFieldValue(int ordinal) => (T)Convert.ChangeType(GetValue(ordinal), typeof(T)); + + /// + /// Gets the value of the specified column. + /// + /// The zero-based column ordinal. + /// The value of the column. + public override object GetValue(int ordinal) + { + object result ; + var data = rowdata.Values[ordinal]; + if (data !=null) + { + result = data; + } + else + { + result = DBNull.Value; + } + return result; + } + + + + /// + /// Gets the column values of the current row. + /// + /// An array into which the values are copied. + /// The number of values copied into the array. + public override int GetValues(object[] values) + { + int count = 0; + for (int i = 0; i < _fieldCount; i++) + { + var obj = rowdata.Values[i]; + if (obj != null ) + { + values[i] = obj; + count++; + } + } + return count; + } + + + /// + /// Returns a System.Data.DataTable that describes the column metadata of the System.Data.Common.DbDataReader. + /// + /// A System.Data.DataTable that describes the column metadata. + public override DataTable GetSchemaTable() + { + if (_dataSet.HasNext()) + { + rowdata = _dataSet.GetRow(); + } + var schemaTable = new DataTable("SchemaTable"); + if (_metas != null && rowdata !=null) + { + var ColumnName = new DataColumn(SchemaTableColumn.ColumnName, typeof(string)); + var ColumnOrdinal = new DataColumn(SchemaTableColumn.ColumnOrdinal, typeof(int)); + var ColumnSize = new DataColumn(SchemaTableColumn.ColumnSize, typeof(int)); + var NumericPrecision = new DataColumn(SchemaTableColumn.NumericPrecision, typeof(short)); + var NumericScale = new DataColumn(SchemaTableColumn.NumericScale, typeof(short)); + + var DataType = new DataColumn(SchemaTableColumn.DataType, typeof(Type)); + var DataTypeName = new DataColumn("DataTypeName", typeof(string)); + + var IsLong = new DataColumn(SchemaTableColumn.IsLong, typeof(bool)); + var AllowDBNull = new DataColumn(SchemaTableColumn.AllowDBNull, typeof(bool)); + + var IsUnique = new DataColumn(SchemaTableColumn.IsUnique, typeof(bool)); + var IsKey = new DataColumn(SchemaTableColumn.IsKey, typeof(bool)); + var IsAutoIncrement = new DataColumn(SchemaTableOptionalColumn.IsAutoIncrement, typeof(bool)); + + var BaseCatalogName = new DataColumn(SchemaTableOptionalColumn.BaseCatalogName, typeof(string)); + var BaseSchemaName = new DataColumn(SchemaTableColumn.BaseSchemaName, typeof(string)); + var BaseTableName = new DataColumn(SchemaTableColumn.BaseTableName, typeof(string)); + var BaseColumnName = new DataColumn(SchemaTableColumn.BaseColumnName, typeof(string)); + + var BaseServerName = new DataColumn(SchemaTableOptionalColumn.BaseServerName, typeof(string)); + var IsAliased = new DataColumn(SchemaTableColumn.IsAliased, typeof(bool)); + var IsExpression = new DataColumn(SchemaTableColumn.IsExpression, typeof(bool)); + + var columns = schemaTable.Columns; + + columns.Add(ColumnName); + columns.Add(ColumnOrdinal); + columns.Add(ColumnSize); + columns.Add(NumericPrecision); + columns.Add(NumericScale); + columns.Add(IsUnique); + columns.Add(IsKey); + columns.Add(BaseServerName); + columns.Add(BaseCatalogName); + columns.Add(BaseColumnName); + columns.Add(BaseSchemaName); + columns.Add(BaseTableName); + columns.Add(DataType); + columns.Add(DataTypeName); + columns.Add(AllowDBNull); + columns.Add(IsAliased); + columns.Add(IsExpression); + columns.Add(IsAutoIncrement); + columns.Add(IsLong); + + for (var i = 0; i < rowdata.Measurements.Count; i++) + { + var schemaRow = schemaTable.NewRow(); + + var columnName = rowdata.Measurements[i] ; + schemaRow[ColumnName] = columnName; + schemaRow[ColumnOrdinal] = i; + + schemaRow[NumericPrecision] = DBNull.Value; + schemaRow[NumericScale] = DBNull.Value; + schemaRow[BaseServerName] = _command.Connection.DataSource; + + schemaRow[BaseColumnName] = columnName; + schemaRow[BaseSchemaName] = DBNull.Value; + var tableName = string.Empty; + schemaRow[BaseTableName] = tableName; + schemaRow[DataType] = GetFieldType(i); + schemaRow[DataTypeName] = GetDataTypeName(i); + schemaRow[IsExpression] = columnName == null; + schemaRow[IsLong] = DBNull.Value; + schemaRow[IsKey]= false; + schemaRow[AllowDBNull] = true; + + //if (i == 0) + //{ + // schemaRow[IsKey] = true; + // schemaRow[DataType] = GetFieldType(i); + // schemaRow[DataTypeName] = GetDataTypeName(i); + //} + schemaTable.Rows.Add(schemaRow); + } + + } + + return schemaTable; + } + } +} \ No newline at end of file diff --git a/src/Apache.IoTDB.Data/IoTDBException.cs b/src/Apache.IoTDB.Data/IoTDBException.cs new file mode 100644 index 0000000..c9fd68a --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBException.cs @@ -0,0 +1,69 @@ + + +using System; +using System.Data.Common; + + +namespace Apache.IoTDB.Data +{ + /// + /// Represents a IoTDB error. + /// + public class IoTDBException : DbException + { + IoTDBErrorResult _IoTDBError; + + public IoTDBException(IoTDBErrorResult IoTDBError) : base(IoTDBError.Error, null) + { + _IoTDBError = IoTDBError; + base.HResult = _IoTDBError.Code; + } + + public IoTDBException(IoTDBErrorResult IoTDBError, Exception ex) : base(IoTDBError.Error, ex) + { + _IoTDBError = IoTDBError; + base.HResult = _IoTDBError.Code; + } + + + + + + public override string Message => _IoTDBError?.Error; + public override int ErrorCode => (int) _IoTDBError?.Code; + /// + /// Throws an exception with a specific IoTDB error code value. + /// + /// The IoTDB error code corresponding to the desired exception. + /// A handle to database connection. + /// + /// No exception is thrown for non-error result codes. + /// + public static void ThrowExceptionForRC(string _commandText, IoTDBErrorResult IoTDBError) + { + var te = new IoTDBException(IoTDBError); + te.Data.Add("commandText", _commandText); + throw te; + } + public static void ThrowExceptionForRC( IoTDBErrorResult IoTDBError) + { + var te = new IoTDBException(IoTDBError); + throw te; + } + public static void ThrowExceptionForRC(IntPtr _IoTDB) + { + var te = new IoTDBException(new IoTDBErrorResult() { }); + throw te; + } + public static void ThrowExceptionForRC(int code, string message, Exception ex) + { + var te = new IoTDBException(new IoTDBErrorResult() { Code = code, Error = message }, ex); + throw te; + } + public static void ThrowExceptionForRC(int code, string message) + { + var te = new IoTDBException(new IoTDBErrorResult() { Code = code, Error = message }); + throw te; + } + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBFactory.cs b/src/Apache.IoTDB.Data/IoTDBFactory.cs new file mode 100644 index 0000000..1bb19bc --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBFactory.cs @@ -0,0 +1,48 @@ + +using System.Data.Common; + +namespace Apache.IoTDB.Data +{ + /// + /// Creates instances of various Maikebing.Data.IoTDB classes. + /// + public class IoTDBFactory : DbProviderFactory + { + private IoTDBFactory() + { + } + + /// + /// The singleton instance. + /// + public static readonly IoTDBFactory Instance = new IoTDBFactory(); + + /// + /// Creates a new command. + /// + /// The new command. + public override DbCommand CreateCommand() + => new IoTDBCommand(); + + /// + /// Creates a new connection. + /// + /// The new connection. + public override DbConnection CreateConnection() + => new IoTDBConnection(); + + /// + /// Creates a new connection string builder. + /// + /// The new connection string builder. + public override DbConnectionStringBuilder CreateConnectionStringBuilder() + => new IoTDBConnectionStringBuilder(); + + /// + /// Creates a new parameter. + /// + /// The new parameter. + public override DbParameter CreateParameter() + => new IoTDBParameter(); + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBParameter.cs b/src/Apache.IoTDB.Data/IoTDBParameter.cs new file mode 100644 index 0000000..eba3a8d --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBParameter.cs @@ -0,0 +1,208 @@ + +using System; +using System.Data; +using System.Data.Common; + +namespace Apache.IoTDB.Data +{ + // TODO: Truncate to specified size + // TODO: Infer type and size from value + /// + /// Represents a parameter and its value in a . + /// + /// Due to IoTDB's dynamic type system, parameter values are not converted. + public class IoTDBParameter : DbParameter + { + private string _parameterName = string.Empty; + private object _value; + private int? _size; + private IoTDBType? _IoTDBType; + + /// + /// Initializes a new instance of the class. + /// + public IoTDBParameter() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// The name of the parameter. + /// The value of the parameter. Can be null. + public IoTDBParameter(string name, object value) + { + if (string.IsNullOrEmpty(name)) + { + throw new ArgumentNullException(nameof(name)); + } + + _parameterName = name; + Value = value; + } + + /// + /// Initializes a new instance of the class. + /// + /// The name of the parameter. + /// The type of the parameter. + public IoTDBParameter(string name, IoTDBType type) + { + if (string.IsNullOrEmpty(name)) + { + throw new ArgumentNullException(nameof(name)); + } + + _parameterName = name; + IoTDBType = type; + } + + /// + /// Initializes a new instance of the class. + /// + /// The name of the parameter. + /// The type of the parameter. + /// The maximum size, in bytes, of the parameter. + public IoTDBParameter(string name, IoTDBType type, int size) + : this(name, type) + => Size = size; + + /// + /// Initializes a new instance of the class. + /// + /// The name of the parameter. + /// The type of the parameter. + /// The maximum size, in bytes, of the parameter. + /// The source column used for loading the value. Can be null. + public IoTDBParameter(string name, IoTDBType type, int size, string sourceColumn) + : this(name, type, size) + => SourceColumn = sourceColumn; + + /// + /// Gets or sets the type of the parameter. + /// + /// The type of the parameter. + /// Due to IoTDB's dynamic type system, parameter values are not converted. + + public override DbType DbType { get; set; } = DbType.String; + + /// + /// Gets or sets the IoTDB type of the parameter. + /// + /// The IoTDB type of the parameter. + /// Due to IoTDB's dynamic type system, parameter values are not converted. + + public virtual IoTDBType IoTDBType + { + get => _IoTDBType.GetValueOrDefault();//?? IoTDBValueBinder.GetIoTDBType(_value); + set => _IoTDBType = value; + } + + /// + /// Gets or sets the direction of the parameter. Only is supported. + /// + /// The direction of the parameter. + public override ParameterDirection Direction + { + get => ParameterDirection.Input; + set + { + if (value != ParameterDirection.Input) + { + throw new ArgumentException($"InvalidParameterDirection{value}"); + } + } + } + + /// + /// Gets or sets a value indicating whether the parameter is nullable. + /// + /// A value indicating whether the parameter is nullable. + public override bool IsNullable { get; set; } + + /// + /// Gets or sets the name of the parameter. + /// + /// The name of the parameter. + public override string ParameterName + { + get => _parameterName; + set + { + if (string.IsNullOrEmpty(value)) + { + throw new ArgumentNullException(nameof(value)); + } + + _parameterName = value; + } + } + + /// + /// Gets or sets the maximum size, in bytes, of the parameter. + /// + /// The maximum size, in bytes, of the parameter. + public override int Size + { + get => _size + ?? (_value is string stringValue + ? stringValue.Length + : _value is byte[] byteArray + ? byteArray.Length + : 0); + + set + { + if (value < -1) + { + // NB: Message is provided by the framework + throw new ArgumentOutOfRangeException(nameof(value), value, message: null); + } + + _size = value; + } + } + + /// + /// Gets or sets the source column used for loading the value. + /// + /// The source column used for loading the value. + public override string SourceColumn { get; set; } = string.Empty; + + /// + /// Gets or sets a value indicating whether the source column is nullable. + /// + /// A value indicating whether the source column is nullable. + public override bool SourceColumnNullMapping { get; set; } + + /// + /// Gets or sets the value of the parameter. + /// + /// The value of the parameter. + /// Due to IoTDB's dynamic type system, parameter values are not converted. + public override object Value + { + get => _value; + set { _value = value; } + } +#if NET45 + public override DataRowVersion SourceVersion { get; set; } +#endif + /// + /// Resets the property to its original value. + /// + public override void ResetDbType() + => ResetIoTDBType(); + + /// + /// Resets the property to its original value. + /// + public virtual void ResetIoTDBType() + { + DbType = DbType.String; + IoTDBType = IoTDBType.Text; + } + + + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs b/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs new file mode 100644 index 0000000..e1c919f --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs @@ -0,0 +1,352 @@ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data.Common; +using System.Linq; +using System.Reflection; + +namespace Apache.IoTDB.Data +{ + /// + /// Represents a collection of IoTDB parameters. + /// + public class IoTDBParameterCollection : DbParameterCollection + { + private readonly List _parameters = new List(); + + /// + /// Initializes a new instance of the class. + /// + protected internal IoTDBParameterCollection() + { + } + + /// + /// Gets the number of items in the collection. + /// + /// The number of items in the collection. + public override int Count + => _parameters.Count; + + /// + /// Gets the object used to synchronize access to the collection. + /// + /// The object used to synchronize access to the collection. + public override object SyncRoot + => ((ICollection)_parameters).SyncRoot; + +#if NET45 + public override bool IsFixedSize => throw null; + + public override bool IsReadOnly => throw null; + + public override bool IsSynchronized => ((ICollection)_parameters).IsSynchronized; +#endif + /// + /// Gets or sets the parameter at the specified index. + /// + /// The zero-based index of the parameter. + /// The parameter. + public new virtual IoTDBParameter this[int index] + { + get => _parameters[index]; + set + { + if (_parameters[index] == value) + { + return; + } + + _parameters[index] = value; + } + } + + /// + /// Gets or sets the parameter with the specified name. + /// + /// The name of the parameter. + /// The parameter. + public new virtual IoTDBParameter this[string parameterName] + { + get => this[IndexOfChecked(parameterName)]; + set => this[IndexOfChecked(parameterName)] = value; + } + + /// + /// Adds a parameter to the collection. + /// + /// The parameter to add. Must be a . + /// The zero-based index of the parameter that was added. + public override int Add(object value) + { + var tpv = (IoTDBParameter)value; + _parameters.Add(tpv); + return Count - 1; + } + + /// + /// Adds a parameter to the collection. + /// + /// The parameter to add. + /// The parameter that was added. + public virtual IoTDBParameter Add(IoTDBParameter value) + { + _parameters.Add(value); + + return value; + } + + /// + /// Adds a parameter to the collection. + /// + /// The name of the parameter. + /// The IoTDB type of the parameter. + /// The parameter that was added. + public virtual IoTDBParameter Add(string parameterName, IoTDBType type) + => Add(new IoTDBParameter(parameterName, type)); + + /// + /// Adds a parameter to the collection. + /// + /// The name of the parameter. + /// The IoTDB type of the parameter. + /// The maximum size, in bytes, of the parameter. + /// The parameter that was added. + public virtual IoTDBParameter Add(string parameterName, IoTDBType type, int size) + => Add(new IoTDBParameter(parameterName, type, size)); + + /// + /// Adds a parameter to the collection. + /// + /// The name of the parameter. + /// The IoTDB type of the parameter. + /// The maximum size, in bytes, of the parameter. + /// + /// The source column used for loading the value of the parameter. Can be null. + /// + /// The parameter that was added. + public virtual IoTDBParameter Add(string parameterName, IoTDBType type, int size, string sourceColumn) + => Add(new IoTDBParameter(parameterName, type, size, sourceColumn)); + + /// + /// Adds multiple parameters to the collection. + /// + /// + /// An array of parameters to add. They must be objects. + /// + public override void AddRange(Array values) + => AddRange(values.Cast()); + + /// + /// Adds multiple parameters to the collection. + /// + /// The parameters to add. + public virtual void AddRange(IEnumerable values) + => _parameters.AddRange(values); + + /// + /// Adds a parameter to the collection. + /// + /// The name of the parameter. + /// The value of the parameter. Can be null. + /// The parameter that was added. + public virtual IoTDBParameter AddWithValue(string parameterName, object value) + { + var parameter = new IoTDBParameter(parameterName, value); + Add(parameter); + + return parameter; + } + /// + /// Adds a parameter to the collection. + /// + /// The name of the parameter. + /// The value of the parameter. Can be null. + /// The parameter that was added. + public virtual IoTDBParameter AddWithValue( object value) + { + var parameter = new IoTDBParameter(Guid.NewGuid().ToString(), value); + Add(parameter); + return parameter; + } + /// + /// Removes all parameters from the collection. + /// + public override void Clear() + => _parameters.Clear(); + + /// + /// Gets a value indicating whether the collection contains the specified parameter. + /// + /// The parameter to look for. Must be a . + /// true if the collection contains the parameter; otherwise, false. + public override bool Contains(object value) + => Contains((IoTDBParameter)value); + + /// + /// Gets a value indicating whether the collection contains the specified parameter. + /// + /// The parameter to look for. + /// true if the collection contains the parameter; otherwise, false. + public virtual bool Contains(IoTDBParameter value) + => _parameters.Contains(value); + + /// + /// Gets a value indicating whether the collection contains a parameter with the specified name. + /// + /// The name of the parameter. + /// true if the collection contains the parameter; otherwise, false. + public override bool Contains(string value) + => IndexOf(value) != -1; + + /// + /// Copies the collection to an array of parameters. + /// + /// + /// The array into which the parameters are copied. Must be an array of objects. + /// + /// The zero-based index to which the parameters are copied. + public override void CopyTo(Array array, int index) + => CopyTo((IoTDBParameter[])array, index); + + /// + /// Copies the collection to an array of parameters. + /// + /// The array into which the parameters are copied. + /// The zero-based index to which the parameters are copied. + public virtual void CopyTo(IoTDBParameter[] array, int index) + => _parameters.CopyTo(array, index); + + /// + /// Gets an enumerator that iterates through the collection. + /// + /// The enumerator. + public override IEnumerator GetEnumerator() + => _parameters.GetEnumerator(); + + /// + /// Gets a parameter at the specified index. + /// + /// The zero-based index of the parameter. + /// The parameter. + protected override DbParameter GetParameter(int index) + => this[index]; + + /// + /// Gets a parameter with the specified name. + /// + /// The name of the parameter. + /// The parameter. + protected override DbParameter GetParameter(string parameterName) + => GetParameter(IndexOfChecked(parameterName)); + + /// + /// Gets the index of the specified parameter. + /// + /// The parameter. Must be a . + /// The zero-based index of the parameter. + public override int IndexOf(object value) + => IndexOf((IoTDBParameter)value); + + /// + /// Gets the index of the specified parameter. + /// + /// The parameter. + /// The zero-based index of the parameter. + public virtual int IndexOf(IoTDBParameter value) + => _parameters.IndexOf(value); + + /// + /// Gets the index of the parameter with the specified name. + /// + /// The name of the parameter. + /// The zero-based index of the parameter or -1 if not found. + public override int IndexOf(string parameterName) + { + for (var index = 0; index < _parameters.Count; index++) + { + if (_parameters[index].ParameterName == parameterName) + { + return index; + } + } + + return -1; + } + + /// + /// Inserts a parameter into the collection at the specified index. + /// + /// The zero-based index at which the parameter should be inserted. + /// The parameter to insert. Must be a . + public override void Insert(int index, object value) + => Insert(index, (IoTDBParameter)value); + + /// + /// Inserts a parameter into the collection at the specified index. + /// + /// The zero-based index at which the parameter should be inserted. + /// The parameter to insert. + public virtual void Insert(int index, IoTDBParameter value) + => _parameters.Insert(index, value); + + /// + /// Removes a parameter from the collection. + /// + /// The parameter to remove. Must be a . + public override void Remove(object value) + => Remove((IoTDBParameter)value); + + /// + /// Removes a parameter from the collection. + /// + /// The parameter to remove. + public virtual void Remove(IoTDBParameter value) + => _parameters.Remove(value); + + /// + /// Removes a parameter from the collection at the specified index. + /// + /// The zero-based index of the parameter to remove. + public override void RemoveAt(int index) + => _parameters.RemoveAt(index); + + /// + /// Removes a parameter with the specified name from the collection. + /// + /// The name of the parameter to remove. + public override void RemoveAt(string parameterName) + => RemoveAt(IndexOfChecked(parameterName)); + + /// + /// Sets the parameter at the specified index. + /// + /// The zero-based index of the parameter to set. + /// The parameter. Must be a . + protected override void SetParameter(int index, DbParameter value) + => this[index] = (IoTDBParameter)value; + + /// + /// Sets the parameter with the specified name. + /// + /// The name of the parameter to set. + /// The parameter. Must be a . + protected override void SetParameter(string parameterName, DbParameter value) + => SetParameter(IndexOfChecked(parameterName), value); + + + + private int IndexOfChecked(string parameterName) + { + var index = IndexOf(parameterName); + if (index == -1) + { + throw new IndexOutOfRangeException($"ParameterNotFound{parameterName}"); + } + + return index; + } + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBResult.cs b/src/Apache.IoTDB.Data/IoTDBResult.cs new file mode 100644 index 0000000..5ebc023 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBResult.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Apache.IoTDB.Data +{ + public class IoTDBErrorResult + { + + public int Code { get; set; } + /// + /// + /// + public string Error { get; set; } + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBTransaction.cs b/src/Apache.IoTDB.Data/IoTDBTransaction.cs new file mode 100644 index 0000000..4ec7521 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBTransaction.cs @@ -0,0 +1,109 @@ + +using System; +using System.Data; +using System.Data.Common; + +namespace Apache.IoTDB.Data +{ + /// + /// Represents a transaction made against a IoTDB database. + /// + public class IoTDBTransaction : DbTransaction + { + private IoTDBConnection _connection; + private readonly IsolationLevel _isolationLevel; + private bool _completed; + private bool _externalRollback; + + internal IoTDBTransaction(IoTDBConnection connection, IsolationLevel isolationLevel) + { + _connection = connection; + _isolationLevel = isolationLevel; + } + + /// + /// Gets the connection associated with the transaction. + /// + /// The connection associated with the transaction. + public new virtual IoTDBConnection Connection + => _connection; + + /// + /// Gets the connection associated with the transaction. + /// + /// The connection associated with the transaction. + protected override DbConnection DbConnection + => Connection; + + internal bool ExternalRollback + => _externalRollback; + + /// + /// Gets the isolation level for the transaction. This cannot be changed if the transaction is completed or + /// closed. + /// + /// The isolation level for the transaction. + public override IsolationLevel IsolationLevel => IsolationLevel.Unspecified; + + + /// + /// Applies the changes made in the transaction. + /// + public override void Commit() + { + //if (_externalRollback || _completed || _connection.State != ConnectionState.Open) + //{ + // throw new InvalidOperationException(Resources.TransactionCompleted); + //} + + //_connection.ExecuteNonQuery("COMMIT;"); + Complete(); + } + + /// + /// Reverts the changes made in the transaction. + /// + public override void Rollback() + { + //if (_completed || _connection.State != ConnectionState.Open) + //{ + // throw new InvalidOperationException(Resources.TransactionCompleted); + //} + + RollbackInternal(); + } + + /// + /// Releases any resources used by the transaction and rolls it back. + /// + /// + /// true to release managed and unmanaged resources; false to release only unmanaged resources. + /// + protected override void Dispose(bool disposing) + { + if (disposing + && !_completed + && _connection.State == ConnectionState.Open) + { + RollbackInternal(); + } + } + + private void Complete() + { + if (_connection!=null)_connection.Transaction = null; + _connection = null; + _completed = true; + } + + private void RollbackInternal() + { + Complete(); + } + + private void RollbackExternal(object userData) + { + _externalRollback = true; + } + } +} diff --git a/src/Apache.IoTDB.Data/IoTDBType.cs b/src/Apache.IoTDB.Data/IoTDBType.cs new file mode 100644 index 0000000..603ef74 --- /dev/null +++ b/src/Apache.IoTDB.Data/IoTDBType.cs @@ -0,0 +1,30 @@ + +namespace Apache.IoTDB.Data +{ + /// + /// Represents the type affinities used by columns in IoTDB tables. + /// + + public enum IoTDBType + { + /// + /// A signed integer. + /// + Integer , + + /// + /// A floating point value. + /// + Real , + + /// + /// A text string. + /// + Text , + + /// + /// A blob of data. + /// + Blob + } +} diff --git a/src/Apache.IoTDB.Data/Properties/AssemblyInfo.cs b/src/Apache.IoTDB.Data/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8af8797 --- /dev/null +++ b/src/Apache.IoTDB.Data/Properties/AssemblyInfo.cs @@ -0,0 +1,5 @@ +using System; +using System.Collections.Generic; +using System.Runtime.CompilerServices; +using System.Text; +[assembly: InternalsVisibleTo("Apache.IoTDB.Tests")] diff --git a/src/Apache.IoTDB/Apache.IoTDB.csproj b/src/Apache.IoTDB/Apache.IoTDB.csproj index 11a29f6..4f3d160 100644 --- a/src/Apache.IoTDB/Apache.IoTDB.csproj +++ b/src/Apache.IoTDB/Apache.IoTDB.csproj @@ -1,9 +1,9 @@  - netstandard2.1 + net5.0;net6.0;netstandard2.1 - + diff --git a/src/Apache.IoTDB/DataStructure/RowRecord.cs b/src/Apache.IoTDB/DataStructure/RowRecord.cs index 1f4db75..1000d53 100644 --- a/src/Apache.IoTDB/DataStructure/RowRecord.cs +++ b/src/Apache.IoTDB/DataStructure/RowRecord.cs @@ -80,7 +80,90 @@ public List GetDataTypes() } return dataTypeValues; + } + public TypeCode GetTypeCode(int index) + { + TypeCode tSDataType = TypeCode.Empty; + var valueType = Values[index]; + switch (valueType) + { + case bool _: + tSDataType = TypeCode.Boolean; + break; + case int _: + tSDataType = TypeCode.Int32; + break; + case long _: + tSDataType = TypeCode.Int64; + break; + case float _: + tSDataType = TypeCode.Single; + break; + case double _: + tSDataType = TypeCode.Double; + break; + case string _: + tSDataType = TypeCode.String; + break; + } + return tSDataType; + } + public Type GetCrlType(int index) + { + Type tSDataType = typeof(object); + var valueType = Values[index]; + switch (valueType) + { + case bool _: + tSDataType = typeof( bool); + break; + case int _: + tSDataType = typeof(int); + break; + case long _: + tSDataType = typeof(long); + break; + case float _: + tSDataType = typeof(float); + break; + case double _: + tSDataType = typeof(double); + break; + case string _: + tSDataType = typeof(string); + break; + } + return tSDataType; } + + public TSDataType GetDataType(int index) + { + TSDataType tSDataType = TSDataType.NONE; + var valueType = Values[index]; + switch (valueType) + { + case bool _: + tSDataType = TSDataType.BOOLEAN; + break; + case int _: + tSDataType = TSDataType.INT32; + break; + case long _: + tSDataType = TSDataType.INT64; + break; + case float _: + tSDataType = TSDataType.FLOAT; + break; + case double _: + tSDataType = TSDataType.DOUBLE; + break; + case string _: + tSDataType = TSDataType.TEXT; + break; + } + return tSDataType; + } + public byte[] ToBytes() { diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index d414f80..5ee4bdf 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -86,14 +86,20 @@ public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQ _valueBufferLst.Add(new ByteBuffer(_queryDataset.ValueList[index])); _bitmapBufferLst.Add(new ByteBuffer(_queryDataset.BitmapList[index])); - } + } + } - + public List ColumnNames => _columnNames; + + private List GetColumnNames() - { - var nameLst = new List {"timestamp"}; - nameLst.AddRange(_columnNames); - return nameLst; + { + var lst = new List + { + "timestamp" + }; + lst.AddRange(_columnNames); + return lst; } public void ShowTableNames() @@ -138,6 +144,10 @@ public RowRecord Next() _hasCatchedResult = false; return _cachedRowRecord; } + public RowRecord GetRow() + { + return _cachedRowRecord; + } private TSDataType GetDataTypeFromStr(string str) { @@ -211,7 +221,7 @@ private void ConstructOneRow() else { localField = null; - fieldLst.Add("NULL"); + fieldLst.Add(DBNull.Value); } } } diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 5a85e2b..ff14e4b 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -46,23 +46,7 @@ public SessionPool(string host, int port, int poolSize) _fetchSize = 1024; _poolSize = poolSize; } - public SessionPool(string connectionString) - { - Dictionary pairs = new Dictionary(); - connectionString.Split(';', StringSplitOptions.RemoveEmptyEntries).ToList().ForEach(f => - { - var kv = f.Split('='); - pairs.TryAdd(key: kv[0], value: kv[1]); - }); - _host = pairs.GetValueOrDefault("Server") ?? "127.0.0.1"; - _port = int.Parse(pairs.GetValueOrDefault("Port") ?? "6667"); - _username = pairs.GetValueOrDefault("User") ?? "root"; - _password = pairs.GetValueOrDefault("Password") ?? "root"; - _fetchSize = int.Parse(pairs.GetValueOrDefault("fetchSize") ?? "1800"); - _enableRpcCompression = bool.Parse(pairs.GetValueOrDefault("enableRpcCompression") ?? "false"); - _poolSize = int.Parse(pairs.GetValueOrDefault("poolSize") ?? "8"); - _zoneId = pairs.GetValueOrDefault("zoneId") ?? "UTC+08:00"; - } + public SessionPool( string host, int port, @@ -129,14 +113,14 @@ public void CloseDebugMode() _debugMode = false; } - public async Task Open(bool enableRpcCompression) + public async Task Open(bool enableRpcCompression, CancellationToken cancellationToken = default) { _clients = new ConcurrentClientQueue(); _enableRpcCompression = enableRpcCompression; for (var index = 0; index < _poolSize; index++) { - _clients.Add(await CreateAndOpen(enableRpcCompression)); + _clients.Add(await CreateAndOpen(enableRpcCompression, cancellationToken)); } } @@ -216,7 +200,7 @@ public async Task GetTimeZone() } } - private async Task CreateAndOpen(bool enableRpcCompression) + private async Task CreateAndOpen(bool enableRpcCompression, CancellationToken cancellationToken = default) { var tcpClient = new TcpClient(_host, _port); @@ -224,7 +208,7 @@ private async Task CreateAndOpen(bool enableRpcCompression) if (!transport.IsOpen) { - await transport.OpenAsync(new CancellationToken()); + await transport.OpenAsync(cancellationToken); } var client = enableRpcCompression ? @@ -239,7 +223,7 @@ private async Task CreateAndOpen(bool enableRpcCompression) try { - var openResp = await client.openSessionAsync(openReq); + var openResp = await client.openSessionAsync(openReq, cancellationToken); if (openResp.ServerProtocolVersion != ProtocolVersion) { @@ -252,7 +236,7 @@ private async Task CreateAndOpen(bool enableRpcCompression) } var sessionId = openResp.SessionId; - var statementId = await client.requestStatementIdAsync(sessionId); + var statementId = await client.requestStatementIdAsync(sessionId, cancellationToken); _isClose = false; From 98433517ee8015826212f0a72c075d85e65961a3 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sat, 9 Jul 2022 23:16:17 +0800 Subject: [PATCH 160/214] =?UTF-8?q?=E5=A4=84=E7=90=86=20TSDataType?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB.Data/IoTDBParameter.cs | 12 ++++---- .../IoTDBParameterCollection.cs | 6 ++-- src/Apache.IoTDB.Data/IoTDBType.cs | 30 ------------------- 3 files changed, 9 insertions(+), 39 deletions(-) delete mode 100644 src/Apache.IoTDB.Data/IoTDBType.cs diff --git a/src/Apache.IoTDB.Data/IoTDBParameter.cs b/src/Apache.IoTDB.Data/IoTDBParameter.cs index eba3a8d..308112f 100644 --- a/src/Apache.IoTDB.Data/IoTDBParameter.cs +++ b/src/Apache.IoTDB.Data/IoTDBParameter.cs @@ -16,7 +16,7 @@ public class IoTDBParameter : DbParameter private string _parameterName = string.Empty; private object _value; private int? _size; - private IoTDBType? _IoTDBType; + private TSDataType? _IoTDBType; /// /// Initializes a new instance of the class. @@ -46,7 +46,7 @@ public IoTDBParameter(string name, object value) /// /// The name of the parameter. /// The type of the parameter. - public IoTDBParameter(string name, IoTDBType type) + public IoTDBParameter(string name, TSDataType type) { if (string.IsNullOrEmpty(name)) { @@ -63,7 +63,7 @@ public IoTDBParameter(string name, IoTDBType type) /// The name of the parameter. /// The type of the parameter. /// The maximum size, in bytes, of the parameter. - public IoTDBParameter(string name, IoTDBType type, int size) + public IoTDBParameter(string name, TSDataType type, int size) : this(name, type) => Size = size; @@ -74,7 +74,7 @@ public IoTDBParameter(string name, IoTDBType type, int size) /// The type of the parameter. /// The maximum size, in bytes, of the parameter. /// The source column used for loading the value. Can be null. - public IoTDBParameter(string name, IoTDBType type, int size, string sourceColumn) + public IoTDBParameter(string name, TSDataType type, int size, string sourceColumn) : this(name, type, size) => SourceColumn = sourceColumn; @@ -92,7 +92,7 @@ public IoTDBParameter(string name, IoTDBType type, int size, string sourceColumn /// The IoTDB type of the parameter. /// Due to IoTDB's dynamic type system, parameter values are not converted. - public virtual IoTDBType IoTDBType + public virtual TSDataType IoTDBType { get => _IoTDBType.GetValueOrDefault();//?? IoTDBValueBinder.GetIoTDBType(_value); set => _IoTDBType = value; @@ -200,7 +200,7 @@ public override void ResetDbType() public virtual void ResetIoTDBType() { DbType = DbType.String; - IoTDBType = IoTDBType.Text; + IoTDBType = TSDataType.NONE; } diff --git a/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs b/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs index e1c919f..0e35293 100644 --- a/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs +++ b/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs @@ -104,7 +104,7 @@ public virtual IoTDBParameter Add(IoTDBParameter value) /// The name of the parameter. /// The IoTDB type of the parameter. /// The parameter that was added. - public virtual IoTDBParameter Add(string parameterName, IoTDBType type) + public virtual IoTDBParameter Add(string parameterName, TSDataType type) => Add(new IoTDBParameter(parameterName, type)); /// @@ -114,7 +114,7 @@ public virtual IoTDBParameter Add(string parameterName, IoTDBType type) /// The IoTDB type of the parameter. /// The maximum size, in bytes, of the parameter. /// The parameter that was added. - public virtual IoTDBParameter Add(string parameterName, IoTDBType type, int size) + public virtual IoTDBParameter Add(string parameterName, TSDataType type, int size) => Add(new IoTDBParameter(parameterName, type, size)); /// @@ -127,7 +127,7 @@ public virtual IoTDBParameter Add(string parameterName, IoTDBType type, int size /// The source column used for loading the value of the parameter. Can be null. /// /// The parameter that was added. - public virtual IoTDBParameter Add(string parameterName, IoTDBType type, int size, string sourceColumn) + public virtual IoTDBParameter Add(string parameterName, TSDataType type, int size, string sourceColumn) => Add(new IoTDBParameter(parameterName, type, size, sourceColumn)); /// diff --git a/src/Apache.IoTDB.Data/IoTDBType.cs b/src/Apache.IoTDB.Data/IoTDBType.cs deleted file mode 100644 index 603ef74..0000000 --- a/src/Apache.IoTDB.Data/IoTDBType.cs +++ /dev/null @@ -1,30 +0,0 @@ - -namespace Apache.IoTDB.Data -{ - /// - /// Represents the type affinities used by columns in IoTDB tables. - /// - - public enum IoTDBType - { - /// - /// A signed integer. - /// - Integer , - - /// - /// A floating point value. - /// - Real , - - /// - /// A text string. - /// - Text , - - /// - /// A blob of data. - /// - Blob - } -} From cd4cef81cd5e66f356ca067a8dc361dd92f754c1 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sun, 10 Jul 2022 00:43:52 +0800 Subject: [PATCH 161/214] =?UTF-8?q?=E5=AE=8C=E6=88=90timestamp=E7=9A=84?= =?UTF-8?q?=E7=89=B9=E6=AE=8A=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Apache.IoTDB.Samples/SessionPoolTest.cs | 7 +- src/Apache.IoTDB.Data/IoTDBDataReader.cs | 72 ++++++++++++------- .../DataStructure/SessionDataSet.cs | 6 +- 3 files changed, 55 insertions(+), 30 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index 8931ff5..eeaee88 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -286,7 +286,10 @@ await cnt.CreateCommand( await cnt.CreateCommand( "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN").ExecuteNonQueryAsync(); await cnt.CreateCommand( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN").ExecuteNonQueryAsync(); + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN").ExecuteNonQueryAsync(); + + status = await cnt.CreateCommand( + "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (3, false, 20, '1yxl')").ExecuteNonQueryAsync(); status = await cnt.CreateCommand( "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')").ExecuteNonQueryAsync(); System.Diagnostics.Debug.Assert(status == 0); @@ -300,7 +303,7 @@ await cnt.CreateCommand( "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')").ExecuteNonQueryAsync(); var reader = await cnt.CreateCommand( "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10").ExecuteReaderAsync(); - ConsoleTableBuilder.From(reader.ToDataTable()).WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); + ConsoleTableBuilder.From(reader.ToDataTable()).WithFormatter(0,fc=> $"{fc:yyyy-MM-dd HH:mm:ss.fff}" ).WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); status = await session_pool.DeleteStorageGroupAsync(test_group_name); await cnt.CloseAsync(); diff --git a/src/Apache.IoTDB.Data/IoTDBDataReader.cs b/src/Apache.IoTDB.Data/IoTDBDataReader.cs index c9c7021..8a0e370 100644 --- a/src/Apache.IoTDB.Data/IoTDBDataReader.cs +++ b/src/Apache.IoTDB.Data/IoTDBDataReader.cs @@ -39,8 +39,8 @@ internal IoTDBDataReader(IoTDBCommand IoTDBCommand, SessionDataSet dataSet, bool _command = IoTDBCommand; _closeConnection = closeConnection; _fieldCount = dataSet.ColumnNames.Count; - _hasRows = dataSet.FetchSize > 0; - _recordsAffected = dataSet.FetchSize; + _hasRows = dataSet.RowCount > 0; + _recordsAffected =dataSet.RowCount; _closed = _closeConnection; _metas = dataSet.ColumnNames; _dataSet = dataSet; @@ -56,7 +56,7 @@ internal IoTDBDataReader(IoTDBCommand IoTDBCommand, SessionDataSet dataSet, bool /// Gets the number of columns in the current row. /// /// The number of columns in the current row. - public override int FieldCount => _fieldCount; + public override int FieldCount => _fieldCount+1; /// /// Gets a value indicating whether the data reader contains any rows. @@ -81,7 +81,7 @@ public override int RecordsAffected { get { - return _recordsAffected; ; + return _recordsAffected; } } @@ -177,7 +177,7 @@ protected override void Dispose(bool disposing) /// The name of the column. public override string GetName(int ordinal) { - return rowdata.Measurements[ordinal]; + return ordinal==0? "timestamp" : rowdata.Measurements[ordinal-1]; } /// @@ -186,7 +186,7 @@ public override string GetName(int ordinal) /// The name of the column. /// The zero-based column ordinal. public override int GetOrdinal(string name) - => rowdata.Measurements.IndexOf( name); + => "timestamp"==name?0: rowdata.Measurements.IndexOf( name)+1; public override string GetDataTypeName(int ordinal) { @@ -200,12 +200,8 @@ public override string GetDataTypeName(int ordinal) /// The data type of the column. public override Type GetFieldType(int ordinal) { - if (_metas == null || ordinal >= _metas.Count) - { - throw new InvalidOperationException($"DataReaderClosed{nameof(GetFieldType)}"); - } - - return rowdata.GetCrlType(ordinal); + + return ordinal==0?typeof(DateTime): rowdata.GetCrlType(ordinal-1); } /// @@ -394,13 +390,17 @@ public override Stream GetStream(int ordinal) /// The value of the column. public override object GetValue(int ordinal) { - object result ; - var data = rowdata.Values[ordinal]; - if (data !=null) + object result; + if (ordinal == 0) { - result = data; + result = rowdata.GetDateTime(); } else + { + result = rowdata.Values[ordinal - 1]; + } + if (result == null) + { result = DBNull.Value; } @@ -417,12 +417,13 @@ public override object GetValue(int ordinal) public override int GetValues(object[] values) { int count = 0; + values[0] = rowdata.GetDateTime(); for (int i = 0; i < _fieldCount; i++) { var obj = rowdata.Values[i]; if (obj != null ) { - values[i] = obj; + values[i+1] = obj; count++; } } @@ -490,11 +491,37 @@ public override DataTable GetSchemaTable() columns.Add(IsAutoIncrement); columns.Add(IsLong); - for (var i = 0; i < rowdata.Measurements.Count; i++) + + + var schemaRow1 = schemaTable.NewRow(); + + var columnName1 = "timestamp"; + schemaRow1[ColumnName] = columnName1; + schemaRow1[ColumnOrdinal] = 0; + + schemaRow1[NumericPrecision] = DBNull.Value; + schemaRow1[NumericScale] = DBNull.Value; + schemaRow1[BaseServerName] = _command.Connection.DataSource; + + schemaRow1[BaseColumnName] = columnName1; + schemaRow1[BaseSchemaName] = DBNull.Value; + var tableName1 = string.Empty; + schemaRow1[BaseTableName] = tableName1; + schemaRow1[DataType] = typeof(DateTime); + schemaRow1[DataTypeName] = typeof(DateTime).Name; + schemaRow1[IsExpression] = columnName1 == null; + schemaRow1[IsLong] = DBNull.Value; + schemaRow1[IsKey] = true; + + + schemaTable.Rows.Add(schemaRow1); + + + for (var i = 1; i < rowdata.Measurements.Count+1; i++) { var schemaRow = schemaTable.NewRow(); - var columnName = rowdata.Measurements[i] ; + var columnName = rowdata.Measurements[i-1] ; schemaRow[ColumnName] = columnName; schemaRow[ColumnOrdinal] = i; @@ -512,13 +539,6 @@ public override DataTable GetSchemaTable() schemaRow[IsLong] = DBNull.Value; schemaRow[IsKey]= false; schemaRow[AllowDBNull] = true; - - //if (i == 0) - //{ - // schemaRow[IsKey] = true; - // schemaRow[DataType] = GetFieldType(i); - // schemaRow[DataTypeName] = GetDataTypeName(i); - //} schemaTable.Rows.Add(schemaRow); } diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 5ee4bdf..60240c4 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -31,8 +31,9 @@ public class SessionDataSet private int Flag => 0x80; private int DefaultTimeout => 10000; - public int FetchSize { get; set; } - + public int FetchSize { get; set; } + + public int RowCount { get; set; } public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQueue clientQueue) { _clientQueue = clientQueue; @@ -51,6 +52,7 @@ public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQ // some internal variable _hasCatchedResult = false; _rowIndex = 0; + RowCount = _queryDataset.Time.Length / sizeof(long); if (resp.ColumnNameIndexMap != null) { for (var index = 0; index < resp.Columns.Count; index++) From 5aefc58d0020e80e96f8436fa0bb330af2c31b81 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sun, 10 Jul 2022 10:34:48 +0800 Subject: [PATCH 162/214] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=BE=93=E5=87=BA?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E5=BA=93=E4=B8=8A=E6=B8=B8=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=8C=96=E9=97=AE=E9=A2=98=20https://github.?= =?UTF-8?q?com/eedalong/Apache-IoTDB-Client-CSharp/pull/76?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj index 96a9dfb..93f821e 100644 --- a/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj +++ b/samples/Apache.IoTDB.Samples/Apache.IoTDB.Samples.csproj @@ -16,7 +16,7 @@ - + From 515f20f061ba1ec4d03392461bb2d7987ba73a66 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sat, 16 Jul 2022 15:57:31 +0800 Subject: [PATCH 163/214] =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=8C=96=20=E5=B9=B6?= =?UTF-8?q?=E5=89=94=E9=99=A4=E4=BA=86=E4=B8=80=E4=BA=9B=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E5=8F=98=E9=87=8F=EF=BC=8C=20=E6=97=A0=E7=94=A8=E6=B3=A8?= =?UTF-8?q?=E9=87=8A=E3=80=82=20=E5=88=A0=E9=99=A4=E4=BA=86=E4=B8=80?= =?UTF-8?q?=E4=BA=9B=E6=8C=87=E9=92=88=E6=89=A9=E5=B1=95=E7=AD=89=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB.Data/DataReaderExtensions.cs | 67 +++---------------- src/Apache.IoTDB.Data/GlobalSuppressions.cs | 8 --- src/Apache.IoTDB.Data/IoTDBCommand.cs | 3 +- src/Apache.IoTDB.Data/IoTDBConnection.cs | 6 +- src/Apache.IoTDB.Data/IoTDBDataReader.cs | 4 +- src/Apache.IoTDB.Data/IoTDBException.cs | 4 +- src/Apache.IoTDB.Data/IoTDBFactory.cs | 3 +- src/Apache.IoTDB.Data/IoTDBParameter.cs | 3 +- .../IoTDBParameterCollection.cs | 1 - src/Apache.IoTDB.Data/IoTDBTransaction.cs | 1 - 10 files changed, 15 insertions(+), 85 deletions(-) delete mode 100644 src/Apache.IoTDB.Data/GlobalSuppressions.cs diff --git a/src/Apache.IoTDB.Data/DataReaderExtensions.cs b/src/Apache.IoTDB.Data/DataReaderExtensions.cs index 99e0f1c..8a9ea58 100644 --- a/src/Apache.IoTDB.Data/DataReaderExtensions.cs +++ b/src/Apache.IoTDB.Data/DataReaderExtensions.cs @@ -1,4 +1,4 @@ - + using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; @@ -12,11 +12,11 @@ namespace Apache.IoTDB.Data { public static class DataReaderExtensions { - public static SessionPool CreateSession(this IoTDBConnectionStringBuilder db) + public static SessionPool CreateSession(this IoTDBConnectionStringBuilder db) { return new SessionPool(db.DataSource, db.Port, db.Username, db.Password, db.FetchSize, db.ZoneId, db.PoolSize); } - + public static List ToObject(this IDataReader dataReader) { List jArray = new List(); @@ -34,7 +34,7 @@ public static List ToObject(this IDataReader dataReader) string strKey = dataReader.GetName(i); if (dataReader[i] != DBNull.Value) { - var pr = from p in pots where (p.Name == strKey || p.ColumnNameIs(strKey)) && p.CanWrite select p; + var pr = from p in pots where (p.Name == strKey || p.ColumnNameIs(strKey)) && p.CanWrite select p; if (pr.Any()) { var pi = pr.FirstOrDefault(); @@ -62,12 +62,13 @@ internal static bool ColumnNameIs(this System.Reflection.PropertyInfo p, string return (p.IsDefined(typeof(ColumnAttribute), true) && (p.GetCustomAttributes(typeof(ColumnAttribute), true) as ColumnAttribute[])?.FirstOrDefault().Name == strKey); } - + public static DataTable ToDataTable(this IDataReader reader) - { var dt = new DataTable(); + { + var dt = new DataTable(); try { - + dt.Load(reader, LoadOption.OverwriteChanges, (object sender, FillErrorEventArgs e) => { @@ -76,59 +77,9 @@ public static DataTable ToDataTable(this IDataReader reader) catch (Exception) { - + } return dt; } - public static string RemoveNull(this string str) - { - return str?.Trim('\0'); - } - - public static IntPtr ToIntPtr(this long val) - { - IntPtr lenPtr = Marshal.AllocHGlobal(sizeof(long)); - Marshal.WriteInt64(lenPtr, val); - return lenPtr; - } - public static IntPtr ToIntPtr(this int val) - { - IntPtr lenPtr = Marshal.AllocHGlobal(sizeof(int )); - Marshal.WriteInt32(lenPtr, val); - return lenPtr; - } - internal struct UTF8IntPtrStruct - { - public IntPtr ptr; - public int len; - } - - internal static UTF8IntPtrStruct ToUTF8IntPtr(this string command) - { - UTF8IntPtrStruct result; -#if NET5_0_OR_GREATER - IntPtr commandBuffer = Marshal.StringToCoTaskMemUTF8(command); - int bufferlen = Encoding.UTF8.GetByteCount(command); -#else - var bytes = Encoding.UTF8.GetBytes(command); - int bufferlen = bytes.Length; - IntPtr commandBuffer = Marshal.AllocHGlobal(bufferlen); - Marshal.Copy(bytes, 0, commandBuffer, bufferlen); -#endif - result.ptr = commandBuffer; - result.len = bufferlen; - return result; - } - - public static void FreeUtf8IntPtr(this IntPtr ptr) - { -#if NET5_0_OR_GREATER - Marshal.FreeCoTaskMem(ptr); -#else - Marshal.FreeHGlobal(ptr); -#endif - } - - } } diff --git a/src/Apache.IoTDB.Data/GlobalSuppressions.cs b/src/Apache.IoTDB.Data/GlobalSuppressions.cs deleted file mode 100644 index fed869c..0000000 --- a/src/Apache.IoTDB.Data/GlobalSuppressions.cs +++ /dev/null @@ -1,8 +0,0 @@ -// This file is used by Code Analysis to maintain SuppressMessage -// attributes that are applied to this project. -// Project-level suppressions either have no target or are given -// a specific target and scoped to a namespace, type, member, etc. - -using System.Diagnostics.CodeAnalysis; - -[assembly: SuppressMessage("Globalization", "CA2101:Specify marshaling for P/Invoke string arguments")] diff --git a/src/Apache.IoTDB.Data/IoTDBCommand.cs b/src/Apache.IoTDB.Data/IoTDBCommand.cs index f43f010..b275817 100644 --- a/src/Apache.IoTDB.Data/IoTDBCommand.cs +++ b/src/Apache.IoTDB.Data/IoTDBCommand.cs @@ -24,7 +24,6 @@ public class IoTDBCommand : DbCommand { private readonly Lazy _parameters = new Lazy( () => new IoTDBParameterCollection()); - private readonly DateTime _dt1970; private IoTDBConnection _connection; private string _commandText; private SessionPool _IoTDB => _connection._IoTDB; @@ -33,7 +32,7 @@ public class IoTDBCommand : DbCommand /// public IoTDBCommand() { - _dt1970 = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); + } /// diff --git a/src/Apache.IoTDB.Data/IoTDBConnection.cs b/src/Apache.IoTDB.Data/IoTDBConnection.cs index 7efbaa4..afbd70b 100644 --- a/src/Apache.IoTDB.Data/IoTDBConnection.cs +++ b/src/Apache.IoTDB.Data/IoTDBConnection.cs @@ -1,8 +1,4 @@ -// Copyright (c) maikebing All rights reserved. -//// Licensed under the MIT License, See License.txt in the project root for license information. - - -using System; +using System; using System.Collections.Generic; using System.Data; using System.Data.Common; diff --git a/src/Apache.IoTDB.Data/IoTDBDataReader.cs b/src/Apache.IoTDB.Data/IoTDBDataReader.cs index 8a0e370..71d2abd 100644 --- a/src/Apache.IoTDB.Data/IoTDBDataReader.cs +++ b/src/Apache.IoTDB.Data/IoTDBDataReader.cs @@ -1,6 +1,4 @@ - - -using Apache.IoTDB.DataStructure; +using Apache.IoTDB.DataStructure; using System; using System.Collections; using System.Collections.Generic; diff --git a/src/Apache.IoTDB.Data/IoTDBException.cs b/src/Apache.IoTDB.Data/IoTDBException.cs index c9fd68a..6dc848a 100644 --- a/src/Apache.IoTDB.Data/IoTDBException.cs +++ b/src/Apache.IoTDB.Data/IoTDBException.cs @@ -1,6 +1,4 @@ - - -using System; +using System; using System.Data.Common; diff --git a/src/Apache.IoTDB.Data/IoTDBFactory.cs b/src/Apache.IoTDB.Data/IoTDBFactory.cs index 1bb19bc..58a9dd0 100644 --- a/src/Apache.IoTDB.Data/IoTDBFactory.cs +++ b/src/Apache.IoTDB.Data/IoTDBFactory.cs @@ -1,5 +1,4 @@ - -using System.Data.Common; +using System.Data.Common; namespace Apache.IoTDB.Data { diff --git a/src/Apache.IoTDB.Data/IoTDBParameter.cs b/src/Apache.IoTDB.Data/IoTDBParameter.cs index 308112f..344e1f4 100644 --- a/src/Apache.IoTDB.Data/IoTDBParameter.cs +++ b/src/Apache.IoTDB.Data/IoTDBParameter.cs @@ -1,5 +1,4 @@ - -using System; + using System; using System.Data; using System.Data.Common; diff --git a/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs b/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs index 0e35293..8856967 100644 --- a/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs +++ b/src/Apache.IoTDB.Data/IoTDBParameterCollection.cs @@ -1,4 +1,3 @@ - using System; using System.Collections; using System.Collections.Generic; diff --git a/src/Apache.IoTDB.Data/IoTDBTransaction.cs b/src/Apache.IoTDB.Data/IoTDBTransaction.cs index 4ec7521..27cf963 100644 --- a/src/Apache.IoTDB.Data/IoTDBTransaction.cs +++ b/src/Apache.IoTDB.Data/IoTDBTransaction.cs @@ -1,4 +1,3 @@ - using System; using System.Data; using System.Data.Common; From 87240fdcde7d0ca976d3cdd3727d19b0d0171628 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sat, 16 Jul 2022 15:59:27 +0800 Subject: [PATCH 164/214] =?UTF-8?q?=E4=BD=BF=E7=94=A8=20NotSupportedExcept?= =?UTF-8?q?ion=20=20=E6=9D=A5=E6=8A=9B=E5=87=BA=E4=B8=8D=E6=94=AF=E6=8C=81?= =?UTF-8?q?=20=E5=8F=82=E6=95=B0=E5=8C=96=20command?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB.Data/IoTDBCommand.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Apache.IoTDB.Data/IoTDBCommand.cs b/src/Apache.IoTDB.Data/IoTDBCommand.cs index b275817..c349ded 100644 --- a/src/Apache.IoTDB.Data/IoTDBCommand.cs +++ b/src/Apache.IoTDB.Data/IoTDBCommand.cs @@ -299,13 +299,13 @@ public override void Prepare() int _affectRows = 0; SessionDataSet dataSet=null; bool isok = false; - Task taskDataSet =null; + Task taskDataSet = null; if (_parameters.IsValueCreated) { - - var pms = _parameters.Value; - var record = BindParamters(pms); - + + var pms = _parameters.Value; + var record = BindParamters(pms); + throw new NotSupportedException(); } else { From c01762b056cdf5362792c6be4cada390a65ca56a Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Thu, 21 Jul 2022 16:23:35 +0800 Subject: [PATCH 165/214] Adjust postion of some paragraph in README --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 5d05634..b783db3 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,15 @@ This is the C# client of Apache IoTDB. Apache IoTDB website: https://iotdb.apache.org Apache IoTDB Github: https://github.com/apache/iotdb +## Starting from `.net framework 4.x` +In order to adapt to `.net framework 4.x`, we have packaged a nuget package separately, the package name is [`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/). + +You can install it through Package Manager (PM), .NET CLI, etc. For example (.NET CLI): + +```sh +dotnet add package Apache.IoTDB.framework --version 0.12.1.2 +``` + ## Installation ### Install from NuGet Package @@ -67,13 +76,4 @@ NLog >= 4.7.9 ### Command Line Tools ## Publish your own client on nuget.org -You can find out how to publish from this [doc](./PUBLISH.md). - -## Starting from `.net framework 4.x` -In order to adapt to `.net framework 4.x`, we have packaged a nuget package separately, the package name is [`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/). - -You can install it through Package Manager (PM), .NET CLI, etc. For example (.NET CLI): - -```sh -dotnet add package Apache.IoTDB.framework --version 0.12.1.2 -``` \ No newline at end of file +You can find out how to publish from this [doc](./PUBLISH.md). \ No newline at end of file From 1241fde514b09de2cc83d9d82830124d82bdfdf6 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Thu, 21 Jul 2022 16:26:39 +0800 Subject: [PATCH 166/214] Add version reminder in README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b783db3..3154e60 100644 --- a/README.md +++ b/README.md @@ -44,13 +44,13 @@ dotnet add package Apache.IoTDB.framework --version 0.12.1.2 ### Install from NuGet Package -We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation +We have prepared Nuget Package for C# users who are using `.net 5.0` or higher version. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation ```sh dotnet add package Apache.IoTDB ``` -Note that the `Apache.IoTDB` package only supports `.net 5.0`. If you are using `.net framework 4.x`, please refer to the section [starting from .net framework 4.x](#starting-from-net-framework-4x). +Note that the `Apache.IoTDB` package only supports `.net 5.0` or higher version. If you are using `.net framework 4.x`, please refer to the section [starting from .net framework 4.x](#starting-from-net-framework-4x). ## Prerequisites From b93fdf4f8480173ba033e3a82430e8bec37e552a Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Thu, 21 Jul 2022 18:11:38 +0800 Subject: [PATCH 167/214] =?UTF-8?q?=E6=94=AF=E6=8C=81.Net=204.6.1=20?= =?UTF-8?q?=E5=92=8C=20.Net=20=20Standard=202.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB/Apache.IoTDB.csproj | 21 ++++++++++--- src/Apache.IoTDB/DataStructure/BitMap.cs | 31 +++++++++++++++----- src/Apache.IoTDB/DataStructure/ByteBuffer.cs | 31 ++++++++++++++------ 3 files changed, 62 insertions(+), 21 deletions(-) diff --git a/src/Apache.IoTDB/Apache.IoTDB.csproj b/src/Apache.IoTDB/Apache.IoTDB.csproj index 4f3d160..6e0165a 100644 --- a/src/Apache.IoTDB/Apache.IoTDB.csproj +++ b/src/Apache.IoTDB/Apache.IoTDB.csproj @@ -1,11 +1,24 @@  - net5.0;net6.0;netstandard2.1 + net5.0;net6.0;netstandard2.1;netstandard2.0;net461 + latest + - - + + - + + + + + + + + + + + + diff --git a/src/Apache.IoTDB/DataStructure/BitMap.cs b/src/Apache.IoTDB/DataStructure/BitMap.cs index 7c943fb..e3baa3a 100644 --- a/src/Apache.IoTDB/DataStructure/BitMap.cs +++ b/src/Apache.IoTDB/DataStructure/BitMap.cs @@ -1,5 +1,7 @@ -using System; - +using System; +#if NET461_OR_GREATER || NETSTANDARD2_0 +using Grax.Extensions; +#endif public class BitMap { private static byte[] BIT_UTIL = new byte[] { 1, 2, 4, 8, 16, 32, 64, 255 }; @@ -21,8 +23,12 @@ public class BitMap public BitMap(int size) { this.size = size; - bits = new byte[size / 8 + 1]; - Array.Fill(bits, (byte)0); + bits = new byte[size / 8 + 1]; +#if NET461_OR_GREATER || NETSTANDARD2_0 + bits.Fill((byte)0); +#else + Array.Fill(bits, (byte)0); +#endif } /** Initialize a BitMap with given size and bytes. */ @@ -50,8 +56,13 @@ public bool isMarked(int position) /** mark as 1 at all positions. */ public void markAll() - { - Array.Fill(bits, (byte)0xFF); + { +#if NET461_OR_GREATER || NETSTANDARD2_0 + bits.Fill((byte)0xFF); +#else + Array.Fill(bits, (byte)0xFF); +#endif + } /** mark as 1 at the given bit position. */ @@ -62,8 +73,12 @@ public void mark(int position) /** mark as 0 at all positions. */ public void reset() - { - Array.Fill(bits, (byte)0); + { +#if NET461_OR_GREATER || NETSTANDARD2_0 + bits.Fill((byte)0xFF); +#else + Array.Fill(bits, (byte)0); +#endif } public void unmark(int position) diff --git a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs index 6140688..a5a6782 100644 --- a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs +++ b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs @@ -51,10 +51,13 @@ public bool GetBool() public int GetInt() { var intBuff = _buffer[_readPos..(_readPos + 4)]; - - if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); - + if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); +#if NET461_OR_GREATER || NETSTANDARD2_0 + var intValue = BitConverter.ToInt32(intBuff,0); +#else var intValue = BitConverter.ToInt32(intBuff); +#endif + _readPos += 4; return intValue; } @@ -63,9 +66,13 @@ public long GetLong() { var longBuff = _buffer[_readPos..(_readPos + 8)]; - if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); - + if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); +#if NET461_OR_GREATER || NETSTANDARD2_0 + var longValue = BitConverter.ToInt64(longBuff,0); +#else var longValue = BitConverter.ToInt64(longBuff); +#endif + _readPos += 8; return longValue; } @@ -74,9 +81,12 @@ public float GetFloat() { var floatBuff = _buffer[_readPos..(_readPos + 4)]; - if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); - + if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); +#if NET461_OR_GREATER || NETSTANDARD2_0 + var floatValue = BitConverter.ToSingle(floatBuff,0); +#else var floatValue = BitConverter.ToSingle(floatBuff); +#endif _readPos += 4; return floatValue; } @@ -85,9 +95,12 @@ public double GetDouble() { var doubleBuff = _buffer[_readPos..(_readPos + 8)]; - if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); - + if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); +#if NET461_OR_GREATER || NETSTANDARD2_0 + var doubleValue = BitConverter.ToDouble(doubleBuff,0); +#else var doubleValue = BitConverter.ToDouble(doubleBuff); +#endif _readPos += 8; return doubleValue; } From 524341fa95e7838ae8576d56810831b3c860da39 Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Thu, 21 Jul 2022 18:20:19 +0800 Subject: [PATCH 168/214] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=20CloseAsync=20?= =?UTF-8?q?=E5=9C=A8=20.Net=20461=20=E5=92=8C=20.Net=20STD=202.0=20?= =?UTF-8?q?=E4=B8=8D=E7=94=A8override=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj | 2 +- src/Apache.IoTDB.Data/IoTDBConnection.cs | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj index d86b54c..d7cb6cb 100644 --- a/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj +++ b/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj @@ -16,7 +16,7 @@ Apache.IoTDB.Data.IoTDBParameter Apache.IoTDB.Data.IoTDBTransaction - net5;net6;netstandard2.1 + net5.0;net6.0;netstandard2.1;netstandard2.0;net461 10 Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net 访问IoTDB数据库。 diff --git a/src/Apache.IoTDB.Data/IoTDBConnection.cs b/src/Apache.IoTDB.Data/IoTDBConnection.cs index afbd70b..897c873 100644 --- a/src/Apache.IoTDB.Data/IoTDBConnection.cs +++ b/src/Apache.IoTDB.Data/IoTDBConnection.cs @@ -188,7 +188,11 @@ public override void Close() { CloseAsync().GetAwaiter().GetResult(); ; } +#if NET461_OR_GREATER || NETSTANDARD2_0 + public async Task CloseAsync() +#else public override async Task CloseAsync() +#endif { if (State != ConnectionState.Closed) await _IoTDB.Close(); From ae91e708bc559f13e34ab2ae85b287562a4af939 Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Thu, 21 Jul 2022 18:32:00 +0800 Subject: [PATCH 169/214] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 3154e60..6ba6508 100644 --- a/README.md +++ b/README.md @@ -30,31 +30,25 @@ This is the C# client of Apache IoTDB. Apache IoTDB website: https://iotdb.apache.org Apache IoTDB Github: https://github.com/apache/iotdb - -## Starting from `.net framework 4.x` -In order to adapt to `.net framework 4.x`, we have packaged a nuget package separately, the package name is [`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/). - -You can install it through Package Manager (PM), .NET CLI, etc. For example (.NET CLI): - -```sh -dotnet add package Apache.IoTDB.framework --version 0.12.1.2 -``` + ## Installation ### Install from NuGet Package -We have prepared Nuget Package for C# users who are using `.net 5.0` or higher version. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation +We have prepared Nuget Package for C# users who are using `.Net Framework 4.6.1` or higher version. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation ```sh dotnet add package Apache.IoTDB ``` -Note that the `Apache.IoTDB` package only supports `.net 5.0` or higher version. If you are using `.net framework 4.x`, please refer to the section [starting from .net framework 4.x](#starting-from-net-framework-4x). - + ## Prerequisites - .NET SDK Version == 5.0 + .NET SDK Version == 5.0 or higher version + .Net Framework 4.6.1 or higher version + .Net Standard 2.0 or 2.1 + ## How to Use the Client (Quick Start) @@ -63,9 +57,10 @@ Users can refer to the test code in [tests](https://github.com/eedalong/Apache-I ## Developer environment requirements for iotdb-client-csharp ``` -.NET SDK Version == 5.0 -ApacheThrift >= 0.14.1 -NLog >= 4.7.9 + .NET SDK Version == 5.0 or higher version + .Net Framework 4.6.1 or higher version + .Net Standard 2.0 or 2.1 + ApacheThrift >= 0.14.1 ``` ### OS From 790078fc763de5ad0f5e503aea45dbcce4626f7a Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Fri, 22 Jul 2022 09:03:56 +0800 Subject: [PATCH 170/214] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=86=97=E4=BD=99?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Apache - Backup (1).IoTDB.Data.csproj | 160 ----------------- .../Apache - Backup.IoTDB.Data.csproj | 162 ------------------ 2 files changed, 322 deletions(-) delete mode 100644 src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj delete mode 100644 src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj diff --git a/src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj deleted file mode 100644 index 89810b6..0000000 --- a/src/Apache.IoTDB.Data/Apache - Backup (1).IoTDB.Data.csproj +++ /dev/null @@ -1,160 +0,0 @@ - - - - Apache.IoTDB.Data - $(AssemblyName) - Apache.IoTDB.Data - - IoTDB implementation of the System.Data.Common provider model. - Commonly Used Types: - Apache.IoTDB.Data.IoTDBCommand - Apache.IoTDB.Data.IoTDBConnection - Apache.IoTDB.Data.IoTDBConnectionStringBuilder - Apache.IoTDB.Data.IoTDBDataReader - Apache.IoTDB.Data.IoTDBException - Apache.IoTDB.Data.IoTDBFactory - Apache.IoTDB.Data.IoTDBParameter - Apache.IoTDB.Data.IoTDBTransaction - - net5;net6;netstandard2.1 - 10 - - - Apache.IoTDB - - true - - - - - - - - Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net 访问IoTDB数据库。 - - LICENSE - - - - 1.0.1 - - AnyCPU;x64;x86 - - 48876650.jpg - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj deleted file mode 100644 index e3e4b6d..0000000 --- a/src/Apache.IoTDB.Data/Apache - Backup.IoTDB.Data.csproj +++ /dev/null @@ -1,162 +0,0 @@ - - - - Apache.IoTDB.Data - $(AssemblyName) - Apache.IoTDB.Data - - IoTDB implementation of the System.Data.Common provider model. - Commonly Used Types: - Apache.IoTDB.Data.IoTDBCommand - Apache.IoTDB.Data.IoTDBConnection - Apache.IoTDB.Data.IoTDBConnectionStringBuilder - Apache.IoTDB.Data.IoTDBDataReader - Apache.IoTDB.Data.IoTDBException - Apache.IoTDB.Data.IoTDBFactory - Apache.IoTDB.Data.IoTDBParameter - Apache.IoTDB.Data.IoTDBTransaction - - net5;net6;netstandard2.1 - 10 - IoTDB;Data;ADO.NET;Entity Framework,;EF; Core;Data O/RM,;entity-framework-core;TDengine;IoTSharp - - Apache.IoTDB - - true - - https://github.com/IoTSharp/EntityFrameworkCore.IoTDB - - - - https://github.com/IoTSharp/EntityFrameworkCore.IoTDB - - - Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net Core 访问TDengine数据库。 - - - LICENSE - - Copyright © 2019-2022 IoTSharp All rights reserved. - - 1.0.1 - - AnyCPU;x64;x86 - - 48876650.jpg - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - default - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file From e685882ca7fa5ebdb67edeb6253d8e0c147ef825 Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Fri, 22 Jul 2022 09:05:46 +0800 Subject: [PATCH 171/214] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=AD=E6=96=87?= =?UTF-8?q?=E8=AF=B4=E6=98=8E=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README_ZH.md | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/README_ZH.md b/README_ZH.md index e7e3577..8e56844 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -39,20 +39,24 @@ Apache IoTDB Github: https://github.com/apache/iotdb dotnet add package Apache.IoTDB ``` -请注意,`Apache.IoTDB`这个包仅支持`.net 5.0`。 如果您使用的是`.net framework 4.x`,请参考[从`.net framework 4.x`开始](#从-net-framework-4x-开始)。 - + ## 环境准备 - .NET SDK Version == 5.0 + .NET SDK Version == 5.0或更高版本 + .Net Framework 4.6.1 或更高版本 + .Net Standard 2.0 或者 2.1 + ## 如何使用 (快速上手) 用户可参考[使用样例](https://github.com/eedalong/Apache-IoTDB-Client-CSharp-UserCase)中的测试代码了解各个接口使用方式 ## iotdb-client-csharp的开发者环境要求 - .NET SDK Version == 5.0 + .NET SDK Version == 5.0或更高版本 + .Net Framework 4.6.1 或更高版本 + .Net Standard 2.0 或者 2.1 ApacheThrift >= 0.14.1 - NLog >= 4.7.9 + ### 操作系统 @@ -64,12 +68,3 @@ dotnet add package Apache.IoTDB ## 在 nuget.org 上发布你自己的客户端 你可以在这个[文档](./PUBLISH.md)中找到如何发布 - -## 从`.net framework 4.x`开始 -为了适配`.net framework 4.x`,我们单独构建了一个Nuget包,包名是[`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/)。 - -您可以使用PM、.NET CLI等工作来安装它。以.NET CLI为例: - -```sh -dotnet add package Apache.IoTDB.framework --version 0.12.1.2 -``` \ No newline at end of file From 39eef35894c37b34debc65a1a7b01b59333bb42b Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Fri, 22 Jul 2022 09:22:48 +0800 Subject: [PATCH 172/214] =?UTF-8?q?=E5=B0=8F=E7=9A=84=E7=AC=AC=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E5=BA=93=E7=A7=BB=E5=8A=A8=E5=88=B0=E5=BA=93=E5=86=85?= =?UTF-8?q?=E3=80=82=20=E4=BE=BF=E4=BA=8E=E7=BB=B4=E6=8A=A4=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB/Apache.IoTDB.csproj | 18 ++--- .../DataStructure/ArrayExtensions.cs | 76 +++++++++++++++++++ src/Apache.IoTDB/DataStructure/GetSubArray.cs | 47 ++++++++++++ 3 files changed, 128 insertions(+), 13 deletions(-) create mode 100644 src/Apache.IoTDB/DataStructure/ArrayExtensions.cs create mode 100644 src/Apache.IoTDB/DataStructure/GetSubArray.cs diff --git a/src/Apache.IoTDB/Apache.IoTDB.csproj b/src/Apache.IoTDB/Apache.IoTDB.csproj index 6e0165a..9441084 100644 --- a/src/Apache.IoTDB/Apache.IoTDB.csproj +++ b/src/Apache.IoTDB/Apache.IoTDB.csproj @@ -1,24 +1,16 @@  - + net5.0;net6.0;netstandard2.1;netstandard2.0;net461 latest - - - - - - - + + + - - - - - + diff --git a/src/Apache.IoTDB/DataStructure/ArrayExtensions.cs b/src/Apache.IoTDB/DataStructure/ArrayExtensions.cs new file mode 100644 index 0000000..28d4e89 --- /dev/null +++ b/src/Apache.IoTDB/DataStructure/ArrayExtensions.cs @@ -0,0 +1,76 @@ +#if NET461_OR_GREATER || NETSTANDARD2_0 +//https://github.com/Grax32/ArrayExtensions/blob/master/docs/index.md + +using System; +namespace Grax32.Extensions +{ + public static class ArrayExtensions + { + public static void Fill(this T[] destinationArray, T value) + { + if (destinationArray == null) + { + throw new ArgumentNullException(nameof(destinationArray)); + } + + destinationArray[0] = value; + FillInternal(destinationArray, 1); + } + + public static void Fill(this T[] destinationArray, T[] values) + { + if (destinationArray == null) + { + throw new ArgumentNullException(nameof(destinationArray)); + } + + var copyLength = values.Length; + var destinationArrayLength = destinationArray.Length; + + if (copyLength == 0) + { + throw new ArgumentException("Parameter must contain at least one value.", nameof(values)); + } + + if (copyLength > destinationArrayLength) + { + // value to copy is longer than destination, + // so fill destination with first part of value + Array.Copy(values, destinationArray, destinationArrayLength); + return; + } + + Array.Copy(values, destinationArray, copyLength); + + FillInternal(destinationArray, copyLength); + } + + private static void FillInternal(this T[] destinationArray, int copyLength) + { + var destinationArrayLength = destinationArray.Length; + var destinationArrayHalfLength = destinationArrayLength / 2; + + // looping copy from beginning of array to current position + // doubling copy length with each pass + for (; copyLength < destinationArrayHalfLength; copyLength *= 2) + { + Array.Copy( + sourceArray: destinationArray, + sourceIndex: 0, + destinationArray: destinationArray, + destinationIndex: copyLength, + length: copyLength); + } + + // we're past halfway, meaning only a single copy remains + // exactly fill remainder of array + Array.Copy( + sourceArray: destinationArray, + sourceIndex: 0, + destinationArray: destinationArray, + destinationIndex: copyLength, + length: destinationArrayLength - copyLength); + } + } +} +#endif \ No newline at end of file diff --git a/src/Apache.IoTDB/DataStructure/GetSubArray.cs b/src/Apache.IoTDB/DataStructure/GetSubArray.cs new file mode 100644 index 0000000..0f4cfa5 --- /dev/null +++ b/src/Apache.IoTDB/DataStructure/GetSubArray.cs @@ -0,0 +1,47 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. +#if NET461_OR_GREATER || NETSTANDARD2_0 +//https://github.com/bgrainger/IndexRange +//https://gist.github.com/bgrainger/fb2c18659c2cdfce494c82a8c4803360 + +namespace System.Runtime.CompilerServices +{ + internal static class RuntimeHelpers + { + /// + /// Slices the specified array using the specified range. + /// + public static T[] GetSubArray(T[] array, Range range) + { + if (array == null) + { + throw new ArgumentNullException(); + } + + (int offset, int length) = range.GetOffsetAndLength(array.Length); + + if (default(T)! != null || typeof(T[]) == array.GetType()) // TODO-NULLABLE: default(T) == null warning (https://github.com/dotnet/roslyn/issues/34757) + { + // We know the type of the array to be exactly T[]. + + if (length == 0) + { + return Array.Empty(); + } + + var dest = new T[length]; + Array.Copy(array, offset, dest, 0, length); + return dest; + } + else + { + // The array is actually a U[] where U:T. + T[] dest = (T[])Array.CreateInstance(array.GetType().GetElementType()!, length); + Array.Copy(array, offset, dest, 0, length); + return dest; + } + } + } +} +#endif \ No newline at end of file From 22b4b7f0376f86c2764b510f14bfaeb32718fd4c Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Fri, 22 Jul 2022 09:27:39 +0800 Subject: [PATCH 173/214] =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=BC=95=E7=94=A8=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB/DataStructure/BitMap.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apache.IoTDB/DataStructure/BitMap.cs b/src/Apache.IoTDB/DataStructure/BitMap.cs index e3baa3a..0b792f6 100644 --- a/src/Apache.IoTDB/DataStructure/BitMap.cs +++ b/src/Apache.IoTDB/DataStructure/BitMap.cs @@ -1,6 +1,6 @@ using System; #if NET461_OR_GREATER || NETSTANDARD2_0 -using Grax.Extensions; +using Grax32.Extensions; #endif public class BitMap { From 732679d8c4383f41abca9a6de9f3c5c82bdca80a Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Fri, 22 Jul 2022 14:05:54 +0800 Subject: [PATCH 174/214] https://github.com/eedalong/Apache-IoTDB-Client-CSharp/pull/77#issuecomment-1192133093 --- README.md | 29 +++++++++++++++++------------ README_ZH.md | 23 ++++++++++++++--------- 2 files changed, 31 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 6ba6508..5d05634 100644 --- a/README.md +++ b/README.md @@ -30,25 +30,22 @@ This is the C# client of Apache IoTDB. Apache IoTDB website: https://iotdb.apache.org Apache IoTDB Github: https://github.com/apache/iotdb - ## Installation ### Install from NuGet Package -We have prepared Nuget Package for C# users who are using `.Net Framework 4.6.1` or higher version. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation +We have prepared Nuget Package for C# users. Users can directly install the client through .NET CLI. [The link of our NuGet Package is here](https://www.nuget.org/packages/Apache.IoTDB/). Run the following command in the command line to complete installation ```sh dotnet add package Apache.IoTDB ``` - -## Prerequisites +Note that the `Apache.IoTDB` package only supports `.net 5.0`. If you are using `.net framework 4.x`, please refer to the section [starting from .net framework 4.x](#starting-from-net-framework-4x). - .NET SDK Version == 5.0 or higher version - .Net Framework 4.6.1 or higher version - .Net Standard 2.0 or 2.1 +## Prerequisites + .NET SDK Version == 5.0 ## How to Use the Client (Quick Start) @@ -57,10 +54,9 @@ Users can refer to the test code in [tests](https://github.com/eedalong/Apache-I ## Developer environment requirements for iotdb-client-csharp ``` - .NET SDK Version == 5.0 or higher version - .Net Framework 4.6.1 or higher version - .Net Standard 2.0 or 2.1 - ApacheThrift >= 0.14.1 +.NET SDK Version == 5.0 +ApacheThrift >= 0.14.1 +NLog >= 4.7.9 ``` ### OS @@ -71,4 +67,13 @@ Users can refer to the test code in [tests](https://github.com/eedalong/Apache-I ### Command Line Tools ## Publish your own client on nuget.org -You can find out how to publish from this [doc](./PUBLISH.md). \ No newline at end of file +You can find out how to publish from this [doc](./PUBLISH.md). + +## Starting from `.net framework 4.x` +In order to adapt to `.net framework 4.x`, we have packaged a nuget package separately, the package name is [`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/). + +You can install it through Package Manager (PM), .NET CLI, etc. For example (.NET CLI): + +```sh +dotnet add package Apache.IoTDB.framework --version 0.12.1.2 +``` \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md index 8e56844..e7e3577 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -39,24 +39,20 @@ Apache IoTDB Github: https://github.com/apache/iotdb dotnet add package Apache.IoTDB ``` - -## 环境准备 +请注意,`Apache.IoTDB`这个包仅支持`.net 5.0`。 如果您使用的是`.net framework 4.x`,请参考[从`.net framework 4.x`开始](#从-net-framework-4x-开始)。 - .NET SDK Version == 5.0或更高版本 - .Net Framework 4.6.1 或更高版本 - .Net Standard 2.0 或者 2.1 +## 环境准备 + .NET SDK Version == 5.0 ## 如何使用 (快速上手) 用户可参考[使用样例](https://github.com/eedalong/Apache-IoTDB-Client-CSharp-UserCase)中的测试代码了解各个接口使用方式 ## iotdb-client-csharp的开发者环境要求 - .NET SDK Version == 5.0或更高版本 - .Net Framework 4.6.1 或更高版本 - .Net Standard 2.0 或者 2.1 + .NET SDK Version == 5.0 ApacheThrift >= 0.14.1 - + NLog >= 4.7.9 ### 操作系统 @@ -68,3 +64,12 @@ dotnet add package Apache.IoTDB ## 在 nuget.org 上发布你自己的客户端 你可以在这个[文档](./PUBLISH.md)中找到如何发布 + +## 从`.net framework 4.x`开始 +为了适配`.net framework 4.x`,我们单独构建了一个Nuget包,包名是[`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/)。 + +您可以使用PM、.NET CLI等工作来安装它。以.NET CLI为例: + +```sh +dotnet add package Apache.IoTDB.framework --version 0.12.1.2 +``` \ No newline at end of file From 20ddd6547716b2d692e15edfcb40bccd65275619 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sun, 24 Jul 2022 18:58:08 +0800 Subject: [PATCH 175/214] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=20IDisposable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB/DataStructure/SessionDataSet.cs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 60240c4..2d2d897 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -6,7 +6,7 @@ namespace Apache.IoTDB.DataStructure { - public class SessionDataSet + public class SessionDataSet: System.IDisposable { private readonly long _queryId; private readonly string _sql; @@ -306,6 +306,17 @@ public async Task Close() _clientQueue.Add(myClient); } } - } + } + ~SessionDataSet() + { + this.Dispose(); + } + + + public void Dispose() + { + this.Close().Wait(); + + } } } \ No newline at end of file From 0be90f237c88b1a047047a5a190dbeec4f5982d1 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sun, 24 Jul 2022 19:20:47 +0800 Subject: [PATCH 176/214] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB/DataStructure/RowRecord.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/RowRecord.cs b/src/Apache.IoTDB/DataStructure/RowRecord.cs index 1000d53..902c442 100644 --- a/src/Apache.IoTDB/DataStructure/RowRecord.cs +++ b/src/Apache.IoTDB/DataStructure/RowRecord.cs @@ -9,8 +9,12 @@ public class RowRecord { public long Timestamps { get; } public List Values { get; } - public List Measurements { get; } - + public List Measurements { get; } + + public RowRecord(DateTime timestamp, List values, List measurements) + :this(new DateTimeOffset(timestamp.ToUniversalTime()).ToUnixTimeMilliseconds(), values,measurements) + { + } public RowRecord(long timestamps, List values, List measurements) { Timestamps = timestamps; From 0b62b25ef570ed5c88d690a34c34059af1bd7774 Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Sun, 24 Jul 2022 20:10:26 +0800 Subject: [PATCH 177/214] =?UTF-8?q?=E4=BC=98=E5=8C=96Open?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB/SessionPool.cs | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index ff14e4b..1e1592e 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -89,7 +89,9 @@ public SessionPool( string password = "root", int fetchSize = 1000, string zoneId = "UTC+08:00", - int poolSize = 8) + int poolSize = 8, + bool enableRpcCompression = true + ) { _host = host; _port = port; @@ -99,7 +101,9 @@ public SessionPool( _fetchSize = fetchSize; _debugMode = false; _poolSize = poolSize; - } + _enableRpcCompression = enableRpcCompression; + } + ILoggerFactory factory; public void OpenDebugMode(Action configure) { @@ -111,16 +115,22 @@ public void OpenDebugMode(Action configure) public void CloseDebugMode() { _debugMode = false; - } - + } + public async Task Open(bool enableRpcCompression, CancellationToken cancellationToken = default) + { + _enableRpcCompression = enableRpcCompression; + await Open(cancellationToken); + } + + public async Task Open(CancellationToken cancellationToken = default) { - _clients = new ConcurrentClientQueue(); - _enableRpcCompression = enableRpcCompression; - + _clients = new ConcurrentClientQueue(); + + for (var index = 0; index < _poolSize; index++) { - _clients.Add(await CreateAndOpen(enableRpcCompression, cancellationToken)); + _clients.Add(await CreateAndOpen(_enableRpcCompression, cancellationToken)); } } From d9ad8cd61db85fbcd9558de4c0e2871336dfc5d7 Mon Sep 17 00:00:00 2001 From: "Yanhong.Ma" Date: Mon, 25 Jul 2022 11:29:29 +0800 Subject: [PATCH 178/214] =?UTF-8?q?=E6=94=B9=E8=BF=9B=E9=87=8A=E6=94=BE?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DataStructure/SessionDataSet.cs | 33 +++++++++++---- src/Apache.IoTDB/SessionPool.cs | 40 +++++++++++++------ 2 files changed, 53 insertions(+), 20 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 2d2d897..722d610 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -23,8 +23,8 @@ public class SessionDataSet: System.IDisposable private int _rowIndex; private bool _hasCatchedResult; private RowRecord _cachedRowRecord; - private readonly bool _isClosed = false; - + private bool _isClosed = false; + private bool disposedValue; private string TimestampStr => "Time"; private int StartIndex => 2; @@ -295,7 +295,7 @@ public async Task Close() try { - await myClient.ServiceClient.closeOperationAsync(req); + var status= await myClient.ServiceClient.closeOperationAsync(req); } catch (TException e) { @@ -307,16 +307,33 @@ public async Task Close() } } } - ~SessionDataSet() + + protected virtual void Dispose(bool disposing) { - this.Dispose(); + if (!disposedValue) + { + if (disposing) + { + try + { + this.Close().Wait(); + } + catch + { + } + } + _queryDataset=null; + _timeBuffer = null; + _valueBufferLst = null; + _bitmapBufferLst = null; + disposedValue = true; + } } - public void Dispose() { - this.Close().Wait(); - + Dispose(disposing: true); + GC.SuppressFinalize(this); } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 1e1592e..0120a30 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -14,7 +14,8 @@ namespace Apache.IoTDB { - public class SessionPool + + public class SessionPool:IDisposable { private static int SuccessCode => 200; private static readonly TSProtocolVersion ProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; @@ -104,7 +105,9 @@ public SessionPool( _enableRpcCompression = enableRpcCompression; } - ILoggerFactory factory; + ILoggerFactory factory; + private bool disposedValue; + public void OpenDebugMode(Action configure) { _debugMode = true; @@ -2091,15 +2094,28 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam { _clients.Add(client); } - } - - - - - - - - - + } + + protected virtual void Dispose(bool disposing) + { + if (!disposedValue) + { + if (disposing) + { +#if NET461_OR_GREATER || NETSTANDARD2_0 +#else + _clients.ClientQueue.Clear(); +#endif + } + _clients = null; + disposedValue = true; + } + } + + public void Dispose() + { + Dispose(disposing: true); + GC.SuppressFinalize(this); + } } } \ No newline at end of file From 187246017466271690fc3a623fc3b0854366180b Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Wed, 10 Aug 2022 14:24:52 +0800 Subject: [PATCH 179/214] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AF=B4=E6=98=8E?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj b/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj index d7cb6cb..8680af8 100644 --- a/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj +++ b/src/Apache.IoTDB.Data/Apache.IoTDB.Data.csproj @@ -18,9 +18,9 @@ net5.0;net6.0;netstandard2.1;netstandard2.0;net461 10 - Apache.IoTDB.Data 是一个TDengine 的ADO.Net 提供器。 这将允许你通过.Net 访问IoTDB数据库。 + Apache.IoTDB.Data是一个IoTDB的ADO.Net 提供器。这将允许你通过.Net访问IoTDB数据库。 - \ No newline at end of file + From f66d3b0a4b86f867453cc0516ef18e41f22f2fcd Mon Sep 17 00:00:00 2001 From: liushoushan_notebook Date: Thu, 1 Sep 2022 11:02:24 +0800 Subject: [PATCH 180/214] =?UTF-8?q?=E6=B2=A1=E6=9C=89=E4=BC=A0=E9=80=92Com?= =?UTF-8?q?pression=EF=BC=8C=E5=AF=BC=E8=87=B4iotdb=E8=BF=9E=E6=8E=A5?= =?UTF-8?q?=E6=97=B6=E7=9A=84=E5=8F=82=E6=95=B0=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E3=80=82=E7=9B=AE=E5=89=8D=E5=8F=91=E7=8E=B0enableRpcCompressi?= =?UTF-8?q?on=E4=B8=BATrue=E6=97=B6iotdb-server=E4=BC=9A=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=EF=BC=9ABad=20version=20in=20readMessageBegin=EF=BC=8C?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E7=9A=84=E5=8E=9F=E5=9B=A0=E5=B0=9A=E6=9C=AA?= =?UTF-8?q?=E7=A1=AE=E5=AE=9A=E3=80=82=E5=BB=BA=E8=AE=AECompression?= =?UTF-8?q?=E5=85=88=E9=87=87=E7=94=A8false=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Apache.IoTDB.Data/DataReaderExtensions.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apache.IoTDB.Data/DataReaderExtensions.cs b/src/Apache.IoTDB.Data/DataReaderExtensions.cs index 8a9ea58..45a2a87 100644 --- a/src/Apache.IoTDB.Data/DataReaderExtensions.cs +++ b/src/Apache.IoTDB.Data/DataReaderExtensions.cs @@ -14,7 +14,7 @@ public static class DataReaderExtensions { public static SessionPool CreateSession(this IoTDBConnectionStringBuilder db) { - return new SessionPool(db.DataSource, db.Port, db.Username, db.Password, db.FetchSize, db.ZoneId, db.PoolSize); + return new SessionPool(db.DataSource, db.Port, db.Username, db.Password, db.FetchSize, db.ZoneId, db.PoolSize,db.Compression); } public static List ToObject(this IDataReader dataReader) From 0fd4db546fa6d57b7b79ebb24c41df5437a38a24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E5=B1=95?= Date: Thu, 10 Nov 2022 11:24:28 +0800 Subject: [PATCH 181/214] Change str length to uft-8 length --- src/Apache.IoTDB/DataStructure/ByteBuffer.cs | 33 ++++++++++---------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs index a5a6782..fa2eaa1 100644 --- a/src/Apache.IoTDB/DataStructure/ByteBuffer.cs +++ b/src/Apache.IoTDB/DataStructure/ByteBuffer.cs @@ -51,7 +51,7 @@ public bool GetBool() public int GetInt() { var intBuff = _buffer[_readPos..(_readPos + 4)]; - if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); + if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); #if NET461_OR_GREATER || NETSTANDARD2_0 var intValue = BitConverter.ToInt32(intBuff,0); #else @@ -65,8 +65,8 @@ public int GetInt() public long GetLong() { var longBuff = _buffer[_readPos..(_readPos + 8)]; - - if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); + + if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); #if NET461_OR_GREATER || NETSTANDARD2_0 var longValue = BitConverter.ToInt64(longBuff,0); #else @@ -80,8 +80,8 @@ public long GetLong() public float GetFloat() { var floatBuff = _buffer[_readPos..(_readPos + 4)]; - - if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); + + if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); #if NET461_OR_GREATER || NETSTANDARD2_0 var floatValue = BitConverter.ToSingle(floatBuff,0); #else @@ -94,8 +94,8 @@ public float GetFloat() public double GetDouble() { var doubleBuff = _buffer[_readPos..(_readPos + 8)]; - - if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); + + if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); #if NET461_OR_GREATER || NETSTANDARD2_0 var doubleValue = BitConverter.ToDouble(doubleBuff,0); #else @@ -135,7 +135,7 @@ private void ExtendBuffer(int spaceNeed) public void AddBool(bool value) { var boolBuffer = BitConverter.GetBytes(value); - + if (_isLittleEndian) boolBuffer = boolBuffer.Reverse().ToArray(); ExtendBuffer(boolBuffer.Length); @@ -146,7 +146,7 @@ public void AddBool(bool value) public void AddInt(int value) { var intBuff = BitConverter.GetBytes(value); - + if (_isLittleEndian) intBuff = intBuff.Reverse().ToArray(); ExtendBuffer(intBuff.Length); @@ -157,7 +157,7 @@ public void AddInt(int value) public void AddLong(long value) { var longBuff = BitConverter.GetBytes(value); - + if (_isLittleEndian) longBuff = longBuff.Reverse().ToArray(); ExtendBuffer(longBuff.Length); @@ -168,7 +168,7 @@ public void AddLong(long value) public void AddFloat(float value) { var floatBuff = BitConverter.GetBytes(value); - + if (_isLittleEndian) floatBuff = floatBuff.Reverse().ToArray(); ExtendBuffer(floatBuff.Length); @@ -179,7 +179,7 @@ public void AddFloat(float value) public void AddDouble(double value) { var doubleBuff = BitConverter.GetBytes(value); - + if (_isLittleEndian) doubleBuff = doubleBuff.Reverse().ToArray(); ExtendBuffer(doubleBuff.Length); @@ -189,10 +189,10 @@ public void AddDouble(double value) public void AddStr(string value) { - AddInt(value.Length); - var strBuf = Encoding.UTF8.GetBytes(value); + AddInt(strBuf.Length); + ExtendBuffer(strBuf.Length); strBuf.CopyTo(_buffer, _writePos); _writePos += strBuf.Length; @@ -201,14 +201,15 @@ public void AddStr(string value) public void AddChar(char value) { var charBuf = BitConverter.GetBytes(value); - + if (_isLittleEndian) charBuf = charBuf.Reverse().ToArray(); ExtendBuffer(charBuf.Length); charBuf.CopyTo(_buffer, _writePos); _writePos += charBuf.Length; } - public void AddByte(byte value){ + public void AddByte(byte value) + { ExtendBuffer(1); _buffer[_writePos] = value; _writePos += 1; From 868e15f3526af64e99b98745cafd6e0ccd87cb6e Mon Sep 17 00:00:00 2001 From: MysticBoy Date: Tue, 22 Nov 2022 13:22:42 +0800 Subject: [PATCH 182/214] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E7=BA=BF=E7=A8=8B?= =?UTF-8?q?=E6=B1=A0=20=E9=98=9F=E5=88=97=E5=A4=84=E7=90=86=E3=80=82=20=20?= =?UTF-8?q?=E5=8A=A0=E5=85=A5=E7=BA=BF=E7=A8=8B=E6=B1=A0=E4=B8=BA=E7=A9=BA?= =?UTF-8?q?=E6=97=B6=E8=B6=85=E6=97=B6=E7=AD=89=E5=BE=85=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- launchSettings.json | 14 +++ .../Apache.IoTDB.Samples/SessionPoolTest.cs | 1 + src/Apache.IoTDB.Data/DataReaderExtensions.cs | 2 +- .../IoTDBConnectionStringBuilder.cs | 39 ++++-- src/Apache.IoTDB/ConcurrentClientQueue.cs | 113 ++++++++++++------ src/Apache.IoTDB/SessionPool.cs | 80 ++++--------- 6 files changed, 149 insertions(+), 100 deletions(-) create mode 100644 launchSettings.json diff --git a/launchSettings.json b/launchSettings.json new file mode 100644 index 0000000..21ab158 --- /dev/null +++ b/launchSettings.json @@ -0,0 +1,14 @@ +{ + "profiles": { + "Docker Compose": { + "commandName": "DockerCompose", + "commandVersion": "1.0", + "composeLaunchAction": "None", + "composeLaunchServiceName": "apache.iotdb.samples", + "serviceActions": { + "apache.iotdb.samples": "StartDebugging", + "iotdb": "StartWithoutDebugging" + } + } + } +} \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index eeaee88..189c4d6 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -276,6 +276,7 @@ public async Task TestNonSqlBy_ADO() { var cnts = new IoTDB.Data.IoTDBConnectionStringBuilder(); cnts.DataSource = host; + cnts.TimeOut =(int) TimeSpan.FromSeconds(20).TotalMilliseconds; var cnt = new IoTDB.Data.IoTDBConnection(cnts.ConnectionString); await cnt.OpenAsync(); var session_pool = cnt.SessionPool; diff --git a/src/Apache.IoTDB.Data/DataReaderExtensions.cs b/src/Apache.IoTDB.Data/DataReaderExtensions.cs index 45a2a87..91cd9cf 100644 --- a/src/Apache.IoTDB.Data/DataReaderExtensions.cs +++ b/src/Apache.IoTDB.Data/DataReaderExtensions.cs @@ -14,7 +14,7 @@ public static class DataReaderExtensions { public static SessionPool CreateSession(this IoTDBConnectionStringBuilder db) { - return new SessionPool(db.DataSource, db.Port, db.Username, db.Password, db.FetchSize, db.ZoneId, db.PoolSize,db.Compression); + return new SessionPool(db.DataSource, db.Port, db.Username, db.Password, db.FetchSize, db.ZoneId, db.PoolSize,db.Compression,db.TimeOut); } public static List ToObject(this IDataReader dataReader) diff --git a/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs b/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs index 598b802..1c665bd 100644 --- a/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs +++ b/src/Apache.IoTDB.Data/IoTDBConnectionStringBuilder.cs @@ -6,6 +6,7 @@ using System.Diagnostics; using System.Globalization; using System.Reflection; +using System.Threading; namespace Apache.IoTDB.Data { @@ -23,7 +24,8 @@ public class IoTDBConnectionStringBuilder : DbConnectionStringBuilder private const string CompressionKeyword = "Compression"; private const string PoolSizeKeyword = "PoolSize"; private const string ZoneIdKeyword = "ZoneId"; - + private const string TimeOutKeyword = "TimeOut"; + private enum Keywords { DataSource, @@ -33,7 +35,8 @@ private enum Keywords FetchSize, Compression, PoolSize, - ZoneId + ZoneId, + TimeOut } private static readonly IReadOnlyList _validKeywords; @@ -47,9 +50,11 @@ private enum Keywords private string _zoneId = "UTC+08:00"; private int _port = 6667; private int _poolSize =8; + private int _timeOut=10000; + static IoTDBConnectionStringBuilder() { - var validKeywords = new string[8]; + var validKeywords = new string[9]; validKeywords[(int)Keywords.DataSource] = DataSourceKeyword; validKeywords[(int)Keywords.Username] = UserNameKeyword; validKeywords[(int)Keywords.Password] = PasswordKeyword; @@ -58,9 +63,10 @@ static IoTDBConnectionStringBuilder() validKeywords[(int)Keywords.Compression] = CompressionKeyword; validKeywords[(int)Keywords.PoolSize] = PoolSizeKeyword; validKeywords[(int)Keywords.ZoneId] = ZoneIdKeyword; + validKeywords[(int)Keywords.TimeOut] =TimeOutKeyword; _validKeywords = validKeywords; - _keywords = new Dictionary(6, StringComparer.OrdinalIgnoreCase) + _keywords = new Dictionary(9, StringComparer.OrdinalIgnoreCase) { [DataSourceKeyword] = Keywords.DataSource, [UserNameKeyword] = Keywords.Username, @@ -69,7 +75,8 @@ static IoTDBConnectionStringBuilder() [FetchSizeKeyword] = Keywords.FetchSize, [CompressionKeyword] = Keywords.Compression, [PoolSizeKeyword] = Keywords.PoolSize, - [ZoneIdKeyword] = Keywords.ZoneId + [ZoneIdKeyword] = Keywords.ZoneId, + [TimeOutKeyword] = Keywords.TimeOut }; } @@ -135,8 +142,12 @@ public virtual string ZoneId get => _zoneId; set => base[ZoneIdKeyword] = _zoneId = value; } - - + + public virtual int TimeOut + { + get => _timeOut; + set => base[PoolSizeKeyword] = _timeOut = value; + } /// /// Gets a collection containing the keys used by the connection string. @@ -162,8 +173,10 @@ public override ICollection Values return new ReadOnlyCollection(values); } } - - + + + + @@ -211,6 +224,9 @@ public override object this[string keyword] case Keywords.ZoneId: ZoneId = Convert.ToString(value, CultureInfo.InvariantCulture); return; + case Keywords.TimeOut: + TimeOut = Convert.ToInt32(value, CultureInfo.InvariantCulture); + return; default: Debug.WriteLine(false, "Unexpected keyword: " + keyword); return; @@ -339,6 +355,8 @@ private object GetAt(Keywords index) return PoolSize; case Keywords.ZoneId: return ZoneId; + case Keywords.TimeOut: + return TimeOut; default: Debug.Assert(false, "Unexpected keyword: " + index); return null; @@ -378,6 +396,9 @@ private void Reset(Keywords index) case Keywords.ZoneId: _zoneId = "UTC+08:00"; return; + case Keywords.TimeOut: + _timeOut = 10000;//10sec. + return; default: Debug.Assert(false, "Unexpected keyword: " + index); return; diff --git a/src/Apache.IoTDB/ConcurrentClientQueue.cs b/src/Apache.IoTDB/ConcurrentClientQueue.cs index 6bdc8cd..ed27530 100644 --- a/src/Apache.IoTDB/ConcurrentClientQueue.cs +++ b/src/Apache.IoTDB/ConcurrentClientQueue.cs @@ -1,43 +1,86 @@ +using System; using System.Collections.Concurrent; using System.Collections.Generic; +using System.Diagnostics; using System.Threading; namespace Apache.IoTDB { - public class ConcurrentClientQueue - { - public ConcurrentQueue ClientQueue { get; } - - public ConcurrentClientQueue(List clients) - { - ClientQueue = new ConcurrentQueue(clients); - } - - public ConcurrentClientQueue() - { - ClientQueue = new ConcurrentQueue(); - } - - public void Add(Client client) - { - Monitor.Enter(ClientQueue); - ClientQueue.Enqueue(client); - Monitor.Pulse(ClientQueue); - Monitor.Exit(ClientQueue); - } - - public Client Take() - { - Monitor.Enter(ClientQueue); - - if (ClientQueue.IsEmpty) - { - Monitor.Wait(ClientQueue); - } - - ClientQueue.TryDequeue(out var client); - Monitor.Exit(ClientQueue); - return client; - } + public class ConcurrentClientQueue + { + public ConcurrentQueue ClientQueue { get; } + + public ConcurrentClientQueue(List clients) + { + ClientQueue = new ConcurrentQueue(clients); + } + public ConcurrentClientQueue() + { + ClientQueue = new ConcurrentQueue(); + } + public void Add(Client client) => Return(client); + + public void Return(Client client) + { + Monitor.Enter(ClientQueue); + ClientQueue.Enqueue(client); +#if DEBUG + Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} �黹 {client}"); +#endif + Monitor.Pulse(ClientQueue); + Monitor.Exit(ClientQueue); + Thread.Sleep(0); + } + int _ref = 0; + public void AddRef() + { + lock (this) + { + _ref++; + } + } + public int GetRef() + { + return _ref; + } + public void RemoveRef() + { + lock (this) + { + _ref--; + } + } + public int Timeout { get; set; } = 10; + public Client Take() + { + Client client = null; + Monitor.Enter(ClientQueue); + if (ClientQueue.IsEmpty) + { +#if DEBUG + Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} ���ӳ��ѿ�,��ȴ� ��ʱʱ��:{Timeout}"); +#endif + Monitor.Wait(ClientQueue, TimeSpan.FromSeconds(Timeout)); + } + if (!ClientQueue.TryDequeue(out client)) + { +#if DEBUG + Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} �����ӳػ�ȡ����ʧ�ܣ��ȴ�������"); +#endif + } + else + { + +#if DEBUG + Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} ���� {client}"); +#endif + } + Monitor.Exit(ClientQueue); + if (client == null) + { + throw new TimeoutException($"Connection pool is empty and wait time out({Timeout}s)!"); + } + return client; + } } } \ No newline at end of file diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 0120a30..18bc889 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Net.Sockets; +using System.Numerics; using System.Threading; using System.Threading.Tasks; using Apache.IoTDB.DataStructure; @@ -27,72 +28,34 @@ public class SessionPool:IDisposable private readonly string _host; private readonly int _port; private readonly int _fetchSize; + private readonly int _timeout; private readonly int _poolSize = 4; private readonly Utils _utilFunctions = new Utils(); - - private bool _debugMode; private bool _isClose = true; private ConcurrentClientQueue _clients; private ILogger _logger; public SessionPool(string host, int port, int poolSize) + : this(host, port, "root", "root", poolSize, "UTC+08:00", 8, true, 60) { - // init success code - _host = host; - _port = port; - _username = "root"; - _password = "root"; - _zoneId = "UTC+08:00"; - _fetchSize = 1024; - _poolSize = poolSize; } - public SessionPool( - string host, - int port, - string username, - string password, - int poolSize = 8) + public SessionPool(string host, int port, string username, string password) + : this(host, port, username, password, 1024, "UTC+08:00", 8, true, 60) { - _host = host; - _port = port; - _password = password; - _username = username; - _zoneId = "UTC+08:00"; - _fetchSize = 1024; - _debugMode = false; - _poolSize = poolSize; } - public SessionPool( - string host, - int port, - string username, - string password, - int fetchSize, - int poolSize = 8) - { - _host = host; - _port = port; - _username = username; - _password = password; - _fetchSize = fetchSize; - _zoneId = "UTC+08:00"; - _debugMode = false; - _poolSize = poolSize; + public SessionPool(string host, int port, string username, string password, int fetchSize) + : this(host, port, username, password, fetchSize, "UTC+08:00", 8, true, 60) + { + } - public SessionPool( - string host, - int port, - string username = "root", - string password = "root", - int fetchSize = 1000, - string zoneId = "UTC+08:00", - int poolSize = 8, - bool enableRpcCompression = true - ) + public SessionPool(string host, int port) : this(host, port, "root", "root", 1024, "UTC+08:00", 8, true, 60) + { + } + public SessionPool(string host, int port, string username, string password, int fetchSize, string zoneId, int poolSize, bool enableRpcCompression, int timeout) { _host = host; _port = port; @@ -103,8 +66,15 @@ public SessionPool( _debugMode = false; _poolSize = poolSize; _enableRpcCompression = enableRpcCompression; + _timeout = timeout; } + /// + /// Gets or sets the amount of time a Session will wait for a send operation to complete successfully. + /// + /// The send time-out value, in milliseconds. The default is 10000. + public int TimeOut { get; set; } = 10000; + ILoggerFactory factory; private bool disposedValue; @@ -129,11 +99,10 @@ public async Task Open(bool enableRpcCompression, CancellationToken cancellation public async Task Open(CancellationToken cancellationToken = default) { _clients = new ConcurrentClientQueue(); - - + _clients.Timeout = _timeout*5; for (var index = 0; index < _poolSize; index++) { - _clients.Add(await CreateAndOpen(_enableRpcCompression, cancellationToken)); + _clients.Add(await CreateAndOpen(_enableRpcCompression,_timeout, cancellationToken)); } } @@ -213,10 +182,11 @@ public async Task GetTimeZone() } } - private async Task CreateAndOpen(bool enableRpcCompression, CancellationToken cancellationToken = default) + private async Task CreateAndOpen(bool enableRpcCompression,int timeout, CancellationToken cancellationToken = default) { var tcpClient = new TcpClient(_host, _port); - + tcpClient.SendTimeout = timeout; + tcpClient.ReceiveTimeout = timeout; var transport = new TFramedTransport(new TSocketTransport(tcpClient, null)); if (!transport.IsOpen) From 426f45cdcb56f1398098e992ea70260f3c1f36e8 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Sun, 8 Jan 2023 21:11:44 +0800 Subject: [PATCH 183/214] Update ConcurrentClientQueue.cs Change some log to En due to encoding problems --- src/Apache.IoTDB/ConcurrentClientQueue.cs | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Apache.IoTDB/ConcurrentClientQueue.cs b/src/Apache.IoTDB/ConcurrentClientQueue.cs index ed27530..18846c7 100644 --- a/src/Apache.IoTDB/ConcurrentClientQueue.cs +++ b/src/Apache.IoTDB/ConcurrentClientQueue.cs @@ -1,11 +1,11 @@ using System; -using System.Collections.Concurrent; -using System.Collections.Generic; +using System.Collections.Concurrent; +using System.Collections.Generic; using System.Diagnostics; -using System.Threading; - -namespace Apache.IoTDB -{ +using System.Threading; + +namespace Apache.IoTDB +{ public class ConcurrentClientQueue { public ConcurrentQueue ClientQueue { get; } @@ -25,7 +25,7 @@ public void Return(Client client) Monitor.Enter(ClientQueue); ClientQueue.Enqueue(client); #if DEBUG - Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} �黹 {client}"); + Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} put back {client}"); #endif Monitor.Pulse(ClientQueue); Monitor.Exit(ClientQueue); @@ -58,21 +58,21 @@ public Client Take() if (ClientQueue.IsEmpty) { #if DEBUG - Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} ���ӳ��ѿ�,��ȴ� ��ʱʱ��:{Timeout}"); + Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} the connection pool is empty, wait timeout:{Timeout}"); #endif Monitor.Wait(ClientQueue, TimeSpan.FromSeconds(Timeout)); } if (!ClientQueue.TryDequeue(out client)) { #if DEBUG - Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} �����ӳػ�ȡ����ʧ�ܣ��ȴ�������"); + Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} obtaining a client from the client pool failed, wait and try again"); #endif } else { #if DEBUG - Console.WriteLine($"�߳�{Thread.CurrentThread.ManagedThreadId} ���� {client}"); + Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} take away {client}"); #endif } Monitor.Exit(ClientQueue); @@ -82,5 +82,5 @@ public Client Take() } return client; } - } + } } \ No newline at end of file From 2c3276400853a6d5b915960937aab10a4e408516 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E5=B1=95?= Date: Mon, 9 Jan 2023 13:19:36 +0800 Subject: [PATCH 184/214] Update RPC code --- .../{TSIService.cs => IClientRPCService.cs} | 7778 ++++++++++++----- .../Rpc/Generated/ServerProperties.cs | 51 +- .../Generated/TSBackupConfigurationResp.cs | 315 + .../Rpc/Generated/TSCancelOperationReq.cs | 8 +- .../Rpc/Generated/TSCloseOperationReq.cs | 14 +- .../Rpc/Generated/TSCloseSessionReq.cs | 6 +- .../Rpc/Generated/TSConnectionInfo.cs | 267 + .../Rpc/Generated/TSConnectionInfoResp.cs | 179 + .../Rpc/Generated/TSConnectionType.cs | 16 + .../Generated/TSExecuteBatchStatementReq.cs | 24 +- .../Rpc/Generated/TSExecuteStatementReq.cs | 26 +- .../Rpc/Generated/TSExecuteStatementResp.cs | 253 +- .../Rpc/Generated/TSFetchResultsReq.cs | 18 +- .../Rpc/Generated/TSFetchResultsResp.cs | 135 +- .../Rpc/Generated/TSGetOperationStatusReq.cs | 8 +- .../Rpc/Generated/TSInsertStringRecordReq.cs | 51 +- .../Rpc/Generated/TSLastDataQueryReq.cs | 51 +- .../Rpc/Generated/TSOpenSessionReq.cs | 75 +- .../Rpc/Generated/TSOpenSessionResp.cs | 38 +- .../Rpc/Generated/TSQueryDataSet.cs | 42 +- .../Rpc/Generated/TSQueryNonAlignDataSet.cs | 40 +- .../Rpc/Generated/TSRawDataQueryReq.cs | 51 +- src/Apache.IoTDB/Rpc/Generated/TSStatus.cs | 321 - .../Rpc/Generated/TSTracingInfo.cs | 76 +- .../Rpc/Generated/TSyncIdentityInfo.cs | 275 + ...{EndPoint.cs => TSyncTransportMetaInfo.cs} | 82 +- ...rpc.Extensions.cs => client.Extensions.cs} | 95 +- 27 files changed, 7649 insertions(+), 2646 deletions(-) rename src/Apache.IoTDB/Rpc/Generated/{TSIService.cs => IClientRPCService.cs} (78%) create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSBackupConfigurationResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSConnectionInfo.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSConnectionInfoResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSConnectionType.cs delete mode 100644 src/Apache.IoTDB/Rpc/Generated/TSStatus.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSyncIdentityInfo.cs rename src/Apache.IoTDB/Rpc/Generated/{EndPoint.cs => TSyncTransportMetaInfo.cs} (65%) rename src/Apache.IoTDB/Rpc/Generated/{rpc.Extensions.cs => client.Extensions.cs} (75%) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSIService.cs b/src/Apache.IoTDB/Rpc/Generated/IClientRPCService.cs similarity index 78% rename from src/Apache.IoTDB/Rpc/Generated/TSIService.cs rename to src/Apache.IoTDB/Rpc/Generated/IClientRPCService.cs index 964e1aa..b0cdf09 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSIService.cs +++ b/src/Apache.IoTDB/Rpc/Generated/IClientRPCService.cs @@ -28,10 +28,22 @@ #pragma warning disable IDE0079 // remove unnecessary pragmas #pragma warning disable IDE1006 // parts of the code use IDL spelling -public partial class TSIService +public partial class IClientRPCService { public interface IAsync { + global::System.Threading.Tasks.Task executeQueryStatementV2Async(TSExecuteStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeUpdateStatementV2Async(TSExecuteStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeStatementV2Async(TSExecuteStatementReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeRawDataQueryV2Async(TSRawDataQueryReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task executeLastDataQueryV2Async(TSLastDataQueryReq req, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task fetchResultsV2Async(TSFetchResultsReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default); global::System.Threading.Tasks.Task closeSessionAsync(TSCloseSessionReq req, CancellationToken cancellationToken = default); @@ -122,6 +134,16 @@ public interface IAsync global::System.Threading.Tasks.Task dropSchemaTemplateAsync(TSDropSchemaTemplateReq req, CancellationToken cancellationToken = default); + global::System.Threading.Tasks.Task handshakeAsync(TSyncIdentityInfo info, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task sendPipeDataAsync(byte[] buff, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task sendFileAsync(TSyncTransportMetaInfo metaInfo, byte[] buff, CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task getBackupConfigurationAsync(CancellationToken cancellationToken = default); + + global::System.Threading.Tasks.Task fetchAllConnectionsInfoAsync(CancellationToken cancellationToken = default); + } @@ -133,6 +155,186 @@ public Client(TProtocol protocol) : this(protocol, protocol) public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputProtocol, outputProtocol) { } + public async global::System.Threading.Tasks.Task executeQueryStatementV2Async(TSExecuteStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeQueryStatementV2", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeQueryStatementV2Args() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeQueryStatementV2Result(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeQueryStatementV2 failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeUpdateStatementV2Async(TSExecuteStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeUpdateStatementV2", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeUpdateStatementV2Args() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeUpdateStatementV2Result(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeUpdateStatementV2 failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeStatementV2Async(TSExecuteStatementReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeStatementV2", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeStatementV2Args() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeStatementV2Result(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeStatementV2 failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeRawDataQueryV2Async(TSRawDataQueryReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeRawDataQueryV2", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeRawDataQueryV2Args() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeRawDataQueryV2Result(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeRawDataQueryV2 failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task executeLastDataQueryV2Async(TSLastDataQueryReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("executeLastDataQueryV2", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.executeLastDataQueryV2Args() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.executeLastDataQueryV2Result(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "executeLastDataQueryV2 failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task fetchResultsV2Async(TSFetchResultsReq req, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchResultsV2", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.fetchResultsV2Args() { + Req = req, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.fetchResultsV2Result(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchResultsV2 failed: unknown result"); + } + public async global::System.Threading.Tasks.Task openSessionAsync(TSOpenSessionReq req, CancellationToken cancellationToken = default) { await OutputProtocol.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Call, SeqId), cancellationToken); @@ -1485,78 +1687,238 @@ public Client(TProtocol inputProtocol, TProtocol outputProtocol) : base(inputPro throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "dropSchemaTemplate failed: unknown result"); } - } - - public class AsyncProcessor : ITAsyncProcessor - { - private readonly IAsync _iAsync; - private readonly ILogger _logger; - - public AsyncProcessor(IAsync iAsync, ILogger logger = default) + public async global::System.Threading.Tasks.Task handshakeAsync(TSyncIdentityInfo info, CancellationToken cancellationToken = default) { - _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); - _logger = logger; - processMap_["openSession"] = openSession_ProcessAsync; - processMap_["closeSession"] = closeSession_ProcessAsync; - processMap_["executeStatement"] = executeStatement_ProcessAsync; - processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; - processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; - processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; - processMap_["fetchResults"] = fetchResults_ProcessAsync; - processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; - processMap_["cancelOperation"] = cancelOperation_ProcessAsync; - processMap_["closeOperation"] = closeOperation_ProcessAsync; - processMap_["getTimeZone"] = getTimeZone_ProcessAsync; - processMap_["setTimeZone"] = setTimeZone_ProcessAsync; - processMap_["getProperties"] = getProperties_ProcessAsync; - processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; - processMap_["createTimeseries"] = createTimeseries_ProcessAsync; - processMap_["createAlignedTimeseries"] = createAlignedTimeseries_ProcessAsync; - processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; - processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; - processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; - processMap_["insertRecord"] = insertRecord_ProcessAsync; - processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; - processMap_["insertTablet"] = insertTablet_ProcessAsync; - processMap_["insertTablets"] = insertTablets_ProcessAsync; - processMap_["insertRecords"] = insertRecords_ProcessAsync; - processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; - processMap_["insertStringRecordsOfOneDevice"] = insertStringRecordsOfOneDevice_ProcessAsync; - processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; - processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; - processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; - processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; - processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; - processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; - processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; - processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; - processMap_["deleteData"] = deleteData_ProcessAsync; - processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; - processMap_["executeLastDataQuery"] = executeLastDataQuery_ProcessAsync; - processMap_["requestStatementId"] = requestStatementId_ProcessAsync; - processMap_["createSchemaTemplate"] = createSchemaTemplate_ProcessAsync; - processMap_["appendSchemaTemplate"] = appendSchemaTemplate_ProcessAsync; - processMap_["pruneSchemaTemplate"] = pruneSchemaTemplate_ProcessAsync; - processMap_["querySchemaTemplate"] = querySchemaTemplate_ProcessAsync; - processMap_["setSchemaTemplate"] = setSchemaTemplate_ProcessAsync; - processMap_["unsetSchemaTemplate"] = unsetSchemaTemplate_ProcessAsync; - processMap_["dropSchemaTemplate"] = dropSchemaTemplate_ProcessAsync; - } - - protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); - protected Dictionary processMap_ = new Dictionary(); + await OutputProtocol.WriteMessageBeginAsync(new TMessage("handshake", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.handshakeArgs() { + Info = info, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) - { - return await ProcessAsync(iprot, oprot, CancellationToken.None); + var result = new InternalStructs.handshakeResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "handshake failed: unknown result"); } - public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task sendPipeDataAsync(byte[] buff, CancellationToken cancellationToken = default) { - try + await OutputProtocol.WriteMessageBeginAsync(new TMessage("sendPipeData", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.sendPipeDataArgs() { + Buff = buff, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) { - var msg = await iprot.ReadMessageBeginAsync(cancellationToken); - + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.sendPipeDataResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "sendPipeData failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task sendFileAsync(TSyncTransportMetaInfo metaInfo, byte[] buff, CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("sendFile", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.sendFileArgs() { + MetaInfo = metaInfo, + Buff = buff, + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.sendFileResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "sendFile failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task getBackupConfigurationAsync(CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("getBackupConfiguration", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.getBackupConfigurationArgs() { + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.getBackupConfigurationResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "getBackupConfiguration failed: unknown result"); + } + + public async global::System.Threading.Tasks.Task fetchAllConnectionsInfoAsync(CancellationToken cancellationToken = default) + { + await OutputProtocol.WriteMessageBeginAsync(new TMessage("fetchAllConnectionsInfo", TMessageType.Call, SeqId), cancellationToken); + + var args = new InternalStructs.fetchAllConnectionsInfoArgs() { + }; + + await args.WriteAsync(OutputProtocol, cancellationToken); + await OutputProtocol.WriteMessageEndAsync(cancellationToken); + await OutputProtocol.Transport.FlushAsync(cancellationToken); + + var msg = await InputProtocol.ReadMessageBeginAsync(cancellationToken); + if (msg.Type == TMessageType.Exception) + { + var x = await TApplicationException.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + throw x; + } + + var result = new InternalStructs.fetchAllConnectionsInfoResult(); + await result.ReadAsync(InputProtocol, cancellationToken); + await InputProtocol.ReadMessageEndAsync(cancellationToken); + if (result.__isset.success) + { + return result.Success; + } + throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "fetchAllConnectionsInfo failed: unknown result"); + } + + } + + public class AsyncProcessor : ITAsyncProcessor + { + private readonly IAsync _iAsync; + private readonly ILogger _logger; + + public AsyncProcessor(IAsync iAsync, ILogger logger = default) + { + _iAsync = iAsync ?? throw new ArgumentNullException(nameof(iAsync)); + _logger = logger; + processMap_["executeQueryStatementV2"] = executeQueryStatementV2_ProcessAsync; + processMap_["executeUpdateStatementV2"] = executeUpdateStatementV2_ProcessAsync; + processMap_["executeStatementV2"] = executeStatementV2_ProcessAsync; + processMap_["executeRawDataQueryV2"] = executeRawDataQueryV2_ProcessAsync; + processMap_["executeLastDataQueryV2"] = executeLastDataQueryV2_ProcessAsync; + processMap_["fetchResultsV2"] = fetchResultsV2_ProcessAsync; + processMap_["openSession"] = openSession_ProcessAsync; + processMap_["closeSession"] = closeSession_ProcessAsync; + processMap_["executeStatement"] = executeStatement_ProcessAsync; + processMap_["executeBatchStatement"] = executeBatchStatement_ProcessAsync; + processMap_["executeQueryStatement"] = executeQueryStatement_ProcessAsync; + processMap_["executeUpdateStatement"] = executeUpdateStatement_ProcessAsync; + processMap_["fetchResults"] = fetchResults_ProcessAsync; + processMap_["fetchMetadata"] = fetchMetadata_ProcessAsync; + processMap_["cancelOperation"] = cancelOperation_ProcessAsync; + processMap_["closeOperation"] = closeOperation_ProcessAsync; + processMap_["getTimeZone"] = getTimeZone_ProcessAsync; + processMap_["setTimeZone"] = setTimeZone_ProcessAsync; + processMap_["getProperties"] = getProperties_ProcessAsync; + processMap_["setStorageGroup"] = setStorageGroup_ProcessAsync; + processMap_["createTimeseries"] = createTimeseries_ProcessAsync; + processMap_["createAlignedTimeseries"] = createAlignedTimeseries_ProcessAsync; + processMap_["createMultiTimeseries"] = createMultiTimeseries_ProcessAsync; + processMap_["deleteTimeseries"] = deleteTimeseries_ProcessAsync; + processMap_["deleteStorageGroups"] = deleteStorageGroups_ProcessAsync; + processMap_["insertRecord"] = insertRecord_ProcessAsync; + processMap_["insertStringRecord"] = insertStringRecord_ProcessAsync; + processMap_["insertTablet"] = insertTablet_ProcessAsync; + processMap_["insertTablets"] = insertTablets_ProcessAsync; + processMap_["insertRecords"] = insertRecords_ProcessAsync; + processMap_["insertRecordsOfOneDevice"] = insertRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecordsOfOneDevice"] = insertStringRecordsOfOneDevice_ProcessAsync; + processMap_["insertStringRecords"] = insertStringRecords_ProcessAsync; + processMap_["testInsertTablet"] = testInsertTablet_ProcessAsync; + processMap_["testInsertTablets"] = testInsertTablets_ProcessAsync; + processMap_["testInsertRecord"] = testInsertRecord_ProcessAsync; + processMap_["testInsertStringRecord"] = testInsertStringRecord_ProcessAsync; + processMap_["testInsertRecords"] = testInsertRecords_ProcessAsync; + processMap_["testInsertRecordsOfOneDevice"] = testInsertRecordsOfOneDevice_ProcessAsync; + processMap_["testInsertStringRecords"] = testInsertStringRecords_ProcessAsync; + processMap_["deleteData"] = deleteData_ProcessAsync; + processMap_["executeRawDataQuery"] = executeRawDataQuery_ProcessAsync; + processMap_["executeLastDataQuery"] = executeLastDataQuery_ProcessAsync; + processMap_["requestStatementId"] = requestStatementId_ProcessAsync; + processMap_["createSchemaTemplate"] = createSchemaTemplate_ProcessAsync; + processMap_["appendSchemaTemplate"] = appendSchemaTemplate_ProcessAsync; + processMap_["pruneSchemaTemplate"] = pruneSchemaTemplate_ProcessAsync; + processMap_["querySchemaTemplate"] = querySchemaTemplate_ProcessAsync; + processMap_["setSchemaTemplate"] = setSchemaTemplate_ProcessAsync; + processMap_["unsetSchemaTemplate"] = unsetSchemaTemplate_ProcessAsync; + processMap_["dropSchemaTemplate"] = dropSchemaTemplate_ProcessAsync; + processMap_["handshake"] = handshake_ProcessAsync; + processMap_["sendPipeData"] = sendPipeData_ProcessAsync; + processMap_["sendFile"] = sendFile_ProcessAsync; + processMap_["getBackupConfiguration"] = getBackupConfiguration_ProcessAsync; + processMap_["fetchAllConnectionsInfo"] = fetchAllConnectionsInfo_ProcessAsync; + } + + protected delegate global::System.Threading.Tasks.Task ProcessFunction(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken); + protected Dictionary processMap_ = new Dictionary(); + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot) + { + return await ProcessAsync(iprot, oprot, CancellationToken.None); + } + + public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + try + { + var msg = await iprot.ReadMessageBeginAsync(cancellationToken); + processMap_.TryGetValue(msg.Name, out ProcessFunction fn); if (fn == null) @@ -1582,16 +1944,16 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat return true; } - public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeQueryStatementV2_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.openSessionArgs(); + var args = new InternalStructs.executeQueryStatementV2Args(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.openSessionResult(); + var result = new InternalStructs.executeQueryStatementV2Result(); try { - result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeQueryStatementV2Async(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatementV2", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1606,23 +1968,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatementV2", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeUpdateStatementV2_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.closeSessionArgs(); + var args = new InternalStructs.executeUpdateStatementV2Args(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.closeSessionResult(); + var result = new InternalStructs.executeUpdateStatementV2Result(); try { - result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeUpdateStatementV2Async(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatementV2", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1637,23 +1999,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatementV2", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task executeStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeStatementV2_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.executeStatementArgs(); + var args = new InternalStructs.executeStatementV2Args(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeStatementResult(); + var result = new InternalStructs.executeStatementV2Result(); try { - result.Success = await _iAsync.executeStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeStatementV2Async(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatementV2", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1668,23 +2030,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatementV2", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task executeBatchStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeRawDataQueryV2_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.executeBatchStatementArgs(); + var args = new InternalStructs.executeRawDataQueryV2Args(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeBatchStatementResult(); + var result = new InternalStructs.executeRawDataQueryV2Result(); try { - result.Success = await _iAsync.executeBatchStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeRawDataQueryV2Async(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQueryV2", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1699,23 +2061,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeRawDataQueryV2", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task executeQueryStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeLastDataQueryV2_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.executeQueryStatementArgs(); + var args = new InternalStructs.executeLastDataQueryV2Args(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeQueryStatementResult(); + var result = new InternalStructs.executeLastDataQueryV2Result(); try { - result.Success = await _iAsync.executeQueryStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeLastDataQueryV2Async(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQueryV2", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1730,23 +2092,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeLastDataQueryV2", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task executeUpdateStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task fetchResultsV2_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.executeUpdateStatementArgs(); + var args = new InternalStructs.fetchResultsV2Args(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.executeUpdateStatementResult(); + var result = new InternalStructs.fetchResultsV2Result(); try { - result.Success = await _iAsync.executeUpdateStatementAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.fetchResultsV2Async(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResultsV2", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1761,23 +2123,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResultsV2", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task fetchResults_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task openSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.fetchResultsArgs(); + var args = new InternalStructs.openSessionArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.fetchResultsResult(); + var result = new InternalStructs.openSessionResult(); try { - result.Success = await _iAsync.fetchResultsAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.openSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1792,23 +2154,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("openSession", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task fetchMetadata_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task closeSession_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.fetchMetadataArgs(); + var args = new InternalStructs.closeSessionArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.fetchMetadataResult(); + var result = new InternalStructs.closeSessionResult(); try { - result.Success = await _iAsync.fetchMetadataAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.closeSessionAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1823,23 +2185,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeSession", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task cancelOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.cancelOperationArgs(); + var args = new InternalStructs.executeStatementArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.cancelOperationResult(); + var result = new InternalStructs.executeStatementResult(); try { - result.Success = await _iAsync.cancelOperationAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1854,23 +2216,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeStatement", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task closeOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeBatchStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.closeOperationArgs(); + var args = new InternalStructs.executeBatchStatementArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.closeOperationResult(); + var result = new InternalStructs.executeBatchStatementResult(); try { - result.Success = await _iAsync.closeOperationAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeBatchStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1885,23 +2247,23 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeBatchStatement", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task getTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeQueryStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.getTimeZoneArgs(); + var args = new InternalStructs.executeQueryStatementArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.getTimeZoneResult(); + var result = new InternalStructs.executeQueryStatementResult(); try { - result.Success = await _iAsync.getTimeZoneAsync(args.SessionId, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Reply, seqid), cancellationToken); + result.Success = await _iAsync.executeQueryStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Reply, seqid), cancellationToken); await result.WriteAsync(oprot, cancellationToken); } catch (TTransportException) @@ -1916,16 +2278,202 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat else Console.Error.WriteLine(sErr); var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Exception, seqid), cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeQueryStatement", TMessageType.Exception, seqid), cancellationToken); await x.WriteAsync(oprot, cancellationToken); } await oprot.WriteMessageEndAsync(cancellationToken); await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task setTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task executeUpdateStatement_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) { - var args = new InternalStructs.setTimeZoneArgs(); + var args = new InternalStructs.executeUpdateStatementArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.executeUpdateStatementResult(); + try + { + result.Success = await _iAsync.executeUpdateStatementAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("executeUpdateStatement", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task fetchResults_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.fetchResultsArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchResultsResult(); + try + { + result.Success = await _iAsync.fetchResultsAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchResults", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task fetchMetadata_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.fetchMetadataArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchMetadataResult(); + try + { + result.Success = await _iAsync.fetchMetadataAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchMetadata", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task cancelOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.cancelOperationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.cancelOperationResult(); + try + { + result.Success = await _iAsync.cancelOperationAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("cancelOperation", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task closeOperation_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.closeOperationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.closeOperationResult(); + try + { + result.Success = await _iAsync.closeOperationAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("closeOperation", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task getTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.getTimeZoneArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.getTimeZoneResult(); + try + { + result.Success = await _iAsync.getTimeZoneAsync(args.SessionId, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("getTimeZone", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task setTimeZone_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setTimeZoneArgs(); await args.ReadAsync(iprot, cancellationToken); await iprot.ReadMessageEndAsync(cancellationToken); var result = new InternalStructs.setTimeZoneResult(); @@ -2884,109 +3432,3454 @@ public async Task ProcessAsync(TProtocol iprot, TProtocol oprot, Cancellat await oprot.Transport.FlushAsync(cancellationToken); } - public async global::System.Threading.Tasks.Task setSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + public async global::System.Threading.Tasks.Task setSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.setSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.setSchemaTemplateResult(); + try + { + result.Success = await _iAsync.setSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task unsetSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.unsetSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.unsetSchemaTemplateResult(); + try + { + result.Success = await _iAsync.unsetSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task dropSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.dropSchemaTemplateArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.dropSchemaTemplateResult(); + try + { + result.Success = await _iAsync.dropSchemaTemplateAsync(args.Req, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task handshake_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.handshakeArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.handshakeResult(); + try + { + result.Success = await _iAsync.handshakeAsync(args.Info, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("handshake", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("handshake", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task sendPipeData_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.sendPipeDataArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.sendPipeDataResult(); + try + { + result.Success = await _iAsync.sendPipeDataAsync(args.Buff, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("sendPipeData", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("sendPipeData", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task sendFile_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.sendFileArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.sendFileResult(); + try + { + result.Success = await _iAsync.sendFileAsync(args.MetaInfo, args.Buff, cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("sendFile", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("sendFile", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task getBackupConfiguration_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.getBackupConfigurationArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.getBackupConfigurationResult(); + try + { + result.Success = await _iAsync.getBackupConfigurationAsync(cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("getBackupConfiguration", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("getBackupConfiguration", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + public async global::System.Threading.Tasks.Task fetchAllConnectionsInfo_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) + { + var args = new InternalStructs.fetchAllConnectionsInfoArgs(); + await args.ReadAsync(iprot, cancellationToken); + await iprot.ReadMessageEndAsync(cancellationToken); + var result = new InternalStructs.fetchAllConnectionsInfoResult(); + try + { + result.Success = await _iAsync.fetchAllConnectionsInfoAsync(cancellationToken); + await oprot.WriteMessageBeginAsync(new TMessage("fetchAllConnectionsInfo", TMessageType.Reply, seqid), cancellationToken); + await result.WriteAsync(oprot, cancellationToken); + } + catch (TTransportException) + { + throw; + } + catch (Exception ex) + { + var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; + if(_logger != null) + _logger.LogError(ex, sErr); + else + Console.Error.WriteLine(sErr); + var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); + await oprot.WriteMessageBeginAsync(new TMessage("fetchAllConnectionsInfo", TMessageType.Exception, seqid), cancellationToken); + await x.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteMessageEndAsync(cancellationToken); + await oprot.Transport.FlushAsync(cancellationToken); + } + + } + + public class InternalStructs + { + + public partial class executeQueryStatementV2Args : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeQueryStatementV2Args() + { + } + + public executeQueryStatementV2Args DeepCopy() + { + var tmp435 = new executeQueryStatementV2Args(); + if((Req != null) && __isset.req) + { + tmp435.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp435.__isset.req = this.__isset.req; + return tmp435; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatementV2_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementV2Args other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatementV2_args("); + int tmp436 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp436++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementV2Result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeQueryStatementV2Result() + { + } + + public executeQueryStatementV2Result DeepCopy() + { + var tmp437 = new executeQueryStatementV2Result(); + if((Success != null) && __isset.success) + { + tmp437.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp437.__isset.success = this.__isset.success; + return tmp437; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatementV2_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementV2Result other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatementV2_result("); + int tmp438 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp438++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementV2Args : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeUpdateStatementV2Args() + { + } + + public executeUpdateStatementV2Args DeepCopy() + { + var tmp439 = new executeUpdateStatementV2Args(); + if((Req != null) && __isset.req) + { + tmp439.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp439.__isset.req = this.__isset.req; + return tmp439; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatementV2_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementV2Args other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatementV2_args("); + int tmp440 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp440++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeUpdateStatementV2Result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeUpdateStatementV2Result() + { + } + + public executeUpdateStatementV2Result DeepCopy() + { + var tmp441 = new executeUpdateStatementV2Result(); + if((Success != null) && __isset.success) + { + tmp441.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp441.__isset.success = this.__isset.success; + return tmp441; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeUpdateStatementV2_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeUpdateStatementV2Result other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeUpdateStatementV2_result("); + int tmp442 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp442++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementV2Args : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeStatementV2Args() + { + } + + public executeStatementV2Args DeepCopy() + { + var tmp443 = new executeStatementV2Args(); + if((Req != null) && __isset.req) + { + tmp443.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp443.__isset.req = this.__isset.req; + return tmp443; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatementV2_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementV2Args other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatementV2_args("); + int tmp444 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp444++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementV2Result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeStatementV2Result() + { + } + + public executeStatementV2Result DeepCopy() + { + var tmp445 = new executeStatementV2Result(); + if((Success != null) && __isset.success) + { + tmp445.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp445.__isset.success = this.__isset.success; + return tmp445; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatementV2_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementV2Result other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatementV2_result("); + int tmp446 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp446++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeRawDataQueryV2Args : TBase + { + private TSRawDataQueryReq _req; + + public TSRawDataQueryReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeRawDataQueryV2Args() + { + } + + public executeRawDataQueryV2Args DeepCopy() + { + var tmp447 = new executeRawDataQueryV2Args(); + if((Req != null) && __isset.req) + { + tmp447.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); + } + tmp447.__isset.req = this.__isset.req; + return tmp447; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSRawDataQueryReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeRawDataQueryV2_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeRawDataQueryV2Args other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeRawDataQueryV2_args("); + int tmp448 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp448++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeRawDataQueryV2Result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeRawDataQueryV2Result() + { + } + + public executeRawDataQueryV2Result DeepCopy() + { + var tmp449 = new executeRawDataQueryV2Result(); + if((Success != null) && __isset.success) + { + tmp449.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp449.__isset.success = this.__isset.success; + return tmp449; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeRawDataQueryV2_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeRawDataQueryV2Result other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeRawDataQueryV2_result("); + int tmp450 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp450++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeLastDataQueryV2Args : TBase + { + private TSLastDataQueryReq _req; + + public TSLastDataQueryReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeLastDataQueryV2Args() + { + } + + public executeLastDataQueryV2Args DeepCopy() + { + var tmp451 = new executeLastDataQueryV2Args(); + if((Req != null) && __isset.req) + { + tmp451.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); + } + tmp451.__isset.req = this.__isset.req; + return tmp451; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSLastDataQueryReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeLastDataQueryV2_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeLastDataQueryV2Args other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeLastDataQueryV2_args("); + int tmp452 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp452++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeLastDataQueryV2Result : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeLastDataQueryV2Result() + { + } + + public executeLastDataQueryV2Result DeepCopy() + { + var tmp453 = new executeLastDataQueryV2Result(); + if((Success != null) && __isset.success) + { + tmp453.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp453.__isset.success = this.__isset.success; + return tmp453; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeLastDataQueryV2_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeLastDataQueryV2Result other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeLastDataQueryV2_result("); + int tmp454 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp454++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsV2Args : TBase + { + private TSFetchResultsReq _req; + + public TSFetchResultsReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public fetchResultsV2Args() + { + } + + public fetchResultsV2Args DeepCopy() + { + var tmp455 = new fetchResultsV2Args(); + if((Req != null) && __isset.req) + { + tmp455.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + } + tmp455.__isset.req = this.__isset.req; + return tmp455; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSFetchResultsReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResultsV2_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsV2Args other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResultsV2_args("); + int tmp456 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp456++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class fetchResultsV2Result : TBase + { + private TSFetchResultsResp _success; + + public TSFetchResultsResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public fetchResultsV2Result() + { + } + + public fetchResultsV2Result DeepCopy() + { + var tmp457 = new fetchResultsV2Result(); + if((Success != null) && __isset.success) + { + tmp457.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + } + tmp457.__isset.success = this.__isset.success; + return tmp457; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSFetchResultsResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("fetchResultsV2_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is fetchResultsV2Result other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("fetchResultsV2_result("); + int tmp458 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp458++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class openSessionArgs : TBase + { + private TSOpenSessionReq _req; + + public TSOpenSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public openSessionArgs() + { + } + + public openSessionArgs DeepCopy() + { + var tmp459 = new openSessionArgs(); + if((Req != null) && __isset.req) + { + tmp459.Req = (TSOpenSessionReq)this.Req.DeepCopy(); + } + tmp459.__isset.req = this.__isset.req; + return tmp459; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSOpenSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_args("); + int tmp460 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp460++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class openSessionResult : TBase + { + private TSOpenSessionResp _success; + + public TSOpenSessionResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public openSessionResult() + { + } + + public openSessionResult DeepCopy() + { + var tmp461 = new openSessionResult(); + if((Success != null) && __isset.success) + { + tmp461.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + } + tmp461.__isset.success = this.__isset.success; + return tmp461; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSOpenSessionResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("openSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is openSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("openSession_result("); + int tmp462 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp462++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionArgs : TBase + { + private TSCloseSessionReq _req; + + public TSCloseSessionReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public closeSessionArgs() + { + } + + public closeSessionArgs DeepCopy() + { + var tmp463 = new closeSessionArgs(); + if((Req != null) && __isset.req) + { + tmp463.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + } + tmp463.__isset.req = this.__isset.req; + return tmp463; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSCloseSessionReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_args("); + int tmp464 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp464++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class closeSessionResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public closeSessionResult() + { + } + + public closeSessionResult DeepCopy() + { + var tmp465 = new closeSessionResult(); + if((Success != null) && __isset.success) + { + tmp465.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp465.__isset.success = this.__isset.success; + return tmp465; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("closeSession_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is closeSessionResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("closeSession_result("); + int tmp466 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp466++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeStatementArgs() + { + } + + public executeStatementArgs DeepCopy() + { + var tmp467 = new executeStatementArgs(); + if((Req != null) && __isset.req) + { + tmp467.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp467.__isset.req = this.__isset.req; + return tmp467; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_args("); + int tmp468 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp468++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeStatementResult : TBase + { + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeStatementResult() + { + } + + public executeStatementResult DeepCopy() + { + var tmp469 = new executeStatementResult(); + if((Success != null) && __isset.success) + { + tmp469.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp469.__isset.success = this.__isset.success; + return tmp469; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeStatement_result("); + int tmp470 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp470++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementArgs : TBase + { + private TSExecuteBatchStatementReq _req; + + public TSExecuteBatchStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeBatchStatementArgs() + { + } + + public executeBatchStatementArgs DeepCopy() + { + var tmp471 = new executeBatchStatementArgs(); + if((Req != null) && __isset.req) + { + tmp471.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + } + tmp471.__isset.req = this.__isset.req; + return tmp471; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteBatchStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_args("); + int tmp472 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp472++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeBatchStatementResult : TBase + { + private TSStatus _success; + + public TSStatus Success + { + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool success; + } + + public executeBatchStatementResult() + { + } + + public executeBatchStatementResult DeepCopy() + { + var tmp473 = new executeBatchStatementResult(); + if((Success != null) && __isset.success) + { + tmp473.Success = (TSStatus)this.Success.DeepCopy(); + } + tmp473.__isset.success = this.__isset.success; + return tmp473; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeBatchStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeBatchStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeBatchStatement_result("); + int tmp474 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp474++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementArgs : TBase + { + private TSExecuteStatementReq _req; + + public TSExecuteStatementReq Req + { + get + { + return _req; + } + set + { + __isset.req = true; + this._req = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool req; + } + + public executeQueryStatementArgs() + { + } + + public executeQueryStatementArgs DeepCopy() + { + var tmp475 = new executeQueryStatementArgs(); + if((Req != null) && __isset.req) + { + tmp475.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + } + tmp475.__isset.req = this.__isset.req; + return tmp475; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Req = new TSExecuteStatementReq(); + await Req.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Req != null) && __isset.req) + { + field.Name = "req"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is executeQueryStatementArgs other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Req != null) && __isset.req) + { + hashcode = (hashcode * 397) + Req.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("executeQueryStatement_args("); + int tmp476 = 0; + if((Req != null) && __isset.req) + { + if(0 < tmp476++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } + } + + + public partial class executeQueryStatementResult : TBase { - var args = new InternalStructs.setSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.setSchemaTemplateResult(); - try + private TSExecuteStatementResp _success; + + public TSExecuteStatementResp Success { - result.Success = await _iAsync.setSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); + get + { + return _success; + } + set + { + __isset.success = true; + this._success = value; + } } - catch (TTransportException) + + + public Isset __isset; + public struct Isset { - throw; + public bool success; } - catch (Exception ex) + + public executeQueryStatementResult() { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("setSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - public async global::System.Threading.Tasks.Task unsetSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.unsetSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.unsetSchemaTemplateResult(); - try + public executeQueryStatementResult DeepCopy() { - result.Success = await _iAsync.unsetSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); + var tmp477 = new executeQueryStatementResult(); + if((Success != null) && __isset.success) + { + tmp477.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + } + tmp477.__isset.success = this.__isset.success; + return tmp477; } - catch (TTransportException) + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { - throw; + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 0: + if (field.Type == TType.Struct) + { + Success = new TSExecuteStatementResp(); + await Success.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } } - catch (Exception ex) + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("unsetSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("executeQueryStatement_result"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + + if(this.__isset.success) + { + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); - } - public async global::System.Threading.Tasks.Task dropSchemaTemplate_ProcessAsync(int seqid, TProtocol iprot, TProtocol oprot, CancellationToken cancellationToken) - { - var args = new InternalStructs.dropSchemaTemplateArgs(); - await args.ReadAsync(iprot, cancellationToken); - await iprot.ReadMessageEndAsync(cancellationToken); - var result = new InternalStructs.dropSchemaTemplateResult(); - try + public override bool Equals(object that) { - result.Success = await _iAsync.dropSchemaTemplateAsync(args.Req, cancellationToken); - await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Reply, seqid), cancellationToken); - await result.WriteAsync(oprot, cancellationToken); + if (!(that is executeQueryStatementResult other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } - catch (TTransportException) - { - throw; + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Success != null) && __isset.success) + { + hashcode = (hashcode * 397) + Success.GetHashCode(); + } + } + return hashcode; } - catch (Exception ex) + + public override string ToString() { - var sErr = $"Error occurred in {GetType().FullName}: {ex.Message}"; - if(_logger != null) - _logger.LogError(ex, sErr); - else - Console.Error.WriteLine(sErr); - var x = new TApplicationException(TApplicationException.ExceptionType.InternalError," Internal error."); - await oprot.WriteMessageBeginAsync(new TMessage("dropSchemaTemplate", TMessageType.Exception, seqid), cancellationToken); - await x.WriteAsync(oprot, cancellationToken); + var sb = new StringBuilder("executeQueryStatement_result("); + int tmp478 = 0; + if((Success != null) && __isset.success) + { + if(0 < tmp478++) { sb.Append(", "); } + sb.Append("Success: "); + Success.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); } - await oprot.WriteMessageEndAsync(cancellationToken); - await oprot.Transport.FlushAsync(cancellationToken); } - } - - public class InternalStructs - { - public partial class openSessionArgs : TBase + public partial class executeUpdateStatementArgs : TBase { - private TSOpenSessionReq _req; + private TSExecuteStatementReq _req; - public TSOpenSessionReq Req + public TSExecuteStatementReq Req { get { @@ -3006,19 +6899,19 @@ public struct Isset public bool req; } - public openSessionArgs() + public executeUpdateStatementArgs() { } - public openSessionArgs DeepCopy() + public executeUpdateStatementArgs DeepCopy() { - var tmp421 = new openSessionArgs(); + var tmp479 = new executeUpdateStatementArgs(); if((Req != null) && __isset.req) { - tmp421.Req = (TSOpenSessionReq)this.Req.DeepCopy(); + tmp479.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); } - tmp421.__isset.req = this.__isset.req; - return tmp421; + tmp479.__isset.req = this.__isset.req; + return tmp479; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3041,7 +6934,7 @@ public openSessionArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSOpenSessionReq(); + Req = new TSExecuteStatementReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3070,7 +6963,7 @@ public openSessionArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("openSession_args"); + var struc = new TStruct("executeUpdateStatement_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3093,7 +6986,7 @@ public openSessionArgs DeepCopy() public override bool Equals(object that) { - if (!(that is openSessionArgs other)) return false; + if (!(that is executeUpdateStatementArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3111,11 +7004,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("openSession_args("); - int tmp422 = 0; + var sb = new StringBuilder("executeUpdateStatement_args("); + int tmp480 = 0; if((Req != null) && __isset.req) { - if(0 < tmp422++) { sb.Append(", "); } + if(0 < tmp480++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3125,11 +7018,11 @@ public override string ToString() } - public partial class openSessionResult : TBase + public partial class executeUpdateStatementResult : TBase { - private TSOpenSessionResp _success; + private TSExecuteStatementResp _success; - public TSOpenSessionResp Success + public TSExecuteStatementResp Success { get { @@ -3149,19 +7042,19 @@ public struct Isset public bool success; } - public openSessionResult() + public executeUpdateStatementResult() { } - public openSessionResult DeepCopy() + public executeUpdateStatementResult DeepCopy() { - var tmp423 = new openSessionResult(); + var tmp481 = new executeUpdateStatementResult(); if((Success != null) && __isset.success) { - tmp423.Success = (TSOpenSessionResp)this.Success.DeepCopy(); + tmp481.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp423.__isset.success = this.__isset.success; - return tmp423; + tmp481.__isset.success = this.__isset.success; + return tmp481; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3184,7 +7077,7 @@ public openSessionResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSOpenSessionResp(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3213,7 +7106,7 @@ public openSessionResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("openSession_result"); + var struc = new TStruct("executeUpdateStatement_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3240,7 +7133,7 @@ public openSessionResult DeepCopy() public override bool Equals(object that) { - if (!(that is openSessionResult other)) return false; + if (!(that is executeUpdateStatementResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3258,11 +7151,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("openSession_result("); - int tmp424 = 0; + var sb = new StringBuilder("executeUpdateStatement_result("); + int tmp482 = 0; if((Success != null) && __isset.success) { - if(0 < tmp424++) { sb.Append(", "); } + if(0 < tmp482++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3272,11 +7165,11 @@ public override string ToString() } - public partial class closeSessionArgs : TBase + public partial class fetchResultsArgs : TBase { - private TSCloseSessionReq _req; + private TSFetchResultsReq _req; - public TSCloseSessionReq Req + public TSFetchResultsReq Req { get { @@ -3296,19 +7189,19 @@ public struct Isset public bool req; } - public closeSessionArgs() + public fetchResultsArgs() { } - public closeSessionArgs DeepCopy() + public fetchResultsArgs DeepCopy() { - var tmp425 = new closeSessionArgs(); + var tmp483 = new fetchResultsArgs(); if((Req != null) && __isset.req) { - tmp425.Req = (TSCloseSessionReq)this.Req.DeepCopy(); + tmp483.Req = (TSFetchResultsReq)this.Req.DeepCopy(); } - tmp425.__isset.req = this.__isset.req; - return tmp425; + tmp483.__isset.req = this.__isset.req; + return tmp483; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3331,7 +7224,7 @@ public closeSessionArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCloseSessionReq(); + Req = new TSFetchResultsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3360,7 +7253,7 @@ public closeSessionArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeSession_args"); + var struc = new TStruct("fetchResults_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3383,7 +7276,7 @@ public closeSessionArgs DeepCopy() public override bool Equals(object that) { - if (!(that is closeSessionArgs other)) return false; + if (!(that is fetchResultsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3401,11 +7294,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeSession_args("); - int tmp426 = 0; + var sb = new StringBuilder("fetchResults_args("); + int tmp484 = 0; if((Req != null) && __isset.req) { - if(0 < tmp426++) { sb.Append(", "); } + if(0 < tmp484++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3415,11 +7308,11 @@ public override string ToString() } - public partial class closeSessionResult : TBase + public partial class fetchResultsResult : TBase { - private TSStatus _success; + private TSFetchResultsResp _success; - public TSStatus Success + public TSFetchResultsResp Success { get { @@ -3439,19 +7332,19 @@ public struct Isset public bool success; } - public closeSessionResult() + public fetchResultsResult() { } - public closeSessionResult DeepCopy() + public fetchResultsResult DeepCopy() { - var tmp427 = new closeSessionResult(); + var tmp485 = new fetchResultsResult(); if((Success != null) && __isset.success) { - tmp427.Success = (TSStatus)this.Success.DeepCopy(); + tmp485.Success = (TSFetchResultsResp)this.Success.DeepCopy(); } - tmp427.__isset.success = this.__isset.success; - return tmp427; + tmp485.__isset.success = this.__isset.success; + return tmp485; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3474,7 +7367,7 @@ public closeSessionResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSFetchResultsResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3503,7 +7396,7 @@ public closeSessionResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeSession_result"); + var struc = new TStruct("fetchResults_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3530,7 +7423,7 @@ public closeSessionResult DeepCopy() public override bool Equals(object that) { - if (!(that is closeSessionResult other)) return false; + if (!(that is fetchResultsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3548,11 +7441,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeSession_result("); - int tmp428 = 0; + var sb = new StringBuilder("fetchResults_result("); + int tmp486 = 0; if((Success != null) && __isset.success) { - if(0 < tmp428++) { sb.Append(", "); } + if(0 < tmp486++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3562,11 +7455,11 @@ public override string ToString() } - public partial class executeStatementArgs : TBase + public partial class fetchMetadataArgs : TBase { - private TSExecuteStatementReq _req; + private TSFetchMetadataReq _req; - public TSExecuteStatementReq Req + public TSFetchMetadataReq Req { get { @@ -3586,19 +7479,19 @@ public struct Isset public bool req; } - public executeStatementArgs() + public fetchMetadataArgs() { } - public executeStatementArgs DeepCopy() + public fetchMetadataArgs DeepCopy() { - var tmp429 = new executeStatementArgs(); + var tmp487 = new fetchMetadataArgs(); if((Req != null) && __isset.req) { - tmp429.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp487.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); } - tmp429.__isset.req = this.__isset.req; - return tmp429; + tmp487.__isset.req = this.__isset.req; + return tmp487; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3621,7 +7514,7 @@ public executeStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); + Req = new TSFetchMetadataReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3650,7 +7543,7 @@ public executeStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeStatement_args"); + var struc = new TStruct("fetchMetadata_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3673,7 +7566,7 @@ public executeStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeStatementArgs other)) return false; + if (!(that is fetchMetadataArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3691,11 +7584,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeStatement_args("); - int tmp430 = 0; + var sb = new StringBuilder("fetchMetadata_args("); + int tmp488 = 0; if((Req != null) && __isset.req) { - if(0 < tmp430++) { sb.Append(", "); } + if(0 < tmp488++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3705,11 +7598,11 @@ public override string ToString() } - public partial class executeStatementResult : TBase + public partial class fetchMetadataResult : TBase { - private TSExecuteStatementResp _success; + private TSFetchMetadataResp _success; - public TSExecuteStatementResp Success + public TSFetchMetadataResp Success { get { @@ -3729,19 +7622,19 @@ public struct Isset public bool success; } - public executeStatementResult() + public fetchMetadataResult() { } - public executeStatementResult DeepCopy() + public fetchMetadataResult DeepCopy() { - var tmp431 = new executeStatementResult(); + var tmp489 = new fetchMetadataResult(); if((Success != null) && __isset.success) { - tmp431.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp489.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); } - tmp431.__isset.success = this.__isset.success; - return tmp431; + tmp489.__isset.success = this.__isset.success; + return tmp489; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3764,7 +7657,7 @@ public executeStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSFetchMetadataResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -3793,7 +7686,7 @@ public executeStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeStatement_result"); + var struc = new TStruct("fetchMetadata_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -3820,7 +7713,7 @@ public executeStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeStatementResult other)) return false; + if (!(that is fetchMetadataResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -3838,11 +7731,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeStatement_result("); - int tmp432 = 0; + var sb = new StringBuilder("fetchMetadata_result("); + int tmp490 = 0; if((Success != null) && __isset.success) { - if(0 < tmp432++) { sb.Append(", "); } + if(0 < tmp490++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -3852,11 +7745,11 @@ public override string ToString() } - public partial class executeBatchStatementArgs : TBase + public partial class cancelOperationArgs : TBase { - private TSExecuteBatchStatementReq _req; + private TSCancelOperationReq _req; - public TSExecuteBatchStatementReq Req + public TSCancelOperationReq Req { get { @@ -3876,19 +7769,19 @@ public struct Isset public bool req; } - public executeBatchStatementArgs() + public cancelOperationArgs() { } - public executeBatchStatementArgs DeepCopy() + public cancelOperationArgs DeepCopy() { - var tmp433 = new executeBatchStatementArgs(); + var tmp491 = new cancelOperationArgs(); if((Req != null) && __isset.req) { - tmp433.Req = (TSExecuteBatchStatementReq)this.Req.DeepCopy(); + tmp491.Req = (TSCancelOperationReq)this.Req.DeepCopy(); } - tmp433.__isset.req = this.__isset.req; - return tmp433; + tmp491.__isset.req = this.__isset.req; + return tmp491; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -3911,7 +7804,7 @@ public executeBatchStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteBatchStatementReq(); + Req = new TSCancelOperationReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -3940,7 +7833,7 @@ public executeBatchStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeBatchStatement_args"); + var struc = new TStruct("cancelOperation_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -3963,7 +7856,7 @@ public executeBatchStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeBatchStatementArgs other)) return false; + if (!(that is cancelOperationArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -3981,11 +7874,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeBatchStatement_args("); - int tmp434 = 0; + var sb = new StringBuilder("cancelOperation_args("); + int tmp492 = 0; if((Req != null) && __isset.req) { - if(0 < tmp434++) { sb.Append(", "); } + if(0 < tmp492++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -3995,7 +7888,7 @@ public override string ToString() } - public partial class executeBatchStatementResult : TBase + public partial class cancelOperationResult : TBase { private TSStatus _success; @@ -4019,19 +7912,19 @@ public struct Isset public bool success; } - public executeBatchStatementResult() + public cancelOperationResult() { } - public executeBatchStatementResult DeepCopy() + public cancelOperationResult DeepCopy() { - var tmp435 = new executeBatchStatementResult(); + var tmp493 = new cancelOperationResult(); if((Success != null) && __isset.success) { - tmp435.Success = (TSStatus)this.Success.DeepCopy(); + tmp493.Success = (TSStatus)this.Success.DeepCopy(); } - tmp435.__isset.success = this.__isset.success; - return tmp435; + tmp493.__isset.success = this.__isset.success; + return tmp493; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4083,7 +7976,7 @@ public executeBatchStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeBatchStatement_result"); + var struc = new TStruct("cancelOperation_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4110,7 +8003,7 @@ public executeBatchStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeBatchStatementResult other)) return false; + if (!(that is cancelOperationResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4128,11 +8021,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeBatchStatement_result("); - int tmp436 = 0; + var sb = new StringBuilder("cancelOperation_result("); + int tmp494 = 0; if((Success != null) && __isset.success) { - if(0 < tmp436++) { sb.Append(", "); } + if(0 < tmp494++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4142,11 +8035,11 @@ public override string ToString() } - public partial class executeQueryStatementArgs : TBase + public partial class closeOperationArgs : TBase { - private TSExecuteStatementReq _req; + private TSCloseOperationReq _req; - public TSExecuteStatementReq Req + public TSCloseOperationReq Req { get { @@ -4166,19 +8059,19 @@ public struct Isset public bool req; } - public executeQueryStatementArgs() + public closeOperationArgs() { } - public executeQueryStatementArgs DeepCopy() + public closeOperationArgs DeepCopy() { - var tmp437 = new executeQueryStatementArgs(); + var tmp495 = new closeOperationArgs(); if((Req != null) && __isset.req) { - tmp437.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp495.Req = (TSCloseOperationReq)this.Req.DeepCopy(); } - tmp437.__isset.req = this.__isset.req; - return tmp437; + tmp495.__isset.req = this.__isset.req; + return tmp495; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4201,7 +8094,7 @@ public executeQueryStatementArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSExecuteStatementReq(); + Req = new TSCloseOperationReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -4230,7 +8123,7 @@ public executeQueryStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeQueryStatement_args"); + var struc = new TStruct("closeOperation_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -4253,7 +8146,7 @@ public executeQueryStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeQueryStatementArgs other)) return false; + if (!(that is closeOperationArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -4271,11 +8164,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeQueryStatement_args("); - int tmp438 = 0; + var sb = new StringBuilder("closeOperation_args("); + int tmp496 = 0; if((Req != null) && __isset.req) { - if(0 < tmp438++) { sb.Append(", "); } + if(0 < tmp496++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -4285,11 +8178,11 @@ public override string ToString() } - public partial class executeQueryStatementResult : TBase + public partial class closeOperationResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -4309,19 +8202,19 @@ public struct Isset public bool success; } - public executeQueryStatementResult() + public closeOperationResult() { } - public executeQueryStatementResult DeepCopy() + public closeOperationResult DeepCopy() { - var tmp439 = new executeQueryStatementResult(); + var tmp497 = new closeOperationResult(); if((Success != null) && __isset.success) { - tmp439.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp497.Success = (TSStatus)this.Success.DeepCopy(); } - tmp439.__isset.success = this.__isset.success; - return tmp439; + tmp497.__isset.success = this.__isset.success; + return tmp497; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4344,7 +8237,7 @@ public executeQueryStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4373,7 +8266,7 @@ public executeQueryStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeQueryStatement_result"); + var struc = new TStruct("closeOperation_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4400,7 +8293,7 @@ public executeQueryStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeQueryStatementResult other)) return false; + if (!(that is closeOperationResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4418,11 +8311,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeQueryStatement_result("); - int tmp440 = 0; + var sb = new StringBuilder("closeOperation_result("); + int tmp498 = 0; if((Success != null) && __isset.success) { - if(0 < tmp440++) { sb.Append(", "); } + if(0 < tmp498++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4432,20 +8325,20 @@ public override string ToString() } - public partial class executeUpdateStatementArgs : TBase + public partial class getTimeZoneArgs : TBase { - private TSExecuteStatementReq _req; + private long _sessionId; - public TSExecuteStatementReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; } } @@ -4453,22 +8346,22 @@ public TSExecuteStatementReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; } - public executeUpdateStatementArgs() + public getTimeZoneArgs() { } - public executeUpdateStatementArgs DeepCopy() + public getTimeZoneArgs DeepCopy() { - var tmp441 = new executeUpdateStatementArgs(); - if((Req != null) && __isset.req) + var tmp499 = new getTimeZoneArgs(); + if(__isset.sessionId) { - tmp441.Req = (TSExecuteStatementReq)this.Req.DeepCopy(); + tmp499.SessionId = this.SessionId; } - tmp441.__isset.req = this.__isset.req; - return tmp441; + tmp499.__isset.sessionId = this.__isset.sessionId; + return tmp499; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4489,10 +8382,9 @@ public executeUpdateStatementArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSExecuteStatementReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); } else { @@ -4520,16 +8412,16 @@ public executeUpdateStatementArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeUpdateStatement_args"); + var struc = new TStruct("getTimeZone_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -4543,17 +8435,17 @@ public executeUpdateStatementArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeUpdateStatementArgs other)) return false; + if (!(that is getTimeZoneArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); } } return hashcode; @@ -4561,13 +8453,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeUpdateStatement_args("); - int tmp442 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("getTimeZone_args("); + int tmp500 = 0; + if(__isset.sessionId) { - if(0 < tmp442++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp500++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -4575,11 +8467,11 @@ public override string ToString() } - public partial class executeUpdateStatementResult : TBase + public partial class getTimeZoneResult : TBase { - private TSExecuteStatementResp _success; + private TSGetTimeZoneResp _success; - public TSExecuteStatementResp Success + public TSGetTimeZoneResp Success { get { @@ -4599,19 +8491,19 @@ public struct Isset public bool success; } - public executeUpdateStatementResult() + public getTimeZoneResult() { } - public executeUpdateStatementResult DeepCopy() + public getTimeZoneResult DeepCopy() { - var tmp443 = new executeUpdateStatementResult(); + var tmp501 = new getTimeZoneResult(); if((Success != null) && __isset.success) { - tmp443.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp501.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); } - tmp443.__isset.success = this.__isset.success; - return tmp443; + tmp501.__isset.success = this.__isset.success; + return tmp501; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4634,7 +8526,7 @@ public executeUpdateStatementResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSGetTimeZoneResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4663,7 +8555,7 @@ public executeUpdateStatementResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeUpdateStatement_result"); + var struc = new TStruct("getTimeZone_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4690,7 +8582,7 @@ public executeUpdateStatementResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeUpdateStatementResult other)) return false; + if (!(that is getTimeZoneResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4708,11 +8600,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeUpdateStatement_result("); - int tmp444 = 0; + var sb = new StringBuilder("getTimeZone_result("); + int tmp502 = 0; if((Success != null) && __isset.success) { - if(0 < tmp444++) { sb.Append(", "); } + if(0 < tmp502++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -4722,11 +8614,11 @@ public override string ToString() } - public partial class fetchResultsArgs : TBase + public partial class setTimeZoneArgs : TBase { - private TSFetchResultsReq _req; + private TSSetTimeZoneReq _req; - public TSFetchResultsReq Req + public TSSetTimeZoneReq Req { get { @@ -4746,19 +8638,19 @@ public struct Isset public bool req; } - public fetchResultsArgs() + public setTimeZoneArgs() { } - public fetchResultsArgs DeepCopy() + public setTimeZoneArgs DeepCopy() { - var tmp445 = new fetchResultsArgs(); + var tmp503 = new setTimeZoneArgs(); if((Req != null) && __isset.req) { - tmp445.Req = (TSFetchResultsReq)this.Req.DeepCopy(); + tmp503.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); } - tmp445.__isset.req = this.__isset.req; - return tmp445; + tmp503.__isset.req = this.__isset.req; + return tmp503; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4781,7 +8673,7 @@ public fetchResultsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSFetchResultsReq(); + Req = new TSSetTimeZoneReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -4810,7 +8702,7 @@ public fetchResultsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchResults_args"); + var struc = new TStruct("setTimeZone_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -4833,7 +8725,7 @@ public fetchResultsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is fetchResultsArgs other)) return false; + if (!(that is setTimeZoneArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -4851,11 +8743,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchResults_args("); - int tmp446 = 0; + var sb = new StringBuilder("setTimeZone_args("); + int tmp504 = 0; if((Req != null) && __isset.req) { - if(0 < tmp446++) { sb.Append(", "); } + if(0 < tmp504++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -4865,11 +8757,11 @@ public override string ToString() } - public partial class fetchResultsResult : TBase + public partial class setTimeZoneResult : TBase { - private TSFetchResultsResp _success; + private TSStatus _success; - public TSFetchResultsResp Success + public TSStatus Success { get { @@ -4889,19 +8781,19 @@ public struct Isset public bool success; } - public fetchResultsResult() + public setTimeZoneResult() { } - public fetchResultsResult DeepCopy() + public setTimeZoneResult DeepCopy() { - var tmp447 = new fetchResultsResult(); + var tmp505 = new setTimeZoneResult(); if((Success != null) && __isset.success) { - tmp447.Success = (TSFetchResultsResp)this.Success.DeepCopy(); + tmp505.Success = (TSStatus)this.Success.DeepCopy(); } - tmp447.__isset.success = this.__isset.success; - return tmp447; + tmp505.__isset.success = this.__isset.success; + return tmp505; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -4924,7 +8816,7 @@ public fetchResultsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSFetchResultsResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -4953,7 +8845,7 @@ public fetchResultsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchResults_result"); + var struc = new TStruct("setTimeZone_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -4980,7 +8872,7 @@ public fetchResultsResult DeepCopy() public override bool Equals(object that) { - if (!(that is fetchResultsResult other)) return false; + if (!(that is setTimeZoneResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -4998,11 +8890,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchResults_result("); - int tmp448 = 0; + var sb = new StringBuilder("setTimeZone_result("); + int tmp506 = 0; if((Success != null) && __isset.success) { - if(0 < tmp448++) { sb.Append(", "); } + if(0 < tmp506++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5012,43 +8904,17 @@ public override string ToString() } - public partial class fetchMetadataArgs : TBase + public partial class getPropertiesArgs : TBase { - private TSFetchMetadataReq _req; - - public TSFetchMetadataReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - public Isset __isset; - public struct Isset - { - public bool req; - } - - public fetchMetadataArgs() + public getPropertiesArgs() { } - public fetchMetadataArgs DeepCopy() + public getPropertiesArgs DeepCopy() { - var tmp449 = new fetchMetadataArgs(); - if((Req != null) && __isset.req) - { - tmp449.Req = (TSFetchMetadataReq)this.Req.DeepCopy(); - } - tmp449.__isset.req = this.__isset.req; - return tmp449; + var tmp507 = new getPropertiesArgs(); + return tmp507; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5068,17 +8934,6 @@ public fetchMetadataArgs DeepCopy() switch (field.ID) { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSFetchMetadataReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -5100,18 +8955,8 @@ public fetchMetadataArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchMetadata_args"); + var struc = new TStruct("getProperties_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -5123,43 +8968,32 @@ public fetchMetadataArgs DeepCopy() public override bool Equals(object that) { - if (!(that is fetchMetadataArgs other)) return false; + if (!(that is getPropertiesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return true; } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("fetchMetadata_args("); - int tmp450 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp450++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } + var sb = new StringBuilder("getProperties_args("); sb.Append(')'); return sb.ToString(); } } - public partial class fetchMetadataResult : TBase + public partial class getPropertiesResult : TBase { - private TSFetchMetadataResp _success; + private ServerProperties _success; - public TSFetchMetadataResp Success + public ServerProperties Success { get { @@ -5179,19 +9013,19 @@ public struct Isset public bool success; } - public fetchMetadataResult() + public getPropertiesResult() { } - public fetchMetadataResult DeepCopy() + public getPropertiesResult DeepCopy() { - var tmp451 = new fetchMetadataResult(); + var tmp509 = new getPropertiesResult(); if((Success != null) && __isset.success) { - tmp451.Success = (TSFetchMetadataResp)this.Success.DeepCopy(); + tmp509.Success = (ServerProperties)this.Success.DeepCopy(); } - tmp451.__isset.success = this.__isset.success; - return tmp451; + tmp509.__isset.success = this.__isset.success; + return tmp509; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5214,7 +9048,7 @@ public fetchMetadataResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSFetchMetadataResp(); + Success = new ServerProperties(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -5243,7 +9077,7 @@ public fetchMetadataResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("fetchMetadata_result"); + var struc = new TStruct("getProperties_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5270,7 +9104,7 @@ public fetchMetadataResult DeepCopy() public override bool Equals(object that) { - if (!(that is fetchMetadataResult other)) return false; + if (!(that is getPropertiesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5288,11 +9122,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("fetchMetadata_result("); - int tmp452 = 0; + var sb = new StringBuilder("getProperties_result("); + int tmp510 = 0; if((Success != null) && __isset.success) { - if(0 < tmp452++) { sb.Append(", "); } + if(0 < tmp510++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5302,20 +9136,34 @@ public override string ToString() } - public partial class cancelOperationArgs : TBase + public partial class setStorageGroupArgs : TBase { - private TSCancelOperationReq _req; + private long _sessionId; + private string _storageGroup; - public TSCancelOperationReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; + } + } + + public string StorageGroup + { + get + { + return _storageGroup; + } + set + { + __isset.storageGroup = true; + this._storageGroup = value; } } @@ -5323,22 +9171,28 @@ public TSCancelOperationReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; + public bool storageGroup; } - public cancelOperationArgs() + public setStorageGroupArgs() { } - public cancelOperationArgs DeepCopy() + public setStorageGroupArgs DeepCopy() { - var tmp453 = new cancelOperationArgs(); - if((Req != null) && __isset.req) + var tmp511 = new setStorageGroupArgs(); + if(__isset.sessionId) { - tmp453.Req = (TSCancelOperationReq)this.Req.DeepCopy(); + tmp511.SessionId = this.SessionId; } - tmp453.__isset.req = this.__isset.req; - return tmp453; + tmp511.__isset.sessionId = this.__isset.sessionId; + if((StorageGroup != null) && __isset.storageGroup) + { + tmp511.StorageGroup = this.StorageGroup; + } + tmp511.__isset.storageGroup = this.__isset.storageGroup; + return tmp511; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5359,10 +9213,19 @@ public cancelOperationArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSCancelOperationReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + StorageGroup = await iprot.ReadStringAsync(cancellationToken); } else { @@ -5390,16 +9253,25 @@ public cancelOperationArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("cancelOperation_args"); + var struc = new TStruct("setStorageGroup_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroup != null) && __isset.storageGroup) + { + field.Name = "storageGroup"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(StorageGroup, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -5413,17 +9285,22 @@ public cancelOperationArgs DeepCopy() public override bool Equals(object that) { - if (!(that is cancelOperationArgs other)) return false; + if (!(that is setStorageGroupArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((StorageGroup != null) && __isset.storageGroup) + { + hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); } } return hashcode; @@ -5431,13 +9308,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("cancelOperation_args("); - int tmp454 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("setStorageGroup_args("); + int tmp512 = 0; + if(__isset.sessionId) { - if(0 < tmp454++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp512++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((StorageGroup != null) && __isset.storageGroup) + { + if(0 < tmp512++) { sb.Append(", "); } + sb.Append("StorageGroup: "); + StorageGroup.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -5445,7 +9328,7 @@ public override string ToString() } - public partial class cancelOperationResult : TBase + public partial class setStorageGroupResult : TBase { private TSStatus _success; @@ -5469,19 +9352,19 @@ public struct Isset public bool success; } - public cancelOperationResult() + public setStorageGroupResult() { } - public cancelOperationResult DeepCopy() + public setStorageGroupResult DeepCopy() { - var tmp455 = new cancelOperationResult(); + var tmp513 = new setStorageGroupResult(); if((Success != null) && __isset.success) { - tmp455.Success = (TSStatus)this.Success.DeepCopy(); + tmp513.Success = (TSStatus)this.Success.DeepCopy(); } - tmp455.__isset.success = this.__isset.success; - return tmp455; + tmp513.__isset.success = this.__isset.success; + return tmp513; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5533,7 +9416,7 @@ public cancelOperationResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("cancelOperation_result"); + var struc = new TStruct("setStorageGroup_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5560,7 +9443,7 @@ public cancelOperationResult DeepCopy() public override bool Equals(object that) { - if (!(that is cancelOperationResult other)) return false; + if (!(that is setStorageGroupResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5578,11 +9461,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("cancelOperation_result("); - int tmp456 = 0; + var sb = new StringBuilder("setStorageGroup_result("); + int tmp514 = 0; if((Success != null) && __isset.success) { - if(0 < tmp456++) { sb.Append(", "); } + if(0 < tmp514++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5592,11 +9475,11 @@ public override string ToString() } - public partial class closeOperationArgs : TBase + public partial class createTimeseriesArgs : TBase { - private TSCloseOperationReq _req; + private TSCreateTimeseriesReq _req; - public TSCloseOperationReq Req + public TSCreateTimeseriesReq Req { get { @@ -5616,19 +9499,19 @@ public struct Isset public bool req; } - public closeOperationArgs() + public createTimeseriesArgs() { } - public closeOperationArgs DeepCopy() + public createTimeseriesArgs DeepCopy() { - var tmp457 = new closeOperationArgs(); + var tmp515 = new createTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp457.Req = (TSCloseOperationReq)this.Req.DeepCopy(); + tmp515.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); } - tmp457.__isset.req = this.__isset.req; - return tmp457; + tmp515.__isset.req = this.__isset.req; + return tmp515; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5651,7 +9534,7 @@ public closeOperationArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCloseOperationReq(); + Req = new TSCreateTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -5680,7 +9563,7 @@ public closeOperationArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeOperation_args"); + var struc = new TStruct("createTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -5703,7 +9586,7 @@ public closeOperationArgs DeepCopy() public override bool Equals(object that) { - if (!(that is closeOperationArgs other)) return false; + if (!(that is createTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -5721,11 +9604,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeOperation_args("); - int tmp458 = 0; + var sb = new StringBuilder("createTimeseries_args("); + int tmp516 = 0; if((Req != null) && __isset.req) { - if(0 < tmp458++) { sb.Append(", "); } + if(0 < tmp516++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -5735,7 +9618,7 @@ public override string ToString() } - public partial class closeOperationResult : TBase + public partial class createTimeseriesResult : TBase { private TSStatus _success; @@ -5759,19 +9642,19 @@ public struct Isset public bool success; } - public closeOperationResult() + public createTimeseriesResult() { } - public closeOperationResult DeepCopy() + public createTimeseriesResult DeepCopy() { - var tmp459 = new closeOperationResult(); + var tmp517 = new createTimeseriesResult(); if((Success != null) && __isset.success) { - tmp459.Success = (TSStatus)this.Success.DeepCopy(); + tmp517.Success = (TSStatus)this.Success.DeepCopy(); } - tmp459.__isset.success = this.__isset.success; - return tmp459; + tmp517.__isset.success = this.__isset.success; + return tmp517; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5823,7 +9706,7 @@ public closeOperationResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("closeOperation_result"); + var struc = new TStruct("createTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -5850,7 +9733,7 @@ public closeOperationResult DeepCopy() public override bool Equals(object that) { - if (!(that is closeOperationResult other)) return false; + if (!(that is createTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -5868,11 +9751,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("closeOperation_result("); - int tmp460 = 0; + var sb = new StringBuilder("createTimeseries_result("); + int tmp518 = 0; if((Success != null) && __isset.success) { - if(0 < tmp460++) { sb.Append(", "); } + if(0 < tmp518++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -5882,20 +9765,20 @@ public override string ToString() } - public partial class getTimeZoneArgs : TBase + public partial class createAlignedTimeseriesArgs : TBase { - private long _sessionId; + private TSCreateAlignedTimeseriesReq _req; - public long SessionId + public TSCreateAlignedTimeseriesReq Req { get { - return _sessionId; + return _req; } set { - __isset.sessionId = true; - this._sessionId = value; + __isset.req = true; + this._req = value; } } @@ -5903,22 +9786,22 @@ public long SessionId public Isset __isset; public struct Isset { - public bool sessionId; + public bool req; } - public getTimeZoneArgs() + public createAlignedTimeseriesArgs() { } - public getTimeZoneArgs DeepCopy() + public createAlignedTimeseriesArgs DeepCopy() { - var tmp461 = new getTimeZoneArgs(); - if(__isset.sessionId) + var tmp519 = new createAlignedTimeseriesArgs(); + if((Req != null) && __isset.req) { - tmp461.SessionId = this.SessionId; + tmp519.Req = (TSCreateAlignedTimeseriesReq)this.Req.DeepCopy(); } - tmp461.__isset.sessionId = this.__isset.sessionId; - return tmp461; + tmp519.__isset.req = this.__isset.req; + return tmp519; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -5939,9 +9822,10 @@ public getTimeZoneArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - SessionId = await iprot.ReadI64Async(cancellationToken); + Req = new TSCreateAlignedTimeseriesReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -5969,16 +9853,16 @@ public getTimeZoneArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getTimeZone_args"); + var struc = new TStruct("createAlignedTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -5992,17 +9876,17 @@ public getTimeZoneArgs DeepCopy() public override bool Equals(object that) { - if (!(that is getTimeZoneArgs other)) return false; + if (!(that is createAlignedTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -6010,13 +9894,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getTimeZone_args("); - int tmp462 = 0; - if(__isset.sessionId) + var sb = new StringBuilder("createAlignedTimeseries_args("); + int tmp520 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp462++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); + if(0 < tmp520++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -6024,11 +9908,11 @@ public override string ToString() } - public partial class getTimeZoneResult : TBase + public partial class createAlignedTimeseriesResult : TBase { - private TSGetTimeZoneResp _success; + private TSStatus _success; - public TSGetTimeZoneResp Success + public TSStatus Success { get { @@ -6048,19 +9932,19 @@ public struct Isset public bool success; } - public getTimeZoneResult() + public createAlignedTimeseriesResult() { } - public getTimeZoneResult DeepCopy() + public createAlignedTimeseriesResult DeepCopy() { - var tmp463 = new getTimeZoneResult(); + var tmp521 = new createAlignedTimeseriesResult(); if((Success != null) && __isset.success) { - tmp463.Success = (TSGetTimeZoneResp)this.Success.DeepCopy(); + tmp521.Success = (TSStatus)this.Success.DeepCopy(); } - tmp463.__isset.success = this.__isset.success; - return tmp463; + tmp521.__isset.success = this.__isset.success; + return tmp521; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6083,7 +9967,7 @@ public getTimeZoneResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSGetTimeZoneResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -6112,7 +9996,7 @@ public getTimeZoneResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getTimeZone_result"); + var struc = new TStruct("createAlignedTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6139,7 +10023,7 @@ public getTimeZoneResult DeepCopy() public override bool Equals(object that) { - if (!(that is getTimeZoneResult other)) return false; + if (!(that is createAlignedTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6157,11 +10041,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getTimeZone_result("); - int tmp464 = 0; + var sb = new StringBuilder("createAlignedTimeseries_result("); + int tmp522 = 0; if((Success != null) && __isset.success) { - if(0 < tmp464++) { sb.Append(", "); } + if(0 < tmp522++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6171,11 +10055,11 @@ public override string ToString() } - public partial class setTimeZoneArgs : TBase + public partial class createMultiTimeseriesArgs : TBase { - private TSSetTimeZoneReq _req; + private TSCreateMultiTimeseriesReq _req; - public TSSetTimeZoneReq Req + public TSCreateMultiTimeseriesReq Req { get { @@ -6195,19 +10079,19 @@ public struct Isset public bool req; } - public setTimeZoneArgs() + public createMultiTimeseriesArgs() { } - public setTimeZoneArgs DeepCopy() + public createMultiTimeseriesArgs DeepCopy() { - var tmp465 = new setTimeZoneArgs(); + var tmp523 = new createMultiTimeseriesArgs(); if((Req != null) && __isset.req) { - tmp465.Req = (TSSetTimeZoneReq)this.Req.DeepCopy(); + tmp523.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); } - tmp465.__isset.req = this.__isset.req; - return tmp465; + tmp523.__isset.req = this.__isset.req; + return tmp523; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6230,7 +10114,7 @@ public setTimeZoneArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSSetTimeZoneReq(); + Req = new TSCreateMultiTimeseriesReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -6259,7 +10143,7 @@ public setTimeZoneArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setTimeZone_args"); + var struc = new TStruct("createMultiTimeseries_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -6282,7 +10166,7 @@ public setTimeZoneArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setTimeZoneArgs other)) return false; + if (!(that is createMultiTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -6300,11 +10184,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setTimeZone_args("); - int tmp466 = 0; + var sb = new StringBuilder("createMultiTimeseries_args("); + int tmp524 = 0; if((Req != null) && __isset.req) { - if(0 < tmp466++) { sb.Append(", "); } + if(0 < tmp524++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -6314,7 +10198,7 @@ public override string ToString() } - public partial class setTimeZoneResult : TBase + public partial class createMultiTimeseriesResult : TBase { private TSStatus _success; @@ -6338,19 +10222,19 @@ public struct Isset public bool success; } - public setTimeZoneResult() + public createMultiTimeseriesResult() { } - public setTimeZoneResult DeepCopy() + public createMultiTimeseriesResult DeepCopy() { - var tmp467 = new setTimeZoneResult(); + var tmp525 = new createMultiTimeseriesResult(); if((Success != null) && __isset.success) { - tmp467.Success = (TSStatus)this.Success.DeepCopy(); + tmp525.Success = (TSStatus)this.Success.DeepCopy(); } - tmp467.__isset.success = this.__isset.success; - return tmp467; + tmp525.__isset.success = this.__isset.success; + return tmp525; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6402,7 +10286,7 @@ public setTimeZoneResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setTimeZone_result"); + var struc = new TStruct("createMultiTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6429,7 +10313,7 @@ public setTimeZoneResult DeepCopy() public override bool Equals(object that) { - if (!(that is setTimeZoneResult other)) return false; + if (!(that is createMultiTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6447,11 +10331,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setTimeZone_result("); - int tmp468 = 0; + var sb = new StringBuilder("createMultiTimeseries_result("); + int tmp526 = 0; if((Success != null) && __isset.success) { - if(0 < tmp468++) { sb.Append(", "); } + if(0 < tmp526++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6461,17 +10345,63 @@ public override string ToString() } - public partial class getPropertiesArgs : TBase + public partial class deleteTimeseriesArgs : TBase { + private long _sessionId; + private List _path; - public getPropertiesArgs() + public long SessionId { + get + { + return _sessionId; + } + set + { + __isset.sessionId = true; + this._sessionId = value; + } } - public getPropertiesArgs DeepCopy() + public List Path { - var tmp469 = new getPropertiesArgs(); - return tmp469; + get + { + return _path; + } + set + { + __isset.path = true; + this._path = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool sessionId; + public bool path; + } + + public deleteTimeseriesArgs() + { + } + + public deleteTimeseriesArgs DeepCopy() + { + var tmp527 = new deleteTimeseriesArgs(); + if(__isset.sessionId) + { + tmp527.SessionId = this.SessionId; + } + tmp527.__isset.sessionId = this.__isset.sessionId; + if((Path != null) && __isset.path) + { + tmp527.Path = this.Path.DeepCopy(); + } + tmp527.__isset.path = this.__isset.path; + return tmp527; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6491,29 +10421,85 @@ public getPropertiesArgs DeepCopy() switch (field.ID) { + case 1: + if (field.Type == TType.I64) + { + SessionId = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list528 = await iprot.ReadListBeginAsync(cancellationToken); + Path = new List(_list528.Count); + for(int _i529 = 0; _i529 < _list528.Count; ++_i529) + { + string _elem530; + _elem530 = await iprot.ReadStringAsync(cancellationToken); + Path.Add(_elem530); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } - - await iprot.ReadFieldEndAsync(cancellationToken); + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("deleteTimeseries_args"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if(__isset.sessionId) + { + field.Name = "sessionId"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Path != null) && __isset.path) + { + field.Name = "path"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); + foreach (string _iter531 in Path) + { + await oprot.WriteStringAsync(_iter531, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); } - - await iprot.ReadStructEndAsync(cancellationToken); - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("getProperties_args"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -6525,32 +10511,54 @@ public getPropertiesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is getPropertiesArgs other)) return false; + if (!(that is deleteTimeseriesArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return true; + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) + && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); } public override int GetHashCode() { int hashcode = 157; unchecked { + if(__isset.sessionId) + { + hashcode = (hashcode * 397) + SessionId.GetHashCode(); + } + if((Path != null) && __isset.path) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); + } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("getProperties_args("); + var sb = new StringBuilder("deleteTimeseries_args("); + int tmp532 = 0; + if(__isset.sessionId) + { + if(0 < tmp532++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); + } + if((Path != null) && __isset.path) + { + if(0 < tmp532++) { sb.Append(", "); } + sb.Append("Path: "); + Path.ToString(sb); + } sb.Append(')'); return sb.ToString(); } } - public partial class getPropertiesResult : TBase + public partial class deleteTimeseriesResult : TBase { - private ServerProperties _success; + private TSStatus _success; - public ServerProperties Success + public TSStatus Success { get { @@ -6570,19 +10578,19 @@ public struct Isset public bool success; } - public getPropertiesResult() + public deleteTimeseriesResult() { } - public getPropertiesResult DeepCopy() + public deleteTimeseriesResult DeepCopy() { - var tmp471 = new getPropertiesResult(); + var tmp533 = new deleteTimeseriesResult(); if((Success != null) && __isset.success) { - tmp471.Success = (ServerProperties)this.Success.DeepCopy(); + tmp533.Success = (TSStatus)this.Success.DeepCopy(); } - tmp471.__isset.success = this.__isset.success; - return tmp471; + tmp533.__isset.success = this.__isset.success; + return tmp533; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6605,7 +10613,7 @@ public getPropertiesResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new ServerProperties(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -6634,7 +10642,7 @@ public getPropertiesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("getProperties_result"); + var struc = new TStruct("deleteTimeseries_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -6661,7 +10669,7 @@ public getPropertiesResult DeepCopy() public override bool Equals(object that) { - if (!(that is getPropertiesResult other)) return false; + if (!(that is deleteTimeseriesResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -6679,11 +10687,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("getProperties_result("); - int tmp472 = 0; + var sb = new StringBuilder("deleteTimeseries_result("); + int tmp534 = 0; if((Success != null) && __isset.success) { - if(0 < tmp472++) { sb.Append(", "); } + if(0 < tmp534++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -6693,10 +10701,10 @@ public override string ToString() } - public partial class setStorageGroupArgs : TBase + public partial class deleteStorageGroupsArgs : TBase { private long _sessionId; - private string _storageGroup; + private List _storageGroup; public long SessionId { @@ -6711,7 +10719,7 @@ public long SessionId } } - public string StorageGroup + public List StorageGroup { get { @@ -6732,24 +10740,24 @@ public struct Isset public bool storageGroup; } - public setStorageGroupArgs() + public deleteStorageGroupsArgs() { } - public setStorageGroupArgs DeepCopy() + public deleteStorageGroupsArgs DeepCopy() { - var tmp473 = new setStorageGroupArgs(); + var tmp535 = new deleteStorageGroupsArgs(); if(__isset.sessionId) { - tmp473.SessionId = this.SessionId; + tmp535.SessionId = this.SessionId; } - tmp473.__isset.sessionId = this.__isset.sessionId; + tmp535.__isset.sessionId = this.__isset.sessionId; if((StorageGroup != null) && __isset.storageGroup) { - tmp473.StorageGroup = this.StorageGroup; + tmp535.StorageGroup = this.StorageGroup.DeepCopy(); } - tmp473.__isset.storageGroup = this.__isset.storageGroup; - return tmp473; + tmp535.__isset.storageGroup = this.__isset.storageGroup; + return tmp535; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6780,9 +10788,19 @@ public setStorageGroupArgs DeepCopy() } break; case 2: - if (field.Type == TType.String) + if (field.Type == TType.List) { - StorageGroup = await iprot.ReadStringAsync(cancellationToken); + { + TList _list536 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroup = new List(_list536.Count); + for(int _i537 = 0; _i537 < _list536.Count; ++_i537) + { + string _elem538; + _elem538 = await iprot.ReadStringAsync(cancellationToken); + StorageGroup.Add(_elem538); + } + await iprot.ReadListEndAsync(cancellationToken); + } } else { @@ -6810,7 +10828,7 @@ public setStorageGroupArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setStorageGroup_args"); + var struc = new TStruct("deleteStorageGroups_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(__isset.sessionId) @@ -6825,10 +10843,17 @@ public setStorageGroupArgs DeepCopy() if((StorageGroup != null) && __isset.storageGroup) { field.Name = "storageGroup"; - field.Type = TType.String; + field.Type = TType.List; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(StorageGroup, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); + foreach (string _iter539 in StorageGroup) + { + await oprot.WriteStringAsync(_iter539, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -6842,10 +10867,10 @@ public setStorageGroupArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setStorageGroupArgs other)) return false; + if (!(that is deleteStorageGroupsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (System.Object.Equals(StorageGroup, other.StorageGroup)))); + && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); } public override int GetHashCode() { @@ -6857,7 +10882,7 @@ public override int GetHashCode() { } if((StorageGroup != null) && __isset.storageGroup) { - hashcode = (hashcode * 397) + StorageGroup.GetHashCode(); + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); } } return hashcode; @@ -6865,17 +10890,17 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setStorageGroup_args("); - int tmp474 = 0; + var sb = new StringBuilder("deleteStorageGroups_args("); + int tmp540 = 0; if(__isset.sessionId) { - if(0 < tmp474++) { sb.Append(", "); } + if(0 < tmp540++) { sb.Append(", "); } sb.Append("SessionId: "); SessionId.ToString(sb); } if((StorageGroup != null) && __isset.storageGroup) { - if(0 < tmp474++) { sb.Append(", "); } + if(0 < tmp540++) { sb.Append(", "); } sb.Append("StorageGroup: "); StorageGroup.ToString(sb); } @@ -6885,7 +10910,7 @@ public override string ToString() } - public partial class setStorageGroupResult : TBase + public partial class deleteStorageGroupsResult : TBase { private TSStatus _success; @@ -6909,19 +10934,19 @@ public struct Isset public bool success; } - public setStorageGroupResult() + public deleteStorageGroupsResult() { } - public setStorageGroupResult DeepCopy() + public deleteStorageGroupsResult DeepCopy() { - var tmp475 = new setStorageGroupResult(); + var tmp541 = new deleteStorageGroupsResult(); if((Success != null) && __isset.success) { - tmp475.Success = (TSStatus)this.Success.DeepCopy(); + tmp541.Success = (TSStatus)this.Success.DeepCopy(); } - tmp475.__isset.success = this.__isset.success; - return tmp475; + tmp541.__isset.success = this.__isset.success; + return tmp541; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -6973,7 +10998,7 @@ public setStorageGroupResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setStorageGroup_result"); + var struc = new TStruct("deleteStorageGroups_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7000,7 +11025,7 @@ public setStorageGroupResult DeepCopy() public override bool Equals(object that) { - if (!(that is setStorageGroupResult other)) return false; + if (!(that is deleteStorageGroupsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7018,11 +11043,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setStorageGroup_result("); - int tmp476 = 0; + var sb = new StringBuilder("deleteStorageGroups_result("); + int tmp542 = 0; if((Success != null) && __isset.success) { - if(0 < tmp476++) { sb.Append(", "); } + if(0 < tmp542++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7032,11 +11057,11 @@ public override string ToString() } - public partial class createTimeseriesArgs : TBase + public partial class insertRecordArgs : TBase { - private TSCreateTimeseriesReq _req; + private TSInsertRecordReq _req; - public TSCreateTimeseriesReq Req + public TSInsertRecordReq Req { get { @@ -7056,19 +11081,19 @@ public struct Isset public bool req; } - public createTimeseriesArgs() + public insertRecordArgs() { } - public createTimeseriesArgs DeepCopy() + public insertRecordArgs DeepCopy() { - var tmp477 = new createTimeseriesArgs(); + var tmp543 = new insertRecordArgs(); if((Req != null) && __isset.req) { - tmp477.Req = (TSCreateTimeseriesReq)this.Req.DeepCopy(); + tmp543.Req = (TSInsertRecordReq)this.Req.DeepCopy(); } - tmp477.__isset.req = this.__isset.req; - return tmp477; + tmp543.__isset.req = this.__isset.req; + return tmp543; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7091,7 +11116,7 @@ public createTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateTimeseriesReq(); + Req = new TSInsertRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -7120,7 +11145,7 @@ public createTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createTimeseries_args"); + var struc = new TStruct("insertRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -7143,7 +11168,7 @@ public createTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createTimeseriesArgs other)) return false; + if (!(that is insertRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -7161,11 +11186,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createTimeseries_args("); - int tmp478 = 0; + var sb = new StringBuilder("insertRecord_args("); + int tmp544 = 0; if((Req != null) && __isset.req) { - if(0 < tmp478++) { sb.Append(", "); } + if(0 < tmp544++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -7175,7 +11200,7 @@ public override string ToString() } - public partial class createTimeseriesResult : TBase + public partial class insertRecordResult : TBase { private TSStatus _success; @@ -7199,19 +11224,19 @@ public struct Isset public bool success; } - public createTimeseriesResult() + public insertRecordResult() { } - public createTimeseriesResult DeepCopy() + public insertRecordResult DeepCopy() { - var tmp479 = new createTimeseriesResult(); + var tmp545 = new insertRecordResult(); if((Success != null) && __isset.success) { - tmp479.Success = (TSStatus)this.Success.DeepCopy(); + tmp545.Success = (TSStatus)this.Success.DeepCopy(); } - tmp479.__isset.success = this.__isset.success; - return tmp479; + tmp545.__isset.success = this.__isset.success; + return tmp545; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7263,7 +11288,7 @@ public createTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createTimeseries_result"); + var struc = new TStruct("insertRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7290,7 +11315,7 @@ public createTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createTimeseriesResult other)) return false; + if (!(that is insertRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7308,11 +11333,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createTimeseries_result("); - int tmp480 = 0; + var sb = new StringBuilder("insertRecord_result("); + int tmp546 = 0; if((Success != null) && __isset.success) { - if(0 < tmp480++) { sb.Append(", "); } + if(0 < tmp546++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7322,11 +11347,11 @@ public override string ToString() } - public partial class createAlignedTimeseriesArgs : TBase + public partial class insertStringRecordArgs : TBase { - private TSCreateAlignedTimeseriesReq _req; + private TSInsertStringRecordReq _req; - public TSCreateAlignedTimeseriesReq Req + public TSInsertStringRecordReq Req { get { @@ -7346,19 +11371,19 @@ public struct Isset public bool req; } - public createAlignedTimeseriesArgs() + public insertStringRecordArgs() { } - public createAlignedTimeseriesArgs DeepCopy() + public insertStringRecordArgs DeepCopy() { - var tmp481 = new createAlignedTimeseriesArgs(); + var tmp547 = new insertStringRecordArgs(); if((Req != null) && __isset.req) { - tmp481.Req = (TSCreateAlignedTimeseriesReq)this.Req.DeepCopy(); + tmp547.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); } - tmp481.__isset.req = this.__isset.req; - return tmp481; + tmp547.__isset.req = this.__isset.req; + return tmp547; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7381,7 +11406,7 @@ public createAlignedTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateAlignedTimeseriesReq(); + Req = new TSInsertStringRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -7410,7 +11435,7 @@ public createAlignedTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createAlignedTimeseries_args"); + var struc = new TStruct("insertStringRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -7433,7 +11458,7 @@ public createAlignedTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createAlignedTimeseriesArgs other)) return false; + if (!(that is insertStringRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -7451,11 +11476,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createAlignedTimeseries_args("); - int tmp482 = 0; + var sb = new StringBuilder("insertStringRecord_args("); + int tmp548 = 0; if((Req != null) && __isset.req) { - if(0 < tmp482++) { sb.Append(", "); } + if(0 < tmp548++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -7465,7 +11490,7 @@ public override string ToString() } - public partial class createAlignedTimeseriesResult : TBase + public partial class insertStringRecordResult : TBase { private TSStatus _success; @@ -7489,19 +11514,19 @@ public struct Isset public bool success; } - public createAlignedTimeseriesResult() + public insertStringRecordResult() { } - public createAlignedTimeseriesResult DeepCopy() + public insertStringRecordResult DeepCopy() { - var tmp483 = new createAlignedTimeseriesResult(); + var tmp549 = new insertStringRecordResult(); if((Success != null) && __isset.success) { - tmp483.Success = (TSStatus)this.Success.DeepCopy(); + tmp549.Success = (TSStatus)this.Success.DeepCopy(); } - tmp483.__isset.success = this.__isset.success; - return tmp483; + tmp549.__isset.success = this.__isset.success; + return tmp549; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7553,7 +11578,7 @@ public createAlignedTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createAlignedTimeseries_result"); + var struc = new TStruct("insertStringRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7580,7 +11605,7 @@ public createAlignedTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createAlignedTimeseriesResult other)) return false; + if (!(that is insertStringRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7598,11 +11623,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createAlignedTimeseries_result("); - int tmp484 = 0; + var sb = new StringBuilder("insertStringRecord_result("); + int tmp550 = 0; if((Success != null) && __isset.success) { - if(0 < tmp484++) { sb.Append(", "); } + if(0 < tmp550++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7612,11 +11637,11 @@ public override string ToString() } - public partial class createMultiTimeseriesArgs : TBase + public partial class insertTabletArgs : TBase { - private TSCreateMultiTimeseriesReq _req; + private TSInsertTabletReq _req; - public TSCreateMultiTimeseriesReq Req + public TSInsertTabletReq Req { get { @@ -7636,19 +11661,19 @@ public struct Isset public bool req; } - public createMultiTimeseriesArgs() + public insertTabletArgs() { } - public createMultiTimeseriesArgs DeepCopy() + public insertTabletArgs DeepCopy() { - var tmp485 = new createMultiTimeseriesArgs(); + var tmp551 = new insertTabletArgs(); if((Req != null) && __isset.req) { - tmp485.Req = (TSCreateMultiTimeseriesReq)this.Req.DeepCopy(); + tmp551.Req = (TSInsertTabletReq)this.Req.DeepCopy(); } - tmp485.__isset.req = this.__isset.req; - return tmp485; + tmp551.__isset.req = this.__isset.req; + return tmp551; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7671,7 +11696,7 @@ public createMultiTimeseriesArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateMultiTimeseriesReq(); + Req = new TSInsertTabletReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -7700,7 +11725,7 @@ public createMultiTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createMultiTimeseries_args"); + var struc = new TStruct("insertTablet_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -7723,7 +11748,7 @@ public createMultiTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createMultiTimeseriesArgs other)) return false; + if (!(that is insertTabletArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -7741,11 +11766,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createMultiTimeseries_args("); - int tmp486 = 0; + var sb = new StringBuilder("insertTablet_args("); + int tmp552 = 0; if((Req != null) && __isset.req) { - if(0 < tmp486++) { sb.Append(", "); } + if(0 < tmp552++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -7755,7 +11780,7 @@ public override string ToString() } - public partial class createMultiTimeseriesResult : TBase + public partial class insertTabletResult : TBase { private TSStatus _success; @@ -7779,19 +11804,19 @@ public struct Isset public bool success; } - public createMultiTimeseriesResult() + public insertTabletResult() { } - public createMultiTimeseriesResult DeepCopy() + public insertTabletResult DeepCopy() { - var tmp487 = new createMultiTimeseriesResult(); + var tmp553 = new insertTabletResult(); if((Success != null) && __isset.success) { - tmp487.Success = (TSStatus)this.Success.DeepCopy(); + tmp553.Success = (TSStatus)this.Success.DeepCopy(); } - tmp487.__isset.success = this.__isset.success; - return tmp487; + tmp553.__isset.success = this.__isset.success; + return tmp553; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7843,7 +11868,7 @@ public createMultiTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createMultiTimeseries_result"); + var struc = new TStruct("insertTablet_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -7870,7 +11895,7 @@ public createMultiTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is createMultiTimeseriesResult other)) return false; + if (!(that is insertTabletResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -7888,11 +11913,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createMultiTimeseries_result("); - int tmp488 = 0; + var sb = new StringBuilder("insertTablet_result("); + int tmp554 = 0; if((Success != null) && __isset.success) { - if(0 < tmp488++) { sb.Append(", "); } + if(0 < tmp554++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -7902,34 +11927,20 @@ public override string ToString() } - public partial class deleteTimeseriesArgs : TBase + public partial class insertTabletsArgs : TBase { - private long _sessionId; - private List _path; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertTabletsReq _req; - public List Path + public TSInsertTabletsReq Req { get { - return _path; + return _req; } set { - __isset.path = true; - this._path = value; + __isset.req = true; + this._req = value; } } @@ -7937,28 +11948,22 @@ public List Path public Isset __isset; public struct Isset { - public bool sessionId; - public bool path; + public bool req; } - public deleteTimeseriesArgs() + public insertTabletsArgs() { } - public deleteTimeseriesArgs DeepCopy() + public insertTabletsArgs DeepCopy() { - var tmp489 = new deleteTimeseriesArgs(); - if(__isset.sessionId) - { - tmp489.SessionId = this.SessionId; - } - tmp489.__isset.sessionId = this.__isset.sessionId; - if((Path != null) && __isset.path) + var tmp555 = new insertTabletsArgs(); + if((Req != null) && __isset.req) { - tmp489.Path = this.Path.DeepCopy(); + tmp555.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); } - tmp489.__isset.path = this.__isset.path; - return tmp489; + tmp555.__isset.req = this.__isset.req; + return tmp555; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -7979,29 +11984,10 @@ public deleteTimeseriesArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) + if (field.Type == TType.Struct) { - { - TList _list490 = await iprot.ReadListBeginAsync(cancellationToken); - Path = new List(_list490.Count); - for(int _i491 = 0; _i491 < _list490.Count; ++_i491) - { - string _elem492; - _elem492 = await iprot.ReadStringAsync(cancellationToken); - Path.Add(_elem492); - } - await iprot.ReadListEndAsync(cancellationToken); - } + Req = new TSInsertTabletsReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -8029,32 +12015,16 @@ public deleteTimeseriesArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteTimeseries_args"); + var struc = new TStruct("insertTablets_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((Path != null) && __isset.path) - { - field.Name = "path"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, Path.Count), cancellationToken); - foreach (string _iter493 in Path) - { - await oprot.WriteStringAsync(_iter493, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -8068,22 +12038,17 @@ public deleteTimeseriesArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteTimeseriesArgs other)) return false; + if (!(that is insertTabletsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.path == other.__isset.path) && ((!__isset.path) || (TCollections.Equals(Path, other.Path)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((Path != null) && __isset.path) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(Path); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -8091,19 +12056,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteTimeseries_args("); - int tmp494 = 0; - if(__isset.sessionId) - { - if(0 < tmp494++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((Path != null) && __isset.path) + var sb = new StringBuilder("insertTablets_args("); + int tmp556 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp494++) { sb.Append(", "); } - sb.Append("Path: "); - Path.ToString(sb); + if(0 < tmp556++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -8111,7 +12070,7 @@ public override string ToString() } - public partial class deleteTimeseriesResult : TBase + public partial class insertTabletsResult : TBase { private TSStatus _success; @@ -8135,19 +12094,19 @@ public struct Isset public bool success; } - public deleteTimeseriesResult() + public insertTabletsResult() { } - public deleteTimeseriesResult DeepCopy() + public insertTabletsResult DeepCopy() { - var tmp495 = new deleteTimeseriesResult(); + var tmp557 = new insertTabletsResult(); if((Success != null) && __isset.success) { - tmp495.Success = (TSStatus)this.Success.DeepCopy(); + tmp557.Success = (TSStatus)this.Success.DeepCopy(); } - tmp495.__isset.success = this.__isset.success; - return tmp495; + tmp557.__isset.success = this.__isset.success; + return tmp557; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8199,7 +12158,7 @@ public deleteTimeseriesResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteTimeseries_result"); + var struc = new TStruct("insertTablets_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8226,7 +12185,7 @@ public deleteTimeseriesResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteTimeseriesResult other)) return false; + if (!(that is insertTabletsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8244,11 +12203,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteTimeseries_result("); - int tmp496 = 0; + var sb = new StringBuilder("insertTablets_result("); + int tmp558 = 0; if((Success != null) && __isset.success) { - if(0 < tmp496++) { sb.Append(", "); } + if(0 < tmp558++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8258,34 +12217,20 @@ public override string ToString() } - public partial class deleteStorageGroupsArgs : TBase + public partial class insertRecordsArgs : TBase { - private long _sessionId; - private List _storageGroup; - - public long SessionId - { - get - { - return _sessionId; - } - set - { - __isset.sessionId = true; - this._sessionId = value; - } - } + private TSInsertRecordsReq _req; - public List StorageGroup + public TSInsertRecordsReq Req { get { - return _storageGroup; + return _req; } set { - __isset.storageGroup = true; - this._storageGroup = value; + __isset.req = true; + this._req = value; } } @@ -8293,28 +12238,22 @@ public List StorageGroup public Isset __isset; public struct Isset { - public bool sessionId; - public bool storageGroup; + public bool req; } - public deleteStorageGroupsArgs() + public insertRecordsArgs() { } - public deleteStorageGroupsArgs DeepCopy() + public insertRecordsArgs DeepCopy() { - var tmp497 = new deleteStorageGroupsArgs(); - if(__isset.sessionId) - { - tmp497.SessionId = this.SessionId; - } - tmp497.__isset.sessionId = this.__isset.sessionId; - if((StorageGroup != null) && __isset.storageGroup) + var tmp559 = new insertRecordsArgs(); + if((Req != null) && __isset.req) { - tmp497.StorageGroup = this.StorageGroup.DeepCopy(); + tmp559.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); } - tmp497.__isset.storageGroup = this.__isset.storageGroup; - return tmp497; + tmp559.__isset.req = this.__isset.req; + return tmp559; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8335,29 +12274,10 @@ public deleteStorageGroupsArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) - { - SessionId = await iprot.ReadI64Async(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.List) + if (field.Type == TType.Struct) { - { - TList _list498 = await iprot.ReadListBeginAsync(cancellationToken); - StorageGroup = new List(_list498.Count); - for(int _i499 = 0; _i499 < _list498.Count; ++_i499) - { - string _elem500; - _elem500 = await iprot.ReadStringAsync(cancellationToken); - StorageGroup.Add(_elem500); - } - await iprot.ReadListEndAsync(cancellationToken); - } + Req = new TSInsertRecordsReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -8385,32 +12305,16 @@ public deleteStorageGroupsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteStorageGroups_args"); + var struc = new TStruct("insertRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((StorageGroup != null) && __isset.storageGroup) - { - field.Name = "storageGroup"; - field.Type = TType.List; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroup.Count), cancellationToken); - foreach (string _iter501 in StorageGroup) - { - await oprot.WriteStringAsync(_iter501, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -8424,22 +12328,17 @@ public deleteStorageGroupsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteStorageGroupsArgs other)) return false; + if (!(that is insertRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))) - && ((__isset.storageGroup == other.__isset.storageGroup) && ((!__isset.storageGroup) || (TCollections.Equals(StorageGroup, other.StorageGroup)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) - { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); - } - if((StorageGroup != null) && __isset.storageGroup) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroup); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -8447,19 +12346,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteStorageGroups_args("); - int tmp502 = 0; - if(__isset.sessionId) - { - if(0 < tmp502++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); - } - if((StorageGroup != null) && __isset.storageGroup) + var sb = new StringBuilder("insertRecords_args("); + int tmp560 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp502++) { sb.Append(", "); } - sb.Append("StorageGroup: "); - StorageGroup.ToString(sb); + if(0 < tmp560++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -8467,7 +12360,7 @@ public override string ToString() } - public partial class deleteStorageGroupsResult : TBase + public partial class insertRecordsResult : TBase { private TSStatus _success; @@ -8491,19 +12384,19 @@ public struct Isset public bool success; } - public deleteStorageGroupsResult() + public insertRecordsResult() { } - public deleteStorageGroupsResult DeepCopy() + public insertRecordsResult DeepCopy() { - var tmp503 = new deleteStorageGroupsResult(); + var tmp561 = new insertRecordsResult(); if((Success != null) && __isset.success) { - tmp503.Success = (TSStatus)this.Success.DeepCopy(); + tmp561.Success = (TSStatus)this.Success.DeepCopy(); } - tmp503.__isset.success = this.__isset.success; - return tmp503; + tmp561.__isset.success = this.__isset.success; + return tmp561; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8555,7 +12448,7 @@ public deleteStorageGroupsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteStorageGroups_result"); + var struc = new TStruct("insertRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8582,7 +12475,7 @@ public deleteStorageGroupsResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteStorageGroupsResult other)) return false; + if (!(that is insertRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8600,11 +12493,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteStorageGroups_result("); - int tmp504 = 0; + var sb = new StringBuilder("insertRecords_result("); + int tmp562 = 0; if((Success != null) && __isset.success) { - if(0 < tmp504++) { sb.Append(", "); } + if(0 < tmp562++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8614,11 +12507,11 @@ public override string ToString() } - public partial class insertRecordArgs : TBase + public partial class insertRecordsOfOneDeviceArgs : TBase { - private TSInsertRecordReq _req; + private TSInsertRecordsOfOneDeviceReq _req; - public TSInsertRecordReq Req + public TSInsertRecordsOfOneDeviceReq Req { get { @@ -8638,19 +12531,19 @@ public struct Isset public bool req; } - public insertRecordArgs() + public insertRecordsOfOneDeviceArgs() { } - public insertRecordArgs DeepCopy() + public insertRecordsOfOneDeviceArgs DeepCopy() { - var tmp505 = new insertRecordArgs(); + var tmp563 = new insertRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp505.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + tmp563.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp505.__isset.req = this.__isset.req; - return tmp505; + tmp563.__isset.req = this.__isset.req; + return tmp563; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8673,7 +12566,7 @@ public insertRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordReq(); + Req = new TSInsertRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8702,7 +12595,7 @@ public insertRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecord_args"); + var struc = new TStruct("insertRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -8725,7 +12618,7 @@ public insertRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordArgs other)) return false; + if (!(that is insertRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -8743,11 +12636,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecord_args("); - int tmp506 = 0; + var sb = new StringBuilder("insertRecordsOfOneDevice_args("); + int tmp564 = 0; if((Req != null) && __isset.req) { - if(0 < tmp506++) { sb.Append(", "); } + if(0 < tmp564++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -8757,7 +12650,7 @@ public override string ToString() } - public partial class insertRecordResult : TBase + public partial class insertRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -8781,19 +12674,19 @@ public struct Isset public bool success; } - public insertRecordResult() + public insertRecordsOfOneDeviceResult() { } - public insertRecordResult DeepCopy() + public insertRecordsOfOneDeviceResult DeepCopy() { - var tmp507 = new insertRecordResult(); + var tmp565 = new insertRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp507.Success = (TSStatus)this.Success.DeepCopy(); + tmp565.Success = (TSStatus)this.Success.DeepCopy(); } - tmp507.__isset.success = this.__isset.success; - return tmp507; + tmp565.__isset.success = this.__isset.success; + return tmp565; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8845,7 +12738,7 @@ public insertRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecord_result"); + var struc = new TStruct("insertRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -8872,7 +12765,7 @@ public insertRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordResult other)) return false; + if (!(that is insertRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -8890,11 +12783,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecord_result("); - int tmp508 = 0; + var sb = new StringBuilder("insertRecordsOfOneDevice_result("); + int tmp566 = 0; if((Success != null) && __isset.success) { - if(0 < tmp508++) { sb.Append(", "); } + if(0 < tmp566++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -8904,11 +12797,11 @@ public override string ToString() } - public partial class insertStringRecordArgs : TBase + public partial class insertStringRecordsOfOneDeviceArgs : TBase { - private TSInsertStringRecordReq _req; + private TSInsertStringRecordsOfOneDeviceReq _req; - public TSInsertStringRecordReq Req + public TSInsertStringRecordsOfOneDeviceReq Req { get { @@ -8928,19 +12821,19 @@ public struct Isset public bool req; } - public insertStringRecordArgs() + public insertStringRecordsOfOneDeviceArgs() { } - public insertStringRecordArgs DeepCopy() + public insertStringRecordsOfOneDeviceArgs DeepCopy() { - var tmp509 = new insertStringRecordArgs(); + var tmp567 = new insertStringRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp509.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + tmp567.Req = (TSInsertStringRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp509.__isset.req = this.__isset.req; - return tmp509; + tmp567.__isset.req = this.__isset.req; + return tmp567; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -8963,7 +12856,7 @@ public insertStringRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); + Req = new TSInsertStringRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -8992,7 +12885,7 @@ public insertStringRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecord_args"); + var struc = new TStruct("insertStringRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9015,7 +12908,7 @@ public insertStringRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordArgs other)) return false; + if (!(that is insertStringRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9033,11 +12926,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecord_args("); - int tmp510 = 0; + var sb = new StringBuilder("insertStringRecordsOfOneDevice_args("); + int tmp568 = 0; if((Req != null) && __isset.req) { - if(0 < tmp510++) { sb.Append(", "); } + if(0 < tmp568++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9047,7 +12940,7 @@ public override string ToString() } - public partial class insertStringRecordResult : TBase + public partial class insertStringRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -9071,19 +12964,19 @@ public struct Isset public bool success; } - public insertStringRecordResult() + public insertStringRecordsOfOneDeviceResult() { } - public insertStringRecordResult DeepCopy() + public insertStringRecordsOfOneDeviceResult DeepCopy() { - var tmp511 = new insertStringRecordResult(); + var tmp569 = new insertStringRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp511.Success = (TSStatus)this.Success.DeepCopy(); + tmp569.Success = (TSStatus)this.Success.DeepCopy(); } - tmp511.__isset.success = this.__isset.success; - return tmp511; + tmp569.__isset.success = this.__isset.success; + return tmp569; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9135,7 +13028,7 @@ public insertStringRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecord_result"); + var struc = new TStruct("insertStringRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9162,7 +13055,7 @@ public insertStringRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordResult other)) return false; + if (!(that is insertStringRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9180,11 +13073,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecord_result("); - int tmp512 = 0; + var sb = new StringBuilder("insertStringRecordsOfOneDevice_result("); + int tmp570 = 0; if((Success != null) && __isset.success) { - if(0 < tmp512++) { sb.Append(", "); } + if(0 < tmp570++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9194,11 +13087,11 @@ public override string ToString() } - public partial class insertTabletArgs : TBase + public partial class insertStringRecordsArgs : TBase { - private TSInsertTabletReq _req; + private TSInsertStringRecordsReq _req; - public TSInsertTabletReq Req + public TSInsertStringRecordsReq Req { get { @@ -9218,19 +13111,19 @@ public struct Isset public bool req; } - public insertTabletArgs() + public insertStringRecordsArgs() { } - public insertTabletArgs DeepCopy() + public insertStringRecordsArgs DeepCopy() { - var tmp513 = new insertTabletArgs(); + var tmp571 = new insertStringRecordsArgs(); if((Req != null) && __isset.req) { - tmp513.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + tmp571.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); } - tmp513.__isset.req = this.__isset.req; - return tmp513; + tmp571.__isset.req = this.__isset.req; + return tmp571; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9253,7 +13146,7 @@ public insertTabletArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); + Req = new TSInsertStringRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9282,7 +13175,7 @@ public insertTabletArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablet_args"); + var struc = new TStruct("insertStringRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9305,7 +13198,7 @@ public insertTabletArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletArgs other)) return false; + if (!(that is insertStringRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9323,11 +13216,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablet_args("); - int tmp514 = 0; + var sb = new StringBuilder("insertStringRecords_args("); + int tmp572 = 0; if((Req != null) && __isset.req) { - if(0 < tmp514++) { sb.Append(", "); } + if(0 < tmp572++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9337,7 +13230,7 @@ public override string ToString() } - public partial class insertTabletResult : TBase + public partial class insertStringRecordsResult : TBase { private TSStatus _success; @@ -9361,19 +13254,19 @@ public struct Isset public bool success; } - public insertTabletResult() + public insertStringRecordsResult() { } - public insertTabletResult DeepCopy() + public insertStringRecordsResult DeepCopy() { - var tmp515 = new insertTabletResult(); + var tmp573 = new insertStringRecordsResult(); if((Success != null) && __isset.success) { - tmp515.Success = (TSStatus)this.Success.DeepCopy(); + tmp573.Success = (TSStatus)this.Success.DeepCopy(); } - tmp515.__isset.success = this.__isset.success; - return tmp515; + tmp573.__isset.success = this.__isset.success; + return tmp573; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9425,7 +13318,7 @@ public insertTabletResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablet_result"); + var struc = new TStruct("insertStringRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9452,7 +13345,7 @@ public insertTabletResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletResult other)) return false; + if (!(that is insertStringRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9470,11 +13363,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablet_result("); - int tmp516 = 0; + var sb = new StringBuilder("insertStringRecords_result("); + int tmp574 = 0; if((Success != null) && __isset.success) { - if(0 < tmp516++) { sb.Append(", "); } + if(0 < tmp574++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9484,11 +13377,11 @@ public override string ToString() } - public partial class insertTabletsArgs : TBase + public partial class testInsertTabletArgs : TBase { - private TSInsertTabletsReq _req; + private TSInsertTabletReq _req; - public TSInsertTabletsReq Req + public TSInsertTabletReq Req { get { @@ -9508,19 +13401,19 @@ public struct Isset public bool req; } - public insertTabletsArgs() + public testInsertTabletArgs() { } - public insertTabletsArgs DeepCopy() + public testInsertTabletArgs DeepCopy() { - var tmp517 = new insertTabletsArgs(); + var tmp575 = new testInsertTabletArgs(); if((Req != null) && __isset.req) { - tmp517.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + tmp575.Req = (TSInsertTabletReq)this.Req.DeepCopy(); } - tmp517.__isset.req = this.__isset.req; - return tmp517; + tmp575.__isset.req = this.__isset.req; + return tmp575; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9543,7 +13436,7 @@ public insertTabletsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); + Req = new TSInsertTabletReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9572,7 +13465,7 @@ public insertTabletsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablets_args"); + var struc = new TStruct("testInsertTablet_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9595,7 +13488,7 @@ public insertTabletsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletsArgs other)) return false; + if (!(that is testInsertTabletArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9613,11 +13506,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablets_args("); - int tmp518 = 0; + var sb = new StringBuilder("testInsertTablet_args("); + int tmp576 = 0; if((Req != null) && __isset.req) { - if(0 < tmp518++) { sb.Append(", "); } + if(0 < tmp576++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9627,7 +13520,7 @@ public override string ToString() } - public partial class insertTabletsResult : TBase + public partial class testInsertTabletResult : TBase { private TSStatus _success; @@ -9651,19 +13544,19 @@ public struct Isset public bool success; } - public insertTabletsResult() + public testInsertTabletResult() { } - public insertTabletsResult DeepCopy() + public testInsertTabletResult DeepCopy() { - var tmp519 = new insertTabletsResult(); + var tmp577 = new testInsertTabletResult(); if((Success != null) && __isset.success) { - tmp519.Success = (TSStatus)this.Success.DeepCopy(); + tmp577.Success = (TSStatus)this.Success.DeepCopy(); } - tmp519.__isset.success = this.__isset.success; - return tmp519; + tmp577.__isset.success = this.__isset.success; + return tmp577; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9715,7 +13608,7 @@ public insertTabletsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertTablets_result"); + var struc = new TStruct("testInsertTablet_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -9742,7 +13635,7 @@ public insertTabletsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertTabletsResult other)) return false; + if (!(that is testInsertTabletResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -9760,11 +13653,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertTablets_result("); - int tmp520 = 0; + var sb = new StringBuilder("testInsertTablet_result("); + int tmp578 = 0; if((Success != null) && __isset.success) { - if(0 < tmp520++) { sb.Append(", "); } + if(0 < tmp578++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -9774,11 +13667,11 @@ public override string ToString() } - public partial class insertRecordsArgs : TBase + public partial class testInsertTabletsArgs : TBase { - private TSInsertRecordsReq _req; + private TSInsertTabletsReq _req; - public TSInsertRecordsReq Req + public TSInsertTabletsReq Req { get { @@ -9798,19 +13691,19 @@ public struct Isset public bool req; } - public insertRecordsArgs() + public testInsertTabletsArgs() { } - public insertRecordsArgs DeepCopy() + public testInsertTabletsArgs DeepCopy() { - var tmp521 = new insertRecordsArgs(); + var tmp579 = new testInsertTabletsArgs(); if((Req != null) && __isset.req) { - tmp521.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + tmp579.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); } - tmp521.__isset.req = this.__isset.req; - return tmp521; + tmp579.__isset.req = this.__isset.req; + return tmp579; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -9833,7 +13726,7 @@ public insertRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); + Req = new TSInsertTabletsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -9862,7 +13755,7 @@ public insertRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecords_args"); + var struc = new TStruct("testInsertTablets_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -9885,7 +13778,7 @@ public insertRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsArgs other)) return false; + if (!(that is testInsertTabletsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -9903,11 +13796,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecords_args("); - int tmp522 = 0; + var sb = new StringBuilder("testInsertTablets_args("); + int tmp580 = 0; if((Req != null) && __isset.req) { - if(0 < tmp522++) { sb.Append(", "); } + if(0 < tmp580++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -9917,7 +13810,7 @@ public override string ToString() } - public partial class insertRecordsResult : TBase + public partial class testInsertTabletsResult : TBase { private TSStatus _success; @@ -9941,19 +13834,19 @@ public struct Isset public bool success; } - public insertRecordsResult() + public testInsertTabletsResult() { } - public insertRecordsResult DeepCopy() + public testInsertTabletsResult DeepCopy() { - var tmp523 = new insertRecordsResult(); + var tmp581 = new testInsertTabletsResult(); if((Success != null) && __isset.success) { - tmp523.Success = (TSStatus)this.Success.DeepCopy(); + tmp581.Success = (TSStatus)this.Success.DeepCopy(); } - tmp523.__isset.success = this.__isset.success; - return tmp523; + tmp581.__isset.success = this.__isset.success; + return tmp581; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10005,7 +13898,7 @@ public insertRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecords_result"); + var struc = new TStruct("testInsertTablets_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10032,7 +13925,7 @@ public insertRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsResult other)) return false; + if (!(that is testInsertTabletsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10050,11 +13943,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecords_result("); - int tmp524 = 0; + var sb = new StringBuilder("testInsertTablets_result("); + int tmp582 = 0; if((Success != null) && __isset.success) { - if(0 < tmp524++) { sb.Append(", "); } + if(0 < tmp582++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10064,11 +13957,11 @@ public override string ToString() } - public partial class insertRecordsOfOneDeviceArgs : TBase + public partial class testInsertRecordArgs : TBase { - private TSInsertRecordsOfOneDeviceReq _req; + private TSInsertRecordReq _req; - public TSInsertRecordsOfOneDeviceReq Req + public TSInsertRecordReq Req { get { @@ -10088,19 +13981,19 @@ public struct Isset public bool req; } - public insertRecordsOfOneDeviceArgs() + public testInsertRecordArgs() { } - public insertRecordsOfOneDeviceArgs DeepCopy() + public testInsertRecordArgs DeepCopy() { - var tmp525 = new insertRecordsOfOneDeviceArgs(); + var tmp583 = new testInsertRecordArgs(); if((Req != null) && __isset.req) { - tmp525.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp583.Req = (TSInsertRecordReq)this.Req.DeepCopy(); } - tmp525.__isset.req = this.__isset.req; - return tmp525; + tmp583.__isset.req = this.__isset.req; + return tmp583; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10123,7 +14016,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsOfOneDeviceReq(); + Req = new TSInsertRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10152,7 +14045,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecordsOfOneDevice_args"); + var struc = new TStruct("testInsertRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10175,7 +14068,7 @@ public insertRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsOfOneDeviceArgs other)) return false; + if (!(that is testInsertRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10193,11 +14086,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecordsOfOneDevice_args("); - int tmp526 = 0; + var sb = new StringBuilder("testInsertRecord_args("); + int tmp584 = 0; if((Req != null) && __isset.req) { - if(0 < tmp526++) { sb.Append(", "); } + if(0 < tmp584++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10207,7 +14100,7 @@ public override string ToString() } - public partial class insertRecordsOfOneDeviceResult : TBase + public partial class testInsertRecordResult : TBase { private TSStatus _success; @@ -10231,19 +14124,19 @@ public struct Isset public bool success; } - public insertRecordsOfOneDeviceResult() + public testInsertRecordResult() { } - public insertRecordsOfOneDeviceResult DeepCopy() + public testInsertRecordResult DeepCopy() { - var tmp527 = new insertRecordsOfOneDeviceResult(); + var tmp585 = new testInsertRecordResult(); if((Success != null) && __isset.success) { - tmp527.Success = (TSStatus)this.Success.DeepCopy(); + tmp585.Success = (TSStatus)this.Success.DeepCopy(); } - tmp527.__isset.success = this.__isset.success; - return tmp527; + tmp585.__isset.success = this.__isset.success; + return tmp585; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10295,7 +14188,7 @@ public insertRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertRecordsOfOneDevice_result"); + var struc = new TStruct("testInsertRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10322,7 +14215,7 @@ public insertRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertRecordsOfOneDeviceResult other)) return false; + if (!(that is testInsertRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10340,11 +14233,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertRecordsOfOneDevice_result("); - int tmp528 = 0; + var sb = new StringBuilder("testInsertRecord_result("); + int tmp586 = 0; if((Success != null) && __isset.success) { - if(0 < tmp528++) { sb.Append(", "); } + if(0 < tmp586++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10354,11 +14247,11 @@ public override string ToString() } - public partial class insertStringRecordsOfOneDeviceArgs : TBase + public partial class testInsertStringRecordArgs : TBase { - private TSInsertStringRecordsOfOneDeviceReq _req; + private TSInsertStringRecordReq _req; - public TSInsertStringRecordsOfOneDeviceReq Req + public TSInsertStringRecordReq Req { get { @@ -10378,19 +14271,19 @@ public struct Isset public bool req; } - public insertStringRecordsOfOneDeviceArgs() + public testInsertStringRecordArgs() { } - public insertStringRecordsOfOneDeviceArgs DeepCopy() + public testInsertStringRecordArgs DeepCopy() { - var tmp529 = new insertStringRecordsOfOneDeviceArgs(); + var tmp587 = new testInsertStringRecordArgs(); if((Req != null) && __isset.req) { - tmp529.Req = (TSInsertStringRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp587.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); } - tmp529.__isset.req = this.__isset.req; - return tmp529; + tmp587.__isset.req = this.__isset.req; + return tmp587; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10413,7 +14306,7 @@ public insertStringRecordsOfOneDeviceArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsOfOneDeviceReq(); + Req = new TSInsertStringRecordReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10442,7 +14335,7 @@ public insertStringRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecordsOfOneDevice_args"); + var struc = new TStruct("testInsertStringRecord_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10465,7 +14358,7 @@ public insertStringRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsOfOneDeviceArgs other)) return false; + if (!(that is testInsertStringRecordArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10483,11 +14376,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecordsOfOneDevice_args("); - int tmp530 = 0; + var sb = new StringBuilder("testInsertStringRecord_args("); + int tmp588 = 0; if((Req != null) && __isset.req) { - if(0 < tmp530++) { sb.Append(", "); } + if(0 < tmp588++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10497,7 +14390,7 @@ public override string ToString() } - public partial class insertStringRecordsOfOneDeviceResult : TBase + public partial class testInsertStringRecordResult : TBase { private TSStatus _success; @@ -10521,19 +14414,19 @@ public struct Isset public bool success; } - public insertStringRecordsOfOneDeviceResult() + public testInsertStringRecordResult() { } - public insertStringRecordsOfOneDeviceResult DeepCopy() + public testInsertStringRecordResult DeepCopy() { - var tmp531 = new insertStringRecordsOfOneDeviceResult(); + var tmp589 = new testInsertStringRecordResult(); if((Success != null) && __isset.success) { - tmp531.Success = (TSStatus)this.Success.DeepCopy(); + tmp589.Success = (TSStatus)this.Success.DeepCopy(); } - tmp531.__isset.success = this.__isset.success; - return tmp531; + tmp589.__isset.success = this.__isset.success; + return tmp589; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10585,7 +14478,7 @@ public insertStringRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecordsOfOneDevice_result"); + var struc = new TStruct("testInsertStringRecord_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10612,7 +14505,7 @@ public insertStringRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsOfOneDeviceResult other)) return false; + if (!(that is testInsertStringRecordResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10630,11 +14523,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecordsOfOneDevice_result("); - int tmp532 = 0; + var sb = new StringBuilder("testInsertStringRecord_result("); + int tmp590 = 0; if((Success != null) && __isset.success) { - if(0 < tmp532++) { sb.Append(", "); } + if(0 < tmp590++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10644,11 +14537,11 @@ public override string ToString() } - public partial class insertStringRecordsArgs : TBase + public partial class testInsertRecordsArgs : TBase { - private TSInsertStringRecordsReq _req; + private TSInsertRecordsReq _req; - public TSInsertStringRecordsReq Req + public TSInsertRecordsReq Req { get { @@ -10668,19 +14561,19 @@ public struct Isset public bool req; } - public insertStringRecordsArgs() + public testInsertRecordsArgs() { } - public insertStringRecordsArgs DeepCopy() + public testInsertRecordsArgs DeepCopy() { - var tmp533 = new insertStringRecordsArgs(); + var tmp591 = new testInsertRecordsArgs(); if((Req != null) && __isset.req) { - tmp533.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + tmp591.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); } - tmp533.__isset.req = this.__isset.req; - return tmp533; + tmp591.__isset.req = this.__isset.req; + return tmp591; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10703,7 +14596,7 @@ public insertStringRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); + Req = new TSInsertRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -10732,7 +14625,7 @@ public insertStringRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecords_args"); + var struc = new TStruct("testInsertRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -10755,7 +14648,7 @@ public insertStringRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsArgs other)) return false; + if (!(that is testInsertRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -10773,11 +14666,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecords_args("); - int tmp534 = 0; + var sb = new StringBuilder("testInsertRecords_args("); + int tmp592 = 0; if((Req != null) && __isset.req) { - if(0 < tmp534++) { sb.Append(", "); } + if(0 < tmp592++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -10787,7 +14680,7 @@ public override string ToString() } - public partial class insertStringRecordsResult : TBase + public partial class testInsertRecordsResult : TBase { private TSStatus _success; @@ -10811,19 +14704,19 @@ public struct Isset public bool success; } - public insertStringRecordsResult() + public testInsertRecordsResult() { } - public insertStringRecordsResult DeepCopy() + public testInsertRecordsResult DeepCopy() { - var tmp535 = new insertStringRecordsResult(); + var tmp593 = new testInsertRecordsResult(); if((Success != null) && __isset.success) { - tmp535.Success = (TSStatus)this.Success.DeepCopy(); + tmp593.Success = (TSStatus)this.Success.DeepCopy(); } - tmp535.__isset.success = this.__isset.success; - return tmp535; + tmp593.__isset.success = this.__isset.success; + return tmp593; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10875,7 +14768,7 @@ public insertStringRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("insertStringRecords_result"); + var struc = new TStruct("testInsertRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -10902,7 +14795,7 @@ public insertStringRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is insertStringRecordsResult other)) return false; + if (!(that is testInsertRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -10920,11 +14813,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("insertStringRecords_result("); - int tmp536 = 0; + var sb = new StringBuilder("testInsertRecords_result("); + int tmp594 = 0; if((Success != null) && __isset.success) { - if(0 < tmp536++) { sb.Append(", "); } + if(0 < tmp594++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -10934,11 +14827,11 @@ public override string ToString() } - public partial class testInsertTabletArgs : TBase + public partial class testInsertRecordsOfOneDeviceArgs : TBase { - private TSInsertTabletReq _req; + private TSInsertRecordsOfOneDeviceReq _req; - public TSInsertTabletReq Req + public TSInsertRecordsOfOneDeviceReq Req { get { @@ -10958,19 +14851,19 @@ public struct Isset public bool req; } - public testInsertTabletArgs() + public testInsertRecordsOfOneDeviceArgs() { } - public testInsertTabletArgs DeepCopy() + public testInsertRecordsOfOneDeviceArgs DeepCopy() { - var tmp537 = new testInsertTabletArgs(); + var tmp595 = new testInsertRecordsOfOneDeviceArgs(); if((Req != null) && __isset.req) { - tmp537.Req = (TSInsertTabletReq)this.Req.DeepCopy(); + tmp595.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); } - tmp537.__isset.req = this.__isset.req; - return tmp537; + tmp595.__isset.req = this.__isset.req; + return tmp595; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -10993,7 +14886,7 @@ public testInsertTabletArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletReq(); + Req = new TSInsertRecordsOfOneDeviceReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11022,7 +14915,7 @@ public testInsertTabletArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablet_args"); + var struc = new TStruct("testInsertRecordsOfOneDevice_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11045,7 +14938,7 @@ public testInsertTabletArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletArgs other)) return false; + if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11063,11 +14956,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablet_args("); - int tmp538 = 0; + var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); + int tmp596 = 0; if((Req != null) && __isset.req) { - if(0 < tmp538++) { sb.Append(", "); } + if(0 < tmp596++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11077,7 +14970,7 @@ public override string ToString() } - public partial class testInsertTabletResult : TBase + public partial class testInsertRecordsOfOneDeviceResult : TBase { private TSStatus _success; @@ -11101,19 +14994,19 @@ public struct Isset public bool success; } - public testInsertTabletResult() + public testInsertRecordsOfOneDeviceResult() { } - public testInsertTabletResult DeepCopy() + public testInsertRecordsOfOneDeviceResult DeepCopy() { - var tmp539 = new testInsertTabletResult(); + var tmp597 = new testInsertRecordsOfOneDeviceResult(); if((Success != null) && __isset.success) { - tmp539.Success = (TSStatus)this.Success.DeepCopy(); + tmp597.Success = (TSStatus)this.Success.DeepCopy(); } - tmp539.__isset.success = this.__isset.success; - return tmp539; + tmp597.__isset.success = this.__isset.success; + return tmp597; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11165,7 +15058,7 @@ public testInsertTabletResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablet_result"); + var struc = new TStruct("testInsertRecordsOfOneDevice_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11192,7 +15085,7 @@ public testInsertTabletResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletResult other)) return false; + if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11210,11 +15103,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablet_result("); - int tmp540 = 0; + var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); + int tmp598 = 0; if((Success != null) && __isset.success) { - if(0 < tmp540++) { sb.Append(", "); } + if(0 < tmp598++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11224,11 +15117,11 @@ public override string ToString() } - public partial class testInsertTabletsArgs : TBase + public partial class testInsertStringRecordsArgs : TBase { - private TSInsertTabletsReq _req; + private TSInsertStringRecordsReq _req; - public TSInsertTabletsReq Req + public TSInsertStringRecordsReq Req { get { @@ -11248,19 +15141,19 @@ public struct Isset public bool req; } - public testInsertTabletsArgs() + public testInsertStringRecordsArgs() { } - public testInsertTabletsArgs DeepCopy() + public testInsertStringRecordsArgs DeepCopy() { - var tmp541 = new testInsertTabletsArgs(); + var tmp599 = new testInsertStringRecordsArgs(); if((Req != null) && __isset.req) { - tmp541.Req = (TSInsertTabletsReq)this.Req.DeepCopy(); + tmp599.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); } - tmp541.__isset.req = this.__isset.req; - return tmp541; + tmp599.__isset.req = this.__isset.req; + return tmp599; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11283,7 +15176,7 @@ public testInsertTabletsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertTabletsReq(); + Req = new TSInsertStringRecordsReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11312,7 +15205,7 @@ public testInsertTabletsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablets_args"); + var struc = new TStruct("testInsertStringRecords_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11335,7 +15228,7 @@ public testInsertTabletsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletsArgs other)) return false; + if (!(that is testInsertStringRecordsArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11353,11 +15246,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablets_args("); - int tmp542 = 0; + var sb = new StringBuilder("testInsertStringRecords_args("); + int tmp600 = 0; if((Req != null) && __isset.req) { - if(0 < tmp542++) { sb.Append(", "); } + if(0 < tmp600++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11367,7 +15260,7 @@ public override string ToString() } - public partial class testInsertTabletsResult : TBase + public partial class testInsertStringRecordsResult : TBase { private TSStatus _success; @@ -11391,19 +15284,19 @@ public struct Isset public bool success; } - public testInsertTabletsResult() + public testInsertStringRecordsResult() { } - public testInsertTabletsResult DeepCopy() + public testInsertStringRecordsResult DeepCopy() { - var tmp543 = new testInsertTabletsResult(); + var tmp601 = new testInsertStringRecordsResult(); if((Success != null) && __isset.success) { - tmp543.Success = (TSStatus)this.Success.DeepCopy(); + tmp601.Success = (TSStatus)this.Success.DeepCopy(); } - tmp543.__isset.success = this.__isset.success; - return tmp543; + tmp601.__isset.success = this.__isset.success; + return tmp601; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11455,7 +15348,7 @@ public testInsertTabletsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertTablets_result"); + var struc = new TStruct("testInsertStringRecords_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11482,7 +15375,7 @@ public testInsertTabletsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertTabletsResult other)) return false; + if (!(that is testInsertStringRecordsResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11500,11 +15393,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertTablets_result("); - int tmp544 = 0; + var sb = new StringBuilder("testInsertStringRecords_result("); + int tmp602 = 0; if((Success != null) && __isset.success) { - if(0 < tmp544++) { sb.Append(", "); } + if(0 < tmp602++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11514,11 +15407,11 @@ public override string ToString() } - public partial class testInsertRecordArgs : TBase + public partial class deleteDataArgs : TBase { - private TSInsertRecordReq _req; + private TSDeleteDataReq _req; - public TSInsertRecordReq Req + public TSDeleteDataReq Req { get { @@ -11538,19 +15431,19 @@ public struct Isset public bool req; } - public testInsertRecordArgs() + public deleteDataArgs() { } - public testInsertRecordArgs DeepCopy() + public deleteDataArgs DeepCopy() { - var tmp545 = new testInsertRecordArgs(); + var tmp603 = new deleteDataArgs(); if((Req != null) && __isset.req) { - tmp545.Req = (TSInsertRecordReq)this.Req.DeepCopy(); + tmp603.Req = (TSDeleteDataReq)this.Req.DeepCopy(); } - tmp545.__isset.req = this.__isset.req; - return tmp545; + tmp603.__isset.req = this.__isset.req; + return tmp603; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11573,7 +15466,7 @@ public testInsertRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordReq(); + Req = new TSDeleteDataReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11602,7 +15495,7 @@ public testInsertRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecord_args"); + var struc = new TStruct("deleteData_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11625,7 +15518,7 @@ public testInsertRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordArgs other)) return false; + if (!(that is deleteDataArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11643,11 +15536,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecord_args("); - int tmp546 = 0; + var sb = new StringBuilder("deleteData_args("); + int tmp604 = 0; if((Req != null) && __isset.req) { - if(0 < tmp546++) { sb.Append(", "); } + if(0 < tmp604++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11657,7 +15550,7 @@ public override string ToString() } - public partial class testInsertRecordResult : TBase + public partial class deleteDataResult : TBase { private TSStatus _success; @@ -11681,19 +15574,19 @@ public struct Isset public bool success; } - public testInsertRecordResult() + public deleteDataResult() { } - public testInsertRecordResult DeepCopy() + public deleteDataResult DeepCopy() { - var tmp547 = new testInsertRecordResult(); + var tmp605 = new deleteDataResult(); if((Success != null) && __isset.success) { - tmp547.Success = (TSStatus)this.Success.DeepCopy(); + tmp605.Success = (TSStatus)this.Success.DeepCopy(); } - tmp547.__isset.success = this.__isset.success; - return tmp547; + tmp605.__isset.success = this.__isset.success; + return tmp605; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11745,7 +15638,7 @@ public testInsertRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecord_result"); + var struc = new TStruct("deleteData_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -11772,7 +15665,7 @@ public testInsertRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordResult other)) return false; + if (!(that is deleteDataResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -11790,11 +15683,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecord_result("); - int tmp548 = 0; + var sb = new StringBuilder("deleteData_result("); + int tmp606 = 0; if((Success != null) && __isset.success) { - if(0 < tmp548++) { sb.Append(", "); } + if(0 < tmp606++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -11804,11 +15697,11 @@ public override string ToString() } - public partial class testInsertStringRecordArgs : TBase + public partial class executeRawDataQueryArgs : TBase { - private TSInsertStringRecordReq _req; + private TSRawDataQueryReq _req; - public TSInsertStringRecordReq Req + public TSRawDataQueryReq Req { get { @@ -11828,19 +15721,19 @@ public struct Isset public bool req; } - public testInsertStringRecordArgs() + public executeRawDataQueryArgs() { } - public testInsertStringRecordArgs DeepCopy() + public executeRawDataQueryArgs DeepCopy() { - var tmp549 = new testInsertStringRecordArgs(); + var tmp607 = new executeRawDataQueryArgs(); if((Req != null) && __isset.req) { - tmp549.Req = (TSInsertStringRecordReq)this.Req.DeepCopy(); + tmp607.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); } - tmp549.__isset.req = this.__isset.req; - return tmp549; + tmp607.__isset.req = this.__isset.req; + return tmp607; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -11863,7 +15756,7 @@ public testInsertStringRecordArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordReq(); + Req = new TSRawDataQueryReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -11892,7 +15785,7 @@ public testInsertStringRecordArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecord_args"); + var struc = new TStruct("executeRawDataQuery_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -11915,7 +15808,7 @@ public testInsertStringRecordArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordArgs other)) return false; + if (!(that is executeRawDataQueryArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -11933,11 +15826,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecord_args("); - int tmp550 = 0; + var sb = new StringBuilder("executeRawDataQuery_args("); + int tmp608 = 0; if((Req != null) && __isset.req) { - if(0 < tmp550++) { sb.Append(", "); } + if(0 < tmp608++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -11947,11 +15840,11 @@ public override string ToString() } - public partial class testInsertStringRecordResult : TBase + public partial class executeRawDataQueryResult : TBase { - private TSStatus _success; + private TSExecuteStatementResp _success; - public TSStatus Success + public TSExecuteStatementResp Success { get { @@ -11971,19 +15864,19 @@ public struct Isset public bool success; } - public testInsertStringRecordResult() + public executeRawDataQueryResult() { } - public testInsertStringRecordResult DeepCopy() + public executeRawDataQueryResult DeepCopy() { - var tmp551 = new testInsertStringRecordResult(); + var tmp609 = new executeRawDataQueryResult(); if((Success != null) && __isset.success) { - tmp551.Success = (TSStatus)this.Success.DeepCopy(); + tmp609.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp551.__isset.success = this.__isset.success; - return tmp551; + tmp609.__isset.success = this.__isset.success; + return tmp609; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12006,7 +15899,7 @@ public testInsertStringRecordResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -12035,7 +15928,7 @@ public testInsertStringRecordResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecord_result"); + var struc = new TStruct("executeRawDataQuery_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12062,7 +15955,7 @@ public testInsertStringRecordResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordResult other)) return false; + if (!(that is executeRawDataQueryResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12080,11 +15973,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecord_result("); - int tmp552 = 0; + var sb = new StringBuilder("executeRawDataQuery_result("); + int tmp610 = 0; if((Success != null) && __isset.success) { - if(0 < tmp552++) { sb.Append(", "); } + if(0 < tmp610++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12094,11 +15987,11 @@ public override string ToString() } - public partial class testInsertRecordsArgs : TBase + public partial class executeLastDataQueryArgs : TBase { - private TSInsertRecordsReq _req; + private TSLastDataQueryReq _req; - public TSInsertRecordsReq Req + public TSLastDataQueryReq Req { get { @@ -12118,19 +16011,19 @@ public struct Isset public bool req; } - public testInsertRecordsArgs() + public executeLastDataQueryArgs() { } - public testInsertRecordsArgs DeepCopy() + public executeLastDataQueryArgs DeepCopy() { - var tmp553 = new testInsertRecordsArgs(); + var tmp611 = new executeLastDataQueryArgs(); if((Req != null) && __isset.req) { - tmp553.Req = (TSInsertRecordsReq)this.Req.DeepCopy(); + tmp611.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); } - tmp553.__isset.req = this.__isset.req; - return tmp553; + tmp611.__isset.req = this.__isset.req; + return tmp611; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12153,7 +16046,7 @@ public testInsertRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertRecordsReq(); + Req = new TSLastDataQueryReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -12182,7 +16075,7 @@ public testInsertRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecords_args"); + var struc = new TStruct("executeLastDataQuery_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -12205,7 +16098,7 @@ public testInsertRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsArgs other)) return false; + if (!(that is executeLastDataQueryArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -12223,11 +16116,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecords_args("); - int tmp554 = 0; + var sb = new StringBuilder("executeLastDataQuery_args("); + int tmp612 = 0; if((Req != null) && __isset.req) { - if(0 < tmp554++) { sb.Append(", "); } + if(0 < tmp612++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -12237,11 +16130,11 @@ public override string ToString() } - public partial class testInsertRecordsResult : TBase + public partial class executeLastDataQueryResult : TBase { - private TSStatus _success; + private TSExecuteStatementResp _success; - public TSStatus Success + public TSExecuteStatementResp Success { get { @@ -12261,19 +16154,19 @@ public struct Isset public bool success; } - public testInsertRecordsResult() + public executeLastDataQueryResult() { } - public testInsertRecordsResult DeepCopy() + public executeLastDataQueryResult DeepCopy() { - var tmp555 = new testInsertRecordsResult(); + var tmp613 = new executeLastDataQueryResult(); if((Success != null) && __isset.success) { - tmp555.Success = (TSStatus)this.Success.DeepCopy(); + tmp613.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); } - tmp555.__isset.success = this.__isset.success; - return tmp555; + tmp613.__isset.success = this.__isset.success; + return tmp613; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12296,7 +16189,7 @@ public testInsertRecordsResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSExecuteStatementResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -12325,7 +16218,7 @@ public testInsertRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecords_result"); + var struc = new TStruct("executeLastDataQuery_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12352,7 +16245,7 @@ public testInsertRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsResult other)) return false; + if (!(that is executeLastDataQueryResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12370,11 +16263,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecords_result("); - int tmp556 = 0; + var sb = new StringBuilder("executeLastDataQuery_result("); + int tmp614 = 0; if((Success != null) && __isset.success) { - if(0 < tmp556++) { sb.Append(", "); } + if(0 < tmp614++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12384,20 +16277,20 @@ public override string ToString() } - public partial class testInsertRecordsOfOneDeviceArgs : TBase + public partial class requestStatementIdArgs : TBase { - private TSInsertRecordsOfOneDeviceReq _req; + private long _sessionId; - public TSInsertRecordsOfOneDeviceReq Req + public long SessionId { get { - return _req; + return _sessionId; } set { - __isset.req = true; - this._req = value; + __isset.sessionId = true; + this._sessionId = value; } } @@ -12405,22 +16298,22 @@ public TSInsertRecordsOfOneDeviceReq Req public Isset __isset; public struct Isset { - public bool req; + public bool sessionId; } - public testInsertRecordsOfOneDeviceArgs() + public requestStatementIdArgs() { } - public testInsertRecordsOfOneDeviceArgs DeepCopy() + public requestStatementIdArgs DeepCopy() { - var tmp557 = new testInsertRecordsOfOneDeviceArgs(); - if((Req != null) && __isset.req) + var tmp615 = new requestStatementIdArgs(); + if(__isset.sessionId) { - tmp557.Req = (TSInsertRecordsOfOneDeviceReq)this.Req.DeepCopy(); + tmp615.SessionId = this.SessionId; } - tmp557.__isset.req = this.__isset.req; - return tmp557; + tmp615.__isset.sessionId = this.__isset.sessionId; + return tmp615; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12441,10 +16334,9 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Req = new TSInsertRecordsOfOneDeviceReq(); - await Req.ReadAsync(iprot, cancellationToken); + SessionId = await iprot.ReadI64Async(cancellationToken); } else { @@ -12472,16 +16364,16 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecordsOfOneDevice_args"); + var struc = new TStruct("requestStatementId_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if(__isset.sessionId) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "sessionId"; + field.Type = TType.I64; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteI64Async(SessionId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -12495,17 +16387,17 @@ public testInsertRecordsOfOneDeviceArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsOfOneDeviceArgs other)) return false; + if (!(that is requestStatementIdArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if(__isset.sessionId) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + SessionId.GetHashCode(); } } return hashcode; @@ -12513,13 +16405,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_args("); - int tmp558 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("requestStatementId_args("); + int tmp616 = 0; + if(__isset.sessionId) { - if(0 < tmp558++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp616++) { sb.Append(", "); } + sb.Append("SessionId: "); + SessionId.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -12527,11 +16419,11 @@ public override string ToString() } - public partial class testInsertRecordsOfOneDeviceResult : TBase + public partial class requestStatementIdResult : TBase { - private TSStatus _success; + private long _success; - public TSStatus Success + public long Success { get { @@ -12551,19 +16443,19 @@ public struct Isset public bool success; } - public testInsertRecordsOfOneDeviceResult() + public requestStatementIdResult() { } - public testInsertRecordsOfOneDeviceResult DeepCopy() + public requestStatementIdResult DeepCopy() { - var tmp559 = new testInsertRecordsOfOneDeviceResult(); - if((Success != null) && __isset.success) + var tmp617 = new requestStatementIdResult(); + if(__isset.success) { - tmp559.Success = (TSStatus)this.Success.DeepCopy(); + tmp617.Success = this.Success; } - tmp559.__isset.success = this.__isset.success; - return tmp559; + tmp617.__isset.success = this.__isset.success; + return tmp617; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12584,10 +16476,9 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() switch (field.ID) { case 0: - if (field.Type == TType.Struct) + if (field.Type == TType.I64) { - Success = new TSStatus(); - await Success.ReadAsync(iprot, cancellationToken); + Success = await iprot.ReadI64Async(cancellationToken); } else { @@ -12615,21 +16506,18 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertRecordsOfOneDevice_result"); + var struc = new TStruct("requestStatementId_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(this.__isset.success) { - if (Success != null) - { - field.Name = "Success"; - field.Type = TType.Struct; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Success.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } + field.Name = "Success"; + field.Type = TType.I64; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Success, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -12642,7 +16530,7 @@ public testInsertRecordsOfOneDeviceResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertRecordsOfOneDeviceResult other)) return false; + if (!(that is requestStatementIdResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12650,7 +16538,7 @@ public override bool Equals(object that) public override int GetHashCode() { int hashcode = 157; unchecked { - if((Success != null) && __isset.success) + if(__isset.success) { hashcode = (hashcode * 397) + Success.GetHashCode(); } @@ -12660,11 +16548,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertRecordsOfOneDevice_result("); - int tmp560 = 0; - if((Success != null) && __isset.success) + var sb = new StringBuilder("requestStatementId_result("); + int tmp618 = 0; + if(__isset.success) { - if(0 < tmp560++) { sb.Append(", "); } + if(0 < tmp618++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12674,11 +16562,11 @@ public override string ToString() } - public partial class testInsertStringRecordsArgs : TBase + public partial class createSchemaTemplateArgs : TBase { - private TSInsertStringRecordsReq _req; + private TSCreateSchemaTemplateReq _req; - public TSInsertStringRecordsReq Req + public TSCreateSchemaTemplateReq Req { get { @@ -12698,19 +16586,19 @@ public struct Isset public bool req; } - public testInsertStringRecordsArgs() + public createSchemaTemplateArgs() { } - public testInsertStringRecordsArgs DeepCopy() + public createSchemaTemplateArgs DeepCopy() { - var tmp561 = new testInsertStringRecordsArgs(); + var tmp619 = new createSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp561.Req = (TSInsertStringRecordsReq)this.Req.DeepCopy(); + tmp619.Req = (TSCreateSchemaTemplateReq)this.Req.DeepCopy(); } - tmp561.__isset.req = this.__isset.req; - return tmp561; + tmp619.__isset.req = this.__isset.req; + return tmp619; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12733,7 +16621,7 @@ public testInsertStringRecordsArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSInsertStringRecordsReq(); + Req = new TSCreateSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -12762,7 +16650,7 @@ public testInsertStringRecordsArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecords_args"); + var struc = new TStruct("createSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -12785,7 +16673,7 @@ public testInsertStringRecordsArgs DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordsArgs other)) return false; + if (!(that is createSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -12803,11 +16691,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecords_args("); - int tmp562 = 0; + var sb = new StringBuilder("createSchemaTemplate_args("); + int tmp620 = 0; if((Req != null) && __isset.req) { - if(0 < tmp562++) { sb.Append(", "); } + if(0 < tmp620++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -12817,7 +16705,7 @@ public override string ToString() } - public partial class testInsertStringRecordsResult : TBase + public partial class createSchemaTemplateResult : TBase { private TSStatus _success; @@ -12841,19 +16729,19 @@ public struct Isset public bool success; } - public testInsertStringRecordsResult() + public createSchemaTemplateResult() { } - public testInsertStringRecordsResult DeepCopy() + public createSchemaTemplateResult DeepCopy() { - var tmp563 = new testInsertStringRecordsResult(); + var tmp621 = new createSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp563.Success = (TSStatus)this.Success.DeepCopy(); + tmp621.Success = (TSStatus)this.Success.DeepCopy(); } - tmp563.__isset.success = this.__isset.success; - return tmp563; + tmp621.__isset.success = this.__isset.success; + return tmp621; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -12905,7 +16793,7 @@ public testInsertStringRecordsResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("testInsertStringRecords_result"); + var struc = new TStruct("createSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -12932,7 +16820,7 @@ public testInsertStringRecordsResult DeepCopy() public override bool Equals(object that) { - if (!(that is testInsertStringRecordsResult other)) return false; + if (!(that is createSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -12950,11 +16838,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("testInsertStringRecords_result("); - int tmp564 = 0; + var sb = new StringBuilder("createSchemaTemplate_result("); + int tmp622 = 0; if((Success != null) && __isset.success) { - if(0 < tmp564++) { sb.Append(", "); } + if(0 < tmp622++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -12964,11 +16852,11 @@ public override string ToString() } - public partial class deleteDataArgs : TBase + public partial class appendSchemaTemplateArgs : TBase { - private TSDeleteDataReq _req; + private TSAppendSchemaTemplateReq _req; - public TSDeleteDataReq Req + public TSAppendSchemaTemplateReq Req { get { @@ -12988,19 +16876,19 @@ public struct Isset public bool req; } - public deleteDataArgs() + public appendSchemaTemplateArgs() { } - public deleteDataArgs DeepCopy() + public appendSchemaTemplateArgs DeepCopy() { - var tmp565 = new deleteDataArgs(); + var tmp623 = new appendSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp565.Req = (TSDeleteDataReq)this.Req.DeepCopy(); + tmp623.Req = (TSAppendSchemaTemplateReq)this.Req.DeepCopy(); } - tmp565.__isset.req = this.__isset.req; - return tmp565; + tmp623.__isset.req = this.__isset.req; + return tmp623; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13023,7 +16911,7 @@ public deleteDataArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSDeleteDataReq(); + Req = new TSAppendSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -13052,7 +16940,7 @@ public deleteDataArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteData_args"); + var struc = new TStruct("appendSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -13075,7 +16963,7 @@ public deleteDataArgs DeepCopy() public override bool Equals(object that) { - if (!(that is deleteDataArgs other)) return false; + if (!(that is appendSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -13093,11 +16981,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteData_args("); - int tmp566 = 0; + var sb = new StringBuilder("appendSchemaTemplate_args("); + int tmp624 = 0; if((Req != null) && __isset.req) { - if(0 < tmp566++) { sb.Append(", "); } + if(0 < tmp624++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -13107,7 +16995,7 @@ public override string ToString() } - public partial class deleteDataResult : TBase + public partial class appendSchemaTemplateResult : TBase { private TSStatus _success; @@ -13131,19 +17019,19 @@ public struct Isset public bool success; } - public deleteDataResult() + public appendSchemaTemplateResult() { } - public deleteDataResult DeepCopy() + public appendSchemaTemplateResult DeepCopy() { - var tmp567 = new deleteDataResult(); + var tmp625 = new appendSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp567.Success = (TSStatus)this.Success.DeepCopy(); + tmp625.Success = (TSStatus)this.Success.DeepCopy(); } - tmp567.__isset.success = this.__isset.success; - return tmp567; + tmp625.__isset.success = this.__isset.success; + return tmp625; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13195,7 +17083,7 @@ public deleteDataResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("deleteData_result"); + var struc = new TStruct("appendSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -13222,7 +17110,7 @@ public deleteDataResult DeepCopy() public override bool Equals(object that) { - if (!(that is deleteDataResult other)) return false; + if (!(that is appendSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -13240,11 +17128,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("deleteData_result("); - int tmp568 = 0; + var sb = new StringBuilder("appendSchemaTemplate_result("); + int tmp626 = 0; if((Success != null) && __isset.success) { - if(0 < tmp568++) { sb.Append(", "); } + if(0 < tmp626++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -13254,11 +17142,11 @@ public override string ToString() } - public partial class executeRawDataQueryArgs : TBase + public partial class pruneSchemaTemplateArgs : TBase { - private TSRawDataQueryReq _req; + private TSPruneSchemaTemplateReq _req; - public TSRawDataQueryReq Req + public TSPruneSchemaTemplateReq Req { get { @@ -13278,19 +17166,19 @@ public struct Isset public bool req; } - public executeRawDataQueryArgs() + public pruneSchemaTemplateArgs() { } - public executeRawDataQueryArgs DeepCopy() + public pruneSchemaTemplateArgs DeepCopy() { - var tmp569 = new executeRawDataQueryArgs(); + var tmp627 = new pruneSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp569.Req = (TSRawDataQueryReq)this.Req.DeepCopy(); + tmp627.Req = (TSPruneSchemaTemplateReq)this.Req.DeepCopy(); } - tmp569.__isset.req = this.__isset.req; - return tmp569; + tmp627.__isset.req = this.__isset.req; + return tmp627; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13313,7 +17201,7 @@ public executeRawDataQueryArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSRawDataQueryReq(); + Req = new TSPruneSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -13342,7 +17230,7 @@ public executeRawDataQueryArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeRawDataQuery_args"); + var struc = new TStruct("pruneSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -13365,7 +17253,7 @@ public executeRawDataQueryArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeRawDataQueryArgs other)) return false; + if (!(that is pruneSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -13383,11 +17271,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeRawDataQuery_args("); - int tmp570 = 0; + var sb = new StringBuilder("pruneSchemaTemplate_args("); + int tmp628 = 0; if((Req != null) && __isset.req) { - if(0 < tmp570++) { sb.Append(", "); } + if(0 < tmp628++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -13397,11 +17285,11 @@ public override string ToString() } - public partial class executeRawDataQueryResult : TBase + public partial class pruneSchemaTemplateResult : TBase { - private TSExecuteStatementResp _success; + private TSStatus _success; - public TSExecuteStatementResp Success + public TSStatus Success { get { @@ -13421,19 +17309,19 @@ public struct Isset public bool success; } - public executeRawDataQueryResult() + public pruneSchemaTemplateResult() { } - public executeRawDataQueryResult DeepCopy() + public pruneSchemaTemplateResult DeepCopy() { - var tmp571 = new executeRawDataQueryResult(); + var tmp629 = new pruneSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp571.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp629.Success = (TSStatus)this.Success.DeepCopy(); } - tmp571.__isset.success = this.__isset.success; - return tmp571; + tmp629.__isset.success = this.__isset.success; + return tmp629; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13456,7 +17344,7 @@ public executeRawDataQueryResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -13485,7 +17373,7 @@ public executeRawDataQueryResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeRawDataQuery_result"); + var struc = new TStruct("pruneSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -13512,7 +17400,7 @@ public executeRawDataQueryResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeRawDataQueryResult other)) return false; + if (!(that is pruneSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -13530,11 +17418,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeRawDataQuery_result("); - int tmp572 = 0; + var sb = new StringBuilder("pruneSchemaTemplate_result("); + int tmp630 = 0; if((Success != null) && __isset.success) { - if(0 < tmp572++) { sb.Append(", "); } + if(0 < tmp630++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -13544,11 +17432,11 @@ public override string ToString() } - public partial class executeLastDataQueryArgs : TBase + public partial class querySchemaTemplateArgs : TBase { - private TSLastDataQueryReq _req; + private TSQueryTemplateReq _req; - public TSLastDataQueryReq Req + public TSQueryTemplateReq Req { get { @@ -13568,19 +17456,19 @@ public struct Isset public bool req; } - public executeLastDataQueryArgs() + public querySchemaTemplateArgs() { } - public executeLastDataQueryArgs DeepCopy() + public querySchemaTemplateArgs DeepCopy() { - var tmp573 = new executeLastDataQueryArgs(); + var tmp631 = new querySchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp573.Req = (TSLastDataQueryReq)this.Req.DeepCopy(); + tmp631.Req = (TSQueryTemplateReq)this.Req.DeepCopy(); } - tmp573.__isset.req = this.__isset.req; - return tmp573; + tmp631.__isset.req = this.__isset.req; + return tmp631; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13603,7 +17491,7 @@ public executeLastDataQueryArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSLastDataQueryReq(); + Req = new TSQueryTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -13632,7 +17520,7 @@ public executeLastDataQueryArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeLastDataQuery_args"); + var struc = new TStruct("querySchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -13655,7 +17543,7 @@ public executeLastDataQueryArgs DeepCopy() public override bool Equals(object that) { - if (!(that is executeLastDataQueryArgs other)) return false; + if (!(that is querySchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -13673,11 +17561,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeLastDataQuery_args("); - int tmp574 = 0; + var sb = new StringBuilder("querySchemaTemplate_args("); + int tmp632 = 0; if((Req != null) && __isset.req) { - if(0 < tmp574++) { sb.Append(", "); } + if(0 < tmp632++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -13687,11 +17575,11 @@ public override string ToString() } - public partial class executeLastDataQueryResult : TBase + public partial class querySchemaTemplateResult : TBase { - private TSExecuteStatementResp _success; + private TSQueryTemplateResp _success; - public TSExecuteStatementResp Success + public TSQueryTemplateResp Success { get { @@ -13711,19 +17599,19 @@ public struct Isset public bool success; } - public executeLastDataQueryResult() + public querySchemaTemplateResult() { } - public executeLastDataQueryResult DeepCopy() + public querySchemaTemplateResult DeepCopy() { - var tmp575 = new executeLastDataQueryResult(); + var tmp633 = new querySchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp575.Success = (TSExecuteStatementResp)this.Success.DeepCopy(); + tmp633.Success = (TSQueryTemplateResp)this.Success.DeepCopy(); } - tmp575.__isset.success = this.__isset.success; - return tmp575; + tmp633.__isset.success = this.__isset.success; + return tmp633; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13746,7 +17634,7 @@ public executeLastDataQueryResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSExecuteStatementResp(); + Success = new TSQueryTemplateResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -13775,7 +17663,7 @@ public executeLastDataQueryResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("executeLastDataQuery_result"); + var struc = new TStruct("querySchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -13802,7 +17690,7 @@ public executeLastDataQueryResult DeepCopy() public override bool Equals(object that) { - if (!(that is executeLastDataQueryResult other)) return false; + if (!(that is querySchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -13820,11 +17708,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("executeLastDataQuery_result("); - int tmp576 = 0; + var sb = new StringBuilder("querySchemaTemplate_result("); + int tmp634 = 0; if((Success != null) && __isset.success) { - if(0 < tmp576++) { sb.Append(", "); } + if(0 < tmp634++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -13834,20 +17722,20 @@ public override string ToString() } - public partial class requestStatementIdArgs : TBase + public partial class setSchemaTemplateArgs : TBase { - private long _sessionId; + private TSSetSchemaTemplateReq _req; - public long SessionId + public TSSetSchemaTemplateReq Req { get { - return _sessionId; + return _req; } set { - __isset.sessionId = true; - this._sessionId = value; + __isset.req = true; + this._req = value; } } @@ -13855,22 +17743,22 @@ public long SessionId public Isset __isset; public struct Isset { - public bool sessionId; + public bool req; } - public requestStatementIdArgs() + public setSchemaTemplateArgs() { } - public requestStatementIdArgs DeepCopy() + public setSchemaTemplateArgs DeepCopy() { - var tmp577 = new requestStatementIdArgs(); - if(__isset.sessionId) + var tmp635 = new setSchemaTemplateArgs(); + if((Req != null) && __isset.req) { - tmp577.SessionId = this.SessionId; + tmp635.Req = (TSSetSchemaTemplateReq)this.Req.DeepCopy(); } - tmp577.__isset.sessionId = this.__isset.sessionId; - return tmp577; + tmp635.__isset.req = this.__isset.req; + return tmp635; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -13891,9 +17779,10 @@ public requestStatementIdArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - SessionId = await iprot.ReadI64Async(cancellationToken); + Req = new TSSetSchemaTemplateReq(); + await Req.ReadAsync(iprot, cancellationToken); } else { @@ -13921,16 +17810,16 @@ public requestStatementIdArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("requestStatementId_args"); + var struc = new TStruct("setSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if(__isset.sessionId) + if((Req != null) && __isset.req) { - field.Name = "sessionId"; - field.Type = TType.I64; + field.Name = "req"; + field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(SessionId, cancellationToken); + await Req.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -13944,17 +17833,17 @@ public requestStatementIdArgs DeepCopy() public override bool Equals(object that) { - if (!(that is requestStatementIdArgs other)) return false; + if (!(that is setSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.sessionId == other.__isset.sessionId) && ((!__isset.sessionId) || (System.Object.Equals(SessionId, other.SessionId)))); + return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.sessionId) + if((Req != null) && __isset.req) { - hashcode = (hashcode * 397) + SessionId.GetHashCode(); + hashcode = (hashcode * 397) + Req.GetHashCode(); } } return hashcode; @@ -13962,13 +17851,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("requestStatementId_args("); - int tmp578 = 0; - if(__isset.sessionId) + var sb = new StringBuilder("setSchemaTemplate_args("); + int tmp636 = 0; + if((Req != null) && __isset.req) { - if(0 < tmp578++) { sb.Append(", "); } - sb.Append("SessionId: "); - SessionId.ToString(sb); + if(0 < tmp636++) { sb.Append(", "); } + sb.Append("Req: "); + Req.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -13976,11 +17865,11 @@ public override string ToString() } - public partial class requestStatementIdResult : TBase + public partial class setSchemaTemplateResult : TBase { - private long _success; + private TSStatus _success; - public long Success + public TSStatus Success { get { @@ -14000,19 +17889,19 @@ public struct Isset public bool success; } - public requestStatementIdResult() + public setSchemaTemplateResult() { } - public requestStatementIdResult DeepCopy() + public setSchemaTemplateResult DeepCopy() { - var tmp579 = new requestStatementIdResult(); - if(__isset.success) + var tmp637 = new setSchemaTemplateResult(); + if((Success != null) && __isset.success) { - tmp579.Success = this.Success; + tmp637.Success = (TSStatus)this.Success.DeepCopy(); } - tmp579.__isset.success = this.__isset.success; - return tmp579; + tmp637.__isset.success = this.__isset.success; + return tmp637; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14033,9 +17922,10 @@ public requestStatementIdResult DeepCopy() switch (field.ID) { case 0: - if (field.Type == TType.I64) + if (field.Type == TType.Struct) { - Success = await iprot.ReadI64Async(cancellationToken); + Success = new TSStatus(); + await Success.ReadAsync(iprot, cancellationToken); } else { @@ -14063,18 +17953,21 @@ public requestStatementIdResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("requestStatementId_result"); + var struc = new TStruct("setSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if(this.__isset.success) { - field.Name = "Success"; - field.Type = TType.I64; - field.ID = 0; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI64Async(Success, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); + if (Success != null) + { + field.Name = "Success"; + field.Type = TType.Struct; + field.ID = 0; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Success.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -14087,7 +17980,7 @@ public requestStatementIdResult DeepCopy() public override bool Equals(object that) { - if (!(that is requestStatementIdResult other)) return false; + if (!(that is setSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -14095,7 +17988,7 @@ public override bool Equals(object that) public override int GetHashCode() { int hashcode = 157; unchecked { - if(__isset.success) + if((Success != null) && __isset.success) { hashcode = (hashcode * 397) + Success.GetHashCode(); } @@ -14105,11 +17998,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("requestStatementId_result("); - int tmp580 = 0; - if(__isset.success) + var sb = new StringBuilder("setSchemaTemplate_result("); + int tmp638 = 0; + if((Success != null) && __isset.success) { - if(0 < tmp580++) { sb.Append(", "); } + if(0 < tmp638++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -14119,11 +18012,11 @@ public override string ToString() } - public partial class createSchemaTemplateArgs : TBase + public partial class unsetSchemaTemplateArgs : TBase { - private TSCreateSchemaTemplateReq _req; + private TSUnsetSchemaTemplateReq _req; - public TSCreateSchemaTemplateReq Req + public TSUnsetSchemaTemplateReq Req { get { @@ -14143,19 +18036,19 @@ public struct Isset public bool req; } - public createSchemaTemplateArgs() + public unsetSchemaTemplateArgs() { } - public createSchemaTemplateArgs DeepCopy() + public unsetSchemaTemplateArgs DeepCopy() { - var tmp581 = new createSchemaTemplateArgs(); + var tmp639 = new unsetSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp581.Req = (TSCreateSchemaTemplateReq)this.Req.DeepCopy(); + tmp639.Req = (TSUnsetSchemaTemplateReq)this.Req.DeepCopy(); } - tmp581.__isset.req = this.__isset.req; - return tmp581; + tmp639.__isset.req = this.__isset.req; + return tmp639; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14178,7 +18071,7 @@ public createSchemaTemplateArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSCreateSchemaTemplateReq(); + Req = new TSUnsetSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -14207,7 +18100,7 @@ public createSchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createSchemaTemplate_args"); + var struc = new TStruct("unsetSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -14230,7 +18123,7 @@ public createSchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is createSchemaTemplateArgs other)) return false; + if (!(that is unsetSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -14248,11 +18141,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createSchemaTemplate_args("); - int tmp582 = 0; + var sb = new StringBuilder("unsetSchemaTemplate_args("); + int tmp640 = 0; if((Req != null) && __isset.req) { - if(0 < tmp582++) { sb.Append(", "); } + if(0 < tmp640++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -14262,7 +18155,7 @@ public override string ToString() } - public partial class createSchemaTemplateResult : TBase + public partial class unsetSchemaTemplateResult : TBase { private TSStatus _success; @@ -14286,19 +18179,19 @@ public struct Isset public bool success; } - public createSchemaTemplateResult() + public unsetSchemaTemplateResult() { } - public createSchemaTemplateResult DeepCopy() + public unsetSchemaTemplateResult DeepCopy() { - var tmp583 = new createSchemaTemplateResult(); + var tmp641 = new unsetSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp583.Success = (TSStatus)this.Success.DeepCopy(); + tmp641.Success = (TSStatus)this.Success.DeepCopy(); } - tmp583.__isset.success = this.__isset.success; - return tmp583; + tmp641.__isset.success = this.__isset.success; + return tmp641; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14350,7 +18243,7 @@ public createSchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("createSchemaTemplate_result"); + var struc = new TStruct("unsetSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -14377,7 +18270,7 @@ public createSchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is createSchemaTemplateResult other)) return false; + if (!(that is unsetSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -14395,11 +18288,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("createSchemaTemplate_result("); - int tmp584 = 0; + var sb = new StringBuilder("unsetSchemaTemplate_result("); + int tmp642 = 0; if((Success != null) && __isset.success) { - if(0 < tmp584++) { sb.Append(", "); } + if(0 < tmp642++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -14409,11 +18302,11 @@ public override string ToString() } - public partial class appendSchemaTemplateArgs : TBase + public partial class dropSchemaTemplateArgs : TBase { - private TSAppendSchemaTemplateReq _req; + private TSDropSchemaTemplateReq _req; - public TSAppendSchemaTemplateReq Req + public TSDropSchemaTemplateReq Req { get { @@ -14433,19 +18326,19 @@ public struct Isset public bool req; } - public appendSchemaTemplateArgs() + public dropSchemaTemplateArgs() { } - public appendSchemaTemplateArgs DeepCopy() + public dropSchemaTemplateArgs DeepCopy() { - var tmp585 = new appendSchemaTemplateArgs(); + var tmp643 = new dropSchemaTemplateArgs(); if((Req != null) && __isset.req) { - tmp585.Req = (TSAppendSchemaTemplateReq)this.Req.DeepCopy(); + tmp643.Req = (TSDropSchemaTemplateReq)this.Req.DeepCopy(); } - tmp585.__isset.req = this.__isset.req; - return tmp585; + tmp643.__isset.req = this.__isset.req; + return tmp643; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14468,7 +18361,7 @@ public appendSchemaTemplateArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSAppendSchemaTemplateReq(); + Req = new TSDropSchemaTemplateReq(); await Req.ReadAsync(iprot, cancellationToken); } else @@ -14497,7 +18390,7 @@ public appendSchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("appendSchemaTemplate_args"); + var struc = new TStruct("dropSchemaTemplate_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); if((Req != null) && __isset.req) @@ -14520,7 +18413,7 @@ public appendSchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is appendSchemaTemplateArgs other)) return false; + if (!(that is dropSchemaTemplateArgs other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); } @@ -14538,11 +18431,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("appendSchemaTemplate_args("); - int tmp586 = 0; + var sb = new StringBuilder("dropSchemaTemplate_args("); + int tmp644 = 0; if((Req != null) && __isset.req) { - if(0 < tmp586++) { sb.Append(", "); } + if(0 < tmp644++) { sb.Append(", "); } sb.Append("Req: "); Req.ToString(sb); } @@ -14552,7 +18445,7 @@ public override string ToString() } - public partial class appendSchemaTemplateResult : TBase + public partial class dropSchemaTemplateResult : TBase { private TSStatus _success; @@ -14576,19 +18469,19 @@ public struct Isset public bool success; } - public appendSchemaTemplateResult() + public dropSchemaTemplateResult() { } - public appendSchemaTemplateResult DeepCopy() + public dropSchemaTemplateResult DeepCopy() { - var tmp587 = new appendSchemaTemplateResult(); + var tmp645 = new dropSchemaTemplateResult(); if((Success != null) && __isset.success) { - tmp587.Success = (TSStatus)this.Success.DeepCopy(); + tmp645.Success = (TSStatus)this.Success.DeepCopy(); } - tmp587.__isset.success = this.__isset.success; - return tmp587; + tmp645.__isset.success = this.__isset.success; + return tmp645; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14640,7 +18533,7 @@ public appendSchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("appendSchemaTemplate_result"); + var struc = new TStruct("dropSchemaTemplate_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -14667,7 +18560,7 @@ public appendSchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is appendSchemaTemplateResult other)) return false; + if (!(that is dropSchemaTemplateResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -14685,11 +18578,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("appendSchemaTemplate_result("); - int tmp588 = 0; + var sb = new StringBuilder("dropSchemaTemplate_result("); + int tmp646 = 0; if((Success != null) && __isset.success) { - if(0 < tmp588++) { sb.Append(", "); } + if(0 < tmp646++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -14699,20 +18592,20 @@ public override string ToString() } - public partial class pruneSchemaTemplateArgs : TBase + public partial class handshakeArgs : TBase { - private TSPruneSchemaTemplateReq _req; + private TSyncIdentityInfo _info; - public TSPruneSchemaTemplateReq Req + public TSyncIdentityInfo Info { get { - return _req; + return _info; } set { - __isset.req = true; - this._req = value; + __isset.info = true; + this._info = value; } } @@ -14720,22 +18613,22 @@ public TSPruneSchemaTemplateReq Req public Isset __isset; public struct Isset { - public bool req; + public bool info; } - public pruneSchemaTemplateArgs() + public handshakeArgs() { } - public pruneSchemaTemplateArgs DeepCopy() + public handshakeArgs DeepCopy() { - var tmp589 = new pruneSchemaTemplateArgs(); - if((Req != null) && __isset.req) + var tmp647 = new handshakeArgs(); + if((Info != null) && __isset.info) { - tmp589.Req = (TSPruneSchemaTemplateReq)this.Req.DeepCopy(); + tmp647.Info = (TSyncIdentityInfo)this.Info.DeepCopy(); } - tmp589.__isset.req = this.__isset.req; - return tmp589; + tmp647.__isset.info = this.__isset.info; + return tmp647; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14755,11 +18648,11 @@ public pruneSchemaTemplateArgs DeepCopy() switch (field.ID) { - case 1: + case -1: if (field.Type == TType.Struct) { - Req = new TSPruneSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); + Info = new TSyncIdentityInfo(); + await Info.ReadAsync(iprot, cancellationToken); } else { @@ -14787,16 +18680,16 @@ public pruneSchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("pruneSchemaTemplate_args"); + var struc = new TStruct("handshake_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if((Info != null) && __isset.info) { - field.Name = "req"; + field.Name = "info"; field.Type = TType.Struct; - field.ID = 1; + field.ID = -1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await Info.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -14810,17 +18703,17 @@ public pruneSchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is pruneSchemaTemplateArgs other)) return false; + if (!(that is handshakeArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.info == other.__isset.info) && ((!__isset.info) || (System.Object.Equals(Info, other.Info)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if((Info != null) && __isset.info) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + Info.GetHashCode(); } } return hashcode; @@ -14828,13 +18721,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("pruneSchemaTemplate_args("); - int tmp590 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("handshake_args("); + int tmp648 = 0; + if((Info != null) && __isset.info) { - if(0 < tmp590++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp648++) { sb.Append(", "); } + sb.Append("Info: "); + Info.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -14842,7 +18735,7 @@ public override string ToString() } - public partial class pruneSchemaTemplateResult : TBase + public partial class handshakeResult : TBase { private TSStatus _success; @@ -14866,19 +18759,19 @@ public struct Isset public bool success; } - public pruneSchemaTemplateResult() + public handshakeResult() { } - public pruneSchemaTemplateResult DeepCopy() + public handshakeResult DeepCopy() { - var tmp591 = new pruneSchemaTemplateResult(); + var tmp649 = new handshakeResult(); if((Success != null) && __isset.success) { - tmp591.Success = (TSStatus)this.Success.DeepCopy(); + tmp649.Success = (TSStatus)this.Success.DeepCopy(); } - tmp591.__isset.success = this.__isset.success; - return tmp591; + tmp649.__isset.success = this.__isset.success; + return tmp649; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -14930,7 +18823,7 @@ public pruneSchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("pruneSchemaTemplate_result"); + var struc = new TStruct("handshake_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -14957,7 +18850,7 @@ public pruneSchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is pruneSchemaTemplateResult other)) return false; + if (!(that is handshakeResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -14975,11 +18868,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("pruneSchemaTemplate_result("); - int tmp592 = 0; + var sb = new StringBuilder("handshake_result("); + int tmp650 = 0; if((Success != null) && __isset.success) { - if(0 < tmp592++) { sb.Append(", "); } + if(0 < tmp650++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -14989,20 +18882,20 @@ public override string ToString() } - public partial class querySchemaTemplateArgs : TBase + public partial class sendPipeDataArgs : TBase { - private TSQueryTemplateReq _req; + private byte[] _buff; - public TSQueryTemplateReq Req + public byte[] Buff { get { - return _req; + return _buff; } set { - __isset.req = true; - this._req = value; + __isset.buff = true; + this._buff = value; } } @@ -15010,22 +18903,22 @@ public TSQueryTemplateReq Req public Isset __isset; public struct Isset { - public bool req; + public bool buff; } - public querySchemaTemplateArgs() + public sendPipeDataArgs() { } - public querySchemaTemplateArgs DeepCopy() + public sendPipeDataArgs DeepCopy() { - var tmp593 = new querySchemaTemplateArgs(); - if((Req != null) && __isset.req) + var tmp651 = new sendPipeDataArgs(); + if((Buff != null) && __isset.buff) { - tmp593.Req = (TSQueryTemplateReq)this.Req.DeepCopy(); + tmp651.Buff = this.Buff.ToArray(); } - tmp593.__isset.req = this.__isset.req; - return tmp593; + tmp651.__isset.buff = this.__isset.buff; + return tmp651; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15046,10 +18939,9 @@ public querySchemaTemplateArgs DeepCopy() switch (field.ID) { case 1: - if (field.Type == TType.Struct) + if (field.Type == TType.String) { - Req = new TSQueryTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); + Buff = await iprot.ReadBinaryAsync(cancellationToken); } else { @@ -15077,16 +18969,16 @@ public querySchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("querySchemaTemplate_args"); + var struc = new TStruct("sendPipeData_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if((Buff != null) && __isset.buff) { - field.Name = "req"; - field.Type = TType.Struct; + field.Name = "buff"; + field.Type = TType.String; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await oprot.WriteBinaryAsync(Buff, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -15100,17 +18992,17 @@ public querySchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is querySchemaTemplateArgs other)) return false; + if (!(that is sendPipeDataArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.buff == other.__isset.buff) && ((!__isset.buff) || (TCollections.Equals(Buff, other.Buff)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if((Buff != null) && __isset.buff) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + Buff.GetHashCode(); } } return hashcode; @@ -15118,13 +19010,13 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("querySchemaTemplate_args("); - int tmp594 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("sendPipeData_args("); + int tmp652 = 0; + if((Buff != null) && __isset.buff) { - if(0 < tmp594++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp652++) { sb.Append(", "); } + sb.Append("Buff: "); + Buff.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -15132,11 +19024,11 @@ public override string ToString() } - public partial class querySchemaTemplateResult : TBase + public partial class sendPipeDataResult : TBase { - private TSQueryTemplateResp _success; + private TSStatus _success; - public TSQueryTemplateResp Success + public TSStatus Success { get { @@ -15156,19 +19048,19 @@ public struct Isset public bool success; } - public querySchemaTemplateResult() + public sendPipeDataResult() { } - public querySchemaTemplateResult DeepCopy() + public sendPipeDataResult DeepCopy() { - var tmp595 = new querySchemaTemplateResult(); + var tmp653 = new sendPipeDataResult(); if((Success != null) && __isset.success) { - tmp595.Success = (TSQueryTemplateResp)this.Success.DeepCopy(); + tmp653.Success = (TSStatus)this.Success.DeepCopy(); } - tmp595.__isset.success = this.__isset.success; - return tmp595; + tmp653.__isset.success = this.__isset.success; + return tmp653; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15191,7 +19083,7 @@ public querySchemaTemplateResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSQueryTemplateResp(); + Success = new TSStatus(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -15220,7 +19112,7 @@ public querySchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("querySchemaTemplate_result"); + var struc = new TStruct("sendPipeData_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -15247,7 +19139,7 @@ public querySchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is querySchemaTemplateResult other)) return false; + if (!(that is sendPipeDataResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -15265,11 +19157,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("querySchemaTemplate_result("); - int tmp596 = 0; + var sb = new StringBuilder("sendPipeData_result("); + int tmp654 = 0; if((Success != null) && __isset.success) { - if(0 < tmp596++) { sb.Append(", "); } + if(0 < tmp654++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -15279,20 +19171,34 @@ public override string ToString() } - public partial class setSchemaTemplateArgs : TBase + public partial class sendFileArgs : TBase { - private TSSetSchemaTemplateReq _req; + private TSyncTransportMetaInfo _metaInfo; + private byte[] _buff; - public TSSetSchemaTemplateReq Req + public TSyncTransportMetaInfo MetaInfo { get { - return _req; + return _metaInfo; } set { - __isset.req = true; - this._req = value; + __isset.metaInfo = true; + this._metaInfo = value; + } + } + + public byte[] Buff + { + get + { + return _buff; + } + set + { + __isset.buff = true; + this._buff = value; } } @@ -15300,22 +19206,28 @@ public TSSetSchemaTemplateReq Req public Isset __isset; public struct Isset { - public bool req; + public bool metaInfo; + public bool buff; } - public setSchemaTemplateArgs() + public sendFileArgs() { } - public setSchemaTemplateArgs DeepCopy() + public sendFileArgs DeepCopy() { - var tmp597 = new setSchemaTemplateArgs(); - if((Req != null) && __isset.req) + var tmp655 = new sendFileArgs(); + if((MetaInfo != null) && __isset.metaInfo) { - tmp597.Req = (TSSetSchemaTemplateReq)this.Req.DeepCopy(); + tmp655.MetaInfo = (TSyncTransportMetaInfo)this.MetaInfo.DeepCopy(); } - tmp597.__isset.req = this.__isset.req; - return tmp597; + tmp655.__isset.metaInfo = this.__isset.metaInfo; + if((Buff != null) && __isset.buff) + { + tmp655.Buff = this.Buff.ToArray(); + } + tmp655.__isset.buff = this.__isset.buff; + return tmp655; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15338,8 +19250,18 @@ public setSchemaTemplateArgs DeepCopy() case 1: if (field.Type == TType.Struct) { - Req = new TSSetSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); + MetaInfo = new TSyncTransportMetaInfo(); + await MetaInfo.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Buff = await iprot.ReadBinaryAsync(cancellationToken); } else { @@ -15367,16 +19289,25 @@ public setSchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setSchemaTemplate_args"); + var struc = new TStruct("sendFile_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Req != null) && __isset.req) + if((MetaInfo != null) && __isset.metaInfo) { - field.Name = "req"; + field.Name = "metaInfo"; field.Type = TType.Struct; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); + await MetaInfo.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Buff != null) && __isset.buff) + { + field.Name = "buff"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(Buff, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } await oprot.WriteFieldStopAsync(cancellationToken); @@ -15390,17 +19321,22 @@ public setSchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is setSchemaTemplateArgs other)) return false; + if (!(that is sendFileArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return ((__isset.metaInfo == other.__isset.metaInfo) && ((!__isset.metaInfo) || (System.Object.Equals(MetaInfo, other.MetaInfo)))) + && ((__isset.buff == other.__isset.buff) && ((!__isset.buff) || (TCollections.Equals(Buff, other.Buff)))); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) + if((MetaInfo != null) && __isset.metaInfo) { - hashcode = (hashcode * 397) + Req.GetHashCode(); + hashcode = (hashcode * 397) + MetaInfo.GetHashCode(); + } + if((Buff != null) && __isset.buff) + { + hashcode = (hashcode * 397) + Buff.GetHashCode(); } } return hashcode; @@ -15408,13 +19344,19 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setSchemaTemplate_args("); - int tmp598 = 0; - if((Req != null) && __isset.req) + var sb = new StringBuilder("sendFile_args("); + int tmp656 = 0; + if((MetaInfo != null) && __isset.metaInfo) { - if(0 < tmp598++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); + if(0 < tmp656++) { sb.Append(", "); } + sb.Append("MetaInfo: "); + MetaInfo.ToString(sb); + } + if((Buff != null) && __isset.buff) + { + if(0 < tmp656++) { sb.Append(", "); } + sb.Append("Buff: "); + Buff.ToString(sb); } sb.Append(')'); return sb.ToString(); @@ -15422,7 +19364,7 @@ public override string ToString() } - public partial class setSchemaTemplateResult : TBase + public partial class sendFileResult : TBase { private TSStatus _success; @@ -15446,19 +19388,19 @@ public struct Isset public bool success; } - public setSchemaTemplateResult() + public sendFileResult() { } - public setSchemaTemplateResult DeepCopy() + public sendFileResult DeepCopy() { - var tmp599 = new setSchemaTemplateResult(); + var tmp657 = new sendFileResult(); if((Success != null) && __isset.success) { - tmp599.Success = (TSStatus)this.Success.DeepCopy(); + tmp657.Success = (TSStatus)this.Success.DeepCopy(); } - tmp599.__isset.success = this.__isset.success; - return tmp599; + tmp657.__isset.success = this.__isset.success; + return tmp657; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15510,7 +19452,7 @@ public setSchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("setSchemaTemplate_result"); + var struc = new TStruct("sendFile_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -15537,7 +19479,7 @@ public setSchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is setSchemaTemplateResult other)) return false; + if (!(that is sendFileResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -15555,11 +19497,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("setSchemaTemplate_result("); - int tmp600 = 0; + var sb = new StringBuilder("sendFile_result("); + int tmp658 = 0; if((Success != null) && __isset.success) { - if(0 < tmp600++) { sb.Append(", "); } + if(0 < tmp658++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -15569,43 +19511,17 @@ public override string ToString() } - public partial class unsetSchemaTemplateArgs : TBase + public partial class getBackupConfigurationArgs : TBase { - private TSUnsetSchemaTemplateReq _req; - - public TSUnsetSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - public unsetSchemaTemplateArgs() + public getBackupConfigurationArgs() { } - public unsetSchemaTemplateArgs DeepCopy() + public getBackupConfigurationArgs DeepCopy() { - var tmp601 = new unsetSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp601.Req = (TSUnsetSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp601.__isset.req = this.__isset.req; - return tmp601; + var tmp659 = new getBackupConfigurationArgs(); + return tmp659; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15625,17 +19541,6 @@ public unsetSchemaTemplateArgs DeepCopy() switch (field.ID) { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSUnsetSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -15657,18 +19562,8 @@ public unsetSchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("unsetSchemaTemplate_args"); + var struc = new TStruct("getBackupConfiguration_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -15680,43 +19575,32 @@ public unsetSchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is unsetSchemaTemplateArgs other)) return false; + if (!(that is getBackupConfigurationArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return true; } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("unsetSchemaTemplate_args("); - int tmp602 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp602++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } + var sb = new StringBuilder("getBackupConfiguration_args("); sb.Append(')'); return sb.ToString(); } } - public partial class unsetSchemaTemplateResult : TBase + public partial class getBackupConfigurationResult : TBase { - private TSStatus _success; + private TSBackupConfigurationResp _success; - public TSStatus Success + public TSBackupConfigurationResp Success { get { @@ -15736,19 +19620,19 @@ public struct Isset public bool success; } - public unsetSchemaTemplateResult() + public getBackupConfigurationResult() { } - public unsetSchemaTemplateResult DeepCopy() + public getBackupConfigurationResult DeepCopy() { - var tmp603 = new unsetSchemaTemplateResult(); + var tmp661 = new getBackupConfigurationResult(); if((Success != null) && __isset.success) { - tmp603.Success = (TSStatus)this.Success.DeepCopy(); + tmp661.Success = (TSBackupConfigurationResp)this.Success.DeepCopy(); } - tmp603.__isset.success = this.__isset.success; - return tmp603; + tmp661.__isset.success = this.__isset.success; + return tmp661; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15771,7 +19655,7 @@ public unsetSchemaTemplateResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSBackupConfigurationResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -15800,7 +19684,7 @@ public unsetSchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("unsetSchemaTemplate_result"); + var struc = new TStruct("getBackupConfiguration_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -15827,7 +19711,7 @@ public unsetSchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is unsetSchemaTemplateResult other)) return false; + if (!(that is getBackupConfigurationResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -15845,11 +19729,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("unsetSchemaTemplate_result("); - int tmp604 = 0; + var sb = new StringBuilder("getBackupConfiguration_result("); + int tmp662 = 0; if((Success != null) && __isset.success) { - if(0 < tmp604++) { sb.Append(", "); } + if(0 < tmp662++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } @@ -15859,43 +19743,17 @@ public override string ToString() } - public partial class dropSchemaTemplateArgs : TBase + public partial class fetchAllConnectionsInfoArgs : TBase { - private TSDropSchemaTemplateReq _req; - - public TSDropSchemaTemplateReq Req - { - get - { - return _req; - } - set - { - __isset.req = true; - this._req = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool req; - } - public dropSchemaTemplateArgs() + public fetchAllConnectionsInfoArgs() { } - public dropSchemaTemplateArgs DeepCopy() + public fetchAllConnectionsInfoArgs DeepCopy() { - var tmp605 = new dropSchemaTemplateArgs(); - if((Req != null) && __isset.req) - { - tmp605.Req = (TSDropSchemaTemplateReq)this.Req.DeepCopy(); - } - tmp605.__isset.req = this.__isset.req; - return tmp605; + var tmp663 = new fetchAllConnectionsInfoArgs(); + return tmp663; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -15915,17 +19773,6 @@ public dropSchemaTemplateArgs DeepCopy() switch (field.ID) { - case 1: - if (field.Type == TType.Struct) - { - Req = new TSDropSchemaTemplateReq(); - await Req.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -15947,18 +19794,8 @@ public dropSchemaTemplateArgs DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("dropSchemaTemplate_args"); + var struc = new TStruct("fetchAllConnectionsInfo_args"); await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - if((Req != null) && __isset.req) - { - field.Name = "req"; - field.Type = TType.Struct; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await Req.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -15970,43 +19807,32 @@ public dropSchemaTemplateArgs DeepCopy() public override bool Equals(object that) { - if (!(that is dropSchemaTemplateArgs other)) return false; + if (!(that is fetchAllConnectionsInfoArgs other)) return false; if (ReferenceEquals(this, other)) return true; - return ((__isset.req == other.__isset.req) && ((!__isset.req) || (System.Object.Equals(Req, other.Req)))); + return true; } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Req != null) && __isset.req) - { - hashcode = (hashcode * 397) + Req.GetHashCode(); - } } return hashcode; } public override string ToString() { - var sb = new StringBuilder("dropSchemaTemplate_args("); - int tmp606 = 0; - if((Req != null) && __isset.req) - { - if(0 < tmp606++) { sb.Append(", "); } - sb.Append("Req: "); - Req.ToString(sb); - } + var sb = new StringBuilder("fetchAllConnectionsInfo_args("); sb.Append(')'); return sb.ToString(); } } - public partial class dropSchemaTemplateResult : TBase + public partial class fetchAllConnectionsInfoResult : TBase { - private TSStatus _success; + private TSConnectionInfoResp _success; - public TSStatus Success + public TSConnectionInfoResp Success { get { @@ -16026,19 +19852,19 @@ public struct Isset public bool success; } - public dropSchemaTemplateResult() + public fetchAllConnectionsInfoResult() { } - public dropSchemaTemplateResult DeepCopy() + public fetchAllConnectionsInfoResult DeepCopy() { - var tmp607 = new dropSchemaTemplateResult(); + var tmp665 = new fetchAllConnectionsInfoResult(); if((Success != null) && __isset.success) { - tmp607.Success = (TSStatus)this.Success.DeepCopy(); + tmp665.Success = (TSConnectionInfoResp)this.Success.DeepCopy(); } - tmp607.__isset.success = this.__isset.success; - return tmp607; + tmp665.__isset.success = this.__isset.success; + return tmp665; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -16061,7 +19887,7 @@ public dropSchemaTemplateResult DeepCopy() case 0: if (field.Type == TType.Struct) { - Success = new TSStatus(); + Success = new TSConnectionInfoResp(); await Success.ReadAsync(iprot, cancellationToken); } else @@ -16090,7 +19916,7 @@ public dropSchemaTemplateResult DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("dropSchemaTemplate_result"); + var struc = new TStruct("fetchAllConnectionsInfo_result"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); @@ -16117,7 +19943,7 @@ public dropSchemaTemplateResult DeepCopy() public override bool Equals(object that) { - if (!(that is dropSchemaTemplateResult other)) return false; + if (!(that is fetchAllConnectionsInfoResult other)) return false; if (ReferenceEquals(this, other)) return true; return ((__isset.success == other.__isset.success) && ((!__isset.success) || (System.Object.Equals(Success, other.Success)))); } @@ -16135,11 +19961,11 @@ public override int GetHashCode() { public override string ToString() { - var sb = new StringBuilder("dropSchemaTemplate_result("); - int tmp608 = 0; + var sb = new StringBuilder("fetchAllConnectionsInfo_result("); + int tmp666 = 0; if((Success != null) && __isset.success) { - if(0 < tmp608++) { sb.Append(", "); } + if(0 < tmp666++) { sb.Append(", "); } sb.Append("Success: "); Success.ToString(sb); } diff --git a/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs b/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs index 6653d70..30fc408 100644 --- a/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs +++ b/src/Apache.IoTDB/Rpc/Generated/ServerProperties.cs @@ -38,6 +38,7 @@ public partial class ServerProperties : TBase private int _watermarkParamMaxRightBit; private int _thriftMaxFrameSize; private bool _isReadOnly; + private string _buildInfo; public string Version { get; set; } @@ -136,6 +137,19 @@ public bool IsReadOnly } } + public string BuildInfo + { + get + { + return _buildInfo; + } + set + { + __isset.buildInfo = true; + this._buildInfo = value; + } + } + public Isset __isset; public struct Isset @@ -147,6 +161,7 @@ public struct Isset public bool watermarkParamMaxRightBit; public bool thriftMaxFrameSize; public bool isReadOnly; + public bool buildInfo; } public ServerProperties() @@ -210,6 +225,11 @@ public ServerProperties DeepCopy() tmp379.IsReadOnly = this.IsReadOnly; } tmp379.__isset.isReadOnly = this.__isset.isReadOnly; + if((BuildInfo != null) && __isset.buildInfo) + { + tmp379.BuildInfo = this.BuildInfo; + } + tmp379.__isset.buildInfo = this.__isset.buildInfo; return tmp379; } @@ -346,6 +366,16 @@ public ServerProperties DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 11: + if (field.Type == TType.String) + { + BuildInfo = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -479,6 +509,15 @@ public ServerProperties DeepCopy() await oprot.WriteBoolAsync(IsReadOnly, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if((BuildInfo != null) && __isset.buildInfo) + { + field.Name = "buildInfo"; + field.Type = TType.String; + field.ID = 11; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(BuildInfo, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -501,7 +540,8 @@ public override bool Equals(object that) && ((__isset.watermarkParamMarkRate == other.__isset.watermarkParamMarkRate) && ((!__isset.watermarkParamMarkRate) || (System.Object.Equals(WatermarkParamMarkRate, other.WatermarkParamMarkRate)))) && ((__isset.watermarkParamMaxRightBit == other.__isset.watermarkParamMaxRightBit) && ((!__isset.watermarkParamMaxRightBit) || (System.Object.Equals(WatermarkParamMaxRightBit, other.WatermarkParamMaxRightBit)))) && ((__isset.thriftMaxFrameSize == other.__isset.thriftMaxFrameSize) && ((!__isset.thriftMaxFrameSize) || (System.Object.Equals(ThriftMaxFrameSize, other.ThriftMaxFrameSize)))) - && ((__isset.isReadOnly == other.__isset.isReadOnly) && ((!__isset.isReadOnly) || (System.Object.Equals(IsReadOnly, other.IsReadOnly)))); + && ((__isset.isReadOnly == other.__isset.isReadOnly) && ((!__isset.isReadOnly) || (System.Object.Equals(IsReadOnly, other.IsReadOnly)))) + && ((__isset.buildInfo == other.__isset.buildInfo) && ((!__isset.buildInfo) || (System.Object.Equals(BuildInfo, other.BuildInfo)))); } public override int GetHashCode() { @@ -547,6 +587,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + IsReadOnly.GetHashCode(); } + if((BuildInfo != null) && __isset.buildInfo) + { + hashcode = (hashcode * 397) + BuildInfo.GetHashCode(); + } } return hashcode; } @@ -604,6 +648,11 @@ public override string ToString() sb.Append(", IsReadOnly: "); IsReadOnly.ToString(sb); } + if((BuildInfo != null) && __isset.buildInfo) + { + sb.Append(", BuildInfo: "); + BuildInfo.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSBackupConfigurationResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSBackupConfigurationResp.cs new file mode 100644 index 0000000..85290d5 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSBackupConfigurationResp.cs @@ -0,0 +1,315 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSBackupConfigurationResp : TBase +{ + private bool _enableOperationSync; + private string _secondaryAddress; + private int _secondaryPort; + + public TSStatus Status { get; set; } + + public bool EnableOperationSync + { + get + { + return _enableOperationSync; + } + set + { + __isset.enableOperationSync = true; + this._enableOperationSync = value; + } + } + + public string SecondaryAddress + { + get + { + return _secondaryAddress; + } + set + { + __isset.secondaryAddress = true; + this._secondaryAddress = value; + } + } + + public int SecondaryPort + { + get + { + return _secondaryPort; + } + set + { + __isset.secondaryPort = true; + this._secondaryPort = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool enableOperationSync; + public bool secondaryAddress; + public bool secondaryPort; + } + + public TSBackupConfigurationResp() + { + } + + public TSBackupConfigurationResp(TSStatus status) : this() + { + this.Status = status; + } + + public TSBackupConfigurationResp DeepCopy() + { + var tmp425 = new TSBackupConfigurationResp(); + if((Status != null)) + { + tmp425.Status = (TSStatus)this.Status.DeepCopy(); + } + if(__isset.enableOperationSync) + { + tmp425.EnableOperationSync = this.EnableOperationSync; + } + tmp425.__isset.enableOperationSync = this.__isset.enableOperationSync; + if((SecondaryAddress != null) && __isset.secondaryAddress) + { + tmp425.SecondaryAddress = this.SecondaryAddress; + } + tmp425.__isset.secondaryAddress = this.__isset.secondaryAddress; + if(__isset.secondaryPort) + { + tmp425.SecondaryPort = this.SecondaryPort; + } + tmp425.__isset.secondaryPort = this.__isset.secondaryPort; + return tmp425; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.Bool) + { + EnableOperationSync = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + SecondaryAddress = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + SecondaryPort = await iprot.ReadI32Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSBackupConfigurationResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.enableOperationSync) + { + field.Name = "enableOperationSync"; + field.Type = TType.Bool; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(EnableOperationSync, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SecondaryAddress != null) && __isset.secondaryAddress) + { + field.Name = "secondaryAddress"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(SecondaryAddress, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.secondaryPort) + { + field.Name = "secondaryPort"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SecondaryPort, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSBackupConfigurationResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && ((__isset.enableOperationSync == other.__isset.enableOperationSync) && ((!__isset.enableOperationSync) || (System.Object.Equals(EnableOperationSync, other.EnableOperationSync)))) + && ((__isset.secondaryAddress == other.__isset.secondaryAddress) && ((!__isset.secondaryAddress) || (System.Object.Equals(SecondaryAddress, other.SecondaryAddress)))) + && ((__isset.secondaryPort == other.__isset.secondaryPort) && ((!__isset.secondaryPort) || (System.Object.Equals(SecondaryPort, other.SecondaryPort)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if(__isset.enableOperationSync) + { + hashcode = (hashcode * 397) + EnableOperationSync.GetHashCode(); + } + if((SecondaryAddress != null) && __isset.secondaryAddress) + { + hashcode = (hashcode * 397) + SecondaryAddress.GetHashCode(); + } + if(__isset.secondaryPort) + { + hashcode = (hashcode * 397) + SecondaryPort.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSBackupConfigurationResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if(__isset.enableOperationSync) + { + sb.Append(", EnableOperationSync: "); + EnableOperationSync.ToString(sb); + } + if((SecondaryAddress != null) && __isset.secondaryAddress) + { + sb.Append(", SecondaryAddress: "); + SecondaryAddress.ToString(sb); + } + if(__isset.secondaryPort) + { + sb.Append(", SecondaryPort: "); + SecondaryPort.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs index ed59e75..929b5b5 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSCancelOperationReq.cs @@ -48,10 +48,10 @@ public TSCancelOperationReq(long sessionId, long queryId) : this() public TSCancelOperationReq DeepCopy() { - var tmp87 = new TSCancelOperationReq(); - tmp87.SessionId = this.SessionId; - tmp87.QueryId = this.QueryId; - return tmp87; + var tmp83 = new TSCancelOperationReq(); + tmp83.SessionId = this.SessionId; + tmp83.QueryId = this.QueryId; + return tmp83; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs index 7b5d173..4ae3a3d 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSCloseOperationReq.cs @@ -81,19 +81,19 @@ public TSCloseOperationReq(long sessionId) : this() public TSCloseOperationReq DeepCopy() { - var tmp89 = new TSCloseOperationReq(); - tmp89.SessionId = this.SessionId; + var tmp85 = new TSCloseOperationReq(); + tmp85.SessionId = this.SessionId; if(__isset.queryId) { - tmp89.QueryId = this.QueryId; + tmp85.QueryId = this.QueryId; } - tmp89.__isset.queryId = this.__isset.queryId; + tmp85.__isset.queryId = this.__isset.queryId; if(__isset.statementId) { - tmp89.StatementId = this.StatementId; + tmp85.StatementId = this.StatementId; } - tmp89.__isset.statementId = this.__isset.statementId; - return tmp89; + tmp85.__isset.statementId = this.__isset.statementId; + return tmp85; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs index 1d97b91..673c913 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSCloseSessionReq.cs @@ -45,9 +45,9 @@ public TSCloseSessionReq(long sessionId) : this() public TSCloseSessionReq DeepCopy() { - var tmp75 = new TSCloseSessionReq(); - tmp75.SessionId = this.SessionId; - return tmp75; + var tmp71 = new TSCloseSessionReq(); + tmp71.SessionId = this.SessionId; + return tmp71; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSConnectionInfo.cs b/src/Apache.IoTDB/Rpc/Generated/TSConnectionInfo.cs new file mode 100644 index 0000000..d1f5a7c --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSConnectionInfo.cs @@ -0,0 +1,267 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSConnectionInfo : TBase +{ + + public string UserName { get; set; } + + public long LogInTime { get; set; } + + public string ConnectionId { get; set; } + + /// + /// + /// + /// + public TSConnectionType Type { get; set; } + + public TSConnectionInfo() + { + } + + public TSConnectionInfo(string userName, long logInTime, string connectionId, TSConnectionType type) : this() + { + this.UserName = userName; + this.LogInTime = logInTime; + this.ConnectionId = connectionId; + this.Type = type; + } + + public TSConnectionInfo DeepCopy() + { + var tmp427 = new TSConnectionInfo(); + if((UserName != null)) + { + tmp427.UserName = this.UserName; + } + tmp427.LogInTime = this.LogInTime; + if((ConnectionId != null)) + { + tmp427.ConnectionId = this.ConnectionId; + } + tmp427.Type = this.Type; + return tmp427; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_userName = false; + bool isset_logInTime = false; + bool isset_connectionId = false; + bool isset_type = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + UserName = await iprot.ReadStringAsync(cancellationToken); + isset_userName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + LogInTime = await iprot.ReadI64Async(cancellationToken); + isset_logInTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + ConnectionId = await iprot.ReadStringAsync(cancellationToken); + isset_connectionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.I32) + { + Type = (TSConnectionType)await iprot.ReadI32Async(cancellationToken); + isset_type = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_userName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_logInTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_connectionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_type) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSConnectionInfo"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((UserName != null)) + { + field.Name = "userName"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(UserName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "logInTime"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(LogInTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((ConnectionId != null)) + { + field.Name = "connectionId"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(ConnectionId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "type"; + field.Type = TType.I32; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async((int)Type, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSConnectionInfo other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(UserName, other.UserName) + && System.Object.Equals(LogInTime, other.LogInTime) + && System.Object.Equals(ConnectionId, other.ConnectionId) + && System.Object.Equals(Type, other.Type); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((UserName != null)) + { + hashcode = (hashcode * 397) + UserName.GetHashCode(); + } + hashcode = (hashcode * 397) + LogInTime.GetHashCode(); + if((ConnectionId != null)) + { + hashcode = (hashcode * 397) + ConnectionId.GetHashCode(); + } + hashcode = (hashcode * 397) + Type.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSConnectionInfo("); + if((UserName != null)) + { + sb.Append(", UserName: "); + UserName.ToString(sb); + } + sb.Append(", LogInTime: "); + LogInTime.ToString(sb); + if((ConnectionId != null)) + { + sb.Append(", ConnectionId: "); + ConnectionId.ToString(sb); + } + sb.Append(", Type: "); + Type.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSConnectionInfoResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSConnectionInfoResp.cs new file mode 100644 index 0000000..a555348 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSConnectionInfoResp.cs @@ -0,0 +1,179 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSConnectionInfoResp : TBase +{ + + public List ConnectionInfoList { get; set; } + + public TSConnectionInfoResp() + { + } + + public TSConnectionInfoResp(List connectionInfoList) : this() + { + this.ConnectionInfoList = connectionInfoList; + } + + public TSConnectionInfoResp DeepCopy() + { + var tmp429 = new TSConnectionInfoResp(); + if((ConnectionInfoList != null)) + { + tmp429.ConnectionInfoList = this.ConnectionInfoList.DeepCopy(); + } + return tmp429; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_connectionInfoList = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.List) + { + { + TList _list430 = await iprot.ReadListBeginAsync(cancellationToken); + ConnectionInfoList = new List(_list430.Count); + for(int _i431 = 0; _i431 < _list430.Count; ++_i431) + { + TSConnectionInfo _elem432; + _elem432 = new TSConnectionInfo(); + await _elem432.ReadAsync(iprot, cancellationToken); + ConnectionInfoList.Add(_elem432); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_connectionInfoList = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_connectionInfoList) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSConnectionInfoResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((ConnectionInfoList != null)) + { + field.Name = "connectionInfoList"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Struct, ConnectionInfoList.Count), cancellationToken); + foreach (TSConnectionInfo _iter433 in ConnectionInfoList) + { + await _iter433.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSConnectionInfoResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(ConnectionInfoList, other.ConnectionInfoList); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((ConnectionInfoList != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(ConnectionInfoList); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSConnectionInfoResp("); + if((ConnectionInfoList != null)) + { + sb.Append(", ConnectionInfoList: "); + ConnectionInfoList.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSConnectionType.cs b/src/Apache.IoTDB/Rpc/Generated/TSConnectionType.cs new file mode 100644 index 0000000..7a23661 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSConnectionType.cs @@ -0,0 +1,16 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public enum TSConnectionType +{ + THRIFT_BASED = 0, + MQTT_BASED = 1, + INTERNAL = 2, +} diff --git a/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs index f6f3cf4..c2b68a7 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSExecuteBatchStatementReq.cs @@ -48,13 +48,13 @@ public TSExecuteBatchStatementReq(long sessionId, List statements) : thi public TSExecuteBatchStatementReq DeepCopy() { - var tmp79 = new TSExecuteBatchStatementReq(); - tmp79.SessionId = this.SessionId; + var tmp75 = new TSExecuteBatchStatementReq(); + tmp75.SessionId = this.SessionId; if((Statements != null)) { - tmp79.Statements = this.Statements.DeepCopy(); + tmp75.Statements = this.Statements.DeepCopy(); } - return tmp79; + return tmp75; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -91,13 +91,13 @@ public TSExecuteBatchStatementReq DeepCopy() if (field.Type == TType.List) { { - TList _list80 = await iprot.ReadListBeginAsync(cancellationToken); - Statements = new List(_list80.Count); - for(int _i81 = 0; _i81 < _list80.Count; ++_i81) + TList _list76 = await iprot.ReadListBeginAsync(cancellationToken); + Statements = new List(_list76.Count); + for(int _i77 = 0; _i77 < _list76.Count; ++_i77) { - string _elem82; - _elem82 = await iprot.ReadStringAsync(cancellationToken); - Statements.Add(_elem82); + string _elem78; + _elem78 = await iprot.ReadStringAsync(cancellationToken); + Statements.Add(_elem78); } await iprot.ReadListEndAsync(cancellationToken); } @@ -154,9 +154,9 @@ public TSExecuteBatchStatementReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Statements.Count), cancellationToken); - foreach (string _iter83 in Statements) + foreach (string _iter79 in Statements) { - await oprot.WriteStringAsync(_iter83, cancellationToken); + await oprot.WriteStringAsync(_iter79, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs index 71c6ef0..c6bc462 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementReq.cs @@ -117,34 +117,34 @@ public TSExecuteStatementReq(long sessionId, string statement, long statementId) public TSExecuteStatementReq DeepCopy() { - var tmp77 = new TSExecuteStatementReq(); - tmp77.SessionId = this.SessionId; + var tmp73 = new TSExecuteStatementReq(); + tmp73.SessionId = this.SessionId; if((Statement != null)) { - tmp77.Statement = this.Statement; + tmp73.Statement = this.Statement; } - tmp77.StatementId = this.StatementId; + tmp73.StatementId = this.StatementId; if(__isset.fetchSize) { - tmp77.FetchSize = this.FetchSize; + tmp73.FetchSize = this.FetchSize; } - tmp77.__isset.fetchSize = this.__isset.fetchSize; + tmp73.__isset.fetchSize = this.__isset.fetchSize; if(__isset.timeout) { - tmp77.Timeout = this.Timeout; + tmp73.Timeout = this.Timeout; } - tmp77.__isset.timeout = this.__isset.timeout; + tmp73.__isset.timeout = this.__isset.timeout; if(__isset.enableRedirectQuery) { - tmp77.EnableRedirectQuery = this.EnableRedirectQuery; + tmp73.EnableRedirectQuery = this.EnableRedirectQuery; } - tmp77.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; + tmp73.__isset.enableRedirectQuery = this.__isset.enableRedirectQuery; if(__isset.jdbcQuery) { - tmp77.JdbcQuery = this.JdbcQuery; + tmp73.JdbcQuery = this.JdbcQuery; } - tmp77.__isset.jdbcQuery = this.__isset.jdbcQuery; - return tmp77; + tmp73.__isset.jdbcQuery = this.__isset.jdbcQuery; + return tmp73; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs index 62aaecd..ae7c4a4 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSExecuteStatementResp.cs @@ -42,6 +42,8 @@ public partial class TSExecuteStatementResp : TBase private List _sgColumns; private List _aliasColumns; private TSTracingInfo _tracingInfo; + private List _queryResult; + private bool _moreData; public TSStatus Status { get; set; } @@ -188,6 +190,32 @@ public TSTracingInfo TracingInfo } } + public List QueryResult + { + get + { + return _queryResult; + } + set + { + __isset.queryResult = true; + this._queryResult = value; + } + } + + public bool MoreData + { + get + { + return _moreData; + } + set + { + __isset.moreData = true; + this._moreData = value; + } + } + public Isset __isset; public struct Isset @@ -203,6 +231,8 @@ public struct Isset public bool sgColumns; public bool aliasColumns; public bool tracingInfo; + public bool queryResult; + public bool moreData; } public TSExecuteStatementResp() @@ -216,67 +246,77 @@ public TSExecuteStatementResp(TSStatus status) : this() public TSExecuteStatementResp DeepCopy() { - var tmp38 = new TSExecuteStatementResp(); + var tmp30 = new TSExecuteStatementResp(); if((Status != null)) { - tmp38.Status = (TSStatus)this.Status.DeepCopy(); + tmp30.Status = (TSStatus)this.Status.DeepCopy(); } if(__isset.queryId) { - tmp38.QueryId = this.QueryId; + tmp30.QueryId = this.QueryId; } - tmp38.__isset.queryId = this.__isset.queryId; + tmp30.__isset.queryId = this.__isset.queryId; if((Columns != null) && __isset.columns) { - tmp38.Columns = this.Columns.DeepCopy(); + tmp30.Columns = this.Columns.DeepCopy(); } - tmp38.__isset.columns = this.__isset.columns; + tmp30.__isset.columns = this.__isset.columns; if((OperationType != null) && __isset.operationType) { - tmp38.OperationType = this.OperationType; + tmp30.OperationType = this.OperationType; } - tmp38.__isset.operationType = this.__isset.operationType; + tmp30.__isset.operationType = this.__isset.operationType; if(__isset.ignoreTimeStamp) { - tmp38.IgnoreTimeStamp = this.IgnoreTimeStamp; + tmp30.IgnoreTimeStamp = this.IgnoreTimeStamp; } - tmp38.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; + tmp30.__isset.ignoreTimeStamp = this.__isset.ignoreTimeStamp; if((DataTypeList != null) && __isset.dataTypeList) { - tmp38.DataTypeList = this.DataTypeList.DeepCopy(); + tmp30.DataTypeList = this.DataTypeList.DeepCopy(); } - tmp38.__isset.dataTypeList = this.__isset.dataTypeList; + tmp30.__isset.dataTypeList = this.__isset.dataTypeList; if((QueryDataSet != null) && __isset.queryDataSet) { - tmp38.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + tmp30.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); } - tmp38.__isset.queryDataSet = this.__isset.queryDataSet; + tmp30.__isset.queryDataSet = this.__isset.queryDataSet; if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) { - tmp38.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + tmp30.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); } - tmp38.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + tmp30.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; if((ColumnNameIndexMap != null) && __isset.columnNameIndexMap) { - tmp38.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); + tmp30.ColumnNameIndexMap = this.ColumnNameIndexMap.DeepCopy(); } - tmp38.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; + tmp30.__isset.columnNameIndexMap = this.__isset.columnNameIndexMap; if((SgColumns != null) && __isset.sgColumns) { - tmp38.SgColumns = this.SgColumns.DeepCopy(); + tmp30.SgColumns = this.SgColumns.DeepCopy(); } - tmp38.__isset.sgColumns = this.__isset.sgColumns; + tmp30.__isset.sgColumns = this.__isset.sgColumns; if((AliasColumns != null) && __isset.aliasColumns) { - tmp38.AliasColumns = this.AliasColumns.DeepCopy(); + tmp30.AliasColumns = this.AliasColumns.DeepCopy(); } - tmp38.__isset.aliasColumns = this.__isset.aliasColumns; + tmp30.__isset.aliasColumns = this.__isset.aliasColumns; if((TracingInfo != null) && __isset.tracingInfo) { - tmp38.TracingInfo = (TSTracingInfo)this.TracingInfo.DeepCopy(); + tmp30.TracingInfo = (TSTracingInfo)this.TracingInfo.DeepCopy(); + } + tmp30.__isset.tracingInfo = this.__isset.tracingInfo; + if((QueryResult != null) && __isset.queryResult) + { + tmp30.QueryResult = this.QueryResult.DeepCopy(); + } + tmp30.__isset.queryResult = this.__isset.queryResult; + if(__isset.moreData) + { + tmp30.MoreData = this.MoreData; } - tmp38.__isset.tracingInfo = this.__isset.tracingInfo; - return tmp38; + tmp30.__isset.moreData = this.__isset.moreData; + return tmp30; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -323,13 +363,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list39 = await iprot.ReadListBeginAsync(cancellationToken); - Columns = new List(_list39.Count); - for(int _i40 = 0; _i40 < _list39.Count; ++_i40) + TList _list31 = await iprot.ReadListBeginAsync(cancellationToken); + Columns = new List(_list31.Count); + for(int _i32 = 0; _i32 < _list31.Count; ++_i32) { - string _elem41; - _elem41 = await iprot.ReadStringAsync(cancellationToken); - Columns.Add(_elem41); + string _elem33; + _elem33 = await iprot.ReadStringAsync(cancellationToken); + Columns.Add(_elem33); } await iprot.ReadListEndAsync(cancellationToken); } @@ -363,13 +403,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list42 = await iprot.ReadListBeginAsync(cancellationToken); - DataTypeList = new List(_list42.Count); - for(int _i43 = 0; _i43 < _list42.Count; ++_i43) + TList _list34 = await iprot.ReadListBeginAsync(cancellationToken); + DataTypeList = new List(_list34.Count); + for(int _i35 = 0; _i35 < _list34.Count; ++_i35) { - string _elem44; - _elem44 = await iprot.ReadStringAsync(cancellationToken); - DataTypeList.Add(_elem44); + string _elem36; + _elem36 = await iprot.ReadStringAsync(cancellationToken); + DataTypeList.Add(_elem36); } await iprot.ReadListEndAsync(cancellationToken); } @@ -405,15 +445,15 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.Map) { { - TMap _map45 = await iprot.ReadMapBeginAsync(cancellationToken); - ColumnNameIndexMap = new Dictionary(_map45.Count); - for(int _i46 = 0; _i46 < _map45.Count; ++_i46) + TMap _map37 = await iprot.ReadMapBeginAsync(cancellationToken); + ColumnNameIndexMap = new Dictionary(_map37.Count); + for(int _i38 = 0; _i38 < _map37.Count; ++_i38) { - string _key47; - int _val48; - _key47 = await iprot.ReadStringAsync(cancellationToken); - _val48 = await iprot.ReadI32Async(cancellationToken); - ColumnNameIndexMap[_key47] = _val48; + string _key39; + int _val40; + _key39 = await iprot.ReadStringAsync(cancellationToken); + _val40 = await iprot.ReadI32Async(cancellationToken); + ColumnNameIndexMap[_key39] = _val40; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -427,13 +467,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list49 = await iprot.ReadListBeginAsync(cancellationToken); - SgColumns = new List(_list49.Count); - for(int _i50 = 0; _i50 < _list49.Count; ++_i50) + TList _list41 = await iprot.ReadListBeginAsync(cancellationToken); + SgColumns = new List(_list41.Count); + for(int _i42 = 0; _i42 < _list41.Count; ++_i42) { - string _elem51; - _elem51 = await iprot.ReadStringAsync(cancellationToken); - SgColumns.Add(_elem51); + string _elem43; + _elem43 = await iprot.ReadStringAsync(cancellationToken); + SgColumns.Add(_elem43); } await iprot.ReadListEndAsync(cancellationToken); } @@ -447,13 +487,13 @@ public TSExecuteStatementResp DeepCopy() if (field.Type == TType.List) { { - TList _list52 = await iprot.ReadListBeginAsync(cancellationToken); - AliasColumns = new List(_list52.Count); - for(int _i53 = 0; _i53 < _list52.Count; ++_i53) + TList _list44 = await iprot.ReadListBeginAsync(cancellationToken); + AliasColumns = new List(_list44.Count); + for(int _i45 = 0; _i45 < _list44.Count; ++_i45) { - sbyte _elem54; - _elem54 = await iprot.ReadByteAsync(cancellationToken); - AliasColumns.Add(_elem54); + sbyte _elem46; + _elem46 = await iprot.ReadByteAsync(cancellationToken); + AliasColumns.Add(_elem46); } await iprot.ReadListEndAsync(cancellationToken); } @@ -474,6 +514,36 @@ public TSExecuteStatementResp DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 13: + if (field.Type == TType.List) + { + { + TList _list47 = await iprot.ReadListBeginAsync(cancellationToken); + QueryResult = new List(_list47.Count); + for(int _i48 = 0; _i48 < _list47.Count; ++_i48) + { + byte[] _elem49; + _elem49 = await iprot.ReadBinaryAsync(cancellationToken); + QueryResult.Add(_elem49); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 14: + if (field.Type == TType.Bool) + { + MoreData = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -528,9 +598,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, Columns.Count), cancellationToken); - foreach (string _iter55 in Columns) + foreach (string _iter50 in Columns) { - await oprot.WriteStringAsync(_iter55, cancellationToken); + await oprot.WriteStringAsync(_iter50, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -562,9 +632,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, DataTypeList.Count), cancellationToken); - foreach (string _iter56 in DataTypeList) + foreach (string _iter51 in DataTypeList) { - await oprot.WriteStringAsync(_iter56, cancellationToken); + await oprot.WriteStringAsync(_iter51, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -596,10 +666,10 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.I32, ColumnNameIndexMap.Count), cancellationToken); - foreach (string _iter57 in ColumnNameIndexMap.Keys) + foreach (string _iter52 in ColumnNameIndexMap.Keys) { - await oprot.WriteStringAsync(_iter57, cancellationToken); - await oprot.WriteI32Async(ColumnNameIndexMap[_iter57], cancellationToken); + await oprot.WriteStringAsync(_iter52, cancellationToken); + await oprot.WriteI32Async(ColumnNameIndexMap[_iter52], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -613,9 +683,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, SgColumns.Count), cancellationToken); - foreach (string _iter58 in SgColumns) + foreach (string _iter53 in SgColumns) { - await oprot.WriteStringAsync(_iter58, cancellationToken); + await oprot.WriteStringAsync(_iter53, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -629,9 +699,9 @@ public TSExecuteStatementResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.Byte, AliasColumns.Count), cancellationToken); - foreach (sbyte _iter59 in AliasColumns) + foreach (sbyte _iter54 in AliasColumns) { - await oprot.WriteByteAsync(_iter59, cancellationToken); + await oprot.WriteByteAsync(_iter54, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -646,6 +716,31 @@ public TSExecuteStatementResp DeepCopy() await TracingInfo.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if((QueryResult != null) && __isset.queryResult) + { + field.Name = "queryResult"; + field.Type = TType.List; + field.ID = 13; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, QueryResult.Count), cancellationToken); + foreach (byte[] _iter55 in QueryResult) + { + await oprot.WriteBinaryAsync(_iter55, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.moreData) + { + field.Name = "moreData"; + field.Type = TType.Bool; + field.ID = 14; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(MoreData, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -670,7 +765,9 @@ public override bool Equals(object that) && ((__isset.columnNameIndexMap == other.__isset.columnNameIndexMap) && ((!__isset.columnNameIndexMap) || (TCollections.Equals(ColumnNameIndexMap, other.ColumnNameIndexMap)))) && ((__isset.sgColumns == other.__isset.sgColumns) && ((!__isset.sgColumns) || (TCollections.Equals(SgColumns, other.SgColumns)))) && ((__isset.aliasColumns == other.__isset.aliasColumns) && ((!__isset.aliasColumns) || (TCollections.Equals(AliasColumns, other.AliasColumns)))) - && ((__isset.tracingInfo == other.__isset.tracingInfo) && ((!__isset.tracingInfo) || (System.Object.Equals(TracingInfo, other.TracingInfo)))); + && ((__isset.tracingInfo == other.__isset.tracingInfo) && ((!__isset.tracingInfo) || (System.Object.Equals(TracingInfo, other.TracingInfo)))) + && ((__isset.queryResult == other.__isset.queryResult) && ((!__isset.queryResult) || (TCollections.Equals(QueryResult, other.QueryResult)))) + && ((__isset.moreData == other.__isset.moreData) && ((!__isset.moreData) || (System.Object.Equals(MoreData, other.MoreData)))); } public override int GetHashCode() { @@ -724,6 +821,14 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + TracingInfo.GetHashCode(); } + if((QueryResult != null) && __isset.queryResult) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(QueryResult); + } + if(__isset.moreData) + { + hashcode = (hashcode * 397) + MoreData.GetHashCode(); + } } return hashcode; } @@ -791,6 +896,16 @@ public override string ToString() sb.Append(", TracingInfo: "); TracingInfo.ToString(sb); } + if((QueryResult != null) && __isset.queryResult) + { + sb.Append(", QueryResult: "); + QueryResult.ToString(sb); + } + if(__isset.moreData) + { + sb.Append(", MoreData: "); + MoreData.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs index 9ef28d6..a361ca0 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsReq.cs @@ -78,21 +78,21 @@ public TSFetchResultsReq(long sessionId, string statement, int fetchSize, long q public TSFetchResultsReq DeepCopy() { - var tmp91 = new TSFetchResultsReq(); - tmp91.SessionId = this.SessionId; + var tmp87 = new TSFetchResultsReq(); + tmp87.SessionId = this.SessionId; if((Statement != null)) { - tmp91.Statement = this.Statement; + tmp87.Statement = this.Statement; } - tmp91.FetchSize = this.FetchSize; - tmp91.QueryId = this.QueryId; - tmp91.IsAlign = this.IsAlign; + tmp87.FetchSize = this.FetchSize; + tmp87.QueryId = this.QueryId; + tmp87.IsAlign = this.IsAlign; if(__isset.timeout) { - tmp91.Timeout = this.Timeout; + tmp87.Timeout = this.Timeout; } - tmp91.__isset.timeout = this.__isset.timeout; - return tmp91; + tmp87.__isset.timeout = this.__isset.timeout; + return tmp87; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs index 6b178c5..5da2723 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSFetchResultsResp.cs @@ -33,6 +33,8 @@ public partial class TSFetchResultsResp : TBase { private TSQueryDataSet _queryDataSet; private TSQueryNonAlignDataSet _nonAlignQueryDataSet; + private List _queryResult; + private bool _moreData; public TSStatus Status { get; set; } @@ -66,12 +68,40 @@ public TSQueryNonAlignDataSet NonAlignQueryDataSet } } + public List QueryResult + { + get + { + return _queryResult; + } + set + { + __isset.queryResult = true; + this._queryResult = value; + } + } + + public bool MoreData + { + get + { + return _moreData; + } + set + { + __isset.moreData = true; + this._moreData = value; + } + } + public Isset __isset; public struct Isset { public bool queryDataSet; public bool nonAlignQueryDataSet; + public bool queryResult; + public bool moreData; } public TSFetchResultsResp() @@ -87,24 +117,34 @@ public TSFetchResultsResp(TSStatus status, bool hasResultSet, bool isAlign) : th public TSFetchResultsResp DeepCopy() { - var tmp93 = new TSFetchResultsResp(); + var tmp89 = new TSFetchResultsResp(); if((Status != null)) { - tmp93.Status = (TSStatus)this.Status.DeepCopy(); + tmp89.Status = (TSStatus)this.Status.DeepCopy(); } - tmp93.HasResultSet = this.HasResultSet; - tmp93.IsAlign = this.IsAlign; + tmp89.HasResultSet = this.HasResultSet; + tmp89.IsAlign = this.IsAlign; if((QueryDataSet != null) && __isset.queryDataSet) { - tmp93.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); + tmp89.QueryDataSet = (TSQueryDataSet)this.QueryDataSet.DeepCopy(); } - tmp93.__isset.queryDataSet = this.__isset.queryDataSet; + tmp89.__isset.queryDataSet = this.__isset.queryDataSet; if((NonAlignQueryDataSet != null) && __isset.nonAlignQueryDataSet) { - tmp93.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + tmp89.NonAlignQueryDataSet = (TSQueryNonAlignDataSet)this.NonAlignQueryDataSet.DeepCopy(); + } + tmp89.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; + if((QueryResult != null) && __isset.queryResult) + { + tmp89.QueryResult = this.QueryResult.DeepCopy(); + } + tmp89.__isset.queryResult = this.__isset.queryResult; + if(__isset.moreData) + { + tmp89.MoreData = this.MoreData; } - tmp93.__isset.nonAlignQueryDataSet = this.__isset.nonAlignQueryDataSet; - return tmp93; + tmp89.__isset.moreData = this.__isset.moreData; + return tmp89; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -183,6 +223,36 @@ public TSFetchResultsResp DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 6: + if (field.Type == TType.List) + { + { + TList _list90 = await iprot.ReadListBeginAsync(cancellationToken); + QueryResult = new List(_list90.Count); + for(int _i91 = 0; _i91 < _list90.Count; ++_i91) + { + byte[] _elem92; + _elem92 = await iprot.ReadBinaryAsync(cancellationToken); + QueryResult.Add(_elem92); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 7: + if (field.Type == TType.Bool) + { + MoreData = await iprot.ReadBoolAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -258,6 +328,31 @@ public TSFetchResultsResp DeepCopy() await NonAlignQueryDataSet.WriteAsync(oprot, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if((QueryResult != null) && __isset.queryResult) + { + field.Name = "queryResult"; + field.Type = TType.List; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, QueryResult.Count), cancellationToken); + foreach (byte[] _iter93 in QueryResult) + { + await oprot.WriteBinaryAsync(_iter93, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if(__isset.moreData) + { + field.Name = "moreData"; + field.Type = TType.Bool; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBoolAsync(MoreData, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -275,7 +370,9 @@ public override bool Equals(object that) && System.Object.Equals(HasResultSet, other.HasResultSet) && System.Object.Equals(IsAlign, other.IsAlign) && ((__isset.queryDataSet == other.__isset.queryDataSet) && ((!__isset.queryDataSet) || (System.Object.Equals(QueryDataSet, other.QueryDataSet)))) - && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))); + && ((__isset.nonAlignQueryDataSet == other.__isset.nonAlignQueryDataSet) && ((!__isset.nonAlignQueryDataSet) || (System.Object.Equals(NonAlignQueryDataSet, other.NonAlignQueryDataSet)))) + && ((__isset.queryResult == other.__isset.queryResult) && ((!__isset.queryResult) || (TCollections.Equals(QueryResult, other.QueryResult)))) + && ((__isset.moreData == other.__isset.moreData) && ((!__isset.moreData) || (System.Object.Equals(MoreData, other.MoreData)))); } public override int GetHashCode() { @@ -295,6 +392,14 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + NonAlignQueryDataSet.GetHashCode(); } + if((QueryResult != null) && __isset.queryResult) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(QueryResult); + } + if(__isset.moreData) + { + hashcode = (hashcode * 397) + MoreData.GetHashCode(); + } } return hashcode; } @@ -321,6 +426,16 @@ public override string ToString() sb.Append(", NonAlignQueryDataSet: "); NonAlignQueryDataSet.ToString(sb); } + if((QueryResult != null) && __isset.queryResult) + { + sb.Append(", QueryResult: "); + QueryResult.ToString(sb); + } + if(__isset.moreData) + { + sb.Append(", MoreData: "); + MoreData.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs index 27718fb..7f35755 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSGetOperationStatusReq.cs @@ -48,10 +48,10 @@ public TSGetOperationStatusReq(long sessionId, long queryId) : this() public TSGetOperationStatusReq DeepCopy() { - var tmp85 = new TSGetOperationStatusReq(); - tmp85.SessionId = this.SessionId; - tmp85.QueryId = this.QueryId; - return tmp85; + var tmp81 = new TSGetOperationStatusReq(); + tmp81.SessionId = this.SessionId; + tmp81.QueryId = this.QueryId; + return tmp81; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) diff --git a/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs index 228fac5..1b28e55 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSInsertStringRecordReq.cs @@ -32,6 +32,7 @@ public partial class TSInsertStringRecordReq : TBase { private bool _isAligned; + private long _timeout; public long SessionId { get; set; } @@ -56,11 +57,25 @@ public bool IsAligned } } + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + public Isset __isset; public struct Isset { public bool isAligned; + public bool timeout; } public TSInsertStringRecordReq() @@ -98,6 +113,11 @@ public TSInsertStringRecordReq DeepCopy() tmp113.IsAligned = this.IsAligned; } tmp113.__isset.isAligned = this.__isset.isAligned; + if(__isset.timeout) + { + tmp113.Timeout = this.Timeout; + } + tmp113.__isset.timeout = this.__isset.timeout; return tmp113; } @@ -208,6 +228,16 @@ public TSInsertStringRecordReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 7: + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -314,6 +344,15 @@ public TSInsertStringRecordReq DeepCopy() await oprot.WriteBoolAsync(IsAligned, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.timeout) + { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 7; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -332,7 +371,8 @@ public override bool Equals(object that) && TCollections.Equals(Measurements, other.Measurements) && TCollections.Equals(Values, other.Values) && System.Object.Equals(Timestamp, other.Timestamp) - && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))); + && ((__isset.isAligned == other.__isset.isAligned) && ((!__isset.isAligned) || (System.Object.Equals(IsAligned, other.IsAligned)))) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))); } public override int GetHashCode() { @@ -356,6 +396,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + IsAligned.GetHashCode(); } + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } } return hashcode; } @@ -387,6 +431,11 @@ public override string ToString() sb.Append(", IsAligned: "); IsAligned.ToString(sb); } + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs index 4f45324..cac7862 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSLastDataQueryReq.cs @@ -34,6 +34,7 @@ public partial class TSLastDataQueryReq : TBase private int _fetchSize; private bool _enableRedirectQuery; private bool _jdbcQuery; + private long _timeout; public long SessionId { get; set; } @@ -82,6 +83,19 @@ public bool JdbcQuery } } + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + public Isset __isset; public struct Isset @@ -89,6 +103,7 @@ public struct Isset public bool fetchSize; public bool enableRedirectQuery; public bool jdbcQuery; + public bool timeout; } public TSLastDataQueryReq() @@ -128,6 +143,11 @@ public TSLastDataQueryReq DeepCopy() tmp324.JdbcQuery = this.JdbcQuery; } tmp324.__isset.jdbcQuery = this.__isset.jdbcQuery; + if(__isset.timeout) + { + tmp324.Timeout = this.Timeout; + } + tmp324.__isset.timeout = this.__isset.timeout; return tmp324; } @@ -236,6 +256,16 @@ public TSLastDataQueryReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 8: + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -337,6 +367,15 @@ public TSLastDataQueryReq DeepCopy() await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.timeout) + { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 8; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -356,7 +395,8 @@ public override bool Equals(object that) && System.Object.Equals(Time, other.Time) && System.Object.Equals(StatementId, other.StatementId) && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) - && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))); } public override int GetHashCode() { @@ -381,6 +421,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); } + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } } return hashcode; } @@ -414,6 +458,11 @@ public override string ToString() sb.Append(", JdbcQuery: "); JdbcQuery.ToString(sb); } + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs index dc89624..f4d6916 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionReq.cs @@ -31,7 +31,6 @@ public partial class TSOpenSessionReq : TBase { - private string _username; private string _password; private Dictionary _configuration; @@ -43,18 +42,7 @@ public partial class TSOpenSessionReq : TBase public string ZoneId { get; set; } - public string Username - { - get - { - return _username; - } - set - { - __isset.username = true; - this._username = value; - } - } + public string Username { get; set; } public string Password { @@ -86,7 +74,6 @@ public Dictionary Configuration public Isset __isset; public struct Isset { - public bool username; public bool password; public bool configuration; } @@ -96,36 +83,36 @@ public TSOpenSessionReq() this.Client_protocol = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; } - public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId) : this() + public TSOpenSessionReq(TSProtocolVersion client_protocol, string zoneId, string username) : this() { this.Client_protocol = client_protocol; this.ZoneId = zoneId; + this.Username = username; } public TSOpenSessionReq DeepCopy() { - var tmp68 = new TSOpenSessionReq(); - tmp68.Client_protocol = this.Client_protocol; + var tmp64 = new TSOpenSessionReq(); + tmp64.Client_protocol = this.Client_protocol; if((ZoneId != null)) { - tmp68.ZoneId = this.ZoneId; + tmp64.ZoneId = this.ZoneId; } - if((Username != null) && __isset.username) + if((Username != null)) { - tmp68.Username = this.Username; + tmp64.Username = this.Username; } - tmp68.__isset.username = this.__isset.username; if((Password != null) && __isset.password) { - tmp68.Password = this.Password; + tmp64.Password = this.Password; } - tmp68.__isset.password = this.__isset.password; + tmp64.__isset.password = this.__isset.password; if((Configuration != null) && __isset.configuration) { - tmp68.Configuration = this.Configuration.DeepCopy(); + tmp64.Configuration = this.Configuration.DeepCopy(); } - tmp68.__isset.configuration = this.__isset.configuration; - return tmp68; + tmp64.__isset.configuration = this.__isset.configuration; + return tmp64; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -135,6 +122,7 @@ public TSOpenSessionReq DeepCopy() { bool isset_client_protocol = false; bool isset_zoneId = false; + bool isset_username = false; TField field; await iprot.ReadStructBeginAsync(cancellationToken); while (true) @@ -173,6 +161,7 @@ public TSOpenSessionReq DeepCopy() if (field.Type == TType.String) { Username = await iprot.ReadStringAsync(cancellationToken); + isset_username = true; } else { @@ -193,15 +182,15 @@ public TSOpenSessionReq DeepCopy() if (field.Type == TType.Map) { { - TMap _map69 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map69.Count); - for(int _i70 = 0; _i70 < _map69.Count; ++_i70) + TMap _map65 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map65.Count); + for(int _i66 = 0; _i66 < _map65.Count; ++_i66) { - string _key71; - string _val72; - _key71 = await iprot.ReadStringAsync(cancellationToken); - _val72 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key71] = _val72; + string _key67; + string _val68; + _key67 = await iprot.ReadStringAsync(cancellationToken); + _val68 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key67] = _val68; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -228,6 +217,10 @@ public TSOpenSessionReq DeepCopy() { throw new TProtocolException(TProtocolException.INVALID_DATA); } + if (!isset_username) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } } finally { @@ -258,7 +251,7 @@ public TSOpenSessionReq DeepCopy() await oprot.WriteStringAsync(ZoneId, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } - if((Username != null) && __isset.username) + if((Username != null)) { field.Name = "username"; field.Type = TType.String; @@ -284,10 +277,10 @@ public TSOpenSessionReq DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter73 in Configuration.Keys) + foreach (string _iter69 in Configuration.Keys) { - await oprot.WriteStringAsync(_iter73, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter73], cancellationToken); + await oprot.WriteStringAsync(_iter69, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter69], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } @@ -308,7 +301,7 @@ public override bool Equals(object that) if (ReferenceEquals(this, other)) return true; return System.Object.Equals(Client_protocol, other.Client_protocol) && System.Object.Equals(ZoneId, other.ZoneId) - && ((__isset.username == other.__isset.username) && ((!__isset.username) || (System.Object.Equals(Username, other.Username)))) + && System.Object.Equals(Username, other.Username) && ((__isset.password == other.__isset.password) && ((!__isset.password) || (System.Object.Equals(Password, other.Password)))) && ((__isset.configuration == other.__isset.configuration) && ((!__isset.configuration) || (TCollections.Equals(Configuration, other.Configuration)))); } @@ -321,7 +314,7 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + ZoneId.GetHashCode(); } - if((Username != null) && __isset.username) + if((Username != null)) { hashcode = (hashcode * 397) + Username.GetHashCode(); } @@ -347,7 +340,7 @@ public override string ToString() sb.Append(", ZoneId: "); ZoneId.ToString(sb); } - if((Username != null) && __isset.username) + if((Username != null)) { sb.Append(", Username: "); Username.ToString(sb); diff --git a/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs index f1d2db2..78237df 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSOpenSessionResp.cs @@ -89,23 +89,23 @@ public TSOpenSessionResp(TSStatus status, TSProtocolVersion serverProtocolVersio public TSOpenSessionResp DeepCopy() { - var tmp61 = new TSOpenSessionResp(); + var tmp57 = new TSOpenSessionResp(); if((Status != null)) { - tmp61.Status = (TSStatus)this.Status.DeepCopy(); + tmp57.Status = (TSStatus)this.Status.DeepCopy(); } - tmp61.ServerProtocolVersion = this.ServerProtocolVersion; + tmp57.ServerProtocolVersion = this.ServerProtocolVersion; if(__isset.sessionId) { - tmp61.SessionId = this.SessionId; + tmp57.SessionId = this.SessionId; } - tmp61.__isset.sessionId = this.__isset.sessionId; + tmp57.__isset.sessionId = this.__isset.sessionId; if((Configuration != null) && __isset.configuration) { - tmp61.Configuration = this.Configuration.DeepCopy(); + tmp57.Configuration = this.Configuration.DeepCopy(); } - tmp61.__isset.configuration = this.__isset.configuration; - return tmp61; + tmp57.__isset.configuration = this.__isset.configuration; + return tmp57; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -164,15 +164,15 @@ public TSOpenSessionResp DeepCopy() if (field.Type == TType.Map) { { - TMap _map62 = await iprot.ReadMapBeginAsync(cancellationToken); - Configuration = new Dictionary(_map62.Count); - for(int _i63 = 0; _i63 < _map62.Count; ++_i63) + TMap _map58 = await iprot.ReadMapBeginAsync(cancellationToken); + Configuration = new Dictionary(_map58.Count); + for(int _i59 = 0; _i59 < _map58.Count; ++_i59) { - string _key64; - string _val65; - _key64 = await iprot.ReadStringAsync(cancellationToken); - _val65 = await iprot.ReadStringAsync(cancellationToken); - Configuration[_key64] = _val65; + string _key60; + string _val61; + _key60 = await iprot.ReadStringAsync(cancellationToken); + _val61 = await iprot.ReadStringAsync(cancellationToken); + Configuration[_key60] = _val61; } await iprot.ReadMapEndAsync(cancellationToken); } @@ -246,10 +246,10 @@ public TSOpenSessionResp DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteMapBeginAsync(new TMap(TType.String, TType.String, Configuration.Count), cancellationToken); - foreach (string _iter66 in Configuration.Keys) + foreach (string _iter62 in Configuration.Keys) { - await oprot.WriteStringAsync(_iter66, cancellationToken); - await oprot.WriteStringAsync(Configuration[_iter66], cancellationToken); + await oprot.WriteStringAsync(_iter62, cancellationToken); + await oprot.WriteStringAsync(Configuration[_iter62], cancellationToken); } await oprot.WriteMapEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs b/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs index a3801cd..ea3c3f7 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSQueryDataSet.cs @@ -51,20 +51,20 @@ public TSQueryDataSet(byte[] time, List valueList, List bitmapLi public TSQueryDataSet DeepCopy() { - var tmp8 = new TSQueryDataSet(); + var tmp0 = new TSQueryDataSet(); if((Time != null)) { - tmp8.Time = this.Time.ToArray(); + tmp0.Time = this.Time.ToArray(); } if((ValueList != null)) { - tmp8.ValueList = this.ValueList.DeepCopy(); + tmp0.ValueList = this.ValueList.DeepCopy(); } if((BitmapList != null)) { - tmp8.BitmapList = this.BitmapList.DeepCopy(); + tmp0.BitmapList = this.BitmapList.DeepCopy(); } - return tmp8; + return tmp0; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -102,13 +102,13 @@ public TSQueryDataSet DeepCopy() if (field.Type == TType.List) { { - TList _list9 = await iprot.ReadListBeginAsync(cancellationToken); - ValueList = new List(_list9.Count); - for(int _i10 = 0; _i10 < _list9.Count; ++_i10) + TList _list1 = await iprot.ReadListBeginAsync(cancellationToken); + ValueList = new List(_list1.Count); + for(int _i2 = 0; _i2 < _list1.Count; ++_i2) { - byte[] _elem11; - _elem11 = await iprot.ReadBinaryAsync(cancellationToken); - ValueList.Add(_elem11); + byte[] _elem3; + _elem3 = await iprot.ReadBinaryAsync(cancellationToken); + ValueList.Add(_elem3); } await iprot.ReadListEndAsync(cancellationToken); } @@ -123,13 +123,13 @@ public TSQueryDataSet DeepCopy() if (field.Type == TType.List) { { - TList _list12 = await iprot.ReadListBeginAsync(cancellationToken); - BitmapList = new List(_list12.Count); - for(int _i13 = 0; _i13 < _list12.Count; ++_i13) + TList _list4 = await iprot.ReadListBeginAsync(cancellationToken); + BitmapList = new List(_list4.Count); + for(int _i5 = 0; _i5 < _list4.Count; ++_i5) { - byte[] _elem14; - _elem14 = await iprot.ReadBinaryAsync(cancellationToken); - BitmapList.Add(_elem14); + byte[] _elem6; + _elem6 = await iprot.ReadBinaryAsync(cancellationToken); + BitmapList.Add(_elem6); } await iprot.ReadListEndAsync(cancellationToken); } @@ -193,9 +193,9 @@ public TSQueryDataSet DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); - foreach (byte[] _iter15 in ValueList) + foreach (byte[] _iter7 in ValueList) { - await oprot.WriteBinaryAsync(_iter15, cancellationToken); + await oprot.WriteBinaryAsync(_iter7, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -209,9 +209,9 @@ public TSQueryDataSet DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, BitmapList.Count), cancellationToken); - foreach (byte[] _iter16 in BitmapList) + foreach (byte[] _iter8 in BitmapList) { - await oprot.WriteBinaryAsync(_iter16, cancellationToken); + await oprot.WriteBinaryAsync(_iter8, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs b/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs index dd69065..0b87ab1 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSQueryNonAlignDataSet.cs @@ -48,16 +48,16 @@ public TSQueryNonAlignDataSet(List timeList, List valueList) : t public TSQueryNonAlignDataSet DeepCopy() { - var tmp18 = new TSQueryNonAlignDataSet(); + var tmp10 = new TSQueryNonAlignDataSet(); if((TimeList != null)) { - tmp18.TimeList = this.TimeList.DeepCopy(); + tmp10.TimeList = this.TimeList.DeepCopy(); } if((ValueList != null)) { - tmp18.ValueList = this.ValueList.DeepCopy(); + tmp10.ValueList = this.ValueList.DeepCopy(); } - return tmp18; + return tmp10; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -83,13 +83,13 @@ public TSQueryNonAlignDataSet DeepCopy() if (field.Type == TType.List) { { - TList _list19 = await iprot.ReadListBeginAsync(cancellationToken); - TimeList = new List(_list19.Count); - for(int _i20 = 0; _i20 < _list19.Count; ++_i20) + TList _list11 = await iprot.ReadListBeginAsync(cancellationToken); + TimeList = new List(_list11.Count); + for(int _i12 = 0; _i12 < _list11.Count; ++_i12) { - byte[] _elem21; - _elem21 = await iprot.ReadBinaryAsync(cancellationToken); - TimeList.Add(_elem21); + byte[] _elem13; + _elem13 = await iprot.ReadBinaryAsync(cancellationToken); + TimeList.Add(_elem13); } await iprot.ReadListEndAsync(cancellationToken); } @@ -104,13 +104,13 @@ public TSQueryNonAlignDataSet DeepCopy() if (field.Type == TType.List) { { - TList _list22 = await iprot.ReadListBeginAsync(cancellationToken); - ValueList = new List(_list22.Count); - for(int _i23 = 0; _i23 < _list22.Count; ++_i23) + TList _list14 = await iprot.ReadListBeginAsync(cancellationToken); + ValueList = new List(_list14.Count); + for(int _i15 = 0; _i15 < _list14.Count; ++_i15) { - byte[] _elem24; - _elem24 = await iprot.ReadBinaryAsync(cancellationToken); - ValueList.Add(_elem24); + byte[] _elem16; + _elem16 = await iprot.ReadBinaryAsync(cancellationToken); + ValueList.Add(_elem16); } await iprot.ReadListEndAsync(cancellationToken); } @@ -161,9 +161,9 @@ public TSQueryNonAlignDataSet DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, TimeList.Count), cancellationToken); - foreach (byte[] _iter25 in TimeList) + foreach (byte[] _iter17 in TimeList) { - await oprot.WriteBinaryAsync(_iter25, cancellationToken); + await oprot.WriteBinaryAsync(_iter17, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -177,9 +177,9 @@ public TSQueryNonAlignDataSet DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ValueList.Count), cancellationToken); - foreach (byte[] _iter26 in ValueList) + foreach (byte[] _iter18 in ValueList) { - await oprot.WriteBinaryAsync(_iter26, cancellationToken); + await oprot.WriteBinaryAsync(_iter18, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs index 91d4e23..6663416 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSRawDataQueryReq.cs @@ -34,6 +34,7 @@ public partial class TSRawDataQueryReq : TBase private int _fetchSize; private bool _enableRedirectQuery; private bool _jdbcQuery; + private long _timeout; public long SessionId { get; set; } @@ -84,6 +85,19 @@ public bool JdbcQuery } } + public long Timeout + { + get + { + return _timeout; + } + set + { + __isset.timeout = true; + this._timeout = value; + } + } + public Isset __isset; public struct Isset @@ -91,6 +105,7 @@ public struct Isset public bool fetchSize; public bool enableRedirectQuery; public bool jdbcQuery; + public bool timeout; } public TSRawDataQueryReq() @@ -132,6 +147,11 @@ public TSRawDataQueryReq DeepCopy() tmp318.JdbcQuery = this.JdbcQuery; } tmp318.__isset.jdbcQuery = this.__isset.jdbcQuery; + if(__isset.timeout) + { + tmp318.Timeout = this.Timeout; + } + tmp318.__isset.timeout = this.__isset.timeout; return tmp318; } @@ -252,6 +272,16 @@ public TSRawDataQueryReq DeepCopy() await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; + case 9: + if (field.Type == TType.I64) + { + Timeout = await iprot.ReadI64Async(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; @@ -363,6 +393,15 @@ public TSRawDataQueryReq DeepCopy() await oprot.WriteBoolAsync(JdbcQuery, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } + if(__isset.timeout) + { + field.Name = "timeout"; + field.Type = TType.I64; + field.ID = 9; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(Timeout, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); } @@ -383,7 +422,8 @@ public override bool Equals(object that) && System.Object.Equals(EndTime, other.EndTime) && System.Object.Equals(StatementId, other.StatementId) && ((__isset.enableRedirectQuery == other.__isset.enableRedirectQuery) && ((!__isset.enableRedirectQuery) || (System.Object.Equals(EnableRedirectQuery, other.EnableRedirectQuery)))) - && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))); + && ((__isset.jdbcQuery == other.__isset.jdbcQuery) && ((!__isset.jdbcQuery) || (System.Object.Equals(JdbcQuery, other.JdbcQuery)))) + && ((__isset.timeout == other.__isset.timeout) && ((!__isset.timeout) || (System.Object.Equals(Timeout, other.Timeout)))); } public override int GetHashCode() { @@ -409,6 +449,10 @@ public override int GetHashCode() { { hashcode = (hashcode * 397) + JdbcQuery.GetHashCode(); } + if(__isset.timeout) + { + hashcode = (hashcode * 397) + Timeout.GetHashCode(); + } } return hashcode; } @@ -444,6 +488,11 @@ public override string ToString() sb.Append(", JdbcQuery: "); JdbcQuery.ToString(sb); } + if(__isset.timeout) + { + sb.Append(", Timeout: "); + Timeout.ToString(sb); + } sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs b/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs deleted file mode 100644 index ceed36e..0000000 --- a/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.14.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Text; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Logging; -using Thrift; -using Thrift.Collections; - -using Thrift.Protocol; -using Thrift.Protocol.Entities; -using Thrift.Protocol.Utilities; -using Thrift.Transport; -using Thrift.Transport.Client; -using Thrift.Transport.Server; -using Thrift.Processor; - - -#pragma warning disable IDE0079 // remove unnecessary pragmas -#pragma warning disable IDE1006 // parts of the code use IDL spelling - - -public partial class TSStatus : TBase -{ - private string _message; - private List _subStatus; - private EndPoint _redirectNode; - - public int Code { get; set; } - - public string Message - { - get - { - return _message; - } - set - { - __isset.message = true; - this._message = value; - } - } - - public List SubStatus - { - get - { - return _subStatus; - } - set - { - __isset.subStatus = true; - this._subStatus = value; - } - } - - public EndPoint RedirectNode - { - get - { - return _redirectNode; - } - set - { - __isset.redirectNode = true; - this._redirectNode = value; - } - } - - - public Isset __isset; - public struct Isset - { - public bool message; - public bool subStatus; - public bool redirectNode; - } - - public TSStatus() - { - } - - public TSStatus(int code) : this() - { - this.Code = code; - } - - public TSStatus DeepCopy() - { - var tmp2 = new TSStatus(); - tmp2.Code = this.Code; - if((Message != null) && __isset.message) - { - tmp2.Message = this.Message; - } - tmp2.__isset.message = this.__isset.message; - if((SubStatus != null) && __isset.subStatus) - { - tmp2.SubStatus = this.SubStatus.DeepCopy(); - } - tmp2.__isset.subStatus = this.__isset.subStatus; - if((RedirectNode != null) && __isset.redirectNode) - { - tmp2.RedirectNode = (EndPoint)this.RedirectNode.DeepCopy(); - } - tmp2.__isset.redirectNode = this.__isset.redirectNode; - return tmp2; - } - - public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) - { - iprot.IncrementRecursionDepth(); - try - { - bool isset_code = false; - TField field; - await iprot.ReadStructBeginAsync(cancellationToken); - while (true) - { - field = await iprot.ReadFieldBeginAsync(cancellationToken); - if (field.Type == TType.Stop) - { - break; - } - - switch (field.ID) - { - case 1: - if (field.Type == TType.I32) - { - Code = await iprot.ReadI32Async(cancellationToken); - isset_code = true; - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 2: - if (field.Type == TType.String) - { - Message = await iprot.ReadStringAsync(cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 3: - if (field.Type == TType.List) - { - { - TList _list3 = await iprot.ReadListBeginAsync(cancellationToken); - SubStatus = new List(_list3.Count); - for(int _i4 = 0; _i4 < _list3.Count; ++_i4) - { - TSStatus _elem5; - _elem5 = new TSStatus(); - await _elem5.ReadAsync(iprot, cancellationToken); - SubStatus.Add(_elem5); - } - await iprot.ReadListEndAsync(cancellationToken); - } - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - case 4: - if (field.Type == TType.Struct) - { - RedirectNode = new EndPoint(); - await RedirectNode.ReadAsync(iprot, cancellationToken); - } - else - { - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - } - break; - default: - await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); - break; - } - - await iprot.ReadFieldEndAsync(cancellationToken); - } - - await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_code) - { - throw new TProtocolException(TProtocolException.INVALID_DATA); - } - } - finally - { - iprot.DecrementRecursionDepth(); - } - } - - public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) - { - oprot.IncrementRecursionDepth(); - try - { - var struc = new TStruct("TSStatus"); - await oprot.WriteStructBeginAsync(struc, cancellationToken); - var field = new TField(); - field.Name = "code"; - field.Type = TType.I32; - field.ID = 1; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Code, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - if((Message != null) && __isset.message) - { - field.Name = "message"; - field.Type = TType.String; - field.ID = 2; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Message, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((SubStatus != null) && __isset.subStatus) - { - field.Name = "subStatus"; - field.Type = TType.List; - field.ID = 3; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - { - await oprot.WriteListBeginAsync(new TList(TType.Struct, SubStatus.Count), cancellationToken); - foreach (TSStatus _iter6 in SubStatus) - { - await _iter6.WriteAsync(oprot, cancellationToken); - } - await oprot.WriteListEndAsync(cancellationToken); - } - await oprot.WriteFieldEndAsync(cancellationToken); - } - if((RedirectNode != null) && __isset.redirectNode) - { - field.Name = "redirectNode"; - field.Type = TType.Struct; - field.ID = 4; - await oprot.WriteFieldBeginAsync(field, cancellationToken); - await RedirectNode.WriteAsync(oprot, cancellationToken); - await oprot.WriteFieldEndAsync(cancellationToken); - } - await oprot.WriteFieldStopAsync(cancellationToken); - await oprot.WriteStructEndAsync(cancellationToken); - } - finally - { - oprot.DecrementRecursionDepth(); - } - } - - public override bool Equals(object that) - { - if (!(that is TSStatus other)) return false; - if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Code, other.Code) - && ((__isset.message == other.__isset.message) && ((!__isset.message) || (System.Object.Equals(Message, other.Message)))) - && ((__isset.subStatus == other.__isset.subStatus) && ((!__isset.subStatus) || (TCollections.Equals(SubStatus, other.SubStatus)))) - && ((__isset.redirectNode == other.__isset.redirectNode) && ((!__isset.redirectNode) || (System.Object.Equals(RedirectNode, other.RedirectNode)))); - } - - public override int GetHashCode() { - int hashcode = 157; - unchecked { - hashcode = (hashcode * 397) + Code.GetHashCode(); - if((Message != null) && __isset.message) - { - hashcode = (hashcode * 397) + Message.GetHashCode(); - } - if((SubStatus != null) && __isset.subStatus) - { - hashcode = (hashcode * 397) + TCollections.GetHashCode(SubStatus); - } - if((RedirectNode != null) && __isset.redirectNode) - { - hashcode = (hashcode * 397) + RedirectNode.GetHashCode(); - } - } - return hashcode; - } - - public override string ToString() - { - var sb = new StringBuilder("TSStatus("); - sb.Append(", Code: "); - Code.ToString(sb); - if((Message != null) && __isset.message) - { - sb.Append(", Message: "); - Message.ToString(sb); - } - if((SubStatus != null) && __isset.subStatus) - { - sb.Append(", SubStatus: "); - SubStatus.ToString(sb); - } - if((RedirectNode != null) && __isset.redirectNode) - { - sb.Append(", RedirectNode: "); - RedirectNode.ToString(sb); - } - sb.Append(')'); - return sb.ToString(); - } -} - diff --git a/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs b/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs index 8b09f1f..af09a6f 100644 --- a/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSTracingInfo.cs @@ -189,61 +189,61 @@ public TSTracingInfo(List activityList, List elapsedTimeList) : th public TSTracingInfo DeepCopy() { - var tmp28 = new TSTracingInfo(); + var tmp20 = new TSTracingInfo(); if((ActivityList != null)) { - tmp28.ActivityList = this.ActivityList.DeepCopy(); + tmp20.ActivityList = this.ActivityList.DeepCopy(); } if((ElapsedTimeList != null)) { - tmp28.ElapsedTimeList = this.ElapsedTimeList.DeepCopy(); + tmp20.ElapsedTimeList = this.ElapsedTimeList.DeepCopy(); } if(__isset.seriesPathNum) { - tmp28.SeriesPathNum = this.SeriesPathNum; + tmp20.SeriesPathNum = this.SeriesPathNum; } - tmp28.__isset.seriesPathNum = this.__isset.seriesPathNum; + tmp20.__isset.seriesPathNum = this.__isset.seriesPathNum; if(__isset.seqFileNum) { - tmp28.SeqFileNum = this.SeqFileNum; + tmp20.SeqFileNum = this.SeqFileNum; } - tmp28.__isset.seqFileNum = this.__isset.seqFileNum; + tmp20.__isset.seqFileNum = this.__isset.seqFileNum; if(__isset.unSeqFileNum) { - tmp28.UnSeqFileNum = this.UnSeqFileNum; + tmp20.UnSeqFileNum = this.UnSeqFileNum; } - tmp28.__isset.unSeqFileNum = this.__isset.unSeqFileNum; + tmp20.__isset.unSeqFileNum = this.__isset.unSeqFileNum; if(__isset.sequenceChunkNum) { - tmp28.SequenceChunkNum = this.SequenceChunkNum; + tmp20.SequenceChunkNum = this.SequenceChunkNum; } - tmp28.__isset.sequenceChunkNum = this.__isset.sequenceChunkNum; + tmp20.__isset.sequenceChunkNum = this.__isset.sequenceChunkNum; if(__isset.sequenceChunkPointNum) { - tmp28.SequenceChunkPointNum = this.SequenceChunkPointNum; + tmp20.SequenceChunkPointNum = this.SequenceChunkPointNum; } - tmp28.__isset.sequenceChunkPointNum = this.__isset.sequenceChunkPointNum; + tmp20.__isset.sequenceChunkPointNum = this.__isset.sequenceChunkPointNum; if(__isset.unsequenceChunkNum) { - tmp28.UnsequenceChunkNum = this.UnsequenceChunkNum; + tmp20.UnsequenceChunkNum = this.UnsequenceChunkNum; } - tmp28.__isset.unsequenceChunkNum = this.__isset.unsequenceChunkNum; + tmp20.__isset.unsequenceChunkNum = this.__isset.unsequenceChunkNum; if(__isset.unsequenceChunkPointNum) { - tmp28.UnsequenceChunkPointNum = this.UnsequenceChunkPointNum; + tmp20.UnsequenceChunkPointNum = this.UnsequenceChunkPointNum; } - tmp28.__isset.unsequenceChunkPointNum = this.__isset.unsequenceChunkPointNum; + tmp20.__isset.unsequenceChunkPointNum = this.__isset.unsequenceChunkPointNum; if(__isset.totalPageNum) { - tmp28.TotalPageNum = this.TotalPageNum; + tmp20.TotalPageNum = this.TotalPageNum; } - tmp28.__isset.totalPageNum = this.__isset.totalPageNum; + tmp20.__isset.totalPageNum = this.__isset.totalPageNum; if(__isset.overlappedPageNum) { - tmp28.OverlappedPageNum = this.OverlappedPageNum; + tmp20.OverlappedPageNum = this.OverlappedPageNum; } - tmp28.__isset.overlappedPageNum = this.__isset.overlappedPageNum; - return tmp28; + tmp20.__isset.overlappedPageNum = this.__isset.overlappedPageNum; + return tmp20; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -269,13 +269,13 @@ public TSTracingInfo DeepCopy() if (field.Type == TType.List) { { - TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); - ActivityList = new List(_list29.Count); - for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + TList _list21 = await iprot.ReadListBeginAsync(cancellationToken); + ActivityList = new List(_list21.Count); + for(int _i22 = 0; _i22 < _list21.Count; ++_i22) { - string _elem31; - _elem31 = await iprot.ReadStringAsync(cancellationToken); - ActivityList.Add(_elem31); + string _elem23; + _elem23 = await iprot.ReadStringAsync(cancellationToken); + ActivityList.Add(_elem23); } await iprot.ReadListEndAsync(cancellationToken); } @@ -290,13 +290,13 @@ public TSTracingInfo DeepCopy() if (field.Type == TType.List) { { - TList _list32 = await iprot.ReadListBeginAsync(cancellationToken); - ElapsedTimeList = new List(_list32.Count); - for(int _i33 = 0; _i33 < _list32.Count; ++_i33) + TList _list24 = await iprot.ReadListBeginAsync(cancellationToken); + ElapsedTimeList = new List(_list24.Count); + for(int _i25 = 0; _i25 < _list24.Count; ++_i25) { - long _elem34; - _elem34 = await iprot.ReadI64Async(cancellationToken); - ElapsedTimeList.Add(_elem34); + long _elem26; + _elem26 = await iprot.ReadI64Async(cancellationToken); + ElapsedTimeList.Add(_elem26); } await iprot.ReadListEndAsync(cancellationToken); } @@ -437,9 +437,9 @@ public TSTracingInfo DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.String, ActivityList.Count), cancellationToken); - foreach (string _iter35 in ActivityList) + foreach (string _iter27 in ActivityList) { - await oprot.WriteStringAsync(_iter35, cancellationToken); + await oprot.WriteStringAsync(_iter27, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } @@ -453,9 +453,9 @@ public TSTracingInfo DeepCopy() await oprot.WriteFieldBeginAsync(field, cancellationToken); { await oprot.WriteListBeginAsync(new TList(TType.I64, ElapsedTimeList.Count), cancellationToken); - foreach (long _iter36 in ElapsedTimeList) + foreach (long _iter28 in ElapsedTimeList) { - await oprot.WriteI64Async(_iter36, cancellationToken); + await oprot.WriteI64Async(_iter28, cancellationToken); } await oprot.WriteListEndAsync(cancellationToken); } diff --git a/src/Apache.IoTDB/Rpc/Generated/TSyncIdentityInfo.cs b/src/Apache.IoTDB/Rpc/Generated/TSyncIdentityInfo.cs new file mode 100644 index 0000000..a792a94 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSyncIdentityInfo.cs @@ -0,0 +1,275 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSyncIdentityInfo : TBase +{ + + public string PipeName { get; set; } + + public long CreateTime { get; set; } + + public string Version { get; set; } + + public string Database { get; set; } + + public TSyncIdentityInfo() + { + } + + public TSyncIdentityInfo(string pipeName, long createTime, string version, string database) : this() + { + this.PipeName = pipeName; + this.CreateTime = createTime; + this.Version = version; + this.Database = database; + } + + public TSyncIdentityInfo DeepCopy() + { + var tmp421 = new TSyncIdentityInfo(); + if((PipeName != null)) + { + tmp421.PipeName = this.PipeName; + } + tmp421.CreateTime = this.CreateTime; + if((Version != null)) + { + tmp421.Version = this.Version; + } + if((Database != null)) + { + tmp421.Database = this.Database; + } + return tmp421; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_pipeName = false; + bool isset_createTime = false; + bool isset_version = false; + bool isset_database = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + PipeName = await iprot.ReadStringAsync(cancellationToken); + isset_pipeName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + CreateTime = await iprot.ReadI64Async(cancellationToken); + isset_createTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.String) + { + Version = await iprot.ReadStringAsync(cancellationToken); + isset_version = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.String) + { + Database = await iprot.ReadStringAsync(cancellationToken); + isset_database = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_pipeName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_createTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_version) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_database) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSyncIdentityInfo"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((PipeName != null)) + { + field.Name = "pipeName"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(PipeName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "createTime"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(CreateTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Version != null)) + { + field.Name = "version"; + field.Type = TType.String; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Version, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Database != null)) + { + field.Name = "database"; + field.Type = TType.String; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Database, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSyncIdentityInfo other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(PipeName, other.PipeName) + && System.Object.Equals(CreateTime, other.CreateTime) + && System.Object.Equals(Version, other.Version) + && System.Object.Equals(Database, other.Database); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((PipeName != null)) + { + hashcode = (hashcode * 397) + PipeName.GetHashCode(); + } + hashcode = (hashcode * 397) + CreateTime.GetHashCode(); + if((Version != null)) + { + hashcode = (hashcode * 397) + Version.GetHashCode(); + } + if((Database != null)) + { + hashcode = (hashcode * 397) + Database.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSyncIdentityInfo("); + if((PipeName != null)) + { + sb.Append(", PipeName: "); + PipeName.ToString(sb); + } + sb.Append(", CreateTime: "); + CreateTime.ToString(sb); + if((Version != null)) + { + sb.Append(", Version: "); + Version.ToString(sb); + } + if((Database != null)) + { + sb.Append(", Database: "); + Database.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/EndPoint.cs b/src/Apache.IoTDB/Rpc/Generated/TSyncTransportMetaInfo.cs similarity index 65% rename from src/Apache.IoTDB/Rpc/Generated/EndPoint.cs rename to src/Apache.IoTDB/Rpc/Generated/TSyncTransportMetaInfo.cs index 4f701b2..4d04dbf 100644 --- a/src/Apache.IoTDB/Rpc/Generated/EndPoint.cs +++ b/src/Apache.IoTDB/Rpc/Generated/TSyncTransportMetaInfo.cs @@ -29,32 +29,32 @@ #pragma warning disable IDE1006 // parts of the code use IDL spelling -public partial class EndPoint : TBase +public partial class TSyncTransportMetaInfo : TBase { - public string Ip { get; set; } + public string FileName { get; set; } - public int Port { get; set; } + public long StartIndex { get; set; } - public EndPoint() + public TSyncTransportMetaInfo() { } - public EndPoint(string ip, int port) : this() + public TSyncTransportMetaInfo(string fileName, long startIndex) : this() { - this.Ip = ip; - this.Port = port; + this.FileName = fileName; + this.StartIndex = startIndex; } - public EndPoint DeepCopy() + public TSyncTransportMetaInfo DeepCopy() { - var tmp0 = new EndPoint(); - if((Ip != null)) + var tmp423 = new TSyncTransportMetaInfo(); + if((FileName != null)) { - tmp0.Ip = this.Ip; + tmp423.FileName = this.FileName; } - tmp0.Port = this.Port; - return tmp0; + tmp423.StartIndex = this.StartIndex; + return tmp423; } public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) @@ -62,8 +62,8 @@ public EndPoint DeepCopy() iprot.IncrementRecursionDepth(); try { - bool isset_ip = false; - bool isset_port = false; + bool isset_fileName = false; + bool isset_startIndex = false; TField field; await iprot.ReadStructBeginAsync(cancellationToken); while (true) @@ -79,8 +79,8 @@ public EndPoint DeepCopy() case 1: if (field.Type == TType.String) { - Ip = await iprot.ReadStringAsync(cancellationToken); - isset_ip = true; + FileName = await iprot.ReadStringAsync(cancellationToken); + isset_fileName = true; } else { @@ -88,10 +88,10 @@ public EndPoint DeepCopy() } break; case 2: - if (field.Type == TType.I32) + if (field.Type == TType.I64) { - Port = await iprot.ReadI32Async(cancellationToken); - isset_port = true; + StartIndex = await iprot.ReadI64Async(cancellationToken); + isset_startIndex = true; } else { @@ -107,11 +107,11 @@ public EndPoint DeepCopy() } await iprot.ReadStructEndAsync(cancellationToken); - if (!isset_ip) + if (!isset_fileName) { throw new TProtocolException(TProtocolException.INVALID_DATA); } - if (!isset_port) + if (!isset_startIndex) { throw new TProtocolException(TProtocolException.INVALID_DATA); } @@ -127,23 +127,23 @@ public EndPoint DeepCopy() oprot.IncrementRecursionDepth(); try { - var struc = new TStruct("EndPoint"); + var struc = new TStruct("TSyncTransportMetaInfo"); await oprot.WriteStructBeginAsync(struc, cancellationToken); var field = new TField(); - if((Ip != null)) + if((FileName != null)) { - field.Name = "ip"; + field.Name = "fileName"; field.Type = TType.String; field.ID = 1; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteStringAsync(Ip, cancellationToken); + await oprot.WriteStringAsync(FileName, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); } - field.Name = "port"; - field.Type = TType.I32; + field.Name = "startIndex"; + field.Type = TType.I64; field.ID = 2; await oprot.WriteFieldBeginAsync(field, cancellationToken); - await oprot.WriteI32Async(Port, cancellationToken); + await oprot.WriteI64Async(StartIndex, cancellationToken); await oprot.WriteFieldEndAsync(cancellationToken); await oprot.WriteFieldStopAsync(cancellationToken); await oprot.WriteStructEndAsync(cancellationToken); @@ -156,34 +156,34 @@ public EndPoint DeepCopy() public override bool Equals(object that) { - if (!(that is EndPoint other)) return false; + if (!(that is TSyncTransportMetaInfo other)) return false; if (ReferenceEquals(this, other)) return true; - return System.Object.Equals(Ip, other.Ip) - && System.Object.Equals(Port, other.Port); + return System.Object.Equals(FileName, other.FileName) + && System.Object.Equals(StartIndex, other.StartIndex); } public override int GetHashCode() { int hashcode = 157; unchecked { - if((Ip != null)) + if((FileName != null)) { - hashcode = (hashcode * 397) + Ip.GetHashCode(); + hashcode = (hashcode * 397) + FileName.GetHashCode(); } - hashcode = (hashcode * 397) + Port.GetHashCode(); + hashcode = (hashcode * 397) + StartIndex.GetHashCode(); } return hashcode; } public override string ToString() { - var sb = new StringBuilder("EndPoint("); - if((Ip != null)) + var sb = new StringBuilder("TSyncTransportMetaInfo("); + if((FileName != null)) { - sb.Append(", Ip: "); - Ip.ToString(sb); + sb.Append(", FileName: "); + FileName.ToString(sb); } - sb.Append(", Port: "); - Port.ToString(sb); + sb.Append(", StartIndex: "); + StartIndex.ToString(sb); sb.Append(')'); return sb.ToString(); } diff --git a/src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs b/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs similarity index 75% rename from src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs rename to src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs index a4f5a93..b53fd98 100644 --- a/src/Apache.IoTDB/Rpc/Generated/rpc.Extensions.cs +++ b/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs @@ -20,7 +20,7 @@ #pragma warning disable IDE0079 // remove unnecessary pragmas #pragma warning disable IDE1006 // parts of the code use IDL spelling -public static class rpcExtensions +public static class clientExtensions { public static bool Equals(this Dictionary instance, object that) { @@ -42,10 +42,10 @@ public static Dictionary DeepCopy(this Dictionary sour if (source == null) return null; - var tmp609 = new Dictionary(source.Count); + var tmp667 = new Dictionary(source.Count); foreach (var pair in source) - tmp609.Add((pair.Key != null) ? pair.Key : null, pair.Value); - return tmp609; + tmp667.Add((pair.Key != null) ? pair.Key : null, pair.Value); + return tmp667; } @@ -69,10 +69,10 @@ public static Dictionary DeepCopy(this Dictionary(source.Count); + var tmp668 = new Dictionary(source.Count); foreach (var pair in source) - tmp610.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); - return tmp610; + tmp668.Add((pair.Key != null) ? pair.Key : null, (pair.Value != null) ? pair.Value : null); + return tmp668; } @@ -96,10 +96,10 @@ public static List> DeepCopy(this List>(source.Count); + var tmp669 = new List>(source.Count); foreach (var elem in source) - tmp611.Add((elem != null) ? elem.DeepCopy() : null); - return tmp611; + tmp669.Add((elem != null) ? elem.DeepCopy() : null); + return tmp669; } @@ -123,10 +123,10 @@ public static List> DeepCopy(this List> source) if (source == null) return null; - var tmp612 = new List>(source.Count); + var tmp670 = new List>(source.Count); foreach (var elem in source) - tmp612.Add((elem != null) ? elem.DeepCopy() : null); - return tmp612; + tmp670.Add((elem != null) ? elem.DeepCopy() : null); + return tmp670; } @@ -150,10 +150,37 @@ public static List> DeepCopy(this List> source) if (source == null) return null; - var tmp613 = new List>(source.Count); + var tmp671 = new List>(source.Count); foreach (var elem in source) - tmp613.Add((elem != null) ? elem.DeepCopy() : null); - return tmp613; + tmp671.Add((elem != null) ? elem.DeepCopy() : null); + return tmp671; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp672 = new List(source.Count); + foreach (var elem in source) + tmp672.Add((elem != null) ? elem.DeepCopy() : null); + return tmp672; } @@ -177,10 +204,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp614 = new List(source.Count); + var tmp673 = new List(source.Count); foreach (var elem in source) - tmp614.Add((elem != null) ? elem.DeepCopy() : null); - return tmp614; + tmp673.Add((elem != null) ? elem.DeepCopy() : null); + return tmp673; } @@ -204,10 +231,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp615 = new List(source.Count); + var tmp674 = new List(source.Count); foreach (var elem in source) - tmp615.Add((elem != null) ? elem.ToArray() : null); - return tmp615; + tmp674.Add((elem != null) ? elem.ToArray() : null); + return tmp674; } @@ -231,10 +258,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp616 = new List(source.Count); + var tmp675 = new List(source.Count); foreach (var elem in source) - tmp616.Add(elem); - return tmp616; + tmp675.Add(elem); + return tmp675; } @@ -258,10 +285,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp617 = new List(source.Count); + var tmp676 = new List(source.Count); foreach (var elem in source) - tmp617.Add(elem); - return tmp617; + tmp676.Add(elem); + return tmp676; } @@ -285,10 +312,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp618 = new List(source.Count); + var tmp677 = new List(source.Count); foreach (var elem in source) - tmp618.Add(elem); - return tmp618; + tmp677.Add(elem); + return tmp677; } @@ -312,10 +339,10 @@ public static List DeepCopy(this List source) if (source == null) return null; - var tmp619 = new List(source.Count); + var tmp678 = new List(source.Count); foreach (var elem in source) - tmp619.Add((elem != null) ? elem : null); - return tmp619; + tmp678.Add((elem != null) ? elem : null); + return tmp678; } From eca8f8bf5c6cffc19c684c47fad6fd5ecca669f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E5=B1=95?= Date: Mon, 9 Jan 2023 13:25:19 +0800 Subject: [PATCH 185/214] update common.thrift RPC code --- .../Rpc/Generated/TConfigNodeLocation.cs | 235 +++++++++++ .../Rpc/Generated/TConsensusGroupId.cs | 183 +++++++++ .../Rpc/Generated/TConsensusGroupType.cs | 16 + .../Rpc/Generated/TDataNodeConfiguration.cs | 205 ++++++++++ .../Rpc/Generated/TDataNodeLocation.cs | 364 ++++++++++++++++++ src/Apache.IoTDB/Rpc/Generated/TEndPoint.cs | 191 +++++++++ src/Apache.IoTDB/Rpc/Generated/TFile.cs | 203 ++++++++++ src/Apache.IoTDB/Rpc/Generated/TFilesResp.cs | 222 +++++++++++ src/Apache.IoTDB/Rpc/Generated/TFlushReq.cs | 239 ++++++++++++ .../Rpc/Generated/TNodeResource.cs | 179 +++++++++ .../Rpc/Generated/TRegionMigrateFailedType.cs | 18 + .../Rpc/Generated/TRegionReplicaSet.cs | 222 +++++++++++ src/Apache.IoTDB/Rpc/Generated/TSStatus.cs | 321 +++++++++++++++ src/Apache.IoTDB/Rpc/Generated/TSchemaNode.cs | 191 +++++++++ .../Rpc/Generated/TSeriesPartitionSlot.cs | 149 +++++++ src/Apache.IoTDB/Rpc/Generated/TSetTTLReq.cs | 208 ++++++++++ .../Rpc/Generated/TTimePartitionSlot.cs | 149 +++++++ .../Rpc/Generated/common.Extensions.cs | 133 +++++++ 18 files changed, 3428 insertions(+) create mode 100644 src/Apache.IoTDB/Rpc/Generated/TConfigNodeLocation.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TConsensusGroupId.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TConsensusGroupType.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TDataNodeConfiguration.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TDataNodeLocation.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TEndPoint.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TFile.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TFilesResp.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TFlushReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TNodeResource.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TRegionMigrateFailedType.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TRegionReplicaSet.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSStatus.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSchemaNode.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSeriesPartitionSlot.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TSetTTLReq.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/TTimePartitionSlot.cs create mode 100644 src/Apache.IoTDB/Rpc/Generated/common.Extensions.cs diff --git a/src/Apache.IoTDB/Rpc/Generated/TConfigNodeLocation.cs b/src/Apache.IoTDB/Rpc/Generated/TConfigNodeLocation.cs new file mode 100644 index 0000000..f3bcf28 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TConfigNodeLocation.cs @@ -0,0 +1,235 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TConfigNodeLocation : TBase +{ + + public int ConfigNodeId { get; set; } + + public TEndPoint InternalEndPoint { get; set; } + + public TEndPoint ConsensusEndPoint { get; set; } + + public TConfigNodeLocation() + { + } + + public TConfigNodeLocation(int configNodeId, TEndPoint internalEndPoint, TEndPoint consensusEndPoint) : this() + { + this.ConfigNodeId = configNodeId; + this.InternalEndPoint = internalEndPoint; + this.ConsensusEndPoint = consensusEndPoint; + } + + public TConfigNodeLocation DeepCopy() + { + var tmp22 = new TConfigNodeLocation(); + tmp22.ConfigNodeId = this.ConfigNodeId; + if((InternalEndPoint != null)) + { + tmp22.InternalEndPoint = (TEndPoint)this.InternalEndPoint.DeepCopy(); + } + if((ConsensusEndPoint != null)) + { + tmp22.ConsensusEndPoint = (TEndPoint)this.ConsensusEndPoint.DeepCopy(); + } + return tmp22; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_configNodeId = false; + bool isset_internalEndPoint = false; + bool isset_consensusEndPoint = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + ConfigNodeId = await iprot.ReadI32Async(cancellationToken); + isset_configNodeId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.Struct) + { + InternalEndPoint = new TEndPoint(); + await InternalEndPoint.ReadAsync(iprot, cancellationToken); + isset_internalEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Struct) + { + ConsensusEndPoint = new TEndPoint(); + await ConsensusEndPoint.ReadAsync(iprot, cancellationToken); + isset_consensusEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_configNodeId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_internalEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_consensusEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TConfigNodeLocation"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "configNodeId"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(ConfigNodeId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((InternalEndPoint != null)) + { + field.Name = "internalEndPoint"; + field.Type = TType.Struct; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await InternalEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((ConsensusEndPoint != null)) + { + field.Name = "consensusEndPoint"; + field.Type = TType.Struct; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await ConsensusEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TConfigNodeLocation other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(ConfigNodeId, other.ConfigNodeId) + && System.Object.Equals(InternalEndPoint, other.InternalEndPoint) + && System.Object.Equals(ConsensusEndPoint, other.ConsensusEndPoint); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + ConfigNodeId.GetHashCode(); + if((InternalEndPoint != null)) + { + hashcode = (hashcode * 397) + InternalEndPoint.GetHashCode(); + } + if((ConsensusEndPoint != null)) + { + hashcode = (hashcode * 397) + ConsensusEndPoint.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TConfigNodeLocation("); + sb.Append(", ConfigNodeId: "); + ConfigNodeId.ToString(sb); + if((InternalEndPoint != null)) + { + sb.Append(", InternalEndPoint: "); + InternalEndPoint.ToString(sb); + } + if((ConsensusEndPoint != null)) + { + sb.Append(", ConsensusEndPoint: "); + ConsensusEndPoint.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TConsensusGroupId.cs b/src/Apache.IoTDB/Rpc/Generated/TConsensusGroupId.cs new file mode 100644 index 0000000..1fa2c11 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TConsensusGroupId.cs @@ -0,0 +1,183 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TConsensusGroupId : TBase +{ + + /// + /// + /// + /// + public TConsensusGroupType Type { get; set; } + + public int Id { get; set; } + + public TConsensusGroupId() + { + } + + public TConsensusGroupId(TConsensusGroupType type, int id) : this() + { + this.Type = type; + this.Id = id; + } + + public TConsensusGroupId DeepCopy() + { + var tmp8 = new TConsensusGroupId(); + tmp8.Type = this.Type; + tmp8.Id = this.Id; + return tmp8; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_type = false; + bool isset_id = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + Type = (TConsensusGroupType)await iprot.ReadI32Async(cancellationToken); + isset_type = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + Id = await iprot.ReadI32Async(cancellationToken); + isset_id = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_type) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_id) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TConsensusGroupId"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "type"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async((int)Type, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "id"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Id, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TConsensusGroupId other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Type, other.Type) + && System.Object.Equals(Id, other.Id); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + Type.GetHashCode(); + hashcode = (hashcode * 397) + Id.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TConsensusGroupId("); + sb.Append(", Type: "); + Type.ToString(sb); + sb.Append(", Id: "); + Id.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TConsensusGroupType.cs b/src/Apache.IoTDB/Rpc/Generated/TConsensusGroupType.cs new file mode 100644 index 0000000..ad1b2b7 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TConsensusGroupType.cs @@ -0,0 +1,16 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public enum TConsensusGroupType +{ + ConfigNodeRegion = 0, + DataRegion = 1, + SchemaRegion = 2, +} diff --git a/src/Apache.IoTDB/Rpc/Generated/TDataNodeConfiguration.cs b/src/Apache.IoTDB/Rpc/Generated/TDataNodeConfiguration.cs new file mode 100644 index 0000000..66af75e --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TDataNodeConfiguration.cs @@ -0,0 +1,205 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TDataNodeConfiguration : TBase +{ + + public TDataNodeLocation Location { get; set; } + + public TNodeResource Resource { get; set; } + + public TDataNodeConfiguration() + { + } + + public TDataNodeConfiguration(TDataNodeLocation location, TNodeResource resource) : this() + { + this.Location = location; + this.Resource = resource; + } + + public TDataNodeConfiguration DeepCopy() + { + var tmp26 = new TDataNodeConfiguration(); + if((Location != null)) + { + tmp26.Location = (TDataNodeLocation)this.Location.DeepCopy(); + } + if((Resource != null)) + { + tmp26.Resource = (TNodeResource)this.Resource.DeepCopy(); + } + return tmp26; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_location = false; + bool isset_resource = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Location = new TDataNodeLocation(); + await Location.ReadAsync(iprot, cancellationToken); + isset_location = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.Struct) + { + Resource = new TNodeResource(); + await Resource.ReadAsync(iprot, cancellationToken); + isset_resource = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_location) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_resource) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TDataNodeConfiguration"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Location != null)) + { + field.Name = "location"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Location.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Resource != null)) + { + field.Name = "resource"; + field.Type = TType.Struct; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Resource.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TDataNodeConfiguration other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Location, other.Location) + && System.Object.Equals(Resource, other.Resource); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Location != null)) + { + hashcode = (hashcode * 397) + Location.GetHashCode(); + } + if((Resource != null)) + { + hashcode = (hashcode * 397) + Resource.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TDataNodeConfiguration("); + if((Location != null)) + { + sb.Append(", Location: "); + Location.ToString(sb); + } + if((Resource != null)) + { + sb.Append(", Resource: "); + Resource.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TDataNodeLocation.cs b/src/Apache.IoTDB/Rpc/Generated/TDataNodeLocation.cs new file mode 100644 index 0000000..eb6c0b3 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TDataNodeLocation.cs @@ -0,0 +1,364 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TDataNodeLocation : TBase +{ + + public int DataNodeId { get; set; } + + public TEndPoint ClientRpcEndPoint { get; set; } + + public TEndPoint InternalEndPoint { get; set; } + + public TEndPoint MPPDataExchangeEndPoint { get; set; } + + public TEndPoint DataRegionConsensusEndPoint { get; set; } + + public TEndPoint SchemaRegionConsensusEndPoint { get; set; } + + public TDataNodeLocation() + { + } + + public TDataNodeLocation(int dataNodeId, TEndPoint clientRpcEndPoint, TEndPoint internalEndPoint, TEndPoint mPPDataExchangeEndPoint, TEndPoint dataRegionConsensusEndPoint, TEndPoint schemaRegionConsensusEndPoint) : this() + { + this.DataNodeId = dataNodeId; + this.ClientRpcEndPoint = clientRpcEndPoint; + this.InternalEndPoint = internalEndPoint; + this.MPPDataExchangeEndPoint = mPPDataExchangeEndPoint; + this.DataRegionConsensusEndPoint = dataRegionConsensusEndPoint; + this.SchemaRegionConsensusEndPoint = schemaRegionConsensusEndPoint; + } + + public TDataNodeLocation DeepCopy() + { + var tmp24 = new TDataNodeLocation(); + tmp24.DataNodeId = this.DataNodeId; + if((ClientRpcEndPoint != null)) + { + tmp24.ClientRpcEndPoint = (TEndPoint)this.ClientRpcEndPoint.DeepCopy(); + } + if((InternalEndPoint != null)) + { + tmp24.InternalEndPoint = (TEndPoint)this.InternalEndPoint.DeepCopy(); + } + if((MPPDataExchangeEndPoint != null)) + { + tmp24.MPPDataExchangeEndPoint = (TEndPoint)this.MPPDataExchangeEndPoint.DeepCopy(); + } + if((DataRegionConsensusEndPoint != null)) + { + tmp24.DataRegionConsensusEndPoint = (TEndPoint)this.DataRegionConsensusEndPoint.DeepCopy(); + } + if((SchemaRegionConsensusEndPoint != null)) + { + tmp24.SchemaRegionConsensusEndPoint = (TEndPoint)this.SchemaRegionConsensusEndPoint.DeepCopy(); + } + return tmp24; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_dataNodeId = false; + bool isset_clientRpcEndPoint = false; + bool isset_internalEndPoint = false; + bool isset_mPPDataExchangeEndPoint = false; + bool isset_dataRegionConsensusEndPoint = false; + bool isset_schemaRegionConsensusEndPoint = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + DataNodeId = await iprot.ReadI32Async(cancellationToken); + isset_dataNodeId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.Struct) + { + ClientRpcEndPoint = new TEndPoint(); + await ClientRpcEndPoint.ReadAsync(iprot, cancellationToken); + isset_clientRpcEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.Struct) + { + InternalEndPoint = new TEndPoint(); + await InternalEndPoint.ReadAsync(iprot, cancellationToken); + isset_internalEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.Struct) + { + MPPDataExchangeEndPoint = new TEndPoint(); + await MPPDataExchangeEndPoint.ReadAsync(iprot, cancellationToken); + isset_mPPDataExchangeEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 5: + if (field.Type == TType.Struct) + { + DataRegionConsensusEndPoint = new TEndPoint(); + await DataRegionConsensusEndPoint.ReadAsync(iprot, cancellationToken); + isset_dataRegionConsensusEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 6: + if (field.Type == TType.Struct) + { + SchemaRegionConsensusEndPoint = new TEndPoint(); + await SchemaRegionConsensusEndPoint.ReadAsync(iprot, cancellationToken); + isset_schemaRegionConsensusEndPoint = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_dataNodeId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_clientRpcEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_internalEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_mPPDataExchangeEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataRegionConsensusEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_schemaRegionConsensusEndPoint) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TDataNodeLocation"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "dataNodeId"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(DataNodeId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((ClientRpcEndPoint != null)) + { + field.Name = "clientRpcEndPoint"; + field.Type = TType.Struct; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await ClientRpcEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((InternalEndPoint != null)) + { + field.Name = "internalEndPoint"; + field.Type = TType.Struct; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await InternalEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((MPPDataExchangeEndPoint != null)) + { + field.Name = "mPPDataExchangeEndPoint"; + field.Type = TType.Struct; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await MPPDataExchangeEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataRegionConsensusEndPoint != null)) + { + field.Name = "dataRegionConsensusEndPoint"; + field.Type = TType.Struct; + field.ID = 5; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await DataRegionConsensusEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SchemaRegionConsensusEndPoint != null)) + { + field.Name = "schemaRegionConsensusEndPoint"; + field.Type = TType.Struct; + field.ID = 6; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await SchemaRegionConsensusEndPoint.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TDataNodeLocation other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(DataNodeId, other.DataNodeId) + && System.Object.Equals(ClientRpcEndPoint, other.ClientRpcEndPoint) + && System.Object.Equals(InternalEndPoint, other.InternalEndPoint) + && System.Object.Equals(MPPDataExchangeEndPoint, other.MPPDataExchangeEndPoint) + && System.Object.Equals(DataRegionConsensusEndPoint, other.DataRegionConsensusEndPoint) + && System.Object.Equals(SchemaRegionConsensusEndPoint, other.SchemaRegionConsensusEndPoint); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + DataNodeId.GetHashCode(); + if((ClientRpcEndPoint != null)) + { + hashcode = (hashcode * 397) + ClientRpcEndPoint.GetHashCode(); + } + if((InternalEndPoint != null)) + { + hashcode = (hashcode * 397) + InternalEndPoint.GetHashCode(); + } + if((MPPDataExchangeEndPoint != null)) + { + hashcode = (hashcode * 397) + MPPDataExchangeEndPoint.GetHashCode(); + } + if((DataRegionConsensusEndPoint != null)) + { + hashcode = (hashcode * 397) + DataRegionConsensusEndPoint.GetHashCode(); + } + if((SchemaRegionConsensusEndPoint != null)) + { + hashcode = (hashcode * 397) + SchemaRegionConsensusEndPoint.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TDataNodeLocation("); + sb.Append(", DataNodeId: "); + DataNodeId.ToString(sb); + if((ClientRpcEndPoint != null)) + { + sb.Append(", ClientRpcEndPoint: "); + ClientRpcEndPoint.ToString(sb); + } + if((InternalEndPoint != null)) + { + sb.Append(", InternalEndPoint: "); + InternalEndPoint.ToString(sb); + } + if((MPPDataExchangeEndPoint != null)) + { + sb.Append(", MPPDataExchangeEndPoint: "); + MPPDataExchangeEndPoint.ToString(sb); + } + if((DataRegionConsensusEndPoint != null)) + { + sb.Append(", DataRegionConsensusEndPoint: "); + DataRegionConsensusEndPoint.ToString(sb); + } + if((SchemaRegionConsensusEndPoint != null)) + { + sb.Append(", SchemaRegionConsensusEndPoint: "); + SchemaRegionConsensusEndPoint.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TEndPoint.cs b/src/Apache.IoTDB/Rpc/Generated/TEndPoint.cs new file mode 100644 index 0000000..6388421 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TEndPoint.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TEndPoint : TBase +{ + + public string Ip { get; set; } + + public int Port { get; set; } + + public TEndPoint() + { + } + + public TEndPoint(string ip, int port) : this() + { + this.Ip = ip; + this.Port = port; + } + + public TEndPoint DeepCopy() + { + var tmp0 = new TEndPoint(); + if((Ip != null)) + { + tmp0.Ip = this.Ip; + } + tmp0.Port = this.Port; + return tmp0; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_ip = false; + bool isset_port = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + Ip = await iprot.ReadStringAsync(cancellationToken); + isset_ip = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I32) + { + Port = await iprot.ReadI32Async(cancellationToken); + isset_port = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_ip) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_port) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TEndPoint"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Ip != null)) + { + field.Name = "ip"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Ip, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "port"; + field.Type = TType.I32; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Port, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TEndPoint other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Ip, other.Ip) + && System.Object.Equals(Port, other.Port); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Ip != null)) + { + hashcode = (hashcode * 397) + Ip.GetHashCode(); + } + hashcode = (hashcode * 397) + Port.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TEndPoint("); + if((Ip != null)) + { + sb.Append(", Ip: "); + Ip.ToString(sb); + } + sb.Append(", Port: "); + Port.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TFile.cs b/src/Apache.IoTDB/Rpc/Generated/TFile.cs new file mode 100644 index 0000000..16bd754 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TFile.cs @@ -0,0 +1,203 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TFile : TBase +{ + + public string FileName { get; set; } + + public byte[] File { get; set; } + + public TFile() + { + } + + public TFile(string fileName, byte[] file) : this() + { + this.FileName = fileName; + this.File = file; + } + + public TFile DeepCopy() + { + var tmp42 = new TFile(); + if((FileName != null)) + { + tmp42.FileName = this.FileName; + } + if((File != null)) + { + tmp42.File = this.File.ToArray(); + } + return tmp42; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_fileName = false; + bool isset_file = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + FileName = await iprot.ReadStringAsync(cancellationToken); + isset_fileName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + File = await iprot.ReadBinaryAsync(cancellationToken); + isset_file = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_fileName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_file) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TFile"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((FileName != null)) + { + field.Name = "fileName"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(FileName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((File != null)) + { + field.Name = "file"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteBinaryAsync(File, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TFile other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(FileName, other.FileName) + && TCollections.Equals(File, other.File); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((FileName != null)) + { + hashcode = (hashcode * 397) + FileName.GetHashCode(); + } + if((File != null)) + { + hashcode = (hashcode * 397) + File.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TFile("); + if((FileName != null)) + { + sb.Append(", FileName: "); + FileName.ToString(sb); + } + if((File != null)) + { + sb.Append(", File: "); + File.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TFilesResp.cs b/src/Apache.IoTDB/Rpc/Generated/TFilesResp.cs new file mode 100644 index 0000000..e669773 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TFilesResp.cs @@ -0,0 +1,222 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TFilesResp : TBase +{ + + public TSStatus Status { get; set; } + + public List Files { get; set; } + + public TFilesResp() + { + } + + public TFilesResp(TSStatus status, List files) : this() + { + this.Status = status; + this.Files = files; + } + + public TFilesResp DeepCopy() + { + var tmp44 = new TFilesResp(); + if((Status != null)) + { + tmp44.Status = (TSStatus)this.Status.DeepCopy(); + } + if((Files != null)) + { + tmp44.Files = this.Files.DeepCopy(); + } + return tmp44; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_status = false; + bool isset_files = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + Status = new TSStatus(); + await Status.ReadAsync(iprot, cancellationToken); + isset_status = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list45 = await iprot.ReadListBeginAsync(cancellationToken); + Files = new List(_list45.Count); + for(int _i46 = 0; _i46 < _list45.Count; ++_i46) + { + TFile _elem47; + _elem47 = new TFile(); + await _elem47.ReadAsync(iprot, cancellationToken); + Files.Add(_elem47); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_files = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_status) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_files) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TFilesResp"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((Status != null)) + { + field.Name = "status"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await Status.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((Files != null)) + { + field.Name = "files"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Struct, Files.Count), cancellationToken); + foreach (TFile _iter48 in Files) + { + await _iter48.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TFilesResp other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Status, other.Status) + && TCollections.Equals(Files, other.Files); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((Status != null)) + { + hashcode = (hashcode * 397) + Status.GetHashCode(); + } + if((Files != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(Files); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TFilesResp("); + if((Status != null)) + { + sb.Append(", Status: "); + Status.ToString(sb); + } + if((Files != null)) + { + sb.Append(", Files: "); + Files.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TFlushReq.cs b/src/Apache.IoTDB/Rpc/Generated/TFlushReq.cs new file mode 100644 index 0000000..96969e8 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TFlushReq.cs @@ -0,0 +1,239 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TFlushReq : TBase +{ + private string _isSeq; + private List _storageGroups; + + public string IsSeq + { + get + { + return _isSeq; + } + set + { + __isset.isSeq = true; + this._isSeq = value; + } + } + + public List StorageGroups + { + get + { + return _storageGroups; + } + set + { + __isset.storageGroups = true; + this._storageGroups = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool isSeq; + public bool storageGroups; + } + + public TFlushReq() + { + } + + public TFlushReq DeepCopy() + { + var tmp28 = new TFlushReq(); + if((IsSeq != null) && __isset.isSeq) + { + tmp28.IsSeq = this.IsSeq; + } + tmp28.__isset.isSeq = this.__isset.isSeq; + if((StorageGroups != null) && __isset.storageGroups) + { + tmp28.StorageGroups = this.StorageGroups.DeepCopy(); + } + tmp28.__isset.storageGroups = this.__isset.storageGroups; + return tmp28; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + IsSeq = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list29 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroups = new List(_list29.Count); + for(int _i30 = 0; _i30 < _list29.Count; ++_i30) + { + string _elem31; + _elem31 = await iprot.ReadStringAsync(cancellationToken); + StorageGroups.Add(_elem31); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TFlushReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((IsSeq != null) && __isset.isSeq) + { + field.Name = "isSeq"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(IsSeq, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((StorageGroups != null) && __isset.storageGroups) + { + field.Name = "storageGroups"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroups.Count), cancellationToken); + foreach (string _iter32 in StorageGroups) + { + await oprot.WriteStringAsync(_iter32, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TFlushReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return ((__isset.isSeq == other.__isset.isSeq) && ((!__isset.isSeq) || (System.Object.Equals(IsSeq, other.IsSeq)))) + && ((__isset.storageGroups == other.__isset.storageGroups) && ((!__isset.storageGroups) || (TCollections.Equals(StorageGroups, other.StorageGroups)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((IsSeq != null) && __isset.isSeq) + { + hashcode = (hashcode * 397) + IsSeq.GetHashCode(); + } + if((StorageGroups != null) && __isset.storageGroups) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroups); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TFlushReq("); + int tmp33 = 0; + if((IsSeq != null) && __isset.isSeq) + { + if(0 < tmp33++) { sb.Append(", "); } + sb.Append("IsSeq: "); + IsSeq.ToString(sb); + } + if((StorageGroups != null) && __isset.storageGroups) + { + if(0 < tmp33++) { sb.Append(", "); } + sb.Append("StorageGroups: "); + StorageGroups.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TNodeResource.cs b/src/Apache.IoTDB/Rpc/Generated/TNodeResource.cs new file mode 100644 index 0000000..e42dc58 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TNodeResource.cs @@ -0,0 +1,179 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TNodeResource : TBase +{ + + public int CpuCoreNum { get; set; } + + public long MaxMemory { get; set; } + + public TNodeResource() + { + } + + public TNodeResource(int cpuCoreNum, long maxMemory) : this() + { + this.CpuCoreNum = cpuCoreNum; + this.MaxMemory = maxMemory; + } + + public TNodeResource DeepCopy() + { + var tmp20 = new TNodeResource(); + tmp20.CpuCoreNum = this.CpuCoreNum; + tmp20.MaxMemory = this.MaxMemory; + return tmp20; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_cpuCoreNum = false; + bool isset_maxMemory = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + CpuCoreNum = await iprot.ReadI32Async(cancellationToken); + isset_cpuCoreNum = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + MaxMemory = await iprot.ReadI64Async(cancellationToken); + isset_maxMemory = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_cpuCoreNum) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_maxMemory) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TNodeResource"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "cpuCoreNum"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(CpuCoreNum, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + field.Name = "maxMemory"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(MaxMemory, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TNodeResource other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(CpuCoreNum, other.CpuCoreNum) + && System.Object.Equals(MaxMemory, other.MaxMemory); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + CpuCoreNum.GetHashCode(); + hashcode = (hashcode * 397) + MaxMemory.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TNodeResource("); + sb.Append(", CpuCoreNum: "); + CpuCoreNum.ToString(sb); + sb.Append(", MaxMemory: "); + MaxMemory.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TRegionMigrateFailedType.cs b/src/Apache.IoTDB/Rpc/Generated/TRegionMigrateFailedType.cs new file mode 100644 index 0000000..f073d83 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TRegionMigrateFailedType.cs @@ -0,0 +1,18 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public enum TRegionMigrateFailedType +{ + AddPeerFailed = 0, + RemovePeerFailed = 1, + RemoveConsensusGroupFailed = 2, + DeleteRegionFailed = 3, + CreateRegionFailed = 4, +} diff --git a/src/Apache.IoTDB/Rpc/Generated/TRegionReplicaSet.cs b/src/Apache.IoTDB/Rpc/Generated/TRegionReplicaSet.cs new file mode 100644 index 0000000..00eb286 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TRegionReplicaSet.cs @@ -0,0 +1,222 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TRegionReplicaSet : TBase +{ + + public TConsensusGroupId RegionId { get; set; } + + public List DataNodeLocations { get; set; } + + public TRegionReplicaSet() + { + } + + public TRegionReplicaSet(TConsensusGroupId regionId, List dataNodeLocations) : this() + { + this.RegionId = regionId; + this.DataNodeLocations = dataNodeLocations; + } + + public TRegionReplicaSet DeepCopy() + { + var tmp14 = new TRegionReplicaSet(); + if((RegionId != null)) + { + tmp14.RegionId = (TConsensusGroupId)this.RegionId.DeepCopy(); + } + if((DataNodeLocations != null)) + { + tmp14.DataNodeLocations = this.DataNodeLocations.DeepCopy(); + } + return tmp14; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_regionId = false; + bool isset_dataNodeLocations = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.Struct) + { + RegionId = new TConsensusGroupId(); + await RegionId.ReadAsync(iprot, cancellationToken); + isset_regionId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.List) + { + { + TList _list15 = await iprot.ReadListBeginAsync(cancellationToken); + DataNodeLocations = new List(_list15.Count); + for(int _i16 = 0; _i16 < _list15.Count; ++_i16) + { + TDataNodeLocation _elem17; + _elem17 = new TDataNodeLocation(); + await _elem17.ReadAsync(iprot, cancellationToken); + DataNodeLocations.Add(_elem17); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_dataNodeLocations = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_regionId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_dataNodeLocations) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TRegionReplicaSet"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((RegionId != null)) + { + field.Name = "regionId"; + field.Type = TType.Struct; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await RegionId.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((DataNodeLocations != null)) + { + field.Name = "dataNodeLocations"; + field.Type = TType.List; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Struct, DataNodeLocations.Count), cancellationToken); + foreach (TDataNodeLocation _iter18 in DataNodeLocations) + { + await _iter18.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TRegionReplicaSet other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(RegionId, other.RegionId) + && TCollections.Equals(DataNodeLocations, other.DataNodeLocations); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((RegionId != null)) + { + hashcode = (hashcode * 397) + RegionId.GetHashCode(); + } + if((DataNodeLocations != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(DataNodeLocations); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TRegionReplicaSet("); + if((RegionId != null)) + { + sb.Append(", RegionId: "); + RegionId.ToString(sb); + } + if((DataNodeLocations != null)) + { + sb.Append(", DataNodeLocations: "); + DataNodeLocations.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs b/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs new file mode 100644 index 0000000..fa36296 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSStatus.cs @@ -0,0 +1,321 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSStatus : TBase +{ + private string _message; + private List _subStatus; + private TEndPoint _redirectNode; + + public int Code { get; set; } + + public string Message + { + get + { + return _message; + } + set + { + __isset.message = true; + this._message = value; + } + } + + public List SubStatus + { + get + { + return _subStatus; + } + set + { + __isset.subStatus = true; + this._subStatus = value; + } + } + + public TEndPoint RedirectNode + { + get + { + return _redirectNode; + } + set + { + __isset.redirectNode = true; + this._redirectNode = value; + } + } + + + public Isset __isset; + public struct Isset + { + public bool message; + public bool subStatus; + public bool redirectNode; + } + + public TSStatus() + { + } + + public TSStatus(int code) : this() + { + this.Code = code; + } + + public TSStatus DeepCopy() + { + var tmp2 = new TSStatus(); + tmp2.Code = this.Code; + if((Message != null) && __isset.message) + { + tmp2.Message = this.Message; + } + tmp2.__isset.message = this.__isset.message; + if((SubStatus != null) && __isset.subStatus) + { + tmp2.SubStatus = this.SubStatus.DeepCopy(); + } + tmp2.__isset.subStatus = this.__isset.subStatus; + if((RedirectNode != null) && __isset.redirectNode) + { + tmp2.RedirectNode = (TEndPoint)this.RedirectNode.DeepCopy(); + } + tmp2.__isset.redirectNode = this.__isset.redirectNode; + return tmp2; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_code = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + Code = await iprot.ReadI32Async(cancellationToken); + isset_code = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.String) + { + Message = await iprot.ReadStringAsync(cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 3: + if (field.Type == TType.List) + { + { + TList _list3 = await iprot.ReadListBeginAsync(cancellationToken); + SubStatus = new List(_list3.Count); + for(int _i4 = 0; _i4 < _list3.Count; ++_i4) + { + TSStatus _elem5; + _elem5 = new TSStatus(); + await _elem5.ReadAsync(iprot, cancellationToken); + SubStatus.Add(_elem5); + } + await iprot.ReadListEndAsync(cancellationToken); + } + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 4: + if (field.Type == TType.Struct) + { + RedirectNode = new TEndPoint(); + await RedirectNode.ReadAsync(iprot, cancellationToken); + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_code) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSStatus"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "code"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(Code, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + if((Message != null) && __isset.message) + { + field.Name = "message"; + field.Type = TType.String; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(Message, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((SubStatus != null) && __isset.subStatus) + { + field.Name = "subStatus"; + field.Type = TType.List; + field.ID = 3; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.Struct, SubStatus.Count), cancellationToken); + foreach (TSStatus _iter6 in SubStatus) + { + await _iter6.WriteAsync(oprot, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + if((RedirectNode != null) && __isset.redirectNode) + { + field.Name = "redirectNode"; + field.Type = TType.Struct; + field.ID = 4; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await RedirectNode.WriteAsync(oprot, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSStatus other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(Code, other.Code) + && ((__isset.message == other.__isset.message) && ((!__isset.message) || (System.Object.Equals(Message, other.Message)))) + && ((__isset.subStatus == other.__isset.subStatus) && ((!__isset.subStatus) || (TCollections.Equals(SubStatus, other.SubStatus)))) + && ((__isset.redirectNode == other.__isset.redirectNode) && ((!__isset.redirectNode) || (System.Object.Equals(RedirectNode, other.RedirectNode)))); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + Code.GetHashCode(); + if((Message != null) && __isset.message) + { + hashcode = (hashcode * 397) + Message.GetHashCode(); + } + if((SubStatus != null) && __isset.subStatus) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(SubStatus); + } + if((RedirectNode != null) && __isset.redirectNode) + { + hashcode = (hashcode * 397) + RedirectNode.GetHashCode(); + } + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSStatus("); + sb.Append(", Code: "); + Code.ToString(sb); + if((Message != null) && __isset.message) + { + sb.Append(", Message: "); + Message.ToString(sb); + } + if((SubStatus != null) && __isset.subStatus) + { + sb.Append(", SubStatus: "); + SubStatus.ToString(sb); + } + if((RedirectNode != null) && __isset.redirectNode) + { + sb.Append(", RedirectNode: "); + RedirectNode.ToString(sb); + } + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSchemaNode.cs b/src/Apache.IoTDB/Rpc/Generated/TSchemaNode.cs new file mode 100644 index 0000000..0ddd5f6 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSchemaNode.cs @@ -0,0 +1,191 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSchemaNode : TBase +{ + + public string NodeName { get; set; } + + public sbyte NodeType { get; set; } + + public TSchemaNode() + { + } + + public TSchemaNode(string nodeName, sbyte nodeType) : this() + { + this.NodeName = nodeName; + this.NodeType = nodeType; + } + + public TSchemaNode DeepCopy() + { + var tmp34 = new TSchemaNode(); + if((NodeName != null)) + { + tmp34.NodeName = this.NodeName; + } + tmp34.NodeType = this.NodeType; + return tmp34; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_nodeName = false; + bool isset_nodeType = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.String) + { + NodeName = await iprot.ReadStringAsync(cancellationToken); + isset_nodeName = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.Byte) + { + NodeType = await iprot.ReadByteAsync(cancellationToken); + isset_nodeType = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_nodeName) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_nodeType) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSchemaNode"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((NodeName != null)) + { + field.Name = "nodeName"; + field.Type = TType.String; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteStringAsync(NodeName, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "nodeType"; + field.Type = TType.Byte; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteByteAsync(NodeType, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSchemaNode other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(NodeName, other.NodeName) + && System.Object.Equals(NodeType, other.NodeType); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((NodeName != null)) + { + hashcode = (hashcode * 397) + NodeName.GetHashCode(); + } + hashcode = (hashcode * 397) + NodeType.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSchemaNode("); + if((NodeName != null)) + { + sb.Append(", NodeName: "); + NodeName.ToString(sb); + } + sb.Append(", NodeType: "); + NodeType.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSeriesPartitionSlot.cs b/src/Apache.IoTDB/Rpc/Generated/TSeriesPartitionSlot.cs new file mode 100644 index 0000000..744cdf1 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSeriesPartitionSlot.cs @@ -0,0 +1,149 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSeriesPartitionSlot : TBase +{ + + public int SlotId { get; set; } + + public TSeriesPartitionSlot() + { + } + + public TSeriesPartitionSlot(int slotId) : this() + { + this.SlotId = slotId; + } + + public TSeriesPartitionSlot DeepCopy() + { + var tmp10 = new TSeriesPartitionSlot(); + tmp10.SlotId = this.SlotId; + return tmp10; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_slotId = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I32) + { + SlotId = await iprot.ReadI32Async(cancellationToken); + isset_slotId = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_slotId) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSeriesPartitionSlot"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "slotId"; + field.Type = TType.I32; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI32Async(SlotId, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSeriesPartitionSlot other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(SlotId, other.SlotId); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + SlotId.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSeriesPartitionSlot("); + sb.Append(", SlotId: "); + SlotId.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TSetTTLReq.cs b/src/Apache.IoTDB/Rpc/Generated/TSetTTLReq.cs new file mode 100644 index 0000000..1d374a9 --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TSetTTLReq.cs @@ -0,0 +1,208 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TSetTTLReq : TBase +{ + + public List StorageGroupPathPattern { get; set; } + + public long TTL { get; set; } + + public TSetTTLReq() + { + } + + public TSetTTLReq(List storageGroupPathPattern, long TTL) : this() + { + this.StorageGroupPathPattern = storageGroupPathPattern; + this.TTL = TTL; + } + + public TSetTTLReq DeepCopy() + { + var tmp36 = new TSetTTLReq(); + if((StorageGroupPathPattern != null)) + { + tmp36.StorageGroupPathPattern = this.StorageGroupPathPattern.DeepCopy(); + } + tmp36.TTL = this.TTL; + return tmp36; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_storageGroupPathPattern = false; + bool isset_TTL = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.List) + { + { + TList _list37 = await iprot.ReadListBeginAsync(cancellationToken); + StorageGroupPathPattern = new List(_list37.Count); + for(int _i38 = 0; _i38 < _list37.Count; ++_i38) + { + string _elem39; + _elem39 = await iprot.ReadStringAsync(cancellationToken); + StorageGroupPathPattern.Add(_elem39); + } + await iprot.ReadListEndAsync(cancellationToken); + } + isset_storageGroupPathPattern = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + case 2: + if (field.Type == TType.I64) + { + TTL = await iprot.ReadI64Async(cancellationToken); + isset_TTL = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_storageGroupPathPattern) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + if (!isset_TTL) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TSetTTLReq"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + if((StorageGroupPathPattern != null)) + { + field.Name = "storageGroupPathPattern"; + field.Type = TType.List; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + { + await oprot.WriteListBeginAsync(new TList(TType.String, StorageGroupPathPattern.Count), cancellationToken); + foreach (string _iter40 in StorageGroupPathPattern) + { + await oprot.WriteStringAsync(_iter40, cancellationToken); + } + await oprot.WriteListEndAsync(cancellationToken); + } + await oprot.WriteFieldEndAsync(cancellationToken); + } + field.Name = "TTL"; + field.Type = TType.I64; + field.ID = 2; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(TTL, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TSetTTLReq other)) return false; + if (ReferenceEquals(this, other)) return true; + return TCollections.Equals(StorageGroupPathPattern, other.StorageGroupPathPattern) + && System.Object.Equals(TTL, other.TTL); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + if((StorageGroupPathPattern != null)) + { + hashcode = (hashcode * 397) + TCollections.GetHashCode(StorageGroupPathPattern); + } + hashcode = (hashcode * 397) + TTL.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TSetTTLReq("); + if((StorageGroupPathPattern != null)) + { + sb.Append(", StorageGroupPathPattern: "); + StorageGroupPathPattern.ToString(sb); + } + sb.Append(", TTL: "); + TTL.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/TTimePartitionSlot.cs b/src/Apache.IoTDB/Rpc/Generated/TTimePartitionSlot.cs new file mode 100644 index 0000000..1adf4fa --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/TTimePartitionSlot.cs @@ -0,0 +1,149 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + +using Thrift.Protocol; +using Thrift.Protocol.Entities; +using Thrift.Protocol.Utilities; +using Thrift.Transport; +using Thrift.Transport.Client; +using Thrift.Transport.Server; +using Thrift.Processor; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + + +public partial class TTimePartitionSlot : TBase +{ + + public long StartTime { get; set; } + + public TTimePartitionSlot() + { + } + + public TTimePartitionSlot(long startTime) : this() + { + this.StartTime = startTime; + } + + public TTimePartitionSlot DeepCopy() + { + var tmp12 = new TTimePartitionSlot(); + tmp12.StartTime = this.StartTime; + return tmp12; + } + + public async global::System.Threading.Tasks.Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) + { + iprot.IncrementRecursionDepth(); + try + { + bool isset_startTime = false; + TField field; + await iprot.ReadStructBeginAsync(cancellationToken); + while (true) + { + field = await iprot.ReadFieldBeginAsync(cancellationToken); + if (field.Type == TType.Stop) + { + break; + } + + switch (field.ID) + { + case 1: + if (field.Type == TType.I64) + { + StartTime = await iprot.ReadI64Async(cancellationToken); + isset_startTime = true; + } + else + { + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + } + break; + default: + await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); + break; + } + + await iprot.ReadFieldEndAsync(cancellationToken); + } + + await iprot.ReadStructEndAsync(cancellationToken); + if (!isset_startTime) + { + throw new TProtocolException(TProtocolException.INVALID_DATA); + } + } + finally + { + iprot.DecrementRecursionDepth(); + } + } + + public async global::System.Threading.Tasks.Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken) + { + oprot.IncrementRecursionDepth(); + try + { + var struc = new TStruct("TTimePartitionSlot"); + await oprot.WriteStructBeginAsync(struc, cancellationToken); + var field = new TField(); + field.Name = "startTime"; + field.Type = TType.I64; + field.ID = 1; + await oprot.WriteFieldBeginAsync(field, cancellationToken); + await oprot.WriteI64Async(StartTime, cancellationToken); + await oprot.WriteFieldEndAsync(cancellationToken); + await oprot.WriteFieldStopAsync(cancellationToken); + await oprot.WriteStructEndAsync(cancellationToken); + } + finally + { + oprot.DecrementRecursionDepth(); + } + } + + public override bool Equals(object that) + { + if (!(that is TTimePartitionSlot other)) return false; + if (ReferenceEquals(this, other)) return true; + return System.Object.Equals(StartTime, other.StartTime); + } + + public override int GetHashCode() { + int hashcode = 157; + unchecked { + hashcode = (hashcode * 397) + StartTime.GetHashCode(); + } + return hashcode; + } + + public override string ToString() + { + var sb = new StringBuilder("TTimePartitionSlot("); + sb.Append(", StartTime: "); + StartTime.ToString(sb); + sb.Append(')'); + return sb.ToString(); + } +} + diff --git a/src/Apache.IoTDB/Rpc/Generated/common.Extensions.cs b/src/Apache.IoTDB/Rpc/Generated/common.Extensions.cs new file mode 100644 index 0000000..84a370c --- /dev/null +++ b/src/Apache.IoTDB/Rpc/Generated/common.Extensions.cs @@ -0,0 +1,133 @@ +/** + * Autogenerated by Thrift Compiler (0.14.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Thrift; +using Thrift.Collections; + + +#pragma warning disable IDE0079 // remove unnecessary pragmas +#pragma warning disable IDE1006 // parts of the code use IDL spelling + +public static class commonExtensions +{ + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp50 = new List(source.Count); + foreach (var elem in source) + tmp50.Add((elem != null) ? elem.DeepCopy() : null); + return tmp50; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp51 = new List(source.Count); + foreach (var elem in source) + tmp51.Add((elem != null) ? elem.DeepCopy() : null); + return tmp51; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp52 = new List(source.Count); + foreach (var elem in source) + tmp52.Add((elem != null) ? elem.DeepCopy() : null); + return tmp52; + } + + + public static bool Equals(this List instance, object that) + { + if (!(that is List other)) return false; + if (ReferenceEquals(instance, other)) return true; + + return TCollections.Equals(instance, other); + } + + + public static int GetHashCode(this List instance) + { + return TCollections.GetHashCode(instance); + } + + + public static List DeepCopy(this List source) + { + if (source == null) + return null; + + var tmp53 = new List(source.Count); + foreach (var elem in source) + tmp53.Add((elem != null) ? elem : null); + return tmp53; + } + + +} From 194fa720792694d84511dc46124dc72713a5a412 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 9 Jan 2023 14:33:24 +0800 Subject: [PATCH 186/214] Update client.Extensions.cs remove the duplicate definition problem of client.Extension.cs and common.Extension.cs which leads to CS0121 error --- .../Rpc/Generated/client.Extensions.cs | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs b/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs index b53fd98..68f527b 100644 --- a/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs +++ b/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs @@ -334,16 +334,16 @@ public static int GetHashCode(this List instance) } - public static List DeepCopy(this List source) - { - if (source == null) - return null; - - var tmp678 = new List(source.Count); - foreach (var elem in source) - tmp678.Add((elem != null) ? elem : null); - return tmp678; - } + // public static List DeepCopy(this List source) + // { + // if (source == null) + // return null; + + // var tmp678 = new List(source.Count); + // foreach (var elem in source) + // tmp678.Add((elem != null) ? elem : null); + // return tmp678; + // } } From 2c047a4dc26e2cfeaf7cb537ba5820cccc45228b Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 9 Jan 2023 14:33:50 +0800 Subject: [PATCH 187/214] Update SessionPool.cs fix the LF in SessionPool.cs --- src/Apache.IoTDB/SessionPool.cs | 109 ++++++++++++++++---------------- 1 file changed, 55 insertions(+), 54 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 18bc889..56d1c1c 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -2,12 +2,12 @@ using System.Collections.Generic; using System.Linq; using System.Net.Sockets; -using System.Numerics; +using System.Numerics; using System.Threading; using System.Threading.Tasks; using Apache.IoTDB.DataStructure; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; using Thrift; using Thrift.Protocol; using Thrift.Transport; @@ -15,10 +15,11 @@ namespace Apache.IoTDB { - + public class SessionPool:IDisposable { private static int SuccessCode => 200; + private static int RedirectRecommendCode => 400; private static readonly TSProtocolVersion ProtocolVersion = TSProtocolVersion.IOTDB_SERVICE_PROTOCOL_V3; private readonly string _username; @@ -39,22 +40,22 @@ public class SessionPool:IDisposable public SessionPool(string host, int port, int poolSize) : this(host, port, "root", "root", poolSize, "UTC+08:00", 8, true, 60) { - } + } public SessionPool(string host, int port, string username, string password) : this(host, port, username, password, 1024, "UTC+08:00", 8, true, 60) { } - public SessionPool(string host, int port, string username, string password, int fetchSize) - : this(host, port, username, password, fetchSize, "UTC+08:00", 8, true, 60) - { - + public SessionPool(string host, int port, string username, string password, int fetchSize) + : this(host, port, username, password, fetchSize, "UTC+08:00", 8, true, 60) + { + } public SessionPool(string host, int port) : this(host, port, "root", "root", 1024, "UTC+08:00", 8, true, 60) { - } + } public SessionPool(string host, int port, string username, string password, int fetchSize, string zoneId, int poolSize, bool enableRpcCompression, int timeout) { _host = host; @@ -67,20 +68,20 @@ public SessionPool(string host, int port, string username, string password, int _poolSize = poolSize; _enableRpcCompression = enableRpcCompression; _timeout = timeout; - } - - /// - /// Gets or sets the amount of time a Session will wait for a send operation to complete successfully. - /// - /// The send time-out value, in milliseconds. The default is 10000. - public int TimeOut { get; set; } = 10000; - - ILoggerFactory factory; - private bool disposedValue; - + } + + /// + /// Gets or sets the amount of time a Session will wait for a send operation to complete successfully. + /// + /// The send time-out value, in milliseconds. The default is 10000. + public int TimeOut { get; set; } = 10000; + + ILoggerFactory factory; + private bool disposedValue; + public void OpenDebugMode(Action configure) { - _debugMode = true; + _debugMode = true; factory= LoggerFactory.Create(configure); _logger = factory.CreateLogger(nameof(Apache.IoTDB)); } @@ -88,18 +89,18 @@ public void OpenDebugMode(Action configure) public void CloseDebugMode() { _debugMode = false; - } - + } + public async Task Open(bool enableRpcCompression, CancellationToken cancellationToken = default) - { - _enableRpcCompression = enableRpcCompression; - await Open(cancellationToken); - } - + { + _enableRpcCompression = enableRpcCompression; + await Open(cancellationToken); + } + public async Task Open(CancellationToken cancellationToken = default) { - _clients = new ConcurrentClientQueue(); - _clients.Timeout = _timeout*5; + _clients = new ConcurrentClientQueue(); + _clients.Timeout = _timeout*5; for (var index = 0; index < _poolSize; index++) { _clients.Add(await CreateAndOpen(_enableRpcCompression,_timeout, cancellationToken)); @@ -2064,28 +2065,28 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam { _clients.Add(client); } - } - - protected virtual void Dispose(bool disposing) - { - if (!disposedValue) - { - if (disposing) - { -#if NET461_OR_GREATER || NETSTANDARD2_0 -#else - _clients.ClientQueue.Clear(); -#endif - } - _clients = null; - disposedValue = true; - } - } - - public void Dispose() - { - Dispose(disposing: true); - GC.SuppressFinalize(this); - } + } + + protected virtual void Dispose(bool disposing) + { + if (!disposedValue) + { + if (disposing) + { +#if NET461_OR_GREATER || NETSTANDARD2_0 +#else + _clients.ClientQueue.Clear(); +#endif + } + _clients = null; + disposedValue = true; + } + } + + public void Dispose() + { + Dispose(disposing: true); + GC.SuppressFinalize(this); + } } } \ No newline at end of file From 3a072e7c9284a7c9a56df7b99756e69ee8d1f28e Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 9 Jan 2023 14:35:30 +0800 Subject: [PATCH 188/214] Update client.Extensions.cs remove duplicate DeepCopy of TSStatus in client.Extension.cs --- .../Rpc/Generated/client.Extensions.cs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs b/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs index 68f527b..a9abfa8 100644 --- a/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs +++ b/src/Apache.IoTDB/Rpc/Generated/client.Extensions.cs @@ -199,16 +199,16 @@ public static int GetHashCode(this List instance) } - public static List DeepCopy(this List source) - { - if (source == null) - return null; + // public static List DeepCopy(this List source) + // { + // if (source == null) + // return null; - var tmp673 = new List(source.Count); - foreach (var elem in source) - tmp673.Add((elem != null) ? elem.DeepCopy() : null); - return tmp673; - } + // var tmp673 = new List(source.Count); + // foreach (var elem in source) + // tmp673.Add((elem != null) ? elem.DeepCopy() : null); + // return tmp673; + // } public static bool Equals(this List instance, object that) From 0e474375080372df292f6e4412aa171e591f4223 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 9 Jan 2023 16:03:56 +0800 Subject: [PATCH 189/214] fix some compability issues --- src/Apache.IoTDB/Client.cs | 4 ++-- src/Apache.IoTDB/SessionPool.cs | 9 ++++----- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/Apache.IoTDB/Client.cs b/src/Apache.IoTDB/Client.cs index 29d5106..0fb5507 100644 --- a/src/Apache.IoTDB/Client.cs +++ b/src/Apache.IoTDB/Client.cs @@ -4,12 +4,12 @@ namespace Apache.IoTDB { public class Client { - public TSIService.Client ServiceClient { get; } + public IClientRPCService.Client ServiceClient { get; } public long SessionId { get; } public long StatementId { get; } public TFramedTransport Transport { get; } - public Client(TSIService.Client client, long sessionId, long statementId, TFramedTransport transport) + public Client(IClientRPCService.Client client, long sessionId, long statementId, TFramedTransport transport) { ServiceClient = client; SessionId = sessionId; diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 56d1c1c..c6c67d3 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -196,13 +196,12 @@ private async Task CreateAndOpen(bool enableRpcCompression,int timeout, } var client = enableRpcCompression ? - new TSIService.Client(new TCompactProtocol(transport)) : - new TSIService.Client(new TBinaryProtocol(transport)); + new IClientRPCService.Client(new TCompactProtocol(transport)) : + new IClientRPCService.Client(new TBinaryProtocol(transport)); - var openReq = new TSOpenSessionReq(ProtocolVersion, _zoneId) + var openReq = new TSOpenSessionReq(ProtocolVersion, _zoneId, _username) { - Username = _username, - Password = _password + Password = _password, }; try From 11fe86b195246f922b16112013890c46e610832d Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 9 Jan 2023 17:30:03 +0800 Subject: [PATCH 190/214] finish string record interfaces --- src/Apache.IoTDB/SessionPool.cs | 203 ++++++++++++++++++++++++++++++-- 1 file changed, 195 insertions(+), 8 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index c6c67d3..f60dd94 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -16,7 +16,7 @@ namespace Apache.IoTDB { - public class SessionPool:IDisposable + public class SessionPool : IDisposable { private static int SuccessCode => 200; private static int RedirectRecommendCode => 400; @@ -82,7 +82,7 @@ public SessionPool(string host, int port, string username, string password, int public void OpenDebugMode(Action configure) { _debugMode = true; - factory= LoggerFactory.Create(configure); + factory = LoggerFactory.Create(configure); _logger = factory.CreateLogger(nameof(Apache.IoTDB)); } @@ -100,10 +100,10 @@ public async Task Open(bool enableRpcCompression, CancellationToken cancellation public async Task Open(CancellationToken cancellationToken = default) { _clients = new ConcurrentClientQueue(); - _clients.Timeout = _timeout*5; + _clients.Timeout = _timeout * 5; for (var index = 0; index < _poolSize; index++) { - _clients.Add(await CreateAndOpen(_enableRpcCompression,_timeout, cancellationToken)); + _clients.Add(await CreateAndOpen(_enableRpcCompression, _timeout, cancellationToken)); } } @@ -183,7 +183,7 @@ public async Task GetTimeZone() } } - private async Task CreateAndOpen(bool enableRpcCompression,int timeout, CancellationToken cancellationToken = default) + private async Task CreateAndOpen(bool enableRpcCompression, int timeout, CancellationToken cancellationToken = default) { var tcpClient = new TcpClient(_host, _port); tcpClient.SendTimeout = timeout; @@ -724,26 +724,213 @@ public async Task InsertAlignedRecordAsync(string deviceId, RowRecord recor } public TSInsertStringRecordReq GenInsertStrRecordReq(string deviceId, List measurements, - List values, long timestamp, long sessionId) + List values, long timestamp, long sessionId, bool isAligned = false) { if (values.Count() != measurements.Count()) { throw new TException("length of data types does not equal to length of values!", null); } - return new TSInsertStringRecordReq(sessionId, deviceId, measurements, values, timestamp); + return new TSInsertStringRecordReq(sessionId, deviceId, measurements, values, timestamp) + { + IsAligned = isAligned + }; + } + public TSInsertStringRecordsReq GenInsertStringRecordsReq(List deviceIds, List> measurementsList, + List> valuesList, List timestamps, long sessionId, bool isAligned = false) + { + if (valuesList.Count() != measurementsList.Count()) + { + throw new TException("length of data types does not equal to length of values!", null); + } + + return new TSInsertStringRecordsReq(sessionId, deviceIds, measurementsList, valuesList, timestamps) + { + IsAligned = isAligned + }; } public TSInsertRecordsReq GenInsertRecordsReq(List deviceId, List rowRecords, long sessionId) { - //TODO var measurementLst = rowRecords.Select(x => x.Measurements).ToList(); var timestampLst = rowRecords.Select(x => x.Timestamps).ToList(); var valuesLstInBytes = rowRecords.Select(row => row.ToBytes()).ToList(); return new TSInsertRecordsReq(sessionId, deviceId, measurementLst, valuesLstInBytes, timestampLst); } + public async Task InsertStringRecordAsync(string deviceId, List measurements, List values, + long timestamp) + { + var client = _clients.Take(); + var req = GenInsertStrRecordReq(deviceId, measurements, values, timestamp, client.SessionId); + try + { + var status = await client.ServiceClient.insertStringRecordAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert one string record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertStringRecordAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting a string record", ex); + } + } + finally + { + _clients.Add(client); + } + } + public async Task InsertAlignedStringRecordAsync(string deviceId, List measurements, List values, + long timestamp) + { + var client = _clients.Take(); + var req = GenInsertStrRecordReq(deviceId, measurements, values, timestamp, client.SessionId, true); + try + { + var status = await client.ServiceClient.insertStringRecordAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertStringRecordAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting record", ex); + } + } + finally + { + _clients.Add(client); + } + } + public async Task InsertStringRecordsAsync(List deviceIds, List> measurements, List> values, + List timestamps) + { + var client = _clients.Take(); + var req = GenInsertStringRecordsReq(deviceIds, measurements, values, timestamps, client.SessionId); + try + { + var status = await client.ServiceClient.insertStringRecordsAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert string records to devices {0}, server message: {1}", deviceIds, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + + } + catch (TException e) + { + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertStringRecordsAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert string records to devices {0}, server message: {1}", deviceIds, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + + } + catch (TException ex) + { + throw new TException("Error occurs when inserting string records", ex); + } + } + finally + { + _clients.Add(client); + } + } + public async Task InsertAlignedStringRecordsAsync(List deviceIds, List> measurements, List> values, + List timestamps) + { + var client = _clients.Take(); + var req = GenInsertStringRecordsReq(deviceIds, measurements, values, timestamps, client.SessionId, true); + try + { + var status = await client.ServiceClient.insertStringRecordsAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert string records to devices {0}, server message: {1}", deviceIds, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + + } + catch (TException e) + { + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertStringRecordsAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert string records to devices {0}, server message: {1}", deviceIds, status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + + } + catch (TException ex) + { + throw new TException("Error occurs when inserting string records", ex); + } + } + finally + { + _clients.Add(client); + } + } public async Task InsertRecordsAsync(List deviceId, List rowRecords) { From 88f5b4e40dbd69ece4beb46ab3344f5a8696b853 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Tue, 10 Jan 2023 10:45:00 +0800 Subject: [PATCH 191/214] fix the bug in #87 which is caused by SessionDataSet close fail because of one losing parameter statementId in TSCloseOperationReq --- .../Apache.IoTDB.Samples/SessionPoolTest.cs | 244 ++++++++++++------ .../DataStructure/SessionDataSet.cs | 105 ++++---- 2 files changed, 219 insertions(+), 130 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index 189c4d6..d0eae45 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; -using Apache.IoTDB.Data; +using Apache.IoTDB.Data; using Apache.IoTDB.DataStructure; -using ConsoleTableExt; - +using ConsoleTableExt; + namespace Apache.IoTDB.Samples { public partial class SessionPoolTest @@ -38,68 +38,69 @@ public SessionPoolTest(string _host = "localhost") } public async Task Test() - { - - await TestInsertAlignedRecord(); - - await TestInsertAlignedRecords(); - - await TestInsertAlignedRecordsOfOneDevice(); - - await TestInsertAlignedTablet(); - - await TestInsertAlignedTablets(); - - await TestInsertRecord(); - - await TestCreateMultiTimeSeries(); - - await TestInsertStrRecord(); - - await TestInsertRecords(); - - await TestInsertRecordsOfOneDevice(); - - await TestInsertTablet(); - - await TestInsertTabletWithNullValue(); - - await TestInsertTablets(); - - await TestAddAlignedMeasurements(); - - await TestAddUnalignedMeasurements(); - - await TestSetAndUnsetSchemaTemplate(); - - await TestCreateAlignedTimeseries(); - - await TestCreateAndDropSchemaTemplate(); - - await TestDeleteNodeInTemplate(); - - await TestGetTimeZone(); - - await TestSetAndDeleteStorageGroup(); - - await TestCreateTimeSeries(); - - await TestDeleteTimeSeries(); - - await TestDeleteStorageGroups(); - - await TestCheckTimeSeriesExists(); - - await TestSetTimeZone(); - - await TestDeleteData(); - - await TestNonSql(); - - - await TestSqlQuery(); - - await TestNonSqlBy_ADO(); + { + + // await TestInsertAlignedRecord(); + + // await TestInsertAlignedRecords(); + + // await TestInsertAlignedRecordsOfOneDevice(); + + // await TestInsertAlignedTablet(); + + // await TestInsertAlignedTablets(); + + // await TestInsertRecord(); + + // await TestCreateMultiTimeSeries(); + + // await TestInsertStrRecord(); + + // await TestInsertRecords(); + + // await TestInsertRecordsOfOneDevice(); + + // await TestInsertTablet(); + + // await TestInsertTabletWithNullValue(); + + // await TestInsertTablets(); + + // await TestAddAlignedMeasurements(); + + // await TestAddUnalignedMeasurements(); + + // await TestSetAndUnsetSchemaTemplate(); + + // await TestCreateAlignedTimeseries(); + + // await TestCreateAndDropSchemaTemplate(); + + // await TestDeleteNodeInTemplate(); + + // await TestGetTimeZone(); + + // await TestSetAndDeleteStorageGroup(); + + // await TestCreateTimeSeries(); + + // await TestDeleteTimeSeries(); + + // await TestDeleteStorageGroups(); + + // await TestCheckTimeSeriesExists(); + + // await TestSetTimeZone(); + + // await TestDeleteData(); + + // await TestNonSql(); + + + // await TestSqlQuery(); + + // await TestNonSqlBy_ADO(); + await TestManyQuery(); } public async Task TestGetTimeZone() @@ -133,6 +134,93 @@ public async Task TestSetAndDeleteStorageGroup() await session_pool.Close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } + public async Task TestManyQuery() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + // bool isInitTest = false; + // if (isInitTest) + // { + // status = await session_pool.DeleteStorageGroupAsync(test_group_name); + // System.Diagnostics.Debug.Assert( + // await session_pool.SetStorageGroup(test_group_name) == 0); + // } + + // List values = new List(); + // List measurements = new List(); + // for (int i = 0; i < 150; i++)//150个DOUBLE_Ser_ + // { + // values.Add(double.Parse(i.ToString())); + // var meas_name = string.Format("{0}.{1}.DOUBLESer{2}", test_group_name, test_device, i); + // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); + // if (isInitTest) + // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, + // TSDataType.DOUBLE, TSEncoding.GORILLA, Compressor.SNAPPY) == 0); + + // } + // for (int i = 0; i < 5; i++)//5个BOOL_Ser_ + // { + + // values.Add(i % 3 == 0); + // var meas_name = string.Format("{0}.{1}.BOOLEANSer{2}", test_group_name, test_device, i); + // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); + // if (isInitTest) + // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, + // TSDataType.BOOLEAN, TSEncoding.RLE, Compressor.SNAPPY) == 0); + // } + // for (int i = 0; i < 5; i++)//5个INT32_Ser_ + // { + + // values.Add(Int32.Parse(i.ToString())); + // var meas_name = string.Format("{0}.{1}.INT32Ser{2}", test_group_name, test_device, i); + // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); + // if (isInitTest) + // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, + // TSDataType.INT32, TSEncoding.RLE, Compressor.SNAPPY) == 0); + // } + // for (int i = 0; i < 10; i++)//10个TEXT_Ser_ + // { + + // values.Add($"aaaaaaaaaaaaabbbbbbbb_{i}"); + // var meas_name = string.Format("{0}.{1}.TEXTSer{2}", test_group_name, test_device, i); + // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); + // if (isInitTest) + // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, + // TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); + // } + // //插入数据 + // Console.WriteLine("********************\n准备插入数据 \n\n"); + // var device_id = string.Format("{0}.{1}", test_group_name, test_device); + // var rowRecords = new List() { new RowRecord(DateTime.Now, values, measurements) }; + // status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); + // System.Diagnostics.Debug.Assert(status == 0); + // Console.WriteLine($"********************\n插入数据完成,code={status} \n\n"); + for (int i = 0; i < 10000; i++) + { + Console.WriteLine($"********************\n查询测试,{i}次 \n\n"); + //await session_pool.Open(false); + + var res = await session_pool.ExecuteQueryStatementAsync( + "select last_value(*) from " + string.Format("{0}.{1} align by device", test_group_name, test_device)); + // System.Diagnostics.Debug.Assert(res.RowCount == 1); + int cnt = 0; + // while (res.HasNext()) + // { + // cnt++; + // Console.WriteLine("cnt = " + cnt); + // // Console.WriteLine(res.Next()); + // var next = res.Next(); + // Console.WriteLine(next); + // // break; + // } + await res.Close(); + //await session_pool.Close(); + } + Console.WriteLine("********************\n查询测试完成 \n\n"); + await session_pool.Close(); + } public async Task TestDeleteStorageGroups() @@ -270,26 +358,26 @@ await session_pool.ExecuteNonQueryStatementAsync( System.Diagnostics.Debug.Assert(status == 0); await session_pool.Close(); Console.WriteLine("TestNonSql Passed"); - } - + } + public async Task TestNonSqlBy_ADO() { var cnts = new IoTDB.Data.IoTDBConnectionStringBuilder(); cnts.DataSource = host; cnts.TimeOut =(int) TimeSpan.FromSeconds(20).TotalMilliseconds; var cnt = new IoTDB.Data.IoTDBConnection(cnts.ConnectionString); - await cnt.OpenAsync(); + await cnt.OpenAsync(); var session_pool = cnt.SessionPool; - System.Diagnostics.Debug.Assert(cnt.State == System.Data.ConnectionState.Open); + System.Diagnostics.Debug.Assert(cnt.State == System.Data.ConnectionState.Open); var status = await session_pool.DeleteStorageGroupAsync(test_group_name); await cnt.CreateCommand( "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".status with datatype=BOOLEAN,encoding=PLAIN").ExecuteNonQueryAsync(); await cnt.CreateCommand( "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".temperature with datatype=FLOAT,encoding=PLAIN").ExecuteNonQueryAsync(); await cnt.CreateCommand( - "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN").ExecuteNonQueryAsync(); - - status = await cnt.CreateCommand( + "create timeseries " + string.Format("{0}.{1}", test_group_name, test_device) + ".hardware with datatype=TEXT,encoding=PLAIN").ExecuteNonQueryAsync(); + + status = await cnt.CreateCommand( "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (3, false, 20, '1yxl')").ExecuteNonQueryAsync(); status = await cnt.CreateCommand( "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, temperature, hardware) VALUES (4, false, 20, 'yxl')").ExecuteNonQueryAsync(); @@ -303,13 +391,13 @@ await cnt.CreateCommand( await cnt.CreateCommand( "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')").ExecuteNonQueryAsync(); var reader = await cnt.CreateCommand( - "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10").ExecuteReaderAsync(); - ConsoleTableBuilder.From(reader.ToDataTable()).WithFormatter(0,fc=> $"{fc:yyyy-MM-dd HH:mm:ss.fff}" ).WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10").ExecuteReaderAsync(); + ConsoleTableBuilder.From(reader.ToDataTable()).WithFormatter(0,fc=> $"{fc:yyyy-MM-dd HH:mm:ss.fff}" ).WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); status = await session_pool.DeleteStorageGroupAsync(test_group_name); - await cnt.CloseAsync(); - - System.Diagnostics.Debug.Assert(status == 0); - + await cnt.CloseAsync(); + + System.Diagnostics.Debug.Assert(status == 0); + Console.WriteLine("TestNonSqlBy_ADO Passed"); } diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 722d610..bc254c6 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -6,9 +6,10 @@ namespace Apache.IoTDB.DataStructure { - public class SessionDataSet: System.IDisposable + public class SessionDataSet : System.IDisposable { private readonly long _queryId; + private readonly long _statementId; private readonly string _sql; private readonly List _columnNames; private readonly Dictionary _columnNameIndexMap; @@ -23,23 +24,22 @@ public class SessionDataSet: System.IDisposable private int _rowIndex; private bool _hasCatchedResult; private RowRecord _cachedRowRecord; - private bool _isClosed = false; + private bool _isClosed = false; private bool disposedValue; private string TimestampStr => "Time"; private int StartIndex => 2; private int Flag => 0x80; private int DefaultTimeout => 10000; - - public int FetchSize { get; set; } - + public int FetchSize { get; set; } public int RowCount { get; set; } - public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQueue clientQueue) + public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQueue clientQueue, long statementId) { _clientQueue = clientQueue; _sql = sql; _queryDataset = resp.QueryDataSet; _queryId = resp.QueryId; + _statementId = statementId; _columnSize = resp.Columns.Count; _currentBitmap = new byte[_columnSize]; _columnNames = new List(); @@ -88,17 +88,17 @@ public SessionDataSet(string sql, TSExecuteStatementResp resp, ConcurrentClientQ _valueBufferLst.Add(new ByteBuffer(_queryDataset.ValueList[index])); _bitmapBufferLst.Add(new ByteBuffer(_queryDataset.BitmapList[index])); - } - + } + } - public List ColumnNames => _columnNames; - - + public List ColumnNames => _columnNames; + + private List GetColumnNames() - { - var lst = new List - { - "timestamp" + { + var lst = new List + { + "timestamp" }; lst.AddRange(_columnNames); return lst; @@ -146,9 +146,9 @@ public RowRecord Next() _hasCatchedResult = false; return _cachedRowRecord; } - public RowRecord GetRow() - { - return _cachedRowRecord; + public RowRecord GetRow() + { + return _cachedRowRecord; } private TSDataType GetDataTypeFromStr(string str) @@ -169,7 +169,7 @@ private TSDataType GetDataTypeFromStr(string str) private void ConstructOneRow() { List fieldLst = new List(); - + for (int i = 0; i < _columnSize; i++) { if (_duplicateLocation.ContainsKey(i)) @@ -181,7 +181,7 @@ private void ConstructOneRow() { var columnValueBuffer = _valueBufferLst[i]; var columnBitmapBuffer = _bitmapBufferLst[i]; - + if (_rowIndex % 8 == 0) { _currentBitmap[i] = columnBitmapBuffer.GetByte(); @@ -253,7 +253,7 @@ private bool FetchResults() var task = myClient.ServiceClient.fetchResultsAsync(req); task.Wait(); var resp = task.Result; - + if (resp.HasResultSet) { _queryDataset = resp.QueryDataSet; @@ -290,12 +290,13 @@ public async Task Close() var myClient = _clientQueue.Take(); var req = new TSCloseOperationReq(myClient.SessionId) { - QueryId = _queryId + QueryId = _queryId, + StatementId = _statementId }; try { - var status= await myClient.ServiceClient.closeOperationAsync(req); + var status = await myClient.ServiceClient.closeOperationAsync(req); } catch (TException e) { @@ -306,34 +307,34 @@ public async Task Close() _clientQueue.Add(myClient); } } - } - - protected virtual void Dispose(bool disposing) - { - if (!disposedValue) - { - if (disposing) - { - try - { - this.Close().Wait(); - } - catch - { - } - } - _queryDataset=null; - _timeBuffer = null; - _valueBufferLst = null; - _bitmapBufferLst = null; - disposedValue = true; - } - } - - public void Dispose() - { - Dispose(disposing: true); - GC.SuppressFinalize(this); - } + } + + protected virtual void Dispose(bool disposing) + { + if (!disposedValue) + { + if (disposing) + { + try + { + this.Close().Wait(); + } + catch + { + } + } + _queryDataset = null; + _timeBuffer = null; + _valueBufferLst = null; + _bitmapBufferLst = null; + disposedValue = true; + } + } + + public void Dispose() + { + Dispose(disposing: true); + GC.SuppressFinalize(this); + } } } \ No newline at end of file From 446ca8048994e0ead7abbae92d7b2c87e514a756 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Tue, 10 Jan 2023 10:53:36 +0800 Subject: [PATCH 192/214] remove TestManyQuery and fix typo --- .../Apache.IoTDB.Samples/SessionPoolTest.cs | 149 ++++-------------- src/Apache.IoTDB/SessionPool.cs | 4 +- 2 files changed, 32 insertions(+), 121 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index d0eae45..44edde8 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -40,67 +40,66 @@ public SessionPoolTest(string _host = "localhost") public async Task Test() { - // await TestInsertAlignedRecord(); + await TestInsertAlignedRecord(); - // await TestInsertAlignedRecords(); + await TestInsertAlignedRecords(); - // await TestInsertAlignedRecordsOfOneDevice(); + await TestInsertAlignedRecordsOfOneDevice(); - // await TestInsertAlignedTablet(); + await TestInsertAlignedTablet(); - // await TestInsertAlignedTablets(); + await TestInsertAlignedTablets(); - // await TestInsertRecord(); + await TestInsertRecord(); - // await TestCreateMultiTimeSeries(); + await TestCreateMultiTimeSeries(); - // await TestInsertStrRecord(); + await TestInsertStrRecord(); - // await TestInsertRecords(); + await TestInsertRecords(); - // await TestInsertRecordsOfOneDevice(); + await TestInsertRecordsOfOneDevice(); - // await TestInsertTablet(); + await TestInsertTablet(); - // await TestInsertTabletWithNullValue(); + await TestInsertTabletWithNullValue(); - // await TestInsertTablets(); + await TestInsertTablets(); - // await TestAddAlignedMeasurements(); + await TestAddAlignedMeasurements(); - // await TestAddUnalignedMeasurements(); + await TestAddUnalignedMeasurements(); - // await TestSetAndUnsetSchemaTemplate(); + await TestSetAndUnsetSchemaTemplate(); - // await TestCreateAlignedTimeseries(); + await TestCreateAlignedTimeseries(); - // await TestCreateAndDropSchemaTemplate(); + await TestCreateAndDropSchemaTemplate(); - // await TestDeleteNodeInTemplate(); + await TestDeleteNodeInTemplate(); - // await TestGetTimeZone(); + await TestGetTimeZone(); - // await TestSetAndDeleteStorageGroup(); + await TestSetAndDeleteStorageGroup(); - // await TestCreateTimeSeries(); + await TestCreateTimeSeries(); - // await TestDeleteTimeSeries(); + await TestDeleteTimeSeries(); - // await TestDeleteStorageGroups(); + await TestDeleteStorageGroups(); - // await TestCheckTimeSeriesExists(); + await TestCheckTimeSeriesExists(); - // await TestSetTimeZone(); + await TestSetTimeZone(); - // await TestDeleteData(); + await TestDeleteData(); - // await TestNonSql(); + await TestNonSql(); - // await TestSqlQuery(); + await TestSqlQuery(); - // await TestNonSqlBy_ADO(); - await TestManyQuery(); + await TestNonSqlBy_ADO(); } public async Task TestGetTimeZone() @@ -134,94 +133,6 @@ public async Task TestSetAndDeleteStorageGroup() await session_pool.Close(); Console.WriteLine("TestSetAndDeleteStorageGroup Passed!"); } - public async Task TestManyQuery() - { - var session_pool = new SessionPool(host, port, pool_size); - var status = 0; - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - // bool isInitTest = false; - // if (isInitTest) - // { - // status = await session_pool.DeleteStorageGroupAsync(test_group_name); - // System.Diagnostics.Debug.Assert( - // await session_pool.SetStorageGroup(test_group_name) == 0); - // } - - // List values = new List(); - // List measurements = new List(); - // for (int i = 0; i < 150; i++)//150个DOUBLE_Ser_ - // { - // values.Add(double.Parse(i.ToString())); - // var meas_name = string.Format("{0}.{1}.DOUBLESer{2}", test_group_name, test_device, i); - // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); - // if (isInitTest) - // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, - // TSDataType.DOUBLE, TSEncoding.GORILLA, Compressor.SNAPPY) == 0); - - // } - // for (int i = 0; i < 5; i++)//5个BOOL_Ser_ - // { - - // values.Add(i % 3 == 0); - // var meas_name = string.Format("{0}.{1}.BOOLEANSer{2}", test_group_name, test_device, i); - // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); - // if (isInitTest) - // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, - // TSDataType.BOOLEAN, TSEncoding.RLE, Compressor.SNAPPY) == 0); - // } - // for (int i = 0; i < 5; i++)//5个INT32_Ser_ - // { - - // values.Add(Int32.Parse(i.ToString())); - // var meas_name = string.Format("{0}.{1}.INT32Ser{2}", test_group_name, test_device, i); - // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); - // if (isInitTest) - // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, - // TSDataType.INT32, TSEncoding.RLE, Compressor.SNAPPY) == 0); - // } - // for (int i = 0; i < 10; i++)//10个TEXT_Ser_ - // { - - // values.Add($"aaaaaaaaaaaaabbbbbbbb_{i}"); - // var meas_name = string.Format("{0}.{1}.TEXTSer{2}", test_group_name, test_device, i); - // measurements.Add(meas_name.Replace($"{test_group_name}.{test_device}.", "")); - // if (isInitTest) - // System.Diagnostics.Debug.Assert(await session_pool.CreateTimeSeries(meas_name, - // TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY) == 0); - // } - // //插入数据 - // Console.WriteLine("********************\n准备插入数据 \n\n"); - // var device_id = string.Format("{0}.{1}", test_group_name, test_device); - // var rowRecords = new List() { new RowRecord(DateTime.Now, values, measurements) }; - // status = await session_pool.InsertRecordsOfOneDeviceAsync(device_id, rowRecords); - // System.Diagnostics.Debug.Assert(status == 0); - // Console.WriteLine($"********************\n插入数据完成,code={status} \n\n"); - for (int i = 0; i < 10000; i++) - { - Console.WriteLine($"********************\n查询测试,{i}次 \n\n"); - //await session_pool.Open(false); - - var res = await session_pool.ExecuteQueryStatementAsync( - "select last_value(*) from " + string.Format("{0}.{1} align by device", test_group_name, test_device)); - // System.Diagnostics.Debug.Assert(res.RowCount == 1); - int cnt = 0; - // while (res.HasNext()) - // { - // cnt++; - // Console.WriteLine("cnt = " + cnt); - // // Console.WriteLine(res.Next()); - // var next = res.Next(); - // Console.WriteLine(next); - // // break; - // } - await res.Close(); - //await session_pool.Close(); - } - Console.WriteLine("********************\n查询测试完成 \n\n"); - await session_pool.Close(); - } - public async Task TestDeleteStorageGroups() { diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index f60dd94..8f39679 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -1592,9 +1592,9 @@ public async Task ExecuteQueryStatementAsync(string sql) _clients.Add(client); - var sessionDataset = new SessionDataSet(sql, resp, _clients) + var sessionDataset = new SessionDataSet(sql, resp, _clients, client.StatementId) { - FetchSize = _fetchSize + FetchSize = _fetchSize, }; return sessionDataset; From 22784ee78b9b3c64ee4fadf28a47953e9a15f63b Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Thu, 12 Jan 2023 22:16:16 +0800 Subject: [PATCH 193/214] Add some interfaces in SessionPool --- src/Apache.IoTDB/SessionPool.cs | 239 ++++++++++++++++++++++++++++++++ 1 file changed, 239 insertions(+) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 8f39679..e8db383 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -1247,7 +1247,95 @@ public async Task InsertAlignedRecordsOfOneDeviceAsync(string deviceId, Lis var sortedRowRecords = rowRecords.OrderBy(x => x.Timestamps).ToList(); return await InsertAlignedRecordsOfOneDeviceSortedAsync(deviceId, sortedRowRecords); } + public async Task InsertStringRecordsOfOneDeviceAsync(string deviceId, List timestamps, + List> measurementsList, List> valuesList) + { + var joined = timestamps.Zip(measurementsList, (t, m) => new { t, m }) + .Zip(valuesList, (tm, v) => new { tm.t, tm.m, v }) + .OrderBy(x => x.t); + + var sortedTimestamps = joined.Select(x => x.t).ToList(); + var sortedMeasurementsList = joined.Select(x => x.m).ToList(); + var sortedValuesList = joined.Select(x => x.v).ToList(); + + return await InsertStringRecordsOfOneDeviceSortedAsync(deviceId, sortedTimestamps, sortedMeasurementsList, sortedValuesList, false); + } + public async Task InsertAlignedStringRecordsOfOneDeviceAsync(string deviceId, List timestamps, + List> measurementsList, List> valuesList) + { + var joined = timestamps.Zip(measurementsList, (t, m) => new { t, m }) + .Zip(valuesList, (tm, v) => new { tm.t, tm.m, v }) + .OrderBy(x => x.t); + + var sortedTimestamps = joined.Select(x => x.t).ToList(); + var sortedMeasurementsList = joined.Select(x => x.m).ToList(); + var sortedValuesList = joined.Select(x => x.v).ToList(); + + return await InsertStringRecordsOfOneDeviceSortedAsync(deviceId, sortedTimestamps, sortedMeasurementsList, sortedValuesList, true); + } + public async Task InsertStringRecordsOfOneDeviceSortedAsync(string deviceId, List timestamps, + List> measurementsList, List> valuesList, bool isAligned) + { + var client = _clients.Take(); + + if (!_utilFunctions.IsSorted(timestamps)) + { + throw new TException("insert string records of one device error: timestamp not sorted", null); + } + + var req = GenInsertStringRecordsOfOneDeviceReq(deviceId, timestamps, measurementsList, valuesList, client.SessionId, isAligned); + try + { + var status = await client.ServiceClient.insertStringRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert string records of one device, message: {0}", status.Message); + } + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException e) + { + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + try + { + var status = await client.ServiceClient.insertStringRecordsOfOneDeviceAsync(req); + + if (_debugMode) + { + _logger.LogInformation("insert string records of one device, message: {0}", status.Message); + } + + return _utilFunctions.VerifySuccess(status, SuccessCode); + } + catch (TException ex) + { + throw new TException("Error occurs when inserting string records of one device", ex); + } + } + finally + { + _clients.Add(client); + + } + } + private TSInsertStringRecordsOfOneDeviceReq GenInsertStringRecordsOfOneDeviceReq(string deviceId, + List timestamps, List> measurementsList, List> valuesList, + long sessionId, bool isAligned = false) + { + return new TSInsertStringRecordsOfOneDeviceReq( + sessionId, + deviceId, + measurementsList, + valuesList, + timestamps) + { + IsAligned = isAligned + }; + } private TSInsertRecordsOfOneDeviceReq GenInsertRecordsOfOneDeviceRequest( string deviceId, List records, @@ -1599,6 +1687,55 @@ public async Task ExecuteQueryStatementAsync(string sql) return sessionDataset; } + public async Task ExecuteStatementAsync(string sql){ + TSExecuteStatementResp resp; + TSStatus status; + var client = _clients.Take(); + var req = new TSExecuteStatementReq(client.SessionId, sql, client.StatementId) + { + FetchSize = _fetchSize + }; + try + { + resp = await client.ServiceClient.executeStatementAsync(req); + status = resp.Status; + } + catch (TException e) + { + _clients.Add(client); + + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + req.StatementId = client.StatementId; + try + { + resp = await client.ServiceClient.executeStatementAsync(req); + status = resp.Status; + } + catch (TException ex) + { + _clients.Add(client); + throw new TException("Error occurs when executing query statement", ex); + } + } + + if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + { + _clients.Add(client); + + throw new TException("execute query failed", null); + } + + _clients.Add(client); + + var sessionDataset = new SessionDataSet(sql, resp, _clients, client.StatementId) + { + FetchSize = _fetchSize, + }; + + return sessionDataset; + } public async Task ExecuteNonQueryStatementAsync(string sql) { @@ -1645,6 +1782,108 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _clients.Add(client); } } + public async Task ExecuteRawDataQuery(List paths, int startTime, int endTime) + { + TSExecuteStatementResp resp; + TSStatus status; + var client = _clients.Take(); + var req = new TSRawDataQueryReq(client.SessionId, paths, startTime, endTime, client.StatementId) + { + FetchSize = _fetchSize, + EnableRedirectQuery = false + }; + try + { + resp = await client.ServiceClient.executeRawDataQueryAsync(req); + status = resp.Status; + } + catch (TException e) + { + _clients.Add(client); + + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + req.StatementId = client.StatementId; + try + { + resp = await client.ServiceClient.executeRawDataQueryAsync(req); + status = resp.Status; + } + catch (TException ex) + { + _clients.Add(client); + throw new TException("Error occurs when executing raw data query", ex); + } + } + + if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + { + _clients.Add(client); + + throw new TException("execute raw data query failed", null); + } + + _clients.Add(client); + + var sessionDataset = new SessionDataSet("", resp, _clients, client.StatementId) + { + FetchSize = _fetchSize, + }; + + return sessionDataset; + } + public async Task ExecuteLastDataQueryAsync(List paths, int lastTime) + { + TSExecuteStatementResp resp; + TSStatus status; + var client = _clients.Take(); + var req = new TSLastDataQueryReq(client.SessionId, paths, lastTime, client.StatementId) + { + FetchSize = _fetchSize, + EnableRedirectQuery = false + }; + try + { + resp = await client.ServiceClient.executeLastDataQueryAsync(req); + status = resp.Status; + } + catch (TException e) + { + _clients.Add(client); + + await Open(_enableRpcCompression); + client = _clients.Take(); + req.SessionId = client.SessionId; + req.StatementId = client.StatementId; + try + { + resp = await client.ServiceClient.executeLastDataQueryAsync(req); + status = resp.Status; + } + catch (TException ex) + { + _clients.Add(client); + throw new TException("Error occurs when executing last data query", ex); + } + } + + if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + { + _clients.Add(client); + + throw new TException("execute last data query failed", null); + } + + _clients.Add(client); + + var sessionDataset = new SessionDataSet("", resp, _clients, client.StatementId) + { + FetchSize = _fetchSize, + }; + + return sessionDataset; + } public async Task CreateSchemaTemplateAsync(Template template) { From ef66b9de44746de895e1f73ba3dd5a1c2996af98 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Sun, 15 Jan 2023 23:24:21 +0800 Subject: [PATCH 194/214] Add RedirectRecommendCode in verify success --- src/Apache.IoTDB/SessionPool.cs | 246 ++++++++++++++++++++------------ src/Apache.IoTDB/Utils.cs | 6 +- 2 files changed, 160 insertions(+), 92 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index e8db383..c959736 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -252,7 +252,7 @@ public async Task SetStorageGroup(string groupName) _logger.LogInformation("set storage group {0} successfully, server message is {1}", groupName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); } catch (TException e) { @@ -266,7 +266,7 @@ public async Task SetStorageGroup(string groupName) { _logger.LogInformation("set storage group {0} successfully, server message is {1}", groupName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); } catch (TException ex) { @@ -301,7 +301,8 @@ public async Task CreateTimeSeries( _logger.LogInformation("creating time series {0} successfully, server message is {1}", tsPath, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -315,7 +316,8 @@ public async Task CreateTimeSeries( { _logger.LogInformation("creating time series {0} successfully, server message is {1}", tsPath, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -357,7 +359,8 @@ public async Task CreateAlignedTimeseriesAsync( _logger.LogInformation("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -371,7 +374,8 @@ public async Task CreateAlignedTimeseriesAsync( { _logger.LogInformation("creating aligned time series {0} successfully, server message is {1}", prefixPath, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -398,7 +402,8 @@ public async Task DeleteStorageGroupAsync(string groupName) _logger.LogInformation($"delete storage group {groupName} successfully, server message is {status?.Message}"); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -415,7 +420,8 @@ public async Task DeleteStorageGroupAsync(string groupName) _logger.LogInformation($"delete storage group {groupName} successfully, server message is {status?.Message}"); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -444,7 +450,8 @@ public async Task DeleteStorageGroupsAsync(List groupNames) status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -462,7 +469,8 @@ public async Task DeleteStorageGroupsAsync(List groupNames) status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -497,7 +505,8 @@ public async Task CreateMultiTimeSeriesAsync( _logger.LogInformation("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -511,7 +520,8 @@ public async Task CreateMultiTimeSeriesAsync( { _logger.LogInformation("creating multiple time series {0}, server message is {1}", tsPathLst, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -537,7 +547,8 @@ public async Task DeleteTimeSeriesAsync(List pathList) _logger.LogInformation("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -552,7 +563,8 @@ public async Task DeleteTimeSeriesAsync(List pathList) _logger.LogInformation("deleting multiple time series {0}, server message is {1}", pathList, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -602,7 +614,8 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -621,7 +634,8 @@ public async Task DeleteDataAsync(List tsPathLst, long startTime, l status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -643,13 +657,14 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) try { var status = await client.ServiceClient.insertRecordAsync(req); - + Console.WriteLine("status Message {0}", status); if (_debugMode) { _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -665,7 +680,8 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -694,7 +710,8 @@ public async Task InsertAlignedRecordAsync(string deviceId, RowRecord recor _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -710,7 +727,8 @@ public async Task InsertAlignedRecordAsync(string deviceId, RowRecord recor _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -773,7 +791,8 @@ public async Task InsertStringRecordAsync(string deviceId, List mea _logger.LogInformation("insert one string record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -789,7 +808,8 @@ public async Task InsertStringRecordAsync(string deviceId, List mea _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -815,7 +835,8 @@ public async Task InsertAlignedStringRecordAsync(string deviceId, List InsertAlignedStringRecordAsync(string deviceId, List InsertStringRecordsAsync(List deviceIds, List InsertStringRecordsAsync(List deviceIds, List InsertAlignedStringRecordsAsync(List deviceIds, L _logger.LogInformation("insert string records to devices {0}, server message: {1}", deviceIds, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) @@ -918,7 +943,8 @@ public async Task InsertAlignedStringRecordsAsync(List deviceIds, L _logger.LogInformation("insert string records to devices {0}, server message: {1}", deviceIds, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) @@ -947,7 +973,8 @@ public async Task InsertRecordsAsync(List deviceId, List _logger.LogInformation("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -963,7 +990,8 @@ public async Task InsertRecordsAsync(List deviceId, List _logger.LogInformation("insert multiple records to devices {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -993,7 +1021,8 @@ public async Task InsertAlignedRecordsAsync(List deviceId, List InsertAlignedRecordsAsync(List deviceId, List InsertTabletAsync(Tablet tablet) _logger.LogInformation("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1063,7 +1094,8 @@ public async Task InsertTabletAsync(Tablet tablet) _logger.LogInformation("insert one tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1090,7 +1122,8 @@ public async Task InsertAlignedTabletAsync(Tablet tablet) _logger.LogInformation("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1106,7 +1139,8 @@ public async Task InsertAlignedTabletAsync(Tablet tablet) _logger.LogInformation("insert one aligned tablet to device {0}, server message: {1}", tablet.DeviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1164,7 +1198,8 @@ public async Task InsertTabletsAsync(List tabletLst) _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1180,7 +1215,8 @@ public async Task InsertTabletsAsync(List tabletLst) _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1208,7 +1244,8 @@ public async Task InsertAlignedTabletsAsync(List tabletLst) _logger.LogInformation("insert multiple aligned tablets, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1224,7 +1261,8 @@ public async Task InsertAlignedTabletsAsync(List tabletLst) _logger.LogInformation("insert multiple aligned tablets, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1293,7 +1331,8 @@ public async Task InsertStringRecordsOfOneDeviceSortedAsync(string deviceId _logger.LogInformation("insert string records of one device, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1309,7 +1348,8 @@ public async Task InsertStringRecordsOfOneDeviceSortedAsync(string deviceId _logger.LogInformation("insert string records of one device, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1375,7 +1415,8 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List _logger.LogInformation("insert records of one device, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1391,7 +1432,8 @@ public async Task InsertRecordsOfOneDeviceSortedAsync(string deviceId, List _logger.LogInformation("insert records of one device, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1426,7 +1468,8 @@ public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceI _logger.LogInformation("insert aligned records of one device, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1442,7 +1485,8 @@ public async Task InsertAlignedRecordsOfOneDeviceSortedAsync(string deviceI _logger.LogInformation("insert aligned records of one device, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1475,7 +1519,8 @@ public async Task TestInsertRecordAsync(string deviceId, RowRecord record) _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1491,7 +1536,8 @@ public async Task TestInsertRecordAsync(string deviceId, RowRecord record) _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1518,7 +1564,8 @@ public async Task TestInsertRecordsAsync(List deviceId, List TestInsertRecordsAsync(List deviceId, List TestInsertTabletAsync(Tablet tablet) status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1580,7 +1629,8 @@ public async Task TestInsertTabletAsync(Tablet tablet) status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1608,7 +1658,8 @@ public async Task TestInsertTabletsAsync(List tabletLst) _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1624,7 +1675,8 @@ public async Task TestInsertTabletsAsync(List tabletLst) _logger.LogInformation("insert multiple tablets, message: {0}", status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1671,7 +1723,7 @@ public async Task ExecuteQueryStatementAsync(string sql) } } - if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + if (_utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode) == -1) { _clients.Add(client); @@ -1720,7 +1772,7 @@ public async Task ExecuteStatementAsync(string sql){ } } - if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + if (_utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode) == -1) { _clients.Add(client); @@ -1752,7 +1804,8 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _logger.LogInformation("execute non-query statement {0} message: {1}", sql, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1770,7 +1823,8 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _logger.LogInformation("execute non-query statement {0} message: {1}", sql, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1817,7 +1871,7 @@ public async Task ExecuteRawDataQuery(List paths, int st } } - if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + if (_utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode) == -1) { _clients.Add(client); @@ -1868,7 +1922,7 @@ public async Task ExecuteLastDataQueryAsync(List paths, } } - if (_utilFunctions.VerifySuccess(status, SuccessCode) == -1) + if (_utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode) == -1) { _clients.Add(client); @@ -1898,7 +1952,8 @@ public async Task CreateSchemaTemplateAsync(Template template) _logger.LogInformation("create schema template {0} message: {1}", template.Name, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1914,7 +1969,8 @@ public async Task CreateSchemaTemplateAsync(Template template) _logger.LogInformation("create schema template {0} message: {1}", template.Name, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1940,7 +1996,8 @@ public async Task DropSchemaTemplateAsync(string templateName) _logger.LogInformation("drop schema template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1956,7 +2013,8 @@ public async Task DropSchemaTemplateAsync(string templateName) _logger.LogInformation("drop schema template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -1982,7 +2040,8 @@ public async Task SetSchemaTemplateAsync(string templateName, string prefix _logger.LogInformation("set schema template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -1998,7 +2057,8 @@ public async Task SetSchemaTemplateAsync(string templateName, string prefix _logger.LogInformation("set schema template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -2024,7 +2084,8 @@ public async Task UnsetSchemaTemplateAsync(string prefixPath, string templa _logger.LogInformation("unset schema template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -2040,7 +2101,8 @@ public async Task UnsetSchemaTemplateAsync(string prefixPath, string templa _logger.LogInformation("unset schema template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -2069,7 +2131,8 @@ public async Task AddAlignedMeasurementsInTemplateAsync(string templateName _logger.LogInformation("add aligned measurements in template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -2085,7 +2148,8 @@ public async Task AddAlignedMeasurementsInTemplateAsync(string templateName _logger.LogInformation("add aligned measurements in template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -2115,7 +2179,8 @@ public async Task AddUnalignedMeasurementsInTemplateAsync(string templateNa _logger.LogInformation("add unaligned measurements in template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -2131,7 +2196,8 @@ public async Task AddUnalignedMeasurementsInTemplateAsync(string templateNa _logger.LogInformation("add unaligned measurements in template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -2156,7 +2222,8 @@ public async Task DeleteNodeInTemplateAsync(string templateName, string pat _logger.LogInformation("delete node in template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException e) { @@ -2172,7 +2239,8 @@ public async Task DeleteNodeInTemplateAsync(string templateName, string pat _logger.LogInformation("delete node in template {0} message: {1}", templateName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + } catch (TException ex) { @@ -2198,7 +2266,7 @@ public async Task CountMeasurementsInTemplateAsync(string name) _logger.LogInformation("count measurements in template {0} message: {1}", name, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Count; } catch (TException e) @@ -2215,7 +2283,7 @@ public async Task CountMeasurementsInTemplateAsync(string name) _logger.LogInformation("count measurements in template {0} message: {1}", name, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Count; } catch (TException ex) @@ -2242,7 +2310,7 @@ public async Task IsMeasurementInTemplateAsync(string templateName, string _logger.LogInformation("is measurement in template {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Result; } catch (TException e) @@ -2259,7 +2327,7 @@ public async Task IsMeasurementInTemplateAsync(string templateName, string _logger.LogInformation("is measurement in template {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Result; } catch (TException ex) @@ -2287,7 +2355,7 @@ public async Task IsPathExistInTemplate(string templateName, string path) _logger.LogInformation("is path exist in template {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Result; } catch (TException e) @@ -2304,7 +2372,7 @@ public async Task IsPathExistInTemplate(string templateName, string path) _logger.LogInformation("is path exist in template {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Result; } catch (TException ex) @@ -2332,7 +2400,7 @@ public async Task> ShowMeasurementsInTemplateAsync(string templateN _logger.LogInformation("get measurements in template {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException e) @@ -2349,7 +2417,7 @@ public async Task> ShowMeasurementsInTemplateAsync(string templateN _logger.LogInformation("get measurements in template {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException ex) @@ -2375,7 +2443,7 @@ public async Task> ShowAllTemplatesAsync() _logger.LogInformation("get all templates message: {0}", status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException e) @@ -2392,7 +2460,7 @@ public async Task> ShowAllTemplatesAsync() _logger.LogInformation("get all templates message: {0}", status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException ex) @@ -2418,7 +2486,7 @@ public async Task> ShowPathsTemplateSetOnAsync(string templateName) _logger.LogInformation("get paths template set on {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException e) @@ -2435,7 +2503,7 @@ public async Task> ShowPathsTemplateSetOnAsync(string templateName) _logger.LogInformation("get paths template set on {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException ex) @@ -2461,7 +2529,7 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam _logger.LogInformation("get paths template using on {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException e) @@ -2478,7 +2546,7 @@ public async Task> ShowPathsTemplateUsingOnAsync(string templateNam _logger.LogInformation("get paths template using on {0} message: {1}", templateName, status.Message); } - _utilFunctions.VerifySuccess(status, SuccessCode); + _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); return resp.Measurements; } catch (TException ex) diff --git a/src/Apache.IoTDB/Utils.cs b/src/Apache.IoTDB/Utils.cs index 82624f0..639ad35 100644 --- a/src/Apache.IoTDB/Utils.cs +++ b/src/Apache.IoTDB/Utils.cs @@ -18,11 +18,11 @@ public bool IsSorted(IList collection) return true; } - public int VerifySuccess(TSStatus status, int successCode) + public int VerifySuccess(TSStatus status, int successCode, int redirectRecommendCode) { if (status.__isset.subStatus) { - if (status.SubStatus.Any(subStatus => VerifySuccess(subStatus, successCode) != 0)) + if (status.SubStatus.Any(subStatus => VerifySuccess(subStatus, successCode, redirectRecommendCode) != 0)) { return -1; } @@ -30,7 +30,7 @@ public int VerifySuccess(TSStatus status, int successCode) return 0; } - if (status.Code == successCode) + if (status.Code == successCode || status.Code == redirectRecommendCode) { return 0; } From b0483bb6b013da1b900fbeed34790b0f5363bb09 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 09:59:38 +0800 Subject: [PATCH 195/214] remove add measurements in template interface and test --- .../SessionPoolTest.Template.cs | 68 ------------- src/Apache.IoTDB/SessionPool.cs | 99 +------------------ 2 files changed, 3 insertions(+), 164 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs index b43856f..46d42e3 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -81,74 +81,6 @@ public async Task TestSetAndUnsetSchemaTemplate() await session_pool.Close(); Console.WriteLine("TestSetAndUnsetSchemaTemplate Passed!"); } - public async Task TestAddAlignedMeasurements() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.DropSchemaTemplateAsync(test_template_name); - - MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - var measurements = new List() { node3, node4 }; - - Template template = new Template(test_template_name, true); - template.addToTemplate(node1); - template.addToTemplate(node2); - status = await session_pool.CreateSchemaTemplateAsync(template); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.AddAlignedMeasurementsInTemplateAsync(test_template_name, measurements); - System.Diagnostics.Debug.Assert(status == 0); - var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); - System.Diagnostics.Debug.Assert(measurements_count == 4); - foreach (var m in measurements) - { - System.Diagnostics.Debug.Assert(await session_pool.IsMeasurementInTemplateAsync(test_template_name, m.Name)); - } - status = await session_pool.DropSchemaTemplateAsync(test_template_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestAddAlignedMeasurements Passed!"); - } - public async Task TestAddUnalignedMeasurements() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.DropSchemaTemplateAsync(test_template_name); - - MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - var measurements = new List() { node1, node2, node3, node4 }; - - Template template = new Template(test_template_name); - status = await session_pool.CreateSchemaTemplateAsync(template); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); - System.Diagnostics.Debug.Assert(status == 0); - var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); - System.Diagnostics.Debug.Assert(measurements_count == 4); - foreach (var m in measurements) - { - System.Diagnostics.Debug.Assert(await session_pool.IsPathExistInTemplate(test_template_name, m.Name)); - } - status = await session_pool.DropSchemaTemplateAsync(test_template_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestAddUnalignedMeasurements Passed!"); - } public async Task TestDeleteNodeInTemplate() { var session_pool = new SessionPool(host, port, pool_size); diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index c959736..6796779 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -266,7 +266,7 @@ public async Task SetStorageGroup(string groupName) { _logger.LogInformation("set storage group {0} successfully, server message is {1}", groupName, status.Message); } - return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); + return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); } catch (TException ex) { @@ -1739,7 +1739,8 @@ public async Task ExecuteQueryStatementAsync(string sql) return sessionDataset; } - public async Task ExecuteStatementAsync(string sql){ + public async Task ExecuteStatementAsync(string sql) + { TSExecuteStatementResp resp; TSStatus status; var client = _clients.Take(); @@ -2114,101 +2115,7 @@ public async Task UnsetSchemaTemplateAsync(string prefixPath, string templa _clients.Add(client); } } - public async Task AddAlignedMeasurementsInTemplateAsync(string templateName, List measurementNodes) - { - var client = _clients.Take(); - var measurements = measurementNodes.ConvertAll(m => m.Name); - var dataTypes = measurementNodes.ConvertAll(m => (int)m.DataType); - var encodings = measurementNodes.ConvertAll(m => (int)m.Encoding); - var compressors = measurementNodes.ConvertAll(m => (int)m.Compressor); - var req = new TSAppendSchemaTemplateReq(client.SessionId, templateName, true, measurements, dataTypes, encodings, compressors); - try - { - var status = await client.ServiceClient.appendSchemaTemplateAsync(req); - - if (_debugMode) - { - _logger.LogInformation("add aligned measurements in template {0} message: {1}", templateName, status.Message); - } - - return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); - - } - catch (TException e) - { - await Open(_enableRpcCompression); - client = _clients.Take(); - req.SessionId = client.SessionId; - try - { - var status = await client.ServiceClient.appendSchemaTemplateAsync(req); - - if (_debugMode) - { - _logger.LogInformation("add aligned measurements in template {0} message: {1}", templateName, status.Message); - } - return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); - - } - catch (TException ex) - { - throw new TException("Error occurs when adding aligned measurements in template", ex); - } - } - finally - { - _clients.Add(client); - } - } - - public async Task AddUnalignedMeasurementsInTemplateAsync(string templateName, List measurementNodes) - { - var client = _clients.Take(); - var measurements = measurementNodes.ConvertAll(m => m.Name); - var dataTypes = measurementNodes.ConvertAll(m => (int)m.DataType); - var encodings = measurementNodes.ConvertAll(m => (int)m.Encoding); - var compressors = measurementNodes.ConvertAll(m => (int)m.Compressor); - var req = new TSAppendSchemaTemplateReq(client.SessionId, templateName, false, measurements, dataTypes, encodings, compressors); - try - { - var status = await client.ServiceClient.appendSchemaTemplateAsync(req); - - if (_debugMode) - { - _logger.LogInformation("add unaligned measurements in template {0} message: {1}", templateName, status.Message); - } - - return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); - - } - catch (TException e) - { - await Open(_enableRpcCompression); - client = _clients.Take(); - req.SessionId = client.SessionId; - try - { - var status = await client.ServiceClient.appendSchemaTemplateAsync(req); - - if (_debugMode) - { - _logger.LogInformation("add unaligned measurements in template {0} message: {1}", templateName, status.Message); - } - - return _utilFunctions.VerifySuccess(status, SuccessCode, RedirectRecommendCode); - - } - catch (TException ex) - { - throw new TException("Error occurs when adding unaligned measurements in template", ex); - } - } - finally - { - _clients.Add(client); - } - } public async Task DeleteNodeInTemplateAsync(string templateName, string path) { var client = _clients.Take(); From f4dce9f71e72164ef28f20b1f49b9c7b0be3254f Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 10:29:30 +0800 Subject: [PATCH 196/214] add string record insertion test --- .../SessionPoolTest.AlignedRecord.cs | 200 ++++++++++++++++ .../SessionPoolTest.Record.cs | 214 ++++++++++++++++++ 2 files changed, 414 insertions(+) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs index 0d690f3..c3cb455 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs @@ -44,6 +44,52 @@ public async Task TestInsertAlignedRecord() await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordAsync Passed"); } + public async Task TestInsertAlignedStringRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateAlignedTimeseriesAsync( + string.Format("{0}.{1}", test_group_name, test_device), + new List() { test_measurements[0], test_measurements[1], test_measurements[2] }, + new List() { TSDataType.TEXT, TSDataType.TEXT, TSDataType.TEXT }, + new List() { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }, + new List() { Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED, Compressor.UNCOMPRESSED }); + + System.Diagnostics.Debug.Assert(status == 0); + var measurements = new List + {test_measurements[0], test_measurements[1], test_measurements[2]}; + var values = new List { "test_text1", "test_text2", "test_text3" }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var task = session_pool.InsertAlignedStringRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), measurements, values, timestamp); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert aligned string record time is {0}", end_ms - start_ms)); + var res = await session_pool.ExecuteQueryStatementAsync("select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_cnt = 0; + while (res.HasNext()) + { + res.Next(); + res_cnt++; + } + Console.WriteLine(res_cnt + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_cnt == fetch_size * processed_size); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedStringRecordAsync Passed"); + } public async Task TestInsertAlignedRecords() { var session_pool = new SessionPool(host, port, pool_size); @@ -165,6 +211,87 @@ public async Task TestInsertAlignedRecords() await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecords Passed!"); } + public async Task TestInsertAlignedStringRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + + string prefixPath = string.Format("{0}.{1}", test_group_name, test_device); + var measurement_lst = new List() { test_measurements[1], test_measurements[2] }; + var data_type_lst = new List() { TSDataType.TEXT, TSDataType.TEXT }; + var encoding_lst = new List() { TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressor_lst = new List() { Compressor.SNAPPY, Compressor.SNAPPY }; + status = await session_pool.CreateAlignedTimeseriesAsync(prefixPath, measurement_lst, data_type_lst, encoding_lst, + compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + var values_lst = new List>() { }; + values_lst.Add(new List() { "test1", "test2" }); + values_lst.Add(new List() { "test3", "test4" }); + values_lst.Add(new List() { "test5", "test6" }); + List timestamp_lst = new List() { 1, 2, 3 }; + + status = await session_pool.InsertAlignedStringRecordsAsync(device_id, measurements_lst, values_lst, timestamp_lst); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + + // large data test + device_id = new List() { }; + measurements_lst = new List>() { }; + values_lst = new List>() { }; + timestamp_lst = new List() { }; + List> tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + values_lst.Add(new List() { "test1", "test2" }); + timestamp_lst.Add(timestamp); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedStringRecordsAsync(device_id, measurements_lst, values_lst, timestamp_lst)); + device_id = new List() { }; + measurements_lst = new List>() { }; + values_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedStringRecords Passed!"); + } public async Task TestInsertAlignedRecordsOfOneDevice() { var session_pool = new SessionPool(host, port, pool_size); @@ -275,5 +402,78 @@ public async Task TestInsertAlignedRecordsOfOneDevice() await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); } + public async Task TestInsertAlignedStringRecordsOfOneDevice(){ + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if(debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List() { test_measurements[0], test_measurements[1], test_measurements[2] }; + var data_type_lst = new List() { TSDataType.TEXT, TSDataType.TEXT, TSDataType.TEXT }; + var encoding_lst = new List() { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressor_lst = new List() { Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY }; + status = await session_pool.CreateAlignedTimeseriesAsync(device_id, measurements, data_type_lst, encoding_lst, compressor_lst); + System.Diagnostics.Debug.Assert(status == 0); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[0], test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[0], test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[0], test_measurements[1], test_measurements[2] }); + + var values_lst = new List>() { }; + values_lst.Add(new List() { "test1", "test2", "test3" }); + values_lst.Add(new List() { "test4", "test5", "test6" }); + values_lst.Add(new List() { "test7", "test8", "test9" }); + + var timestamp_lst = new List() { 1, 2, 3 }; + + status = await session_pool.InsertAlignedStringRecordsOfOneDeviceAsync(device_id, timestamp_lst, measurements_lst, values_lst); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + values_lst = new List>() { }; + var tasks = new List>(); + measurements_lst = new List>() { }; + timestamp_lst = new List() { }; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + values_lst.Add(new List() { "test1", "test2" }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + timestamp_lst.Add(timestamp); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertAlignedStringRecordsOfOneDeviceAsync(device_id, timestamp_lst, measurements_lst, values_lst)); + values_lst = new List>() { }; + measurements_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertAlignedStringRecordsOfOneDevice Passed!"); + } } } \ No newline at end of file diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs index 42b680a..754e2ce 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs @@ -52,6 +52,57 @@ public async Task TestInsertRecord() await session_pool.Close(); Console.WriteLine("TestInsertRecordAsync Passed"); } + public async Task TestInsertStringRecord() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + await session_pool.DeleteStorageGroupAsync(test_group_name); + + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[0]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.UNCOMPRESSED); + System.Diagnostics.Debug.Assert(status == 0); + var measurements = new List + {test_measurements[0], test_measurements[1], test_measurements[2]}; + var values = new List { "test_text1", "test_text2", "test_text3" }; + var tasks = new List>(); + var start_ms = DateTime.Now.Ticks / 10000; + for (var timestamp = 1; timestamp <= fetch_size * processed_size; timestamp++) + { + var task = session_pool.InsertStringRecordAsync( + string.Format("{0}.{1}", test_group_name, test_device), measurements, values, timestamp); + tasks.Add(task); + } + + Task.WaitAll(tasks.ToArray()); + var end_ms = DateTime.Now.Ticks / 10000; + Console.WriteLine(string.Format("total insert string record time is {0}", end_ms - start_ms)); + var res = await session_pool.ExecuteQueryStatementAsync("select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_cnt = 0; + while (res.HasNext()) + { + res.Next(); + res_cnt++; + } + Console.WriteLine(res_cnt + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_cnt == fetch_size * processed_size); + await session_pool.DeleteStorageGroupAsync(test_group_name); + await session_pool.Close(); + Console.WriteLine("TestInsertStringRecordAsync Passed"); + } public async Task TestInsertStrRecord() { var session_pool = new SessionPool(host, port, pool_size); @@ -230,6 +281,89 @@ public async Task TestInsertRecords() await session_pool.Close(); Console.WriteLine("TestInsertRecords Passed!"); } + public async Task TestInsertStringRecords() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), TSDataType.TEXT, + TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = new List() { }; + for (var i = 0; i < 3; i++) device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + var values_lst = new List>() { }; + values_lst.Add(new List() { "test1", "test2" }); + values_lst.Add(new List() { "test3", "test4" }); + values_lst.Add(new List() { "test5", "test6" }); + var timestamp_lst = new List() { 1, 2, 3 }; + + status = await session_pool.InsertStringRecordsAsync(device_id, measurements_lst, values_lst, timestamp_lst); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + + // large data test + device_id = new List() { }; + measurements_lst = new List>() { }; + values_lst = new List>() { }; + timestamp_lst = new List() { }; + var tasks = new List>(); + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + device_id.Add(string.Format("{0}.{1}", test_group_name, test_device)); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + values_lst.Add(new List() { "test" + timestamp, "test" + timestamp }); + timestamp_lst.Add(timestamp); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertStringRecordsAsync(device_id, measurements_lst, values_lst, timestamp_lst)); + device_id = new List() { }; + measurements_lst = new List>() { }; + values_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + res.ShowTableNames(); + var record_count = fetch_size * processed_size; + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == record_count); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertStringRecords Passed!"); + } public async Task TestInsertRecordsOfOneDevice() { var session_pool = new SessionPool(host, port, pool_size); @@ -335,5 +469,85 @@ public async Task TestInsertRecordsOfOneDevice() await session_pool.Close(); Console.WriteLine("TestInsertRecordsOfOneDevice Passed!"); } + public async Task TestInsertStringRecordsOfOneDevice() + { + var session_pool = new SessionPool(host, port, pool_size); + await session_pool.Open(false); + if(debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + var status = 0; + await session_pool.DeleteStorageGroupAsync(test_group_name); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[0]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + System.Diagnostics.Debug.Assert(status == 0); + + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements_lst = new List>() { }; + measurements_lst.Add(new List() { test_measurements[0], test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[0], test_measurements[1], test_measurements[2] }); + measurements_lst.Add(new List() { test_measurements[0], test_measurements[1], test_measurements[2] }); + + var values_lst = new List>() { }; + values_lst.Add(new List() { "test1", "test2", "test3" }); + values_lst.Add(new List() { "test4", "test5", "test6" }); + values_lst.Add(new List() { "test7", "test8", "test9" }); + + var timestamp_lst = new List() { 1, 2, 3 }; + + status = await session_pool.InsertStringRecordsOfOneDeviceAsync(device_id, timestamp_lst, measurements_lst, values_lst); + System.Diagnostics.Debug.Assert(status == 0); + var res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10"); + res.ShowTableNames(); + while (res.HasNext()) Console.WriteLine(res.Next()); + + await res.Close(); + // large data test + values_lst = new List>() { }; + var tasks = new List>(); + measurements_lst = new List>() { }; + timestamp_lst = new List() { }; + for (var timestamp = 4; timestamp <= fetch_size * processed_size; timestamp++) + { + values_lst.Add(new List() { "test1", "test2" }); + measurements_lst.Add(new List() { test_measurements[1], test_measurements[2] }); + timestamp_lst.Add(timestamp); + if (timestamp % fetch_size == 0) + { + tasks.Add(session_pool.InsertStringRecordsOfOneDeviceAsync(device_id, timestamp_lst, measurements_lst, values_lst)); + values_lst = new List>() { }; + measurements_lst = new List>() { }; + timestamp_lst = new List() { }; + } + } + + Task.WaitAll(tasks.ToArray()); + res = await session_pool.ExecuteQueryStatementAsync( + "select * from " + string.Format("{0}.{1}", test_group_name, test_device)); + var res_count = 0; + while (res.HasNext()) + { + res.Next(); + res_count += 1; + } + + await res.Close(); + Console.WriteLine(res_count + " " + fetch_size * processed_size); + System.Diagnostics.Debug.Assert(res_count == fetch_size * processed_size); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("TestInsertStringRecordsOfOneDevice Passed!"); + } } } \ No newline at end of file From c9d307b1ff8d712d1246d6a99a32f2dbbd42b8a9 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 10:30:20 +0800 Subject: [PATCH 197/214] remove delete note test because of its dependency of add measurements --- .../SessionPoolTest.Template.cs | 31 ------------------- 1 file changed, 31 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs index 46d42e3..1b71b7d 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -81,37 +81,6 @@ public async Task TestSetAndUnsetSchemaTemplate() await session_pool.Close(); Console.WriteLine("TestSetAndUnsetSchemaTemplate Passed!"); } - public async Task TestDeleteNodeInTemplate() - { - var session_pool = new SessionPool(host, port, pool_size); - await session_pool.Open(false); - if (debug) session_pool.OpenDebugMode(); - - System.Diagnostics.Debug.Assert(session_pool.IsOpen()); - var status = 0; - await session_pool.DeleteStorageGroupAsync(test_group_name); - await session_pool.DropSchemaTemplateAsync(test_template_name); - - MeasurementNode node1 = new MeasurementNode(test_measurements[1], TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node2 = new MeasurementNode(test_measurements[2], TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node3 = new MeasurementNode(test_measurements[3], TSDataType.DOUBLE, TSEncoding.PLAIN, Compressor.SNAPPY); - MeasurementNode node4 = new MeasurementNode(test_measurements[4], TSDataType.FLOAT, TSEncoding.PLAIN, Compressor.SNAPPY); - var measurements = new List() { node1, node2, node3, node4 }; - - Template template = new Template(test_template_name); - status = await session_pool.CreateSchemaTemplateAsync(template); - System.Diagnostics.Debug.Assert(status == 0); - status = await session_pool.AddUnalignedMeasurementsInTemplateAsync(test_template_name, measurements); - - status = await session_pool.DeleteNodeInTemplateAsync(test_template_name, test_measurements[1]); - var measurements_count = await session_pool.CountMeasurementsInTemplateAsync(test_template_name); - System.Diagnostics.Debug.Assert(measurements_count == 3); - System.Diagnostics.Debug.Assert(!await session_pool.IsPathExistInTemplate(test_template_name, test_measurements[1])); - status = await session_pool.DropSchemaTemplateAsync(test_template_name); - System.Diagnostics.Debug.Assert(status == 0); - await session_pool.Close(); - Console.WriteLine("TestDeleteNodeInTemplate Passed!"); - } } } \ No newline at end of file From 97075af1f3ac23b5e6e9038c1abed40ebd300cfa Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 10:48:08 +0800 Subject: [PATCH 198/214] remove debug info in ConcurrentClientQueue --- src/Apache.IoTDB/ConcurrentClientQueue.cs | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/Apache.IoTDB/ConcurrentClientQueue.cs b/src/Apache.IoTDB/ConcurrentClientQueue.cs index 18846c7..51b0f58 100644 --- a/src/Apache.IoTDB/ConcurrentClientQueue.cs +++ b/src/Apache.IoTDB/ConcurrentClientQueue.cs @@ -24,9 +24,6 @@ public void Return(Client client) { Monitor.Enter(ClientQueue); ClientQueue.Enqueue(client); -#if DEBUG - Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} put back {client}"); -#endif Monitor.Pulse(ClientQueue); Monitor.Exit(ClientQueue); Thread.Sleep(0); @@ -57,23 +54,13 @@ public Client Take() Monitor.Enter(ClientQueue); if (ClientQueue.IsEmpty) { -#if DEBUG - Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} the connection pool is empty, wait timeout:{Timeout}"); -#endif Monitor.Wait(ClientQueue, TimeSpan.FromSeconds(Timeout)); } if (!ClientQueue.TryDequeue(out client)) { -#if DEBUG - Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} obtaining a client from the client pool failed, wait and try again"); -#endif } else { - -#if DEBUG - Console.WriteLine($"Thread{Thread.CurrentThread.ManagedThreadId} take away {client}"); -#endif } Monitor.Exit(ClientQueue); if (client == null) From 1b14ecb1a66a1e14c653b7da11d7af3dd3735e71 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:04:41 +0800 Subject: [PATCH 199/214] remove debug output in SessionPool --- src/Apache.IoTDB/SessionPool.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 6796779..f018f71 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -657,7 +657,6 @@ public async Task InsertRecordAsync(string deviceId, RowRecord record) try { var status = await client.ServiceClient.insertRecordAsync(req); - Console.WriteLine("status Message {0}", status); if (_debugMode) { _logger.LogInformation("insert one record to device {0}, server message: {1}", deviceId, status.Message); From 6133a672fc24eb35862662e2cd7f738d82e504a7 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:05:10 +0800 Subject: [PATCH 200/214] add query test --- .../Apache.IoTDB.Samples/SessionPoolTest.cs | 141 ++++++++++++++++-- 1 file changed, 132 insertions(+), 9 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs index 44edde8..e016185 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.cs @@ -5,6 +5,7 @@ using Apache.IoTDB.Data; using Apache.IoTDB.DataStructure; using ConsoleTableExt; +using System.Net.Sockets; namespace Apache.IoTDB.Samples { @@ -39,11 +40,24 @@ public SessionPoolTest(string _host = "localhost") public async Task Test() { + await TestInsertOneRecord(); await TestInsertAlignedRecord(); await TestInsertAlignedRecords(); + await TestInsertAlignedStringRecords(); + + await TestInsertAlignedStringRecordsOfOneDevice(); + + await TestInsertStringRecord(); + + await TestInsertAlignedStringRecord(); + + await TestInsertStringRecords(); + + await TestInsertStringRecordsOfOneDevice(); + await TestInsertAlignedRecordsOfOneDevice(); await TestInsertAlignedTablet(); @@ -66,18 +80,12 @@ public async Task Test() await TestInsertTablets(); - await TestAddAlignedMeasurements(); - - await TestAddUnalignedMeasurements(); - await TestSetAndUnsetSchemaTemplate(); await TestCreateAlignedTimeseries(); await TestCreateAndDropSchemaTemplate(); - await TestDeleteNodeInTemplate(); - await TestGetTimeZone(); await TestSetAndDeleteStorageGroup(); @@ -96,12 +104,32 @@ public async Task Test() await TestNonSql(); + await TestRawDataQuery(); + + await TestLastDataQuery(); await TestSqlQuery(); await TestNonSqlBy_ADO(); } - + public async Task TestInsertOneRecord() + { + var session_pool = new SessionPool(host, port, 1); + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + await session_pool.DeleteStorageGroupAsync(test_group_name); + var status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[0]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[1]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + status = await session_pool.CreateTimeSeries( + string.Format("{0}.{1}.{2}", test_group_name, test_device, test_measurements[2]), + TSDataType.TEXT, TSEncoding.PLAIN, Compressor.SNAPPY); + var rowRecord = new RowRecord(1668404120807, new() { "1111111", "22222", "333333" }, new() { test_measurements[0], test_measurements[1], test_measurements[2] }); + status = await session_pool.InsertRecordsAsync(new List() { string.Format("{0}.{1}", test_group_name, test_device) }, new List() { rowRecord }); + } public async Task TestGetTimeZone() { var session_pool = new SessionPool(host, port, pool_size); @@ -275,7 +303,7 @@ public async Task TestNonSqlBy_ADO() { var cnts = new IoTDB.Data.IoTDBConnectionStringBuilder(); cnts.DataSource = host; - cnts.TimeOut =(int) TimeSpan.FromSeconds(20).TotalMilliseconds; + cnts.TimeOut = (int)TimeSpan.FromSeconds(20).TotalMilliseconds; var cnt = new IoTDB.Data.IoTDBConnection(cnts.ConnectionString); await cnt.OpenAsync(); var session_pool = cnt.SessionPool; @@ -303,7 +331,7 @@ await cnt.CreateCommand( "insert into " + string.Format("{0}.{1}", test_group_name, test_device) + "(timestamp, status, hardware) VALUES (7, true,'lz')").ExecuteNonQueryAsync(); var reader = await cnt.CreateCommand( "select * from " + string.Format("{0}.{1}", test_group_name, test_device) + " where time<10").ExecuteReaderAsync(); - ConsoleTableBuilder.From(reader.ToDataTable()).WithFormatter(0,fc=> $"{fc:yyyy-MM-dd HH:mm:ss.fff}" ).WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); + ConsoleTableBuilder.From(reader.ToDataTable()).WithFormatter(0, fc => $"{fc:yyyy-MM-dd HH:mm:ss.fff}").WithFormat(ConsoleTableBuilderFormat.Default).ExportAndWriteLine(); status = await session_pool.DeleteStorageGroupAsync(test_group_name); await cnt.CloseAsync(); @@ -373,5 +401,100 @@ await session_pool.ExecuteNonQueryStatementAsync( await session_pool.Close(); Console.WriteLine("SELECT sql Passed"); } + public async Task TestRawDataQuery() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List { test_measurements[0], test_measurements[1] }; + var data_type_lst = new List { TSDataType.BOOLEAN, TSDataType.FLOAT }; + var encoding_lst = new List { TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressor_lst = new List { Compressor.SNAPPY, Compressor.SNAPPY }; + status = await session_pool.CreateAlignedTimeseriesAsync(device_id, measurements, data_type_lst, encoding_lst, compressor_lst); + + var records = new List(); + var values = new List() { true, 20.0f }; + var device_id_lst = new List() { }; + for (int i = 1; i <= fetch_size * processed_size; i++) + { + var record = new RowRecord(i, values, measurements); + records.Add(record); + device_id_lst.Add(device_id); + } + status = await session_pool.InsertAlignedRecordsAsync(device_id_lst, records); + System.Diagnostics.Debug.Assert(status == 0); + + var paths = new List() { string.Format("{0}.{1}", device_id, test_measurements[0]), string.Format("{0}.{1}", device_id, test_measurements[1]) }; + + var res = await session_pool.ExecuteRawDataQuery(paths, 10, fetch_size * processed_size); + var count = 0; + while (res.HasNext()) + { + var record = res.Next(); + count++; + } + Console.WriteLine(count + " " + (fetch_size * processed_size - 10)); + System.Diagnostics.Debug.Assert(count == fetch_size * processed_size - 10); + await res.Close(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("RawDataQuery Passed"); + } + public async Task TestLastDataQuery() + { + var session_pool = new SessionPool(host, port, pool_size); + var status = 0; + await session_pool.Open(false); + if (debug) session_pool.OpenDebugMode(); + + System.Diagnostics.Debug.Assert(session_pool.IsOpen()); + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + + var device_id = string.Format("{0}.{1}", test_group_name, test_device); + var measurements = new List { test_measurements[0], test_measurements[1] }; + var data_type_lst = new List { TSDataType.BOOLEAN, TSDataType.FLOAT }; + var encoding_lst = new List { TSEncoding.PLAIN, TSEncoding.PLAIN }; + var compressor_lst = new List { Compressor.SNAPPY, Compressor.SNAPPY }; + status = await session_pool.CreateAlignedTimeseriesAsync(device_id, measurements, data_type_lst, encoding_lst, compressor_lst); + + var records = new List(); + var values = new List() { true, 20.0f }; + var device_id_lst = new List() { }; + for (int i = 1; i <= fetch_size * processed_size; i++) + { + var record = new RowRecord(i, values, measurements); + records.Add(record); + device_id_lst.Add(device_id); + } + status = await session_pool.InsertAlignedRecordsAsync(device_id_lst, records); + System.Diagnostics.Debug.Assert(status == 0); + + var paths = new List() { string.Format("{0}.{1}", device_id, test_measurements[0]), string.Format("{0}.{1}", device_id, test_measurements[1]) }; + + var res = await session_pool.ExecuteLastDataQueryAsync(paths, fetch_size * processed_size - 10); + var count = 0; + while (res.HasNext()) + { + var record = res.Next(); + Console.WriteLine(record); + count++; + } + Console.WriteLine(count + " " + (fetch_size * processed_size - 10)); + System.Diagnostics.Debug.Assert(count == 2); + await res.Close(); + + status = await session_pool.DeleteStorageGroupAsync(test_group_name); + System.Diagnostics.Debug.Assert(status == 0); + await session_pool.Close(); + Console.WriteLine("LastDataQuery Passed"); + } } } \ No newline at end of file From dd6469bfc89217f6f315e77bbe021dc83cf8ae6b Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:05:50 +0800 Subject: [PATCH 201/214] format code --- .../SessionPoolTest.AlignedRecord.cs | 9 +++++---- samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs | 2 +- samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs | 1 - 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs index c3cb455..3d414a0 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.AlignedRecord.cs @@ -250,7 +250,7 @@ public async Task TestInsertAlignedStringRecords() while (res.HasNext()) Console.WriteLine(res.Next()); await res.Close(); - + // large data test device_id = new List() { }; measurements_lst = new List>() { }; @@ -402,10 +402,11 @@ public async Task TestInsertAlignedRecordsOfOneDevice() await session_pool.Close(); Console.WriteLine("TestInsertAlignedRecordsOfOneDevice Passed!"); } - public async Task TestInsertAlignedStringRecordsOfOneDevice(){ + public async Task TestInsertAlignedStringRecordsOfOneDevice() + { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if(debug) session_pool.OpenDebugMode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; @@ -413,7 +414,7 @@ public async Task TestInsertAlignedStringRecordsOfOneDevice(){ var device_id = string.Format("{0}.{1}", test_group_name, test_device); var measurements = new List() { test_measurements[0], test_measurements[1], test_measurements[2] }; var data_type_lst = new List() { TSDataType.TEXT, TSDataType.TEXT, TSDataType.TEXT }; - var encoding_lst = new List() { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; + var encoding_lst = new List() { TSEncoding.PLAIN, TSEncoding.PLAIN, TSEncoding.PLAIN }; var compressor_lst = new List() { Compressor.SNAPPY, Compressor.SNAPPY, Compressor.SNAPPY }; status = await session_pool.CreateAlignedTimeseriesAsync(device_id, measurements, data_type_lst, encoding_lst, compressor_lst); System.Diagnostics.Debug.Assert(status == 0); diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs index 754e2ce..28e0401 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Record.cs @@ -473,7 +473,7 @@ public async Task TestInsertStringRecordsOfOneDevice() { var session_pool = new SessionPool(host, port, pool_size); await session_pool.Open(false); - if(debug) session_pool.OpenDebugMode(); + if (debug) session_pool.OpenDebugMode(); System.Diagnostics.Debug.Assert(session_pool.IsOpen()); var status = 0; diff --git a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs index 1b71b7d..80fbda6 100644 --- a/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs +++ b/samples/Apache.IoTDB.Samples/SessionPoolTest.Template.cs @@ -68,7 +68,6 @@ public async Task TestSetAndUnsetSchemaTemplate() status = await session_pool.CreateSchemaTemplateAsync(template); System.Diagnostics.Debug.Assert(status == 0); status = await session_pool.SetSchemaTemplateAsync(test_template_name, string.Format("{0}.{1}", test_group_name, test_device)); - System.Diagnostics.Debug.Assert(status == 0); var paths = await session_pool.ShowPathsTemplateSetOnAsync(test_template_name); foreach (var p in paths) { From 57f7016db56646e66b938bd9a4552b87d5246ed5 Mon Sep 17 00:00:00 2001 From: lausannel <51200935+lausannel@users.noreply.github.com> Date: Mon, 16 Jan 2023 18:25:07 +0800 Subject: [PATCH 202/214] add ci --- .github/workflows/e2e.yml | 2 +- docker-compose.yml | 40 ++++++++++++++++++++++++++++++++------- 2 files changed, 34 insertions(+), 8 deletions(-) diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index e3a8c4e..d539f3b 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -21,7 +21,7 @@ jobs: - name: Set Docker & Run Test run: | - docker-compose -f docker-compose.yml up --build --abort-on-container-exit --remove-orphans + docker network create --subnet 172.18.0.0/24 iotdb-network && docker-compose -f docker-compose.yml up --build --abort-on-container-exit --remove-orphans - name: Clean IoTDB & Shut Down Docker run: | diff --git a/docker-compose.yml b/docker-compose.yml index bb510ef..786cf10 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,12 +12,16 @@ services: context: . dockerfile: samples/Apache.IoTDB.Samples/Dockerfile networks: - - iotdb-network + iotdb-network: + ipv4_address: 172.18.0.2 iotdb: - image: apache/iotdb:0.13.0-node + image: apache/iotdb:1.0.0-datanode restart: always - container_name: iotdb + container_name: iotdb-dn-1 + depends_on: + iotdb-confignode-1: + condition: service_healthy healthcheck: test: ["CMD", "ls", "/iotdb/data"] interval: 3s @@ -27,9 +31,31 @@ services: ports: - 6667:6667 networks: - - iotdb-network + iotdb-network: + ipv4_address: 172.18.0.3 + environment: + - dn_rpc_address=iotdb + - dn_internal_address=iotdb + - dn_target_config_node_list=iotdb-confignode-1:22277 + + iotdb-confignode-1: + image: apache/iotdb:1.0.0-confignode + restart: always + container_name: iotdb-cn-1 + healthcheck: + test: ["CMD", "ls", "/iotdb/data"] + interval: 3s + timeout: 5s + retries: 30 + start_period: 30s + networks: + iotdb-network: + ipv4_address: 172.18.0.4 + environment: + - cn_internal_address=iotdb-confignode-1 + - cn_target_config_node_list=iotdb-confignode-1:22277 -networks: - iotdb-network: - driver: bridge +networks: + iotdb-network: + external: true \ No newline at end of file From 2438fd712ad19f450164c8d512459056ecdddc81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E5=B1=95?= Date: Thu, 6 Apr 2023 10:50:17 +0800 Subject: [PATCH 203/214] fix:change the parameters type of two interfaces --- src/Apache.IoTDB/SessionPool.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index f018f71..13d4131 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -1836,7 +1836,7 @@ public async Task ExecuteNonQueryStatementAsync(string sql) _clients.Add(client); } } - public async Task ExecuteRawDataQuery(List paths, int startTime, int endTime) + public async Task ExecuteRawDataQuery(List paths, long startTime, long endTime) { TSExecuteStatementResp resp; TSStatus status; @@ -1887,7 +1887,7 @@ public async Task ExecuteRawDataQuery(List paths, int st return sessionDataset; } - public async Task ExecuteLastDataQueryAsync(List paths, int lastTime) + public async Task ExecuteLastDataQueryAsync(List paths, long lastTime) { TSExecuteStatementResp resp; TSStatus status; From 7065ea853d539c904995206f8cc2100e7f0e49ef Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 15:56:14 +0800 Subject: [PATCH 204/214] fix SessionPool constructor parameter --- src/Apache.IoTDB/SessionPool.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apache.IoTDB/SessionPool.cs b/src/Apache.IoTDB/SessionPool.cs index 13d4131..5621836 100644 --- a/src/Apache.IoTDB/SessionPool.cs +++ b/src/Apache.IoTDB/SessionPool.cs @@ -38,7 +38,7 @@ public class SessionPool : IDisposable private ILogger _logger; public SessionPool(string host, int port, int poolSize) - : this(host, port, "root", "root", poolSize, "UTC+08:00", 8, true, 60) + : this(host, port, "root", "root", 1024, "UTC+08:00", poolSize, true, 60) { } From d37733991bd9c15cf4a5aca13e2f16b23a4d3da3 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 16:02:37 +0800 Subject: [PATCH 205/214] update docker image version --- .gitignore | 9 +++++---- docker-compose.yml | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 3e8e156..3a7b0db 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ *.user *.userosscache *.sln.docstates +**/tmp # Build results [Dd]ebug/ @@ -65,7 +66,7 @@ publish/ ### Rider ### -.idea -/.vs/Apache.IoTDB/FileContentIndex -/.vs/ProjectEvaluation -/.vs/Apache.IoTDB +.idea +/.vs/Apache.IoTDB/FileContentIndex +/.vs/ProjectEvaluation +/.vs/Apache.IoTDB diff --git a/docker-compose.yml b/docker-compose.yml index 786cf10..f50871a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,7 +16,7 @@ services: ipv4_address: 172.18.0.2 iotdb: - image: apache/iotdb:1.0.0-datanode + image: apache/iotdb:1.1.0-datanode restart: always container_name: iotdb-dn-1 depends_on: @@ -39,7 +39,7 @@ services: - dn_target_config_node_list=iotdb-confignode-1:22277 iotdb-confignode-1: - image: apache/iotdb:1.0.0-confignode + image: apache/iotdb:1.1.0-confignode restart: always container_name: iotdb-cn-1 healthcheck: From bf5db251c858b7c411557007ac2d7e3b03d91bfa Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 16:07:41 +0800 Subject: [PATCH 206/214] update docker image --- docker-compose.yml | 25 ++----------------------- 1 file changed, 2 insertions(+), 23 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index f50871a..e0ade63 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,9 +16,9 @@ services: ipv4_address: 172.18.0.2 iotdb: - image: apache/iotdb:1.1.0-datanode + image: apache/iotdb:1.1.0-standalone restart: always - container_name: iotdb-dn-1 + container_name: iotdb-standalone-1 depends_on: iotdb-confignode-1: condition: service_healthy @@ -33,27 +33,6 @@ services: networks: iotdb-network: ipv4_address: 172.18.0.3 - environment: - - dn_rpc_address=iotdb - - dn_internal_address=iotdb - - dn_target_config_node_list=iotdb-confignode-1:22277 - - iotdb-confignode-1: - image: apache/iotdb:1.1.0-confignode - restart: always - container_name: iotdb-cn-1 - healthcheck: - test: ["CMD", "ls", "/iotdb/data"] - interval: 3s - timeout: 5s - retries: 30 - start_period: 30s - networks: - iotdb-network: - ipv4_address: 172.18.0.4 - environment: - - cn_internal_address=iotdb-confignode-1 - - cn_target_config_node_list=iotdb-confignode-1:22277 networks: From 59ff7028e7e5a4c636eb4bae905c693d33c230d2 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 16:08:26 +0800 Subject: [PATCH 207/214] update docker image --- docker-compose.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index e0ade63..02ead46 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -19,9 +19,6 @@ services: image: apache/iotdb:1.1.0-standalone restart: always container_name: iotdb-standalone-1 - depends_on: - iotdb-confignode-1: - condition: service_healthy healthcheck: test: ["CMD", "ls", "/iotdb/data"] interval: 3s From 9f0c6d49f1203f37b215e400dbf8f4dac0dbda71 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 16:11:58 +0800 Subject: [PATCH 208/214] update docker image --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 02ead46..02ed4a3 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,7 +16,7 @@ services: ipv4_address: 172.18.0.2 iotdb: - image: apache/iotdb:1.1.0-standalone + image: apache/iotdb:1.0.1-standalone restart: always container_name: iotdb-standalone-1 healthcheck: From d41785fbaec341159850bc1398494cd8af5b2b74 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 16:14:42 +0800 Subject: [PATCH 209/214] revert docker image change --- docker-compose.yml | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 02ed4a3..786cf10 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,9 +16,12 @@ services: ipv4_address: 172.18.0.2 iotdb: - image: apache/iotdb:1.0.1-standalone + image: apache/iotdb:1.0.0-datanode restart: always - container_name: iotdb-standalone-1 + container_name: iotdb-dn-1 + depends_on: + iotdb-confignode-1: + condition: service_healthy healthcheck: test: ["CMD", "ls", "/iotdb/data"] interval: 3s @@ -30,6 +33,27 @@ services: networks: iotdb-network: ipv4_address: 172.18.0.3 + environment: + - dn_rpc_address=iotdb + - dn_internal_address=iotdb + - dn_target_config_node_list=iotdb-confignode-1:22277 + + iotdb-confignode-1: + image: apache/iotdb:1.0.0-confignode + restart: always + container_name: iotdb-cn-1 + healthcheck: + test: ["CMD", "ls", "/iotdb/data"] + interval: 3s + timeout: 5s + retries: 30 + start_period: 30s + networks: + iotdb-network: + ipv4_address: 172.18.0.4 + environment: + - cn_internal_address=iotdb-confignode-1 + - cn_target_config_node_list=iotdb-confignode-1:22277 networks: From d771dd0cc9451eff23ce5358fb28b15796350ad9 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 17:19:44 +0800 Subject: [PATCH 210/214] add wait tiem refresh to the thread --- src/Apache.IoTDB/ConcurrentClientQueue.cs | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/Apache.IoTDB/ConcurrentClientQueue.cs b/src/Apache.IoTDB/ConcurrentClientQueue.cs index 51b0f58..32ff3c7 100644 --- a/src/Apache.IoTDB/ConcurrentClientQueue.cs +++ b/src/Apache.IoTDB/ConcurrentClientQueue.cs @@ -24,7 +24,7 @@ public void Return(Client client) { Monitor.Enter(ClientQueue); ClientQueue.Enqueue(client); - Monitor.Pulse(ClientQueue); + Monitor.PulseAll(ClientQueue); // wake up all threads waiting on the queue, refresh the waiting time Monitor.Exit(ClientQueue); Thread.Sleep(0); } @@ -52,15 +52,17 @@ public Client Take() { Client client = null; Monitor.Enter(ClientQueue); - if (ClientQueue.IsEmpty) - { - Monitor.Wait(ClientQueue, TimeSpan.FromSeconds(Timeout)); - } - if (!ClientQueue.TryDequeue(out client)) - { - } - else - { + while(true){ + bool timeout = false; + if (ClientQueue.IsEmpty) + { + timeout = !Monitor.Wait(ClientQueue, TimeSpan.FromSeconds(Timeout)); + } + ClientQueue.TryDequeue(out client); + + if(client != null || timeout){ + break; + } } Monitor.Exit(ClientQueue); if (client == null) From adb8ebd6fb795c278a22f42d90d3689b04138b0e Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 17:27:14 +0800 Subject: [PATCH 211/214] change some version descriptions in readme --- README.md | 19 ++++++------------- README_ZH.md | 20 ++++++-------------- 2 files changed, 12 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 5d05634..dba6398 100644 --- a/README.md +++ b/README.md @@ -41,11 +41,12 @@ We have prepared Nuget Package for C# users. Users can directly install the clie dotnet add package Apache.IoTDB ``` -Note that the `Apache.IoTDB` package only supports `.net 5.0`. If you are using `.net framework 4.x`, please refer to the section [starting from .net framework 4.x](#starting-from-net-framework-4x). +Note that the `Apache.IoTDB` package only supports versions greater than `.net framework 4.6.1`.(#starting-from-net-framework-4x). ## Prerequisites - .NET SDK Version == 5.0 + .NET SDK Version >= 5.0 + .NET Framework >= 4.6.1 ## How to Use the Client (Quick Start) @@ -54,7 +55,8 @@ Users can refer to the test code in [tests](https://github.com/eedalong/Apache-I ## Developer environment requirements for iotdb-client-csharp ``` -.NET SDK Version == 5.0 +.NET SDK Version >= 5.0 +.NET Framework >= 4.6.1 ApacheThrift >= 0.14.1 NLog >= 4.7.9 ``` @@ -67,13 +69,4 @@ NLog >= 4.7.9 ### Command Line Tools ## Publish your own client on nuget.org -You can find out how to publish from this [doc](./PUBLISH.md). - -## Starting from `.net framework 4.x` -In order to adapt to `.net framework 4.x`, we have packaged a nuget package separately, the package name is [`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/). - -You can install it through Package Manager (PM), .NET CLI, etc. For example (.NET CLI): - -```sh -dotnet add package Apache.IoTDB.framework --version 0.12.1.2 -``` \ No newline at end of file +You can find out how to publish from this [doc](./PUBLISH.md). \ No newline at end of file diff --git a/README_ZH.md b/README_ZH.md index e7e3577..37d3943 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -39,18 +39,19 @@ Apache IoTDB Github: https://github.com/apache/iotdb dotnet add package Apache.IoTDB ``` -请注意,`Apache.IoTDB`这个包仅支持`.net 5.0`。 如果您使用的是`.net framework 4.x`,请参考[从`.net framework 4.x`开始](#从-net-framework-4x-开始)。 - +请注意,`Apache.IoTDB`这个包仅支持大于`.net framework 4.6.1`的版本。 ## 环境准备 - .NET SDK Version == 5.0 + .NET SDK Version >= 5.0 + .NET Framework >= 4.6.1 ## 如何使用 (快速上手) 用户可参考[使用样例](https://github.com/eedalong/Apache-IoTDB-Client-CSharp-UserCase)中的测试代码了解各个接口使用方式 ## iotdb-client-csharp的开发者环境要求 - .NET SDK Version == 5.0 + .NET SDK Version >= 5.0 + .NET Framework >= 4.6.1 ApacheThrift >= 0.14.1 NLog >= 4.7.9 @@ -63,13 +64,4 @@ dotnet add package Apache.IoTDB ### 命令行工具 ## 在 nuget.org 上发布你自己的客户端 -你可以在这个[文档](./PUBLISH.md)中找到如何发布 - -## 从`.net framework 4.x`开始 -为了适配`.net framework 4.x`,我们单独构建了一个Nuget包,包名是[`Apache.IoTDB.framework`](https://www.nuget.org/packages/Apache.IoTDB.framework/)。 - -您可以使用PM、.NET CLI等工作来安装它。以.NET CLI为例: - -```sh -dotnet add package Apache.IoTDB.framework --version 0.12.1.2 -``` \ No newline at end of file +你可以在这个[文档](./PUBLISH.md)中找到如何发布 \ No newline at end of file From f7264a670e0a5bb978b3bf64a66035e172ca9e71 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 17:46:52 +0800 Subject: [PATCH 212/214] fix the deadlock issue caused by task.Result --- src/Apache.IoTDB/DataStructure/SessionDataSet.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index bc254c6..9f52ab6 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -250,9 +250,7 @@ private bool FetchResults() }; try { - var task = myClient.ServiceClient.fetchResultsAsync(req); - task.Wait(); - var resp = task.Result; + var resp = await myClient.ServiceClient.fetchResultsAsync(req); if (resp.HasResultSet) { From 8b58b349691c72885bd16469b98e708ef1a42f33 Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 18:00:26 +0800 Subject: [PATCH 213/214] change await to similar semantics in wait --- src/Apache.IoTDB/DataStructure/SessionDataSet.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 9f52ab6..8d92791 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -122,7 +122,7 @@ public bool HasNext() // we have consumed all current data, fetch some more if (!_timeBuffer.HasRemaining()) { - if (!FetchResults()) + if (FetchResults()) { return false; } @@ -250,7 +250,9 @@ private bool FetchResults() }; try { - var resp = await myClient.ServiceClient.fetchResultsAsync(req); + var task = myClient.ServiceClient.fetchResultsAsync(req); + + var resp = task.ConfigureAwait(false).GetAwaiter().GetResult(); if (resp.HasResultSet) { From 828bf7e2dcd1ace16b23da256808df840f46523d Mon Sep 17 00:00:00 2001 From: lausannel <513964121@qq.com> Date: Mon, 22 May 2023 18:16:22 +0800 Subject: [PATCH 214/214] fix typo --- src/Apache.IoTDB/DataStructure/SessionDataSet.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs index 8d92791..4cd3380 100644 --- a/src/Apache.IoTDB/DataStructure/SessionDataSet.cs +++ b/src/Apache.IoTDB/DataStructure/SessionDataSet.cs @@ -122,7 +122,7 @@ public bool HasNext() // we have consumed all current data, fetch some more if (!_timeBuffer.HasRemaining()) { - if (FetchResults()) + if (!FetchResults()) { return false; }