Class: DbdocEngine::SchemaRbParserService
- Inherits:
-
Object
- Object
- DbdocEngine::SchemaRbParserService
- Defined in:
- app/services/dbdoc_engine/schema_rb_parser_service.rb
Constant Summary collapse
- RAILS_TYPE_MAP =
{ "string" => "varchar", "text" => "text", "integer" => "integer", "bigint" => "bigint", "float" => "float", "decimal" => "decimal", "boolean" => "boolean", "datetime" => "datetime", "date" => "date", "time" => "time", "binary" => "binary", "json" => "json", "jsonb" => "jsonb", "uuid" => "uuid", "inet" => "inet", "cidr" => "cidr", "macaddr" => "macaddr", "hstore" => "hstore", "serial" => "serial", "tsrange" => "tsrange", "daterange" => "daterange", "int4range" => "int4range", "int8range" => "int8range", "numrange" => "numrange", "point" => "point", "line" => "line", "circle" => "circle", "polygon" => "polygon", "xml" => "xml", "money" => "money", "virtual" => "virtual" }.freeze
- TIMESTAMP_COLUMNS =
%w[created_at updated_at].freeze
Instance Method Summary collapse
-
#initialize(schema_content) ⇒ SchemaRbParserService
constructor
A new instance of SchemaRbParserService.
- #parse ⇒ Object
Constructor Details
#initialize(schema_content) ⇒ SchemaRbParserService
Returns a new instance of SchemaRbParserService.
39 40 41 42 43 44 |
# File 'app/services/dbdoc_engine/schema_rb_parser_service.rb', line 39 def initialize(schema_content) @schema_content = schema_content @tables = [] @foreign_keys = [] @standalone_indexes = [] end |
Instance Method Details
#parse ⇒ Object
46 47 48 49 50 51 52 53 54 |
# File 'app/services/dbdoc_engine/schema_rb_parser_service.rb', line 46 def parse extract_tables extract_standalone_foreign_keys extract_standalone_indexes apply_foreign_keys_to_columns apply_standalone_indexes { tables: @tables, foreign_keys: @foreign_keys } end |