Class: ActiveGraph::Config
- Inherits:
-
Object
- Object
- ActiveGraph::Config
- Defined in:
- lib/active_graph/config.rb
Overview
Keeps configuration for neo4j
Configurations keys
Constant Summary collapse
- DEFAULT_FILE =
File.(File.join(File.dirname(__FILE__), '..', '..', 'config', 'neo4j', 'config.yml'))
Class Method Summary collapse
-
.[](key) ⇒ Object
The the value of a config entry.
-
.[]=(key, val) ⇒ Object
Sets the value of a config entry.
- .association_model_namespace ⇒ Object
- .association_model_namespace_string ⇒ Object
-
.configuration ⇒ Hash
Reads from the default_file if configuration is not set already.
-
.default_file ⇒ Integer
The location of the default configuration file.
-
.default_file=(file_path) ⇒ Object
Sets the location of the configuration YAML file and old deletes configurations.
-
.defaults ⇒ Hash
The default file loaded by yaml.
-
.delete(key) ⇒ Object
Remove the value of a config entry.
-
.delete_all ⇒ Object
Remove all configuration.
- .enums_case_sensitive ⇒ Object
- .fail_on_pending_migrations ⇒ Object
- .fetch(key, default) ⇒ Object
- .include_root_in_json ⇒ Object
- .module_handling ⇒ Object
-
.timestamp_type ⇒ Class
The configured timestamps type (e.g. Integer) or the default DateTime.
-
.to_hash ⇒ Hash
The config as a hash.
-
.to_yaml ⇒ String
The config as a YAML.
-
.use {|config| ... } ⇒ Object
Yields the configuration.
Class Method Details
.[](key) ⇒ Object
Returns the the value of a config entry.
69 70 71 |
# File 'lib/active_graph/config.rb', line 69 def [](key) configuration[key.to_s] end |
.[]=(key, val) ⇒ Object
Sets the value of a config entry.
63 64 65 |
# File 'lib/active_graph/config.rb', line 63 def []=(key, val) configuration[key.to_s] = val end |
.association_model_namespace ⇒ Object
120 121 122 |
# File 'lib/active_graph/config.rb', line 120 def association_model_namespace ActiveGraph::Config[:association_model_namespace] || nil end |
.association_model_namespace_string ⇒ Object
124 125 126 127 128 |
# File 'lib/active_graph/config.rb', line 124 def association_model_namespace_string namespace = ActiveGraph::Config[:association_model_namespace] return nil if namespace.nil? "::#{namespace}" end |
.configuration ⇒ Hash
Reads from the default_file if configuration is not set already
35 36 37 38 39 40 41 |
# File 'lib/active_graph/config.rb', line 35 def configuration return @configuration if @configuration @configuration = ActiveSupport::HashWithIndifferentAccess.new @configuration.merge!(defaults) @configuration end |
.default_file ⇒ Integer
Returns The location of the default configuration file.
15 16 17 |
# File 'lib/active_graph/config.rb', line 15 def default_file @default_file ||= DEFAULT_FILE end |
.default_file=(file_path) ⇒ Object
Sets the location of the configuration YAML file and old deletes configurations.
21 22 23 24 25 |
# File 'lib/active_graph/config.rb', line 21 def default_file=(file_path) delete_all @defaults = nil @default_file = File.(file_path) end |
.defaults ⇒ Hash
Returns the default file loaded by yaml.
28 29 30 31 |
# File 'lib/active_graph/config.rb', line 28 def defaults require 'yaml' @defaults ||= ActiveSupport::HashWithIndifferentAccess.new(YAML.load_file(default_file)) end |
.delete(key) ⇒ Object
Remove the value of a config entry.
81 82 83 |
# File 'lib/active_graph/config.rb', line 81 def delete(key) configuration.delete(key) end |
.delete_all ⇒ Object
Remove all configuration. This can be useful for testing purpose.
88 89 90 |
# File 'lib/active_graph/config.rb', line 88 def delete_all @configuration = nil end |
.enums_case_sensitive ⇒ Object
130 131 132 |
# File 'lib/active_graph/config.rb', line 130 def enums_case_sensitive ActiveGraph::Config[:enums_case_sensitive] || false end |
.fail_on_pending_migrations ⇒ Object
102 103 104 |
# File 'lib/active_graph/config.rb', line 102 def fail_on_pending_migrations ActiveGraph::Config[:fail_on_pending_migrations].nil? ? true : ActiveGraph::Config[:fail_on_pending_migrations] end |
.fetch(key, default) ⇒ Object
73 74 75 |
# File 'lib/active_graph/config.rb', line 73 def fetch(key, default) configuration.fetch(key, default) end |
.include_root_in_json ⇒ Object
106 107 108 109 |
# File 'lib/active_graph/config.rb', line 106 def include_root_in_json # we use ternary because a simple || will always evaluate true ActiveGraph::Config[:include_root_in_json].nil? ? true : ActiveGraph::Config[:include_root_in_json] end |
.module_handling ⇒ Object
111 112 113 |
# File 'lib/active_graph/config.rb', line 111 def module_handling ActiveGraph::Config[:module_handling] || :none end |
.timestamp_type ⇒ Class
Returns The configured timestamps type (e.g. Integer) or the default DateTime.
116 117 118 |
# File 'lib/active_graph/config.rb', line 116 def ActiveGraph::Config[:timestamp_type] || DateTime end |
.to_hash ⇒ Hash
Returns The config as a hash.
93 94 95 |
# File 'lib/active_graph/config.rb', line 93 def to_hash configuration.to_hash end |
.to_yaml ⇒ String
Returns The config as a YAML.
98 99 100 |
# File 'lib/active_graph/config.rb', line 98 def to_yaml configuration.to_yaml end |
.use {|config| ... } ⇒ Object
Yields the configuration
53 54 55 56 57 |
# File 'lib/active_graph/config.rb', line 53 def use @configuration ||= ActiveSupport::HashWithIndifferentAccess.new yield @configuration nil end |