Exemple #1
0
        public static IHastlayerApi CreateApiClient(RemoteClientConfiguration configuration)
        {
            var api = RestClient.For <IHastlayerApi>(configuration.EndpointBaseUri);

            api.Authorization = new AuthenticationHeaderValue(
                "Basic",
                Convert.ToBase64String(Encoding.ASCII.GetBytes(configuration.AppId + ":" + configuration.AppSecret)));

            return(api);
        }
Exemple #2
0
		public static ConnectionPool PoolFor(RemoteClientConfiguration configuration)
		{
			lock (_connectionPools)
			{
				ConnectionPool pool;
				var key = configuration.ToString();
				if(configuration.DedicatedPool) key +=  Guid.NewGuid();

				if (!_connectionPools.TryGetValue(key, out pool))
				{
					var host = configuration.Host;
					var port = configuration.Port;
					var maxConnections = configuration.MaxConnections;
					pool = new ConnectionPool(() => new RemoteConnection(host, port), maxConnections,host,port);
					_connectionPools[key] = pool;
				}
				return pool;
			}
		}