Raven.Storage.Managed.AttachmentsStorageActions.AddAttachment C# (CSharp) Метод

AddAttachment() публичный Метод

public AddAttachment ( string key, System.Guid etag, byte data, JObject headers ) : void
key string
etag System.Guid
data byte
headers JObject
Результат void
		public void AddAttachment(string key, Guid? etag, byte[] data, JObject headers)
		{
			var attachmentPosition = Mutator.Attachments.FindValue(key);
			headers["@etag"] = new JValue(DocumentDatabase.CreateSequentialUuid().ToString());
			if (attachmentPosition == null)
			{
				Mutator.IncrementAttachmentCount();
			}
			else 
			{
				EnsureValidEtag(key, attachmentPosition.Value, etag);
			}

			var position = Writer.Position;
			headers.WriteTo(new BsonWriter(Writer));
			BinaryWriter.Write7BitEncodedInt(data.Length);
			Writer.Write(data, 0, data.Length);
			Mutator.Attachments.Add(key, position);
			logger.DebugFormat("Adding attachment {0}", key);
		}