internal static void Deserialize(ILogDescriptor descriptor, LogDeserializeContext context) { descriptor.Version = context.br.ReadUInt64(); // Version descriptor.PreviousHash = context.br.ReadVarBuffer(); // PreviousHash descriptor.HashRoot = context.br.ReadVarBuffer(); // HashRoot descriptor.Timestamp = context.br.ReadUInt128(); // Timestamp descriptor.Nonce = context.br.ReadVarBuffer(); // Nonce }
/// <summary> /// 指定文本编写器工厂和日志描述器,初始化一个 <see cref="Aoite.Logger.TextLogger"/> 类的新实例。 /// </summary> /// <param name="textWriterfactory">文本编写器工厂。</param> /// <param name="descriptor">日志描述器。</param> public TextLogger(ITextWriterFactory textWriterfactory, ILogDescriptor descriptor) { if(textWriterfactory == null) throw new ArgumentNullException(nameof(textWriterfactory)); if(descriptor == null) throw new ArgumentNullException(nameof(descriptor)); this._TextWriterFactory = textWriterfactory; this._Descriptor = descriptor; }
internal static void Serialize(ILogDescriptor descriptor, LogSerializeContext context, bool hash) { context.bw.Write(context.Version); // Version context.bw.WriteVarBuffer(descriptor.PreviousHash); // PreviousHash if (!hash) { context.bw.WriteVarBuffer(descriptor.HashRoot); // HashRoot } context.bw.Write(descriptor.Timestamp); // Timestamp context.bw.WriteVarBuffer(descriptor.Nonce); // Nonce }
/// <summary> /// 指定文本编写器工厂和日志描述器,初始化一个 <see cref="Aoite.Logger.TextLogger"/> 类的新实例。 /// </summary> /// <param name="textWriterfactory">文本编写器工厂。</param> /// <param name="descriptor">日志描述器。</param> public TextLogger(ITextWriterFactory textWriterfactory, ILogDescriptor descriptor) { if (textWriterfactory == null) { throw new ArgumentNullException("textWriterfactory"); } if (descriptor == null) { throw new ArgumentNullException("descriptor"); } this._TextWriterFactory = textWriterfactory; this._Descriptor = descriptor; }