module PgRls::Schema::Statements
Public Instance Methods
convert_to_rls_table(table_name)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 59 def convert_to_rls_table(table_name) add_rls_column(table_name) create_rls_policy(table_name) append_trigger_function(table_name) end
convert_to_rls_tenant_table(table_name, **_options)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 43 def convert_to_rls_tenant_table(table_name, **_options) create_rls_user(password: PgRls.database_configuration['password']) create_rls_setter_function create_rls_blocking_function add_rls_column_to_tenant_table(table_name) append_blocking_function(table_name) end
create_rls_table(table_name, **options, &block)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 22 def create_rls_table(table_name, **options, &block) create_table(table_name, **options, &block) add_rls_column(table_name) create_rls_policy(table_name) append_trigger_function(table_name) end
create_rls_tenant_table(table_name, **options, &block)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 13 def create_rls_tenant_table(table_name, **options, &block) create_rls_user(password: PgRls.database_configuration['password']) create_rls_setter_function create_rls_blocking_function create_table(table_name, **options, &block) add_rls_column_to_tenant_table(table_name) append_blocking_function(table_name) end
drop_rls_table(table_name)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 37 def drop_rls_table(table_name) detach_trigger_function(table_name) drop_rls_policy(table_name) drop_table(table_name) end
drop_rls_tenant_table(table_name)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 29 def drop_rls_tenant_table(table_name) drop_rls_setter_function detach_blocking_function(table_name) drop_table(table_name) drop_rls_blocking_function drop_rls_user end
revert_rls_table(table_name)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 65 def revert_rls_table(table_name) detach_trigger_function(table_name) drop_rls_policy(table_name) drop_rls_column(table_name) end
revert_rls_tenant_table(table_name)
click to toggle source
# File lib/pg_rls/schema/statements.rb, line 51 def revert_rls_tenant_table(table_name) drop_rls_setter_function detach_blocking_function(table_name) drop_rls_blocking_function drop_rls_user drop_rls_column(table_name) end