protected override Stream Export(BufferManager bufferManager, int count) { if (count > 256) { throw new ArgumentException(); } lock (this.ThisLock) { BufferStream bufferStream = new BufferStream(bufferManager); // Name if (this.Name != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Name, this.Name); } // CreationTime if (this.CreationTime != DateTime.MinValue) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CreationTime, this.CreationTime.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssZ", System.Globalization.DateTimeFormatInfo.InvariantInfo)); } // Comment if (this.Comment != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Comment, this.Comment); } // Seeds foreach (var value in this.Seeds) { using (var stream = value.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Seed, stream); } } // Boxes foreach (var value in this.Boxes) { using (var stream = value.Export(bufferManager, count + 1)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Box, stream); } } // Certificate if (this.Certificate != null) { using (var stream = this.Certificate.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Certificate, stream); } } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); } }
protected override Stream Export(BufferManager bufferManager, int count) { lock (this.ThisLock) { BufferStream bufferStream = new BufferStream(bufferManager); // TrustSignatures foreach (var value in this.TrustSignatures) { ItemUtilities.Write(bufferStream, (byte)SerializeId.TrustSignature, value); } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); } }
protected override Stream Export(BufferManager bufferManager, int count) { BufferStream bufferStream = new BufferStream(bufferManager); // Hash if (this.Hash != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Hash, this.Hash); } // HashAlgorithm if (this.HashAlgorithm != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.HashAlgorithm, this.HashAlgorithm.ToString()); } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); }
protected override Stream Export(BufferManager bufferManager, int count) { BufferStream bufferStream = new BufferStream(bufferManager); // Id if (this.Id != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Id, this.Id); } // Uris foreach (var value in this.Uris) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Uri, value); } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); }
protected override Stream Export(BufferManager bufferManager, int count) { lock (this.ThisLock) { BufferStream bufferStream = new BufferStream(bufferManager); // Boxes foreach (var value in this.Boxes) { using (var stream = value.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Box, stream); } } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); } }
protected override Stream Export(BufferManager bufferManager, int count) { lock (this.ThisLock) { BufferStream bufferStream = new BufferStream(bufferManager); // Keys foreach (var value in this.Keys) { using (var stream = value.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Key, stream); } } // CorrectionAlgorithm if (this.CorrectionAlgorithm != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CorrectionAlgorithm, this.CorrectionAlgorithm.ToString()); } // InformationLength if (this.InformationLength != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.InformationLength, this.InformationLength); } // BlockLength if (this.BlockLength != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.BlockLength, this.BlockLength); } // Length if (this.Length != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Length, this.Length); } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); } }
protected override Stream Export(BufferManager bufferManager, int count) { lock (this.ThisLock) { BufferStream bufferStream = new BufferStream(bufferManager); // Groups foreach (var value in this.Groups) { using (var stream = value.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Group, stream); } } // CompressionAlgorithm if (this.CompressionAlgorithm != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CompressionAlgorithm, this.CompressionAlgorithm.ToString()); } // CryptoAlgorithm if (this.CryptoAlgorithm != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CryptoAlgorithm, this.CryptoAlgorithm.ToString()); } // CryptoKey if (this.CryptoKey != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CryptoKey, this.CryptoKey); } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); } }
protected override Stream Export(BufferManager bufferManager, int count) { lock (this.ThisLock) { BufferStream bufferStream = new BufferStream(bufferManager); // Name if (this.Name != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Name, this.Name); } // Length if (this.Length != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Length, this.Length); } // CreationTime if (this.CreationTime != DateTime.MinValue) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CreationTime, this.CreationTime.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssZ", System.Globalization.DateTimeFormatInfo.InvariantInfo)); } // Comment if (this.Comment != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Comment, this.Comment); } // Rank if (this.Rank != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Rank, this.Rank); } // Key if (this.Key != null) { using (var stream = this.Key.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Key, stream); } } // Keywords foreach (var value in this.Keywords) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Keyword, value); } // CompressionAlgorithm if (this.CompressionAlgorithm != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CompressionAlgorithm, this.CompressionAlgorithm.ToString()); } // CryptoAlgorithm if (this.CryptoAlgorithm != 0) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CryptoAlgorithm, this.CryptoAlgorithm.ToString()); } // CryptoKey if (this.CryptoKey != null) { ItemUtilities.Write(bufferStream, (byte)SerializeId.CryptoKey, this.CryptoKey); } // Certificate if (this.Certificate != null) { using (var stream = this.Certificate.Export(bufferManager)) { ItemUtilities.Write(bufferStream, (byte)SerializeId.Certificate, stream); } } bufferStream.Seek(0, SeekOrigin.Begin); return(bufferStream); } }