test_class.declarator: POSTGRESQL_96_LSN = "0/14EFDB8"
test_class.modifier: private static final
test_class.original_string: private static final String POSTGRESQL_96_LSN = "0/14EFDB8";
test_class.type: String
test_class.var_name: POSTGRESQL_96_LSN
test_class.declarator: POSTGRESQL_10_LSN = "0/1634520"
test_class.modifier: private static final
test_class.original_string: private static final String POSTGRESQL_10_LSN = "0/1634520";
test_class.type: String
test_class.var_name: POSTGRESQL_10_LSN
test_class.declarator: dataSource
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private DataSource dataSource;
test_class.type: DataSource
test_class.var_name: dataSource
test_class.declarator: connection
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private Connection connection;
test_class.type: Connection
test_class.var_name: connection
test_class.declarator: databaseMetaData
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private DatabaseMetaData databaseMetaData;
test_class.type: DatabaseMetaData
test_class.var_name: databaseMetaData
test_class.file: shardingsphere-scaling/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLPositionManagerTest.java
test_class.identifier: PostgreSQLPositionManagerTest
test_case.body: @Test
      public void assertGetCurrentPositionOnPostgreSQL10() throws SQLException {
          PostgreSQLPositionManager postgreSQLPositionManager = new PostgreSQLPositionManager(dataSource);
          when(databaseMetaData.getDatabaseMajorVersion()).thenReturn(10);
          WalPosition actual = postgreSQLPositionManager.getPosition();
          assertThat(actual.getLogSequenceNumber(), is(LogSequenceNumber.valueOf(POSTGRESQL_10_LSN)));
      }
test_case.class_method_signature: PostgreSQLPositionManagerTest.assertGetCurrentPositionOnPostgreSQL10()
test_case.full_signature: @Test public void assertGetCurrentPositionOnPostgreSQL10()
test_case.identifier: assertGetCurrentPositionOnPostgreSQL10
test_case.invocations: thenReturn when getDatabaseMajorVersion getPosition assertThat getLogSequenceNumber is valueOf
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertGetCurrentPositionOnPostgreSQL10()
focal_class.declarator: SLOT_NAME = "sharding_scaling"
focal_class.modifier: public static final
focal_class.original_string: public static final String SLOT_NAME = "sharding_scaling";
focal_class.type: String
focal_class.var_name: SLOT_NAME
focal_class.declarator: DECODE_PLUGIN = "test_decoding"
focal_class.modifier: public static final
focal_class.original_string: public static final String DECODE_PLUGIN = "test_decoding";
focal_class.type: String
focal_class.var_name: DECODE_PLUGIN
focal_class.declarator: DUPLICATE_OBJECT_ERROR_CODE = "42710"
focal_class.modifier: public static final
focal_class.original_string: public static final String DUPLICATE_OBJECT_ERROR_CODE = "42710";
focal_class.type: String
focal_class.var_name: DUPLICATE_OBJECT_ERROR_CODE
focal_class.declarator: dataSource
focal_class.modifier: private
focal_class.original_string: private DataSource dataSource;
focal_class.type: DataSource
focal_class.var_name: dataSource
focal_class.file: shardingsphere-scaling/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLPositionManager.java
focal_class.identifier: PostgreSQLPositionManager
focal_class.class_method_signature: PostgreSQLPositionManager.PostgreSQLPositionManager(final DataSource dataSource)
focal_class.full_signature: public  PostgreSQLPositionManager(final DataSource dataSource)
focal_class.identifier: PostgreSQLPositionManager
focal_class.modifiers: public
focal_class.parameters: (final DataSource dataSource)
focal_class.signature:  PostgreSQLPositionManager(final DataSource dataSource)
focal_class.class_method_signature: PostgreSQLPositionManager.PostgreSQLPositionManager(final String position)
focal_class.full_signature: public  PostgreSQLPositionManager(final String position)
focal_class.identifier: PostgreSQLPositionManager
focal_class.modifiers: public
focal_class.parameters: (final String position)
focal_class.signature:  PostgreSQLPositionManager(final String position)
focal_class.class_method_signature: PostgreSQLPositionManager.getPosition()
focal_class.full_signature: @Override public WalPosition getPosition()
focal_class.identifier: getPosition
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: WalPosition
focal_class.signature: WalPosition getPosition()
focal_class.class_method_signature: PostgreSQLPositionManager.initPosition()
focal_class.full_signature: private void initPosition()
focal_class.identifier: initPosition
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void initPosition()
focal_class.class_method_signature: PostgreSQLPositionManager.createIfNotExists(final Connection connection)
focal_class.full_signature: private void createIfNotExists(final Connection connection)
focal_class.identifier: createIfNotExists
focal_class.modifiers: private
focal_class.parameters: (final Connection connection)
focal_class.return: void
focal_class.signature: void createIfNotExists(final Connection connection)
focal_class.class_method_signature: PostgreSQLPositionManager.getWalPosition(final Connection connection)
focal_class.full_signature: private WalPosition getWalPosition(final Connection connection)
focal_class.identifier: getWalPosition
focal_class.modifiers: private
focal_class.parameters: (final Connection connection)
focal_class.return: WalPosition
focal_class.signature: WalPosition getWalPosition(final Connection connection)
focal_class.class_method_signature: PostgreSQLPositionManager.getSql(final Connection connection)
focal_class.full_signature: private String getSql(final Connection connection)
focal_class.identifier: getSql
focal_class.modifiers: private
focal_class.parameters: (final Connection connection)
focal_class.return: String
focal_class.signature: String getSql(final Connection connection)
focal_class.superclass: extends BasePositionManager<WalPosition>
focal_method.body: @Override
      public WalPosition getPosition() {
          WalPosition position = super.getPosition();
          if (null != position) {
              return position;
          }
          initPosition();
          return super.getPosition();
      }
focal_method.class_method_signature: PostgreSQLPositionManager.getPosition()
focal_method.full_signature: @Override public WalPosition getPosition()
focal_method.identifier: getPosition
focal_method.invocations: getPosition initPosition getPosition
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: WalPosition
focal_method.signature: WalPosition getPosition()