Class: MermaidErdMarkdown::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/rails-mermaid_erd_markdown/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/rails-mermaid_erd_markdown/configuration.rb', line 9

def initialize
  config = {
    output_path: "app/models/ERD.md",
    split_output: false,
    relationship_depth: 1,
    ignored_models: []
  }
  erd_config_path = "erd.yml"

  begin
    erd_yml = YAML.safe_load File.open(erd_config_path)
    @output_path = erd_yml["erd"]["output_path"] || config[:output_path]
    @split_output = erd_yml["erd"]["split_output"] || config[:split_output]
    @relationship_depth = erd_yml["erd"]["relationship_depth"] || config[:relationship_depth]
    @ignored_models = erd_yml["erd"]["ignored_models"] || config[:ignored_models]
  rescue StandardError
    @output_path = config[:output_path]
    @split_output = config[:split_output]
    @relationship_depth = config[:relationship_depth]
    @ignored_models = config[:ignored_models]
  end
end

Instance Attribute Details

#ignored_modelsObject

Returns the value of attribute ignored_models.



7
8
9
# File 'lib/rails-mermaid_erd_markdown/configuration.rb', line 7

def ignored_models
  @ignored_models
end

#output_pathObject

Returns the value of attribute output_path.



7
8
9
# File 'lib/rails-mermaid_erd_markdown/configuration.rb', line 7

def output_path
  @output_path
end

#relationship_depthObject

Returns the value of attribute relationship_depth.



7
8
9
# File 'lib/rails-mermaid_erd_markdown/configuration.rb', line 7

def relationship_depth
  @relationship_depth
end

#split_outputObject

Returns the value of attribute split_output.



7
8
9
# File 'lib/rails-mermaid_erd_markdown/configuration.rb', line 7

def split_output
  @split_output
end