protected override string GetConnectionStringWithLoginInfo(string userName, string password) { CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(ConnectionString); builder.Username = userName; builder.Password = password; return(builder.ToString()); }
protected override void TestFixtureSetUp() { base.TestFixtureSetUp(); var cb = new CassandraConnectionStringBuilder { ContactPoints = new[] { TestCluster.InitialContactPoint }, Port = 9042 }; _connection = new CqlConnection(cb.ToString()); }
public override void SetUp() { base.SetUp(); var cb = new CassandraConnectionStringBuilder { ContactPoints = new[] { TestCluster.InitialContactPoint.Address.ToString() }, Port = 9042 }; _connection = new CqlConnection(cb.ToString()); }
private void btnAdvanced_Click(object sender, EventArgs e) { using (AdvancedConnectionPropertiesForm form = new AdvancedConnectionPropertiesForm()) { CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(ConnectionString); form.AdvancedProperties = builder; if (form.ShowDialog() == DialogResult.OK) { ConnectionString = form.AdvancedProperties.ToString(); } } }
protected override Cluster CreateCluster(CassandraConnectionStringBuilder connectionStringBuilder) { if (!_clusters.TryGetValue(_connectionStringBuilder.ClusterName, out Cluster cluster)) { var builder = _connectionStringBuilder.MakeClusterBuilder(); OnBuildingCluster(builder); cluster = builder.Build(); _clusters.TryAdd(_connectionStringBuilder.ClusterName, cluster); } return(cluster); }
public void SetFixture() { Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US"); CCMBridge.ReusableCCMCluster.Setup(2); CCMBridge.ReusableCCMCluster.Build(Cluster.Builder()); session = CCMBridge.ReusableCCMCluster.Connect("tester"); CassandraConnectionStringBuilder cb = new CassandraConnectionStringBuilder(); cb.ContactPoints = new string[] { Options.Default.IP_PREFIX + "1" }; cb.Port = 9042; connection = new CqlConnection(cb.ToString()); }
public override string GetConnectionId() { CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(ConnectionString); string info = ""; try { info = builder.ClusterName; } catch { } return("Cassandra: " + info); }
public override string[] GetTableNames() { CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(ConnectionString); Cluster cluster = Cluster.Builder().WithConnectionString(ConnectionString).Build(); cluster.Connect(builder.DefaultKeyspace); List <string> tables = cluster.Metadata.GetTables(builder.DefaultKeyspace).ToList(); cluster.Dispose(); return(tables.ToArray()); }
internal string Generate() { var localConfiguration = JsonConvert.DeserializeObject <Utils.LocalSettings>(File.ReadAllText(_localConfigurationFile)); var session = Utils.CassandraUtils.OpenCassandraSessionFromLocalSettings(_localConfigurationFile); var cassandraConnectionStringBuilder = new CassandraConnectionStringBuilder(); cassandraConnectionStringBuilder.ContactPoints = localConfiguration.CassandraSettings.Hosts.Select(h => h.IpAddress).ToArray(); cassandraConnectionStringBuilder.ClusterName = session.Cluster.Metadata.ClusterName; cassandraConnectionStringBuilder.DefaultKeyspace = _keySpaceName; cassandraConnectionStringBuilder.Password = localConfiguration.CassandraSettings.ClusterPassword; cassandraConnectionStringBuilder.Port = (int)localConfiguration.CassandraSettings.Port; cassandraConnectionStringBuilder.Username = localConfiguration.CassandraSettings.ClusterUser; return(cassandraConnectionStringBuilder.ToString()); }
protected override string GetConnectionString() { CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(FConnectionString); builder.ClusterName = tbClusterName.Text; builder.DefaultKeyspace = tbKeyspace.Text; builder.ContactPoints = new string[1] { tbContactPoint.Text }; builder.Username = tbUserName.Text; builder.Password = tbPassword.Text; return(builder.ToString()); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); var host = "127.0.0.1"; if (TestUtils.UseRemoteCcm) { host = Options.Default.IP_PREFIX + "1"; } var cb = new CassandraConnectionStringBuilder(); cb.ContactPoints = new[] { host }; cb.Port = 9042; _connection = new CqlConnection(cb.ToString()); }
public override void FillTableSchema(DataTable table, string selectCommand, CommandParameterCollection parameters) { CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(ConnectionString); using (DbConnection connection = GetConnection()) { OpenConnection(connection); selectCommand = $"select * from {builder.DefaultKeyspace}.{table.TableName}"; using (DbDataAdapter adapter = GetAdapter(selectCommand, connection, parameters)) { adapter.SelectCommand.CommandTimeout = CommandTimeout; adapter.Fill(table); } } }
public async Task <ICluster> GetClusterAsync() { if (cluster is null == false) { return(cluster); } Builder builder = initializer as Builder; if (builder is null) { builder = DataStax.Cluster.Builder(); // TODO: check inside the `cfg` (var cfg = builder.GetConfiguration();) if we already have connectionString specified string connectionString = options.ConnectionString; var hackyBuilder = new CassandraConnectionStringBuilder(connectionString); if (string.IsNullOrEmpty(hackyBuilder.DefaultKeyspace) == false) { connectionString = connectionString.Replace(hackyBuilder.DefaultKeyspace, string.Empty); } baseConfigurationKeyspace = hackyBuilder.DefaultKeyspace; var connStrBuilder = new CassandraConnectionStringBuilder(connectionString); cluster?.Shutdown(30000); cluster = connStrBuilder .ApplyToBuilder(builder) .WithReconnectionPolicy(new ExponentialReconnectionPolicy(100, 100000)) .WithRetryPolicy(new NoHintedHandOffRetryPolicy()) .Build(); await cluster.RefreshSchemaAsync().ConfigureAwait(false); } else { cluster = DataStax.Cluster.BuildFrom(initializer); } return(cluster); }
protected override void SetConnectionString(string value) { FConnectionString = value; CassandraConnectionStringBuilder builder = new CassandraConnectionStringBuilder(value); tbClusterName.Text = builder.ClusterName; tbKeyspace.Text = builder.DefaultKeyspace; try { tbContactPoint.Text = builder.ContactPoints[0]; } catch { tbContactPoint.Text = ""; } tbUserName.Text = builder.Username; tbPassword.Text = builder.Password; }
public Cluster GetCluster() { if (cluster is null == false && optionsHasChanged == false) { return(cluster); } Builder builder = initializer as Builder; if (builder is null) { builder = Cluster.Builder(); // TODO: check inside the `cfg` (var cfg = builder.GetConfiguration();) if we already have connectionString specified string connectionString = options.ConnectionString; var hackyBuilder = new CassandraConnectionStringBuilder(connectionString); if (string.IsNullOrEmpty(hackyBuilder.DefaultKeyspace) == false) { connectionString = connectionString.Replace(hackyBuilder.DefaultKeyspace, string.Empty); } baseConfigurationKeyspace = hackyBuilder.DefaultKeyspace; var connStrBuilder = new CassandraConnectionStringBuilder(connectionString); cluster = connStrBuilder .ApplyToBuilder(builder) .WithReconnectionPolicy(new ExponentialReconnectionPolicy(100, 100000)) .WithRetryPolicy(new NoHintedHandOffRetryPolicy()) .Build(); } else { cluster = Cluster.BuildFrom(initializer); } optionsHasChanged = false; return(cluster); }
public EFCassandraDbConnection(ICurrentDbContext currentDbContext, string connectionString, RelationalConnectionDependencies dependencies) : base(connectionString) { _currentDbContext = currentDbContext; _cassandraOptionsExtension = CassandraOptionsExtension.Extract(dependencies.ContextOptions); _connectionStringBuilder = new CassandraConnectionStringBuilder(connectionString); }
/// <summary> /// Initializes a <see cref="CqlConnection"/>. /// </summary> public CqlConnection() { _connectionStringBuilder = new CassandraConnectionStringBuilder(); }
/// <summary> /// Initializes a <see cref="CqlConnection"/>. /// </summary> /// <param name="connectionString">The connection string.</param> public CqlConnection(string connectionString) { _connectionStringBuilder = new CassandraConnectionStringBuilder(connectionString); }
public CqlConnection(string connectionString, string clusterName) { _connectionStringBuilder = new CassandraConnectionStringBuilder(connectionString); _connectionStringBuilder.ClusterName = clusterName; }
public CqlConnection(string connectionString) { _connectionStringBuilder = new CassandraConnectionStringBuilder(connectionString); _connectionStringBuilder.ClusterName = Guid.NewGuid().ToString(); }
/// <summary> /// Configure the cluster by applying settings from ConnectionString. /// </summary> /// <param name="connectionString"> the ConnectionString to use </param> /// /// <returns>this Builder</returns> public Builder WithConnectionString(string connectionString) { var cnb = new CassandraConnectionStringBuilder(connectionString); return cnb.ApplyToBuilder(this); }
public CqlConnection() { _connectionStringBuilder = new CassandraConnectionStringBuilder(); }
/// <summary> /// SHelper method to ensure the image is setup correctly /// </summary> /// <returns>A Task for tracking completion.</returns> async Task StartDB() { Console.WriteLine("Starting fixture"); Console.WriteLine("Downloading image"); // Download image await _client.Images.CreateImageAsync(new ImagesCreateParameters() { FromImage = ImageName, Tag = ImageTag }, new AuthConfig(), new Progress <JSONMessage>()).ConfigureAwait(false); // Create the container var config = new Config() { Hostname = "localhost" }; // Configure the ports to expose var hostConfig = new HostConfig { PortBindings = new Dictionary <string, IList <PortBinding> > { { "9042/tcp", new List <PortBinding> { new PortBinding { HostIP = "127.0.0.1", HostPort = "9042" } } } }, NetworkMode = "host" }; Console.WriteLine("Creating container"); // Create the container var response = await _client.Containers.CreateContainerAsync(new CreateContainerParameters(config) { Image = ImageName + ":" + ImageTag, Name = ContainerName, Tty = false, HostConfig = hostConfig, }).ConfigureAwait(false); // Get the container object Console.WriteLine("Searching for container"); var containers = await _client.Containers.ListContainersAsync(new ContainersListParameters() { All = true }).ConfigureAwait(false); var container = containers.First(c => c.ID == response.ID); Console.WriteLine("Checking state {0}", container.State); // Start the container is needed if (container.State != "running") { Console.WriteLine("Starting container"); var started = await _client.Containers.StartContainerAsync(container.ID, new ContainerStartParameters()).ConfigureAwait(false); if (!started) { throw new InvalidOperationException("Failed to start the container"); } } // Wait for the cassandra database to be available Console.Write("Waiting for Cassandra to startup"); var cluster = new CassandraConnectionStringBuilder { Port = 9042, ContactPoints = new string[] { "localhost" } }.MakeClusterBuilder().Build(); // Wait for Cassandra to start (up to 50 seconds, more is silly) for (var i = 0; i < 25; ++i) { try { using (var session = await cluster.ConnectAsync().ConfigureAwait(false)) break; } catch (Exception) { Console.Write("."); await Task.Delay(2000).ConfigureAwait(false); } if (i == 24) { throw new InvalidOperationException("Failed to start Cassandra!"); } } Console.WriteLine("Ready"); }
public override void TestFixtureSetUp() { base.TestFixtureSetUp(); var host = "127.0.0.1"; if (TestUtils.UseRemoteCcm) { host = Options.Default.IP_PREFIX + "1"; } var cb = new CassandraConnectionStringBuilder(); cb.ContactPoints = new[] { host}; cb.Port = 9042; _connection = new CqlConnection(cb.ToString()); }
public CqlConnection(string connectionString) { _connectionStringBuilder = new CassandraConnectionStringBuilder(connectionString); }
/// <summary> /// Creates a <see cref="Cluster"/>. By default <see cref="Cluster"/>s are created and cached /// by cluster name specified in connection string. /// /// To be overridden in child classes to change the default creation and caching behavior. /// </summary> /// <param name="connectionStringBuilder">The <see cref="CassandraConnectionStringBuilder"/>.</param> /// <returns></returns> protected virtual Cluster CreateCluster(CassandraConnectionStringBuilder connectionStringBuilder) { Cluster cluster; if (!_clusters.TryGetValue(_connectionStringBuilder.ClusterName, out cluster)) { var builder = _connectionStringBuilder.MakeClusterBuilder(); OnBuildingCluster(builder); cluster = builder.Build(); _clusters.TryAdd(_connectionStringBuilder.ClusterName, cluster); } return cluster; }