Class: ActiveRecord::ConnectionAdapters::PostgreSQLAdapter

Inherits:
JdbcAdapter
  • Object
show all
Includes:
ArJdbc::PostgreSQL, ArJdbc::PostgreSQL::ExplainSupport
Defined in:
lib/arjdbc/postgresql/adapter.rb

Defined Under Namespace

Classes: TableDefinition

Constant Summary collapse

@@quoted_table_names =

some QUOTING caching :

{}
@@quoted_column_names =
{}

Constants included from ArJdbc::PostgreSQL

ArJdbc::PostgreSQL::ADAPTER_NAME, ArJdbc::PostgreSQL::NATIVE_DATABASE_TYPES

Instance Attribute Summary

Attributes inherited from JdbcAdapter

#config

Instance Method Summary collapse

Methods included from ArJdbc::PostgreSQL::ExplainSupport

#explain, #supports_explain?

Methods included from ArJdbc::PostgreSQL

#adapter_name, #add_column, #add_order_by_for_association_limiting!, #all_schemas, arel2_visitors, #change_column, #change_column_default, #change_column_null, #client_min_messages, #client_min_messages=, column_selector, #configure_connection, #create_database, #create_savepoint, #create_schema, #current_database, #current_schema, #default_sequence_name, #disable_referential_integrity, #distinct, #drop_database, #drop_schema, #encoding, #escape_bytea, extended, #extract_schema_and_table, #index_name_length, #indexes, #insert_sql, jdbc_connection_class, #last_insert_id, #last_inserted_id, #multi_column_index_limit, #multi_column_index_limit=, #native_database_types, #pg_columns, #pk_and_sequence_for, #postgresql_version, #primary_key, #quote, #quote_string, #quoted_date, #recreate_database, #release_savepoint, #remove_index!, #rename_column, #rename_table, #reset_pk_sequence!, #rollback_to_savepoint, #schema_search_path, #schema_search_path=, #sql_for_insert, #standard_conforming_strings=, #standard_conforming_strings?, #structure_dump, #supports_ddl_transactions?, #supports_hex_escaped_bytea?, #supports_index_sort_order?, #supports_insert_with_returning?, #supports_migrations?, #supports_primary_key?, #supports_savepoints?, #supports_standard_conforming_strings?, #table_alias_length, #table_exists?, #tables, #type_to_sql

Methods inherited from JdbcAdapter

#active?, #adapter_name, #adapter_spec, arel2_visitors, #begin_db_transaction, #commit_db_transaction, #configure_arel2_visitors, #database_name, #disconnect!, #exec_delete, #exec_insert, #exec_query, #exec_update, #execute, #indexes, #insert_sql, #is_a?, #jdbc_columns, #jdbc_connection, #jdbc_insert, #jdbc_select_all, #jdbc_update, #modify_types, #native_database_types, #native_sql_to_type, #pk_and_sequence_for, #primary_key, #primary_keys, #reconnect!, #rollback_db_transaction, #select, #select_one, #select_rows, #supports_migrations?, #table_exists?, #tables, #to_sql, visitor_for, #write_large_object

Methods included from ShadowCoreMethods

#alias_chained_method

Methods included from JdbcConnectionPoolCallbacks

included, needed?, #on_checkin, #on_checkout

Methods included from CompatibilityMethods

needed?

Constructor Details

#initialize(*args) ⇒ PostgreSQLAdapter

Returns a new instance of PostgreSQLAdapter.



952
953
954
955
# File 'lib/arjdbc/postgresql/adapter.rb', line 952

def initialize(*args)
  super
  configure_connection
end

Instance Method Details

#jdbc_column_classObject



977
978
979
# File 'lib/arjdbc/postgresql/adapter.rb', line 977

def jdbc_column_class
  ActiveRecord::ConnectionAdapters::PostgreSQLColumn
end

#jdbc_connection_class(spec) ⇒ Object



973
974
975
# File 'lib/arjdbc/postgresql/adapter.rb', line 973

def jdbc_connection_class(spec)
  ::ArJdbc::PostgreSQL.jdbc_connection_class
end

#quote_column_name(name) ⇒ Object



997
998
999
1000
1001
1002
1003
# File 'lib/arjdbc/postgresql/adapter.rb', line 997

def quote_column_name(name)
  unless quoted = @@quoted_column_names[name]
    quoted = super
    @@quoted_column_names[name] = quoted.freeze
  end
  quoted
end

#quote_table_name(name) ⇒ Object



987
988
989
990
991
992
993
# File 'lib/arjdbc/postgresql/adapter.rb', line 987

def quote_table_name(name)
  unless quoted = @@quoted_table_names[name]
    quoted = super
    @@quoted_table_names[name] = quoted.freeze
  end
  quoted
end

#table_definitionObject



969
970
971
# File 'lib/arjdbc/postgresql/adapter.rb', line 969

def table_definition
  TableDefinition.new(self)
end