예제 #1
0
		/// <summary>
		///    Initializes a new instance of the <see cref="Stargate" /> class.
		/// </summary>
		/// <param name="options">The options.</param>
		/// <param name="resourceBuilder">The resource builder.</param>
		/// <param name="restSharp">The RestSharp factory.</param>
		/// <param name="converterFactory">The converter factory.</param>
		/// <param name="errorProvider">The error provider.</param>
		/// <param name="scannerConverter">The scanner converter.</param>
		public Stargate(IStargateOptions options, IResourceBuilder resourceBuilder, IRestSharpFactory restSharp, IMimeConverterFactory converterFactory,
			IErrorProvider errorProvider, IScannerOptionsConverter scannerConverter)
		{
			_resourceBuilder = resourceBuilder;
			_restSharp = restSharp;
			_errorProvider = errorProvider;
			_scannerConverter = scannerConverter;
			_client = _restSharp.CreateClient(options.ServerUrl);
			options.ContentType = string.IsNullOrEmpty(options.ContentType) ? DefaultContentType : options.ContentType;
			_converter = converterFactory.CreateConverter(options.ContentType);
			options.FalseRowKey = string.IsNullOrEmpty(options.FalseRowKey) ? DefaultFalseRowKey : options.FalseRowKey;
			Options = options;
		}
예제 #2
0
 /// <summary>
 ///   Initializes a new instance of the <see cref="Stargate" /> class.
 /// </summary>
 /// <param name="options">The options.</param>
 /// <param name="resourceBuilderFactory">The resource builder factory.</param>
 /// <param name="restSharp">The RestSharp factory.</param>
 /// <param name="converterFactory">The converter factory.</param>
 /// <param name="errorProvider">The error provider.</param>
 /// <param name="scannerConverter">The scanner converter.</param>
 public Stargate(IStargateOptions options, Func <IStargateOptions, IResourceBuilder> resourceBuilderFactory, IRestSharpFactory restSharp,
                 IMimeConverterFactory converterFactory, IErrorProvider errorProvider, IScannerOptionsConverter scannerConverter)
 {
     ResourceBuilder     = resourceBuilderFactory(options);
     RestSharp           = restSharp;
     ErrorProvider       = errorProvider;
     ScannerConverter    = scannerConverter;
     Client              = RestSharp.CreateClient(options.ServerUrl);
     options.ContentType = string.IsNullOrEmpty(options.ContentType) ? DefaultContentType : options.ContentType;
     Converter           = converterFactory.CreateConverter(options.ContentType);
     options.FalseRowKey = string.IsNullOrEmpty(options.FalseRowKey) ? DefaultFalseRowKey : options.FalseRowKey;
     Options             = options;
 }
예제 #3
0
        /// <summary>
        ///   Creates a new stargate with the specified options.
        /// </summary>
        /// <param name="options">The options.</param>
        public static IStargate Create(IStargateOptions options)
        {
            Func <IStargateOptions, IResourceBuilder> resourceBuilderFactory = opt => new ResourceBuilder(opt);
            var restSharp      = new RestSharpFactory(url => new RestClient(url), (resource, method) => new RestRequest(resource, method));
            var codec          = new Base64Codec();
            var mimeConverters = new MimeConverterFactory(new[]
            {
                new XmlMimeConverter(new SimpleValueConverter(), codec)
            });
            var errors           = new ErrorProvider();
            var scannerConverter = new ScannerOptionsConverter(codec);

            options.ContentType = string.IsNullOrEmpty(options.ContentType)
        ? DefaultContentType
        : options.ContentType;

            options.FalseRowKey = string.IsNullOrEmpty(options.FalseRowKey)
        ? DefaultFalseRowKey
        : options.FalseRowKey;

            return(new Stargate(options, resourceBuilderFactory, restSharp, mimeConverters, errors, scannerConverter));
        }
예제 #4
0
 /// <summary>
 ///    Initializes a new instance of the <see cref="StargateModule" /> class.
 /// </summary>
 /// <param name="options">The options.</param>
 public StargateModule(IStargateOptions options)
 {
     _options = options;
 }
예제 #5
0
 /// <summary>
 ///    Initializes a new instance of the <see cref="ResourceBuilder" /> class.
 /// </summary>
 /// <param name="options">The HBase Stargate options.</param>
 public ResourceBuilder(IStargateOptions options)
 {
     _options = options;
 }
예제 #6
0
 /// <summary>
 ///    Initializes a new instance of the <see cref="ResourceBuilder" /> class.
 /// </summary>
 /// <param name="options">The HBase Stargate options.</param>
 public ResourceBuilder(IStargateOptions options)
 {
     _options = options;
 }
예제 #7
0
 /// <summary>
 ///    Initializes a new instance of the <see cref="StargateModule" /> class.
 /// </summary>
 /// <param name="options">The options.</param>
 public StargateModule(IStargateOptions options)
 {
     _options = options;
 }
예제 #8
0
		/// <summary>
		///    Creates a new stargate with the specified options.
		/// </summary>
		/// <param name="options">The options.</param>
		public static IStargate Create(IStargateOptions options)
		{
			var resourceBuilder = new ResourceBuilder(options);
			var restSharp = new RestSharpFactory(url => new RestClient(url), (resource, method) => new RestRequest(resource, method));
			var codec = new Base64Codec();
			var mimeConverters = new MimeConverterFactory(new[]
			{
				new XmlMimeConverter(new SimpleValueConverter(), codec)
			});
			var errors = new ErrorProvider();
			var scannerConverter = new ScannerOptionsConverter(codec);

			options.ContentType = string.IsNullOrEmpty(options.ContentType)
				? DefaultContentType
				: options.ContentType;

			options.FalseRowKey = string.IsNullOrEmpty(options.FalseRowKey)
				? DefaultFalseRowKey
				: options.FalseRowKey;

			return new Stargate(options, resourceBuilder, restSharp, mimeConverters, errors, scannerConverter);
		}