test_class.file: DbSetup-core/src/test/java/com/ninja_squad/dbsetup/bind/DefaultBinderConfigurationTest.java
test_class.identifier: DefaultBinderConfigurationTest
test_case.body: @Test
      public void shouldReturnDefaultBinderIfNoParameterMetadata() throws SQLException {
          assertEquals(Binders.defaultBinder(), DefaultBinderConfiguration.INSTANCE.getBinder(null, 1));
      }
test_case.class_method_signature: DefaultBinderConfigurationTest.shouldReturnDefaultBinderIfNoParameterMetadata()
test_case.full_signature: @Test public void shouldReturnDefaultBinderIfNoParameterMetadata()
test_case.identifier: shouldReturnDefaultBinderIfNoParameterMetadata
test_case.invocations: assertEquals defaultBinder getBinder
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void shouldReturnDefaultBinderIfNoParameterMetadata()
focal_class.declarator: INSTANCE = new DefaultBinderConfiguration()
focal_class.modifier: public static final
focal_class.original_string: public static final DefaultBinderConfiguration INSTANCE = new DefaultBinderConfiguration();
focal_class.type: DefaultBinderConfiguration
focal_class.var_name: INSTANCE
focal_class.file: DbSetup-core/src/main/java/com/ninja_squad/dbsetup/bind/DefaultBinderConfiguration.java
focal_class.identifier: DefaultBinderConfiguration
focal_class.interfaces: implements BinderConfiguration
focal_class.class_method_signature: DefaultBinderConfiguration.DefaultBinderConfiguration()
focal_class.full_signature: protected  DefaultBinderConfiguration()
focal_class.identifier: DefaultBinderConfiguration
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.signature:  DefaultBinderConfiguration()
focal_class.class_method_signature: DefaultBinderConfiguration.getBinder(ParameterMetaData metadata, int param)
focal_class.full_signature: @Override public Binder getBinder(ParameterMetaData metadata, int param)
focal_class.identifier: getBinder
focal_class.modifiers: @Override public
focal_class.parameters: (ParameterMetaData metadata, int param)
focal_class.return: Binder
focal_class.signature: Binder getBinder(ParameterMetaData metadata, int param)
focal_class.class_method_signature: DefaultBinderConfiguration.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_method.body: @Override
      public Binder getBinder(ParameterMetaData metadata, int param) throws SQLException {
          if (metadata == null) {
              return Binders.defaultBinder();
          }
          try {
              int sqlType = metadata.getParameterType(param);
              if (sqlType == Types.DATE) {
                  return Binders.dateBinder();
              }
              if (sqlType == Types.TIME || sqlType == Types.TIME_WITH_TIMEZONE) {
                  return Binders.timeBinder();
              }
              if (sqlType == Types.TIMESTAMP || sqlType == Types.TIMESTAMP_WITH_TIMEZONE) {
                  return Binders.timestampBinder();
              }
              if (sqlType == Types.BIGINT
                  || sqlType == Types.INTEGER
                  || sqlType == Types.SMALLINT
                  || sqlType == Types.TINYINT) {
                  return Binders.integerBinder();
              }
              if (sqlType == Types.DECIMAL
                  || sqlType == Types.DOUBLE
                  || sqlType == Types.FLOAT
                  || sqlType == Types.NUMERIC
                  || sqlType == Types.REAL) {
                  return Binders.decimalBinder();
              }
              if (sqlType == Types.VARCHAR
                  || sqlType == Types.CHAR
                  || sqlType == Types.LONGNVARCHAR
                  || sqlType == Types.LONGVARCHAR
                  || sqlType == Types.NCHAR
                  || sqlType == Types.NVARCHAR) {
                  return Binders.stringBinder();
              }
              return Binders.defaultBinder();
          }
          catch (SQLException e) {
              // the database can't return types from parameters. Fall back to default binder.
              return Binders.defaultBinder();
          }
      }
focal_method.class_method_signature: DefaultBinderConfiguration.getBinder(ParameterMetaData metadata, int param)
focal_method.full_signature: @Override public Binder getBinder(ParameterMetaData metadata, int param)
focal_method.identifier: getBinder
focal_method.invocations: defaultBinder getParameterType dateBinder timeBinder timestampBinder integerBinder decimalBinder stringBinder defaultBinder defaultBinder
focal_method.modifiers: @Override public
focal_method.parameters: (ParameterMetaData metadata, int param)
focal_method.return: Binder
focal_method.signature: Binder getBinder(ParameterMetaData metadata, int param)