class CapicuaGen::Melchior::EntitySchema

Clase para definir la estructura de una entidad, puede tener propiedades a su vez

Attributes

fields[RW]
name[RW]
sql_name[RW]

Public Class Methods

new(values= {}) click to toggle source
# File lib/CapicuaGenMelchior/DataAccess/EntitySqlDataAccess/Source/entity_schema.rb, line 30
def initialize (values= {})
  @name  = values[:name]
  @fields= values[:fields]
  @fields= [] unless @fields

  @sql_name= values[:sql_name]

  # correguir_nombre
  fix_name
end

Public Instance Methods

non_primary_fields() click to toggle source
# File lib/CapicuaGenMelchior/DataAccess/EntitySqlDataAccess/Source/entity_schema.rb, line 46
def non_primary_fields
  return @fields - primary_fields
end
primary_fields() click to toggle source

Deuelve los campos primarios

# File lib/CapicuaGenMelchior/DataAccess/EntitySqlDataAccess/Source/entity_schema.rb, line 42
def primary_fields
  return @fields.select { |field| field.primary_key }
end

Protected Instance Methods

fix_name() click to toggle source

Ajusta el nombre

# File lib/CapicuaGenMelchior/DataAccess/EntitySqlDataAccess/Source/entity_schema.rb, line 53
def fix_name
  return if @name
  return unless @sql_name
  @name= @sql_name.clone
  /\[[^\]]+\]\.\[([^\]]+)\]/.match (@sql_name) { @name= $1 }
  @name.gsub!("\"", '')
  @name.gsub!("''", '')
  @name.gsub!(" ", '')
end