Class: CapicuaGen::Balthazar::AndySqlEntityFeature

Inherits:
TemplateFeature
  • Object
show all
Includes:
CapicuaGen, CapicuaGen::Balthazar, Melchior
Defined in:
lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb

Overview

Caracteristica generadora para crear entidades de negocio a traves de entidades extraidas un archivo .sql

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(values = {}) ⇒ AndySqlEntityFeature

Inicializa la caracteristica



45
46
47
48
49
50
51
52
53
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 45

def initialize(values= {})
  super(values)

  self.types= [:business_entities] if self.types.blank?

  # Configuro los templates

  set_template("table_entity", Template.new(:file => 'table_entity.erb'))

end

Instance Attribute Details

#class_accessorObject

Returns the value of attribute class_accessor.



40
41
42
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 40

def class_accessor
  @class_accessor
end

Instance Method Details

#configure_attributesObject

Configura los atributos personalizados de la caracteristica (antes de establecer el generador)



82
83
84
85
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 82

def configure_attributes()
  self.generation_attributes[:package]        = "#{self.generation_attributes[:package]}.beans" unless self.generation_attributes.has_in_self?(:package)
  self.generation_attributes[:package_out_dir]= get_package_out_dir
end

#configure_template_targetsObject

Configura los objetivos de las platillas (despues de establecer el generador)



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 57

def configure_template_targets

  # Busco  las caracteristicas que contiene entidades de SQL para una table

  get_tables do |e|
    set_template_target("table_entity/#{get_entity_name(e.name)}",
                        TemplateTarget.new(
                            :out_file       => get_package_out_file("#{get_entity_name(e.name)}.java"),
                            :types          => :proyect_file,
                            :class_name     => get_entity_name(e.name),
                            :entity_schema  => e,
                            :class_accessor => @class_accessor,
                        )
    )

  end

end

#get_entity_full_name(entity_name) ⇒ Object

Obtiene el nombre completo de la entidad (como clase de Java)



94
95
96
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 94

def get_entity_full_name(entity_name)
  return "#{self.generation_attributes[:package]}.#{get_entity_name(entity_name)}"
end

#get_entity_name(entity_name) ⇒ Object

Obtiene el nombre de la entidad (como clase de Java)



89
90
91
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 89

def get_entity_name(entity_name)
  return entity_name
end

#reset_attributesObject

Resetea los atributos personalizados de la caracteristica (antes de establecer el generador)



76
77
78
79
# File 'lib/CapicuaGenBalthazar/Business/AndySqlEntity/Source/andy_sql_entity_feature.rb', line 76

def reset_attributes
  self.generation_attributes[:package]        = nil
  self.generation_attributes[:package_out_dir]= nil
end