class CapicuaGen::Gaspar::CSCatalogWindowsFormFeature

Característica generadora de catalogos para las entidades

Public Class Methods

new(values= {}) click to toggle source

Inicializa la característica

Calls superclass method
# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 41
def initialize(values= {})
  super(values)

  # Configuro los tipos si estos no han sido configurados previamente
  self.types= [:catalog] if self.types.blank?

  # Configuro los templates
  set_template("catalogState", Template.new(:file => 'CatalogState.erb'))
  set_template('catalogForm', Template.new(:file => 'catalogForm.erb'))
  set_template('catalogForm.designer', Template.new(:file => 'catalogForm.Designer.erb'))
  set_template('catalogForm.resx', Template.new(:file => 'catalogForm.resx.erb'))

end

Public Instance Methods

configure_attributes() click to toggle source

Configura los atributos personalizados de la característica (antes de establecer el generador)

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 102
def configure_attributes()
  self.generation_attributes[:out_dir]  = "#{self.generation_attributes[:out_dir]}/#{self.generation_attributes[:namespace]}/Windows.Forms/EntityCatalogs" unless self.generation_attributes.has_in_self?(:out_dir)
  self.generation_attributes[:namespace]= "#{self.generation_attributes[:namespace]}.Windows.Forms.EntityCatalogs" unless self.generation_attributes.has_in_self?(:namespace)
end
configure_template_targets() click to toggle source

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

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 56
def configure_template_targets

  # Configuro los templates
  set_template_target('catalogState', TemplateTarget.new(:out_file => "CatalogState.cs", :types => :proyect_file))

  # Busco  las características que contiene entidades de SQL para una table
  get_tables do |e|

    set_template_target("catalogForm/#{get_entity_catalog_name(e.name)}",
                        TemplateTarget.new(
                            :out_file      => "#{get_entity_catalog_name(e.name)}.cs",
                            :types         => :proyect_file,
                            :class_name    => get_entity_catalog_name(e.name),
                            :entity_schema => e
                        )
    )

    set_template_target("catalogForm.designer/#{get_entity_catalog_name(e.name)}",
                        TemplateTarget.new(
                            :out_file      => "#{get_entity_catalog_name(e.name)}.designer.cs",
                            :types         => :proyect_file,
                            :class_name    => get_entity_catalog_name(e.name),
                            :entity_schema => e
                        )
    )

    set_template_target("catalogForm.resx/#{get_entity_catalog_name(e.name)}",
                        TemplateTarget.new(
                            :out_file      => "#{get_entity_catalog_name(e.name)}.resx",
                            :types         => :proyect_file,
                            :class_name    => get_entity_catalog_name(e.name),
                            :entity_schema => e
                        )
    )

  end

end
get_entity_by_catalog_name(catalog_name) click to toggle source

Devuelve una entidad en base al nombre de su catalogo

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 134
def get_entity_by_catalog_name(catalog_name)
  # Busco  las características que contiene entidades de SQL para una table
  get_tables do |e|
    if catalog_name==get_entity_catalog_name(e.name)
      return e
    end
  end
  return nil
end
get_entity_catalog_full_name(entity_name) click to toggle source

Obtiene el nombre completo de un catalogo en base al nombre de una entidad

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 113
def get_entity_catalog_full_name (entity_name)
  return "#{self.generation_attributes[:namespace]}.#{get_entity_catalog_name(entity_name)}"
end
get_entity_catalog_name(entity_name) click to toggle source

Obtiene el nombre de un catalogo en base al nombre de una entidad

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 108
def get_entity_catalog_name(entity_name)
  return "#{entity_name}Catalog"
end
get_entity_catalogs_full_name() { |get_entity_catalog_full_name name| ... } click to toggle source

Obtiene el nombre completo de todos los catalogos

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 118
def get_entity_catalogs_full_name
  # Busco  las características que contiene entidades de SQL para una table
  get_tables do |e|
    yield get_entity_catalog_full_name e.name
  end
end
get_entity_catalogs_name() { |get_entity_catalog_name name| ... } click to toggle source

Obtiene el nombre de todos los catalogos

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 126
def get_entity_catalogs_name
  # Busco  las características que contiene entidades de SQL para una table
  get_tables do |e|
    yield get_entity_catalog_name e.name
  end
end
reset_attributes() click to toggle source

Resetea los atributos personalizados de la característica (antes de establecer el generador)

# File lib/CapicuaGenGaspar/GUI/CSCatalogWindowsForm/Source/cs_catalog_windows_form_feature.rb, line 96
def reset_attributes
  self.generation_attributes[:out_dir]  = nil
  self.generation_attributes[:namespace]= nil
end