Class: Dbsketch::Rendering::Meta::ForeignKeyRenderer

Inherits:
Object
  • Object
show all
Defined in:
lib/dbsketch/rendering/meta/foreign_key_renderer.rb

Instance Method Summary collapse

Constructor Details

#initialize(foreign_key_keyword: "Dbsketch::Model::ForeignKey.new") ⇒ ForeignKeyRenderer

Returns a new instance of ForeignKeyRenderer.

Raises:

  • (ArgumentError)


13
14
15
16
17
18
# File 'lib/dbsketch/rendering/meta/foreign_key_renderer.rb', line 13

def initialize foreign_key_keyword: "Dbsketch::Model::ForeignKey.new"
	### Preconditions
	raise ArgumentError, "foreign_key_keyword is not a String" unless foreign_key_keyword.is_a? String
	###
	@foreign_key_keyword = foreign_key_keyword
end

Instance Method Details

#create(foreign_key) ⇒ Object

Raises:

  • (ArgumentError)


20
21
22
23
24
25
# File 'lib/dbsketch/rendering/meta/foreign_key_renderer.rb', line 20

def create foreign_key
	### Preconditions
	raise ArgumentError, "foreign_key is not a Dbsketch::Model::ForeignKey" unless foreign_key.is_a? Dbsketch::Model::ForeignKey
	###
	"#{@foreign_key_keyword}(\"#{foreign_key.name}\", #{foreign_key.constricted_column.name}, #{foreign_key.referenced_table.name}, #{foreign_key.referenced_table.name}['#{foreign_key.referenced_column.name}'])"
end