diff --git a/lib/manifold/api/workspace.rb b/lib/manifold/api/workspace.rb index 24f555a..d1ce29d 100644 --- a/lib/manifold/api/workspace.rb +++ b/lib/manifold/api/workspace.rb @@ -25,29 +25,6 @@ def generate(path) end end - # Handles SQL generation for manifold workspaces - class SqlGenerator - def initialize(name, manifold_yaml) - @name = name - @manifold_yaml = manifold_yaml - end - - def generate_dimensions_merge_sql(source_sql) - return unless valid_dimensions_config? - - sql_builder = Terraform::SQLBuilder.new(@name, @manifold_yaml) - sql_builder.build_dimensions_merge_sql(source_sql) - end - - private - - def valid_dimensions_config? - return false unless @manifold_yaml - - !@manifold_yaml["dimensions"]&.dig("merge", "source").nil? - end - end - # Handles schema file generation for manifold workspaces class SchemaWriter def initialize(name, vectors, vector_service, manifold_yaml, logger) @@ -177,21 +154,20 @@ def write_manifold_merge_sql end def write_dimensions_merge_sql - return unless dimensions_merge_source_exists? + return unless valid_dimensions_config? - sql = generate_dimensions_merge_sql + source_sql = File.read(Pathname.pwd.join(manifold_yaml["dimensions"]["merge"]["source"])) + sql_builder = Terraform::SQLBuilder.new(name, manifold_yaml) + sql = sql_builder.build_dimensions_merge_sql(source_sql) return unless sql write_dimensions_merge_sql_file(sql) end - def dimensions_merge_source_exists? - manifold_yaml["dimensions"]&.dig("merge", "source") - end + def valid_dimensions_config? + return false unless manifold_yaml - def generate_dimensions_merge_sql - source_sql = File.read(Pathname.pwd.join(manifold_yaml["dimensions"]["merge"]["source"])) - SqlGenerator.new(name, manifold_yaml).generate_dimensions_merge_sql(source_sql) + !manifold_yaml["dimensions"]&.dig("merge", "source").nil? end def write_dimensions_merge_sql_file(sql)