Class: Entity

Inherits:
Object
  • Object
show all
Defined in:
lib/ymldot.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, dependent, columns = []) ⇒ Entity

Returns a new instance of Entity.



6
7
8
9
10
11
# File 'lib/ymldot.rb', line 6

def initialize(name, dependent, columns = [])
  @name = name
  @dependent = dependent
  @columns = columns
  @foreignkeys = []
end

Instance Attribute Details

#columnsObject

Returns the value of attribute columns.



39
40
41
# File 'lib/ymldot.rb', line 39

def columns
  @columns
end

#dependentObject

Returns the value of attribute dependent.



39
40
41
# File 'lib/ymldot.rb', line 39

def dependent
  @dependent
end

#foreignkeysObject

Returns the value of attribute foreignkeys.



39
40
41
# File 'lib/ymldot.rb', line 39

def foreignkeys
  @foreignkeys
end

#nameObject

Returns the value of attribute name.



39
40
41
# File 'lib/ymldot.rb', line 39

def name
  @name
end

Instance Method Details

#dependent?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/ymldot.rb', line 13

def dependent?
  @dependent
end

#to_csvObject



25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/ymldot.rb', line 25

def to_csv
  res = ""
  res << "#{@name}\n"
  @foreignkeys.each{|f| res << "#{f}\n"}
  @columns.each do |c|
    if c.include? ":"
      res << "#{c.split(':').join(',')}\n"
    else
      res << "#{c}\n"
    end
  end
  res
end

#to_dotObject



17
18
19
20
21
22
23
# File 'lib/ymldot.rb', line 17

def to_dot
  res = ""
  res << %Q!"#{@name}" [#{@dependent? 'shape=Mrecord, ' : 'shape=record, '}label=\"{#{@name}|!
  @foreignkeys.each{|f| res << "#{f}\\l"}
  @columns.each{|c| res << "#{c}\\l"}
  res << '}"]'
end