module SchemaTools::Writer
Attributes
app[RW]
schema[RW]
Public Class Methods
create_schema_sql(schema, app)
click to toggle source
# File lib/schema_tools/writer.rb, line 6 def create_schema_sql(schema, app) @schema = schema @app = app write_schema_file end
write_raw_resource_file(filename, content)
click to toggle source
# File lib/schema_tools/writer.rb, line 30 def write_raw_resource_file(filename, content) # create raw directory if it doesn't exist FileUtils.mkdir_p(File.dirname(filename)) File.write(filename, content) end
write_schema_file()
click to toggle source
# File lib/schema_tools/writer.rb, line 18 def write_schema_file sql = '' schema.each do |table_name, fields| fields_string = fields.map { |k, v| " #{k} #{v}" }.join(",\n") sql += "CREATE TABLE #{table_name}(\n#{fields_string}\n);\n\n" end filename = File.join(app.resources_dirs.first, 'raw', 'schema.sql') write_raw_resource_file(filename, sql) end
write_version_file(version, app)
click to toggle source
# File lib/schema_tools/writer.rb, line 12 def write_version_file(version, app) # TODO: Version checking, android expects monotonically increasing version ints filename = File.join(app.resources_dirs.first, 'raw', 'version') write_raw_resource_file(filename, version) end