Ejemplo n.º 1
0
 /// <summary>
 /// Creates a new MemoryBufferWriter that allocates its initial buffer from a pool
 /// </summary>
 /// <param name="size">The initial buffer size</param>
 /// <param name="resize">If the buffer can resize</param>
 /// <param name="poolingStrategy">The pooling strategy used when resizing the buffer</param>
 public MemoryBufferWriter(int size, bool resize = true, IPoolingStrategy poolingStrategy = null)
 {
     _resize          = resize;
     _poolingStrategy = poolingStrategy ?? DefaultPoolingStrategy.Instance;
     _pooledBuffer    = _poolingStrategy.Resize(1, size);
     _buffer          = _pooledBuffer;
     _offset          = 0;
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Creates a new MemoryBufferWriter that is based off an existing buffer
 /// </summary>
 /// <param name="buffer">The buffer</param>
 /// <param name="resize">If the buffer can resize</param>
 /// <param name="poolingStrategy">The pooling strategy used when resizing the buffer</param>
 public MemoryBufferWriter(Memory <byte> buffer, bool resize = true, IPoolingStrategy poolingStrategy = null)
 {
     _resize          = resize;
     _poolingStrategy = poolingStrategy ?? DefaultPoolingStrategy.Instance;
     _pooledBuffer    = null;
     _buffer          = buffer;
     _offset          = 0;
 }
Ejemplo n.º 3
0
 internal ConnectionPool(Builder builder)
 {
     authKey         = builder.authKey;
     dbname          = builder.dbname;
     seeds           = builder.seeds;
     discover        = builder.discover;
     poolingStrategy = builder.hostpool;
 }
 internal ConnectionPool(Builder builder)
 {
     user            = builder.user ?? "admin";
     password        = builder.password ?? builder.authKey ?? "";
     dbname          = builder.dbname;
     seeds           = builder.seeds;
     discover        = builder.discover;
     poolingStrategy = builder.hostpool;
     initialTimeout  = builder.initialTimeout;
 }
Ejemplo n.º 5
0
 public RethinkClientConfig() : base("rethinksettings.json")
 {
     discover     = root["discover"] == "true";
     databaseName = root["databaseName"];
     ipAddresses  = new List <string>();
     foreach (var ip in root.GetSection("ipAddresses").GetChildren())
     {
         ipAddresses.Add(ip.Value);
     }
     switch (root["poolingStrategy"])
     {
     default:
         poolingStrategy = new RoundRobinHostPool();
         break;
     }
 }
 /// <summary>
 /// The selection strategy to for selecting a connection. IE: RoundRobin, HeartBeat, or EpsilonGreedy.
 /// </summary>
 public Builder PoolingStrategy(IPoolingStrategy hostPool)
 {
     this.hostpool = hostPool;
     return(this);
 }