private static void PrintMessageValue <TValue>(int key, TValue val) where TValue : class, IMessage <TValue>, new() { var msg = string.Empty; var tmp = string.Empty; GoogleTimestamp ts = null; //if (val is Protos.v1.HelloReply val1) //{ // msg = val1.Message; //} //if (val is Protos.v2.HelloReply val2) //{ // msg = val2.Message; // tmp = val2.TemperatureF != null ? $"at {val2.TemperatureF} degrees" : string.Empty; //} //if (val is Protos.v3.HelloReply val3) //{ // msg = val3.Message; // tmp = val3.TemperatureF != null ? $"at {val3.TemperatureF} degrees" : string.Empty; // ts = val3.DateTimeStamp; //} //if (val is Protos.v4.HelloReply val4) //{ // msg = val4.Message; // ts = val4.DateTimeStamp; //} //if (val is Protos.v5.HelloReply val5) //{ // msg = val5.Message; // var dt = DateTime.SpecifyKind(DateTime.Parse(val5.DateTimeStamp), DateTimeKind.Utc); // ts = GoogleTimestamp.FromDateTime(dt); //} Console.WriteLine($"\nMessage value: {key} (key) {msg} {tmp} {ts}"); }
private static void PrintConsumeResult <TKey, TValue>(ConsumeResult <TKey, TValue> consumeResult) // where TKey : class, new() where TValue : class, new() { long key = 0; long id = 0; var first_name = string.Empty; var last_name = string.Empty; var favColor = string.Empty; int age = 0; GoogleTimestamp ts = new GoogleTimestamp(); if (consumeResult.Message.Value is Protos.Source.v1.person val1) { id = val1.PersonId; first_name = val1.FirstName; last_name = val1.LastName; favColor = val1.FavoriteColor; age = val1.Age; ts = val1.RowVersion; } // if (consumeResult.Message.Key is Source.Key key1) // { // key = key1.PersonId; // } Console.WriteLine($"Received message at {consumeResult.TopicPartitionOffset}: Key: {key}, " + $"Id: {id}, Name: {first_name} {last_name}, Fav Color: {favColor}, Age: {age} RowVersion: {ts}"); }
private static TValue CreateMessageValue <TValue>(string msg) where TValue : class, IMessage <TValue>, new() { int?tmp = new Random().Next(-32, 100); var ts = GoogleTimestamp.FromDateTime(DateTime.UtcNow); var val = new TValue(); //if (val is IHelloReply val1) //{ // val1.Message = msg; //}; //if (val is IHelloReply_2 val2) //{ // val2.TemperatureF = tmp; //}; //if (val is IHelloReply_3 val3) //{ // val3.TemperatureF = tmp; // val3.DateTimeStamp = ts; //}; //if (val is IHelloReply_4 val4) //{ // val4.DateTimeStamp = ts; //}; //if (val is IHelloReply_5 val5) //{ // val5.DateTimeStamp = DateTime.UtcNow.ToLongTimeString(); //}; return(val); }
/// <inheritdoc/> protected override DateTime ReadValue(ref ParseContext context) { var timestamp = new Google.Protobuf.WellKnownTypes.Timestamp(); context.ReadMessage(timestamp); return(timestamp.ToDateTime()); }
public static void GetChecksum(this Google.Protobuf.WellKnownTypes.Timestamp tmp, BinaryWriter inWriter) { using (var memStream = new MemoryStream()) { var dataStream = new CodedOutputStream(memStream); tmp.WriteTo(dataStream); // this sucks because its going to do a copy :/ inWriter.Write(memStream.ToArray()); } }
void pb.IBufferMessage.InternalMergeFrom(ref pb.ParseContext input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch (tag) { default: _unknownFields = pb.UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input); break; case 10: { ClientId = input.ReadString(); break; } case 18: { MessageId = input.ReadString(); break; } case 24: { Type = (MessageType)input.ReadEnum(); break; } case 34: { if (time_ == null) { Time = new Google.Protobuf.WellKnownTypes.Timestamp(); } input.ReadMessage(Time); break; } case 40: { Status = (MessageStatus)input.ReadEnum(); break; } case 50: { Payload = input.ReadBytes(); break; } case 56: { Response = (ResponseType)input.ReadEnum(); break; } } } }
public void MergeFrom(RequestMessage other) { if (other == null) { return; } if (other.ClientId.Length != 0) { ClientId = other.ClientId; } if (other.MessageId.Length != 0) { MessageId = other.MessageId; } if (other.Type != MessageType.Undefined) { Type = other.Type; } if (other.time_ != null) { if (time_ == null) { Time = new Google.Protobuf.WellKnownTypes.Timestamp(); } Time.MergeFrom(other.Time); } if (other.Status != MessageStatus.Undefined) { Status = other.Status; } if (other.Payload.Length != 0) { Payload = other.Payload; } if (other.Response != ResponseType.Undefined) { Response = other.Response; } _unknownFields = pb.UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
public void FSCommit() { FirestoreTestUtils.ColoredConsoleWrite(ConsoleColor.Green, "\n :: Starting Commit ::\n"); if (TransactionId == null) { FirestoreTestUtils.ColoredConsoleWrite(ConsoleColor.Yellow, "No transaction to commit, returning!\n"); return; } var commitRequest = new CommitRequest(); commitRequest.Database = Parent; commitRequest.Transaction = TransactionId; var commitResponse = new CommitResponse(); try { commitResponse = FsClient.Commit(commitRequest); } catch (Exception e) { FirestoreTestUtils.ColoredConsoleWrite(ConsoleColor.Red, "Exception caught\n" + e.Message); return; } var timestamp = commitResponse.CommitTime; if (timestamp == null) { timestamp = new Google.Protobuf.WellKnownTypes.Timestamp(); // fix } FirestoreTestUtils.ColoredConsoleWrite(ConsoleColor.Green, "\n Successfully commit at "); FirestoreTestUtils.ColoredConsoleWrite(ConsoleColor.White, timestamp.ToDateTime().ToString()); FirestoreTestUtils.ColoredConsoleWrite(ConsoleColor.Green, "!"); // clear transactionId! ClearTransactionId(); }
private static void PrintConsumeResult <TValue>(ConsumeResult <int, TValue> consumeResult) where TValue : class, IMessage <TValue>, new() { var key = consumeResult.Message.Key; var msg = string.Empty; var tmp = string.Empty; GoogleTimestamp ts = null; //if (consumeResult.Message.Value is Protos.v1.HelloReply val1) //{ // msg = val1.Message; //} //if (consumeResult.Message.Value is Protos.v2.HelloReply val2) //{ // msg = val2.Message; // tmp = val2.TemperatureF != null ? $"at {val2.TemperatureF} degrees" : string.Empty; //} //if (consumeResult.Message.Value is Protos.v3.HelloReply val3) //{ // msg = val3.Message; // tmp = val3.TemperatureF != null ? $"at {val3.TemperatureF} degrees" : string.Empty; // ts = val3.DateTimeStamp; //} //if (consumeResult.Message.Value is Protos.v4.HelloReply val4) //{ // msg = val4.Message; // ts = val4.DateTimeStamp; //} //if (consumeResult.Message.Value is Protos.v5.HelloReply val5) //{ // msg = val5.Message; // var dt = DateTime.SpecifyKind(DateTime.Parse(val5.DateTimeStamp), DateTimeKind.Utc); // ts = GoogleTimestamp.FromDateTime(dt); //} Console.WriteLine($"Received message at {consumeResult.TopicPartitionOffset}: {key} (key) {msg} {tmp} {ts}"); }
public static string ProtoTs2Utc(Google.Protobuf.WellKnownTypes.Timestamp utcTs, string format = DtFormats.HhMm) { return(utcTs.ToDateTimeOffset().ToString(format) + " (UTC)"); // UTC }