diff options
Diffstat (limited to 'sonar-db/src')
7 files changed, 26 insertions, 9 deletions
diff --git a/sonar-db/src/main/java/org/sonar/db/metric/MetricDto.java b/sonar-db/src/main/java/org/sonar/db/metric/MetricDto.java index 9822dabaa84..c5bace1c447 100644 --- a/sonar-db/src/main/java/org/sonar/db/metric/MetricDto.java +++ b/sonar-db/src/main/java/org/sonar/db/metric/MetricDto.java @@ -55,6 +55,8 @@ public class MetricDto { private boolean enabled; + private Integer decimalScale; + public Integer getId() { return id; } @@ -196,4 +198,13 @@ public class MetricDto { return this; } + @CheckForNull + public Integer getDecimalScale() { + return decimalScale; + } + + public MetricDto setDecimalScale(@Nullable Integer i) { + this.decimalScale = i; + return this; + } } diff --git a/sonar-db/src/main/java/org/sonar/db/version/DatabaseVersion.java b/sonar-db/src/main/java/org/sonar/db/version/DatabaseVersion.java index a9180d4e9c8..7bc2b344ce2 100644 --- a/sonar-db/src/main/java/org/sonar/db/version/DatabaseVersion.java +++ b/sonar-db/src/main/java/org/sonar/db/version/DatabaseVersion.java @@ -29,7 +29,7 @@ import org.sonar.db.MyBatis; public class DatabaseVersion { - public static final int LAST_VERSION = 1003; + public static final int LAST_VERSION = 1005; /** * The minimum supported version which can be upgraded. Lower diff --git a/sonar-db/src/main/resources/org/sonar/db/metric/MetricMapper.xml b/sonar-db/src/main/resources/org/sonar/db/metric/MetricMapper.xml index adf0d7544cb..58518e16eb7 100644 --- a/sonar-db/src/main/resources/org/sonar/db/metric/MetricMapper.xml +++ b/sonar-db/src/main/resources/org/sonar/db/metric/MetricMapper.xml @@ -18,7 +18,8 @@ m.best_value as bestValue, m.optimized_best_value as optimizedBestValue, m.hidden, - m.delete_historical_data as deleteHistoricalData + m.delete_historical_data as deleteHistoricalData, + m.decimal_scale as decimalScale </sql> <select id="selectByKey" parameterType="map" resultType="org.sonar.db.metric.MetricDto"> @@ -86,13 +87,14 @@ keyProperty="id"> INSERT INTO metrics ( name, description, direction, domain, short_name, qualitative, val_type, user_managed, enabled, worst_value, - best_value, optimized_best_value, hidden, delete_historical_data) + best_value, optimized_best_value, hidden, delete_historical_data, decimal_scale) VALUES ( #{kee, jdbcType=VARCHAR}, #{description, jdbcType=VARCHAR}, #{direction, jdbcType=INTEGER}, #{domain, jdbcType=VARCHAR}, #{shortName, jdbcType=VARCHAR}, #{qualitative, jdbcType=BOOLEAN}, #{valueType, jdbcType=VARCHAR}, #{userManaged, jdbcType=BOOLEAN}, #{enabled, jdbcType=BOOLEAN}, #{worstValue, jdbcType=DOUBLE}, #{bestValue, jdbcType=DOUBLE}, - #{optimizedBestValue, jdbcType=BOOLEAN}, #{hidden, jdbcType=BOOLEAN}, #{deleteHistoricalData, jdbcType=BOOLEAN} + #{optimizedBestValue, jdbcType=BOOLEAN}, #{hidden, jdbcType=BOOLEAN}, #{deleteHistoricalData, jdbcType=BOOLEAN}, + #{decimalScale, jdbcType=INTEGER} ) </insert> @@ -107,7 +109,8 @@ description=#{description, jdbcType=VARCHAR}, direction=#{direction, jdbcType=INTEGER}, hidden=#{hidden, jdbcType=BOOLEAN}, - qualitative=#{qualitative, jdbcType=BOOLEAN} + qualitative=#{qualitative, jdbcType=BOOLEAN}, + decimal_scale=#{decimalScale, jdbcType=INTEGER} where id=#{id} </update> diff --git a/sonar-db/src/main/resources/org/sonar/db/version/rows-h2.sql b/sonar-db/src/main/resources/org/sonar/db/version/rows-h2.sql index 0b770f42727..1e3e3a14b43 100644 --- a/sonar-db/src/main/resources/org/sonar/db/version/rows-h2.sql +++ b/sonar-db/src/main/resources/org/sonar/db/version/rows-h2.sql @@ -364,6 +364,7 @@ INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('1000'); INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('1001'); INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('1002'); INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('1003'); +INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('1005'); INSERT INTO USERS(ID, LOGIN, NAME, EMAIL, CRYPTED_PASSWORD, SALT, CREATED_AT, UPDATED_AT, REMEMBER_TOKEN, REMEMBER_TOKEN_EXPIRES_AT) VALUES (1, 'admin', 'Administrator', '', 'a373a0e667abb2604c1fd571eb4ad47fe8cc0878', '48bc4b0d93179b5103fd3885ea9119498e9d161b', '1418215735482', '1418215735482', null, null); ALTER TABLE USERS ALTER COLUMN ID RESTART WITH 2; diff --git a/sonar-db/src/main/resources/org/sonar/db/version/schema-h2.ddl b/sonar-db/src/main/resources/org/sonar/db/version/schema-h2.ddl index d71d0d7399d..bda06b21a81 100644 --- a/sonar-db/src/main/resources/org/sonar/db/version/schema-h2.ddl +++ b/sonar-db/src/main/resources/org/sonar/db/version/schema-h2.ddl @@ -351,7 +351,8 @@ CREATE TABLE "METRICS" ( "BEST_VALUE" DOUBLE, "OPTIMIZED_BEST_VALUE" BOOLEAN, "HIDDEN" BOOLEAN, - "DELETE_HISTORICAL_DATA" BOOLEAN + "DELETE_HISTORICAL_DATA" BOOLEAN, + "DECIMAL_SCALE" INTEGER ); CREATE TABLE "LOADED_TEMPLATES" ( diff --git a/sonar-db/src/test/java/org/sonar/db/metric/MetricDaoTest.java b/sonar-db/src/test/java/org/sonar/db/metric/MetricDaoTest.java index eb3940fa9ae..473e83889b5 100644 --- a/sonar-db/src/test/java/org/sonar/db/metric/MetricDaoTest.java +++ b/sonar-db/src/test/java/org/sonar/db/metric/MetricDaoTest.java @@ -82,6 +82,7 @@ public class MetricDaoTest { assertThat(result.isDeleteHistoricalData()).isFalse(); assertThat(result.isHidden()).isFalse(); assertThat(result.isEnabled()).isTrue(); + assertThat(result.getDecimalScale()).isEqualTo(3); // Disabled metrics are returned result = underTest.selectByKey(session, "disabled"); diff --git a/sonar-db/src/test/resources/org/sonar/db/metric/MetricDaoTest/shared.xml b/sonar-db/src/test/resources/org/sonar/db/metric/MetricDaoTest/shared.xml index dda5d3bbb88..1a43f8ed39e 100644 --- a/sonar-db/src/test/resources/org/sonar/db/metric/MetricDaoTest/shared.xml +++ b/sonar-db/src/test/resources/org/sonar/db/metric/MetricDaoTest/shared.xml @@ -2,14 +2,14 @@ <metrics id="1" name="ncloc" val_type="INT" description="Non Commenting Lines of Code" domain="Size" short_name="Lines of code" qualitative="[false]" enabled="[true]" worst_value="[null]" optimized_best_value="[null]" best_value="[null]" direction="-1" hidden="[false]" - delete_historical_data="[false]" user_managed="[false]"/> + delete_historical_data="[false]" user_managed="[false]" decimal_scale="[null]"/> <metrics id="2" name="coverage" val_type="PERCENT" description="Coverage by unit tests" domain="Tests" short_name="Coverage" qualitative="[true]" enabled="[true]" worst_value="0" optimized_best_value="[false]" best_value="100" direction="1" hidden="[false]" - delete_historical_data="[false]" user_managed="[false]"/> + delete_historical_data="[false]" user_managed="[false]" decimal_scale="3"/> <metrics id="3" name="disabled" val_type="INT" description="[null]" domain="[null]" short_name="disabled" qualitative="[false]" enabled="[false]" worst_value="0" optimized_best_value="[true]" best_value="100" direction="1" hidden="[false]" - delete_historical_data="[false]" user_managed="[false]"/> + delete_historical_data="[false]" user_managed="[false]" decimal_scale="[null]"/> </dataset> |