| Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
| SqlParameter | 
 | 
 | 1.0;1 | 
| 1 |  package liquibase.executor.jvm; | |
| 2 | ||
| 3 |  /** | |
| 4 |   * Object to represent a SQL parameter definition. | |
| 5 |   * <p/> | |
| 6 |   * <p> | |
| 7 |   * Parameters may be anonymous, in which case "name" is <code>null</code>. However, all parameters must define a SQL | |
| 8 |   * type according to {@link java.sql.Types}. | |
| 9 |   *  | |
| 10 |   * @author Spring Framework | |
| 11 |   * @see java.sql.Types | |
| 12 |   */ | |
| 13 |  class SqlParameter { | |
| 14 | ||
| 15 |      /** | |
| 16 |       * The name of the parameter, if any | |
| 17 |       */ | |
| 18 |      private String name; | |
| 19 | ||
| 20 |      /** | |
| 21 |       * SQL type constant from <code>java.sql.Types</code> | |
| 22 |       */ | |
| 23 | private final int sqlType; | |
| 24 | ||
| 25 |      /** | |
| 26 |       * Used for types that are user-named like: STRUCT, DISTINCT, JAVA_OBJECT, named array types | |
| 27 |       */ | |
| 28 |      private String typeName; | |
| 29 | ||
| 30 |      /** | |
| 31 |       * The scale to apply in case of a NUMERIC or DECIMAL type, if any | |
| 32 |       */ | |
| 33 |      private Integer scale; | |
| 34 | ||
| 35 |      /** | |
| 36 |       * Create a new anonymous SqlParameter, supplying the SQL type. | |
| 37 |       *  | |
| 38 |       * @param sqlType | |
| 39 |       *            SQL type of the parameter according to <code>java.sql.Types</code> | |
| 40 |       */ | |
| 41 | 0 |      public SqlParameter(int sqlType) { | 
| 42 | 0 |          this.sqlType = sqlType; | 
| 43 | 0 |      } | 
| 44 | ||
| 45 |      /** | |
| 46 |       * Create a new anonymous SqlParameter, supplying the SQL type. | |
| 47 |       *  | |
| 48 |       * @param sqlType | |
| 49 |       *            SQL type of the parameter according to <code>java.sql.Types</code> | |
| 50 |       * @param typeName | |
| 51 |       *            the type name of the parameter (optional) | |
| 52 |       */ | |
| 53 | 0 |      public SqlParameter(int sqlType, String typeName) { | 
| 54 | 0 |          this.sqlType = sqlType; | 
| 55 | 0 |          this.typeName = typeName; | 
| 56 | 0 |      } | 
| 57 | ||
| 58 |      /** | |
| 59 |       * Create a new anonymous SqlParameter, supplying the SQL type. | |
| 60 |       *  | |
| 61 |       * @param sqlType | |
| 62 |       *            SQL type of the parameter according to <code>java.sql.Types</code> | |
| 63 |       * @param scale | |
| 64 |       *            the number of digits after the decimal point (for DECIMAL and NUMERIC types) | |
| 65 |       */ | |
| 66 | 0 |      public SqlParameter(int sqlType, int scale) { | 
| 67 | 0 |          this.sqlType = sqlType; | 
| 68 | 0 |          this.scale = scale; | 
| 69 | 0 |      } | 
| 70 | ||
| 71 |      /** | |
| 72 |       * Create a new SqlParameter, supplying name and SQL type. | |
| 73 |       *  | |
| 74 |       * @param name | |
| 75 |       *            name of the parameter, as used in input and output maps | |
| 76 |       * @param sqlType | |
| 77 |       *            SQL type of the parameter according to <code>java.sql.Types</code> | |
| 78 |       */ | |
| 79 | 0 |      public SqlParameter(String name, int sqlType) { | 
| 80 | 0 |          this.name = name; | 
| 81 | 0 |          this.sqlType = sqlType; | 
| 82 | 0 |      } | 
| 83 | ||
| 84 |      /** | |
| 85 |       * Create a new SqlParameter, supplying name and SQL type. | |
| 86 |       *  | |
| 87 |       * @param name | |
| 88 |       *            name of the parameter, as used in input and output maps | |
| 89 |       * @param sqlType | |
| 90 |       *            SQL type of the parameter according to <code>java.sql.Types</code> | |
| 91 |       * @param typeName | |
| 92 |       *            the type name of the parameter (optional) | |
| 93 |       */ | |
| 94 | 0 |      public SqlParameter(String name, int sqlType, String typeName) { | 
| 95 | 0 |          this.name = name; | 
| 96 | 0 |          this.sqlType = sqlType; | 
| 97 | 0 |          this.typeName = typeName; | 
| 98 | 0 |      } | 
| 99 | ||
| 100 |      /** | |
| 101 |       * Create a new SqlParameter, supplying name and SQL type. | |
| 102 |       *  | |
| 103 |       * @param name | |
| 104 |       *            name of the parameter, as used in input and output maps | |
| 105 |       * @param sqlType | |
| 106 |       *            SQL type of the parameter according to <code>java.sql.Types</code> | |
| 107 |       * @param scale | |
| 108 |       *            the number of digits after the decimal point (for DECIMAL and NUMERIC types) | |
| 109 |       */ | |
| 110 | 0 |      public SqlParameter(String name, int sqlType, int scale) { | 
| 111 | 0 |          this.name = name; | 
| 112 | 0 |          this.sqlType = sqlType; | 
| 113 | 0 |          this.scale = scale; | 
| 114 | 0 |      } | 
| 115 | ||
| 116 |      /** | |
| 117 |       * Copy constructor. | |
| 118 |       *  | |
| 119 |       * @param otherParam | |
| 120 |       *            the SqlParameter object to copy from | |
| 121 |       */ | |
| 122 | 0 |      public SqlParameter(SqlParameter otherParam) { | 
| 123 | 0 |          this.name = otherParam.name; | 
| 124 | 0 |          this.sqlType = otherParam.sqlType; | 
| 125 | 0 |          this.typeName = otherParam.typeName; | 
| 126 | 0 |          this.scale = otherParam.scale; | 
| 127 | 0 |      } | 
| 128 | ||
| 129 |      /** | |
| 130 |       * Return the name of the parameter. | |
| 131 |       */ | |
| 132 |      public String getName() { | |
| 133 | 0 |          return this.name; | 
| 134 | } | |
| 135 | ||
| 136 |      /** | |
| 137 |       * Return the SQL type of the parameter. | |
| 138 |       */ | |
| 139 | public int getSqlType() { | |
| 140 | 0 |          return this.sqlType; | 
| 141 | } | |
| 142 | ||
| 143 |      /** | |
| 144 |       * Return the type name of the parameter, if any. | |
| 145 |       */ | |
| 146 |      public String getTypeName() { | |
| 147 | 0 |          return this.typeName; | 
| 148 | } | |
| 149 | ||
| 150 |      /** | |
| 151 |       * Return the scale of the parameter, if any. | |
| 152 |       */ | |
| 153 |      public Integer getScale() { | |
| 154 | 0 |          return this.scale; | 
| 155 | } | |
| 156 | ||
| 157 |      /** | |
| 158 |       * Return whether this parameter holds input values that should be set before execution even if they are | |
| 159 |       * <code>null</code>. | |
| 160 |       * <p> | |
| 161 |       * This implementation always returns <code>true</code>. | |
| 162 |       */ | |
| 163 | public boolean isInputValueProvided() { | |
| 164 | 0 |          return true; | 
| 165 | } | |
| 166 | ||
| 167 |      /** | |
| 168 |       * Return whether this parameter is an implicit return parameter used during the reults preocessing of the | |
| 169 |       * CallableStatement.getMoreResults/getUpdateCount. | |
| 170 |       * <p> | |
| 171 |       * This implementation always returns <code>false</code>. | |
| 172 |       */ | |
| 173 | public boolean isResultsParameter() { | |
| 174 | 0 |          return false; | 
| 175 | } | |
| 176 | } |