aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@gmail.com>2012-09-17 16:45:06 +0200
committerSimon Brandhof <simon.brandhof@gmail.com>2012-09-17 16:45:06 +0200
commitc33db9cecb2f127084b0cf48af68daa9c1ba4e78 (patch)
treebc5e8ca809663f6d7085065c0923b0cc330659da /sonar-plugin-api
parent50d9a253d8cfeff495513ec04512462d4fa214d3 (diff)
downloadsonarqube-c33db9cecb2f127084b0cf48af68daa9c1ba4e78.tar.gz
sonarqube-c33db9cecb2f127084b0cf48af68daa9c1ba4e78.zip
Revert "SONAR-3778 Bad performances when Hibernate requests measures on quality models"
This reverts commit 5000405959b05fb3562a2f2cd55a1ba10e6464e2.
Diffstat (limited to 'sonar-plugin-api')
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/database/model/MeasureModel.java39
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/qualitymodel/Characteristic.java2
2 files changed, 8 insertions, 33 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/database/model/MeasureModel.java b/sonar-plugin-api/src/main/java/org/sonar/api/database/model/MeasureModel.java
index 3485cbecbe9..0e82d047a1d 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/database/model/MeasureModel.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/database/model/MeasureModel.java
@@ -19,7 +19,6 @@
*/
package org.sonar.api.database.model;
-import com.google.common.base.Preconditions;
import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
import org.sonar.api.database.DatabaseSession;
@@ -28,6 +27,7 @@ import org.sonar.api.qualitymodel.Characteristic;
import org.sonar.api.rules.RulePriority;
import javax.persistence.*;
+
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -112,8 +112,9 @@ public class MeasureModel implements Cloneable {
@OneToMany(mappedBy = "measure", fetch = FetchType.LAZY, cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE})
private List<MeasureData> measureData = new ArrayList<MeasureData>();
- @Column(name = "characteristic_id", updatable = true, nullable = true)
- private Integer characteristicId;
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "characteristic_id")
+ private Characteristic characteristic;
@Column(name = "person_id", updatable = true, nullable = true)
private Integer personId;
@@ -496,38 +497,12 @@ public class MeasureModel implements Cloneable {
return this;
}
- public Integer getCharacteristicId() {
- return characteristicId;
- }
-
- public MeasureModel setCharacteristicId(Integer i) {
- this.characteristicId = i;
- return this;
- }
-
- /**
- * @deprecated replaced by {@link org.sonar.api.database.model.MeasureModel#getCharacteristicId()} since 3.3. See https://jira.codehaus.org/browse/SONAR-3778
- */
- @Deprecated
public Characteristic getCharacteristic() {
- Characteristic c = null;
- if (characteristicId != null) {
- c = Characteristic.create().setId(characteristicId);
- }
- return c;
+ return characteristic;
}
- /**
- * @deprecated replaced by {@link org.sonar.api.database.model.MeasureModel#setCharacteristicId(Integer)} since 3.3. See https://jira.codehaus.org/browse/SONAR-3778
- */
- @Deprecated
public MeasureModel setCharacteristic(Characteristic c) {
- if (c == null) {
- this.characteristicId = null;
- } else {
- Preconditions.checkArgument(c.getId()!=null, "Characteristic id must not be null");
- this.characteristicId = c.getId();
- }
+ this.characteristic = c;
return this;
}
@@ -560,7 +535,7 @@ public class MeasureModel implements Cloneable {
clone.setSnapshotId(getSnapshotId());
clone.setMeasureDate(getMeasureDate());
clone.setUrl(getUrl());
- clone.setCharacteristicId(getCharacteristicId());
+ clone.setCharacteristic(getCharacteristic());
clone.setPersonId(getPersonId());
return clone;
}
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/qualitymodel/Characteristic.java b/sonar-plugin-api/src/main/java/org/sonar/api/qualitymodel/Characteristic.java
index 523ec19c2f3..c2a5da7fb9f 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/qualitymodel/Characteristic.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/qualitymodel/Characteristic.java
@@ -94,7 +94,7 @@ public final class Characteristic implements Comparable<Characteristic> {
return id;
}
- public Characteristic setId(Integer id) {
+ Characteristic setId(Integer id) {
this.id = id;
return this;
}