Module: CassandraMigrations::Config
- Defined in:
- lib/cassandra_migrations/config.rb
Defined Under Namespace
Classes: Configuration
Constant Summary collapse
- CASSANDRA_CONNECTION_VALID_FIELDS =
See valid options at github.com/datastax/ruby-driver/blob/master/lib/cassandra.rb#L163
[ :credentials, :auth_provider, :compression, :hosts, :logger, :port, :load_balancing_policy, :reconnection_policy, :retry_policy, :listeners, :consistency, :trace, :page_size, :compressor, :username, :password, :ssl, :server_cert, :client_cert, :private_key, :passphrase, :connect_timeout, :futures_factory]
- FIELDS =
CASSANDRA_CONNECTION_VALID_FIELDS.map(&:to_s) + %w(keyspace replication)
Class Method Summary collapse
- .configurations ⇒ Object
- .connection_config_for_env ⇒ Object
- .method_missing(method_sym, *arguments, &block) ⇒ Object
Class Method Details
.configurations ⇒ Object
20 21 22 |
# File 'lib/cassandra_migrations/config.rb', line 20 def self.configurations @configurations || load_config end |
.connection_config_for_env ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/cassandra_migrations/config.rb', line 29 def self.connection_config_for_env env_config = Hash[self.configurations[Rails.env].each_pair.to_a] # support for old configuration param :port (singular) if env_config.include?(:port) env_config[:ports] = [env_config[:port]] end env_config.keep_if do |k,v| CASSANDRA_CONNECTION_VALID_FIELDS.include?(k) && v end Hash[self.configurations[Rails.env].each_pair.to_a].keep_if do |k,v| CASSANDRA_CONNECTION_VALID_FIELDS.include?(k) && v end end |
.method_missing(method_sym, *arguments, &block) ⇒ Object
24 25 26 27 |
# File 'lib/cassandra_migrations/config.rb', line 24 def self.method_missing(method_sym, *arguments, &block) load_config unless configurations self.configurations[Rails.env].send(method_sym) end |