NHibernate.Lob.Parameters.GetClobSettings C# (CSharp) Method

GetClobSettings() static private method

static private GetClobSettings ( string>.IDictionary parameters, Encoding &encoding, IStreamCompressor &compression ) : void
parameters string>.IDictionary
encoding System.Text.Encoding
compression IStreamCompressor
return void
		internal static void GetClobSettings(IDictionary<string, string> parameters, out Encoding encoding, out IStreamCompressor compression)
		{
			string compr = parameters == null ? null : parameters["compression"];
			if (string.IsNullOrEmpty(compr))
				compression = null;
			else if (compr.Equals("gzip", StringComparison.OrdinalIgnoreCase))
				compression = GZipCompressor.Instance;
			else
			{
				System.Type compressor = System.Type.GetType(compr);
				compression = (IStreamCompressor)System.Activator.CreateInstance(compressor);
				IParameterizedType parameterized = compression as IParameterizedType;
				if (parameterized != null)
					parameterized.SetParameterValues(parameters);
			}

			string enc = parameters == null ? null : parameters["encoding"] as string;
			if (!string.IsNullOrEmpty(enc)) encoding = Encoding.GetEncoding(enc);
			else encoding = null;
		}