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

EnsureValidEtag() приватный Метод

private EnsureValidEtag ( string key, long attachmentPosition, System.Guid etag ) : void
key string
attachmentPosition long
etag System.Guid
Результат void
		private void EnsureValidEtag(string key, long attachmentPosition, Guid? etag)
		{
			if (etag == null)
				return;
			Reader.Position = attachmentPosition;
			var storedHeaders = JObject.Load(new BsonReader(Reader));
			var existingEtag = new Guid(storedHeaders.Value<string>("@etag"));
			if (existingEtag != etag.Value)
			{
				throw new ConcurrencyException("PUT attempted on attachment '" + key +
					"' using a non current etag")
				{
					ActualETag = etag.Value,
					ExpectedETag = existingEtag
				};
			}
		}