NHibernate.Lob.BlobType.GetData C# (CSharp) Method

GetData() protected method

protected GetData ( object value ) : object
value object
return object
		protected override object GetData(object value)
		{
			Blob blob = value as Blob;
			if (blob == null) return null;
			ArrayBlob ab = blob as ArrayBlob;
			if (ab != null && compression == null) return ab.Data;
			CompressedBlob cb = blob as CompressedBlob;
			if (cb != null && cb.Compression.Equals(compression)) return cb.Data;
			using (MemoryStream data = new MemoryStream())
			{
				if (compression == null)
					blob.WriteTo(data);
				else
					using (Stream cs = compression.GetCompressor(data))
						blob.WriteTo(cs);
				return data.ToArray();
			}
		}