Skip to content

Commit 6e86629

Browse files
louisjdmartinSancretor
authored andcommitted
Replace JAXB with XStream and udpdate to JDK11
1 parent 2e9c49a commit 6e86629

File tree

14 files changed

+70
-101
lines changed

14 files changed

+70
-101
lines changed

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ sudo: false
44
install: true
55

66
jdk:
7-
- oraclejdk8
7+
- openjdk8
8+
- openjdk11
89

910
cache:
1011
directories:

pom.xml

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>fr.cnes.sonarqube.plugins</groupId>
66
<artifactId>sonaricode</artifactId>
77
<packaging>sonar-plugin</packaging>
8-
<version>1.1.0</version>
8+
<version>1.2.0</version>
99
<name>Sonar i-Code CNES plugin</name>
1010

1111
<description>i-Code CNES plugin for SonarQube</description>
@@ -43,6 +43,12 @@
4343
<url>https://github.com/begarco</url>
4444
<id>begarco</id>
4545
</developer>
46+
<developer>
47+
<name>Louis Martin</name>
48+
<organization>CNES</organization>
49+
<url>https://github.com/louisjdmartin</url>
50+
<id>louisjdmartin</id>
51+
</developer>
4652
<developer>
4753
<name>Omar Waldmann</name>
4854
<organization>CNES</organization>
@@ -91,17 +97,22 @@
9197
<dependency>
9298
<groupId>org.mockito</groupId>
9399
<artifactId>mockito-core</artifactId>
94-
<version>2.9.0</version>
100+
<version>3.0.0</version>
95101
<scope>test</scope>
96102
</dependency>
103+
<dependency>
104+
<groupId>com.thoughtworks.xstream</groupId>
105+
<artifactId>xstream</artifactId>
106+
<version>1.4.11.1</version>
107+
</dependency>
97108
</dependencies>
98109

99110
<build>
100111
<plugins>
101112
<plugin>
102113
<groupId>org.jacoco</groupId>
103114
<artifactId>jacoco-maven-plugin</artifactId>
104-
<version>0.7.6.201602180812</version>
115+
<version>0.8.4</version>
105116
<executions>
106117
<execution>
107118
<id>prepare-agent</id>

src/main/java/fr/cnes/sonar/plugins/icode/check/ICodeSensor.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,9 @@
4141
import org.sonar.api.utils.log.Logger;
4242
import org.sonar.api.utils.log.Loggers;
4343

44-
import javax.xml.bind.JAXBException;
4544
import java.io.File;
45+
import java.io.FileInputStream;
46+
import java.io.FileNotFoundException;
4647
import java.io.IOException;
4748
import java.nio.file.Paths;
4849
import java.util.ArrayList;
@@ -113,7 +114,7 @@ public void execute(SensorContext sensorContext) {
113114
for(final String reportPath : reportFiles) {
114115
try {
115116
// Unmarshall the xml.
116-
final File file = new File(reportPath);
117+
final FileInputStream file = new FileInputStream(reportPath);
117118
final AnalysisProject analysisProject = (AnalysisProject) XmlHandler.unmarshal(file, AnalysisProject.class);
118119
// Retrieve file in a SonarQube format.
119120
final Map<String, InputFile> scannedFiles = getScannedFiles(fileSystem, analysisProject);
@@ -133,7 +134,7 @@ public void execute(SensorContext sensorContext) {
133134

134135
ICodeMetricsProcessor.saveExtraMeasures(sensorContext, scannedFiles, analysisProject);
135136

136-
} catch (JAXBException e) {
137+
} catch (FileNotFoundException e) {
137138
LOGGER.error(e.getMessage(), e);
138139
sensorContext.newAnalysisError().message(e.getMessage()).save();
139140
}

src/main/java/fr/cnes/sonar/plugins/icode/languages/ICodeQualityProfiles.java

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import org.sonar.api.utils.log.Logger;
2525
import org.sonar.api.utils.log.Loggers;
2626

27-
import javax.xml.bind.JAXBException;
2827
import java.io.InputStream;
2928

3029
/**
@@ -64,16 +63,12 @@ private void createBuiltInProfile(final Context context, final String language,
6463
final NewBuiltInQualityProfile defaultProfile =
6564
context.createBuiltInQualityProfile(I_CODE_RULES_PROFILE_NAME, language);
6665

67-
try {
68-
// Retrieve all defined rules.
69-
final InputStream stream = getClass().getResourceAsStream(path);
70-
final RulesDefinition rules = (RulesDefinition) XmlHandler.unmarshal(stream, RulesDefinition.class);
71-
// Activate all i-Code CNES rules.
72-
for(final Rule rule : rules.getRules()) {
73-
defaultProfile.activateRule(ICodeRulesDefinition.getRepositoryKeyForLanguage(language), rule.key);
74-
}
75-
} catch (JAXBException e) {
76-
LOGGER.warn(e.getLocalizedMessage(), e);
66+
// Retrieve all defined rules.
67+
final InputStream stream = getClass().getResourceAsStream(path);
68+
final RulesDefinition rules = (RulesDefinition) XmlHandler.unmarshal(stream, RulesDefinition.class);
69+
// Activate all i-Code CNES rules.
70+
for(final Rule rule : rules.getRules()) {
71+
defaultProfile.activateRule(ICodeRulesDefinition.getRepositoryKeyForLanguage(language), rule.key);
7772
}
7873
// Save the default profile.
7974
defaultProfile.setDefault(true);

src/main/java/fr/cnes/sonar/plugins/icode/model/AnalysisFile.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
*/
1717
package fr.cnes.sonar.plugins.icode.model;
1818

19-
import javax.xml.bind.annotation.XmlAttribute;
2019

2120
/**
2221
* Class used to unmarshal i-Code xml file.
@@ -26,8 +25,6 @@
2625
* @author lequal
2726
*/
2827
public class AnalysisFile {
29-
@XmlAttribute
3028
public String language;
31-
@XmlAttribute
3229
public String fileName;
3330
}

src/main/java/fr/cnes/sonar/plugins/icode/model/AnalysisInformations.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
*/
1717
package fr.cnes.sonar.plugins.icode.model;
1818

19-
import javax.xml.bind.annotation.XmlAttribute;
2019

2120
/**
2221
* Class used to unmarshal i-Code xml file.
@@ -26,10 +25,7 @@
2625
* @author lequal
2726
*/
2827
public class AnalysisInformations {
29-
@XmlAttribute
3028
public String analysisConfigurationId;
31-
@XmlAttribute
3229
public String analysisDate;
33-
@XmlAttribute
3430
public String author;
3531
}

src/main/java/fr/cnes/sonar/plugins/icode/model/AnalysisProject.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
*/
1717
package fr.cnes.sonar.plugins.icode.model;
1818

19-
import javax.xml.bind.annotation.XmlAttribute;
20-
import javax.xml.bind.annotation.XmlElement;
21-
import javax.xml.bind.annotation.XmlRootElement;
2219
import java.util.ArrayList;
2320
import java.util.Arrays;
2421
import java.util.List;
@@ -30,17 +27,11 @@
3027
*
3128
* @author lequal
3229
*/
33-
@XmlRootElement
3430
public class AnalysisProject {
35-
@XmlAttribute
3631
public String analysisProjectName;
37-
@XmlAttribute
3832
public String analysisProjectVersion;
39-
@XmlElement
4033
public AnalysisInformations analysisInformations;
41-
@XmlElement
4234
public AnalysisFile[] analysisFile;
43-
@XmlElement
4435
public AnalysisRule[] analysisRule;
4536

4637
/**

src/main/java/fr/cnes/sonar/plugins/icode/model/AnalysisRule.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
*/
1717
package fr.cnes.sonar.plugins.icode.model;
1818

19-
import javax.xml.bind.annotation.XmlAttribute;
20-
import javax.xml.bind.annotation.XmlElement;
2119

2220
/**
2321
* Class used to unmarshal i-Code xml file.
@@ -28,9 +26,7 @@
2826
*/
2927
public class AnalysisRule {
3028

31-
@XmlAttribute
3229
public String analysisRuleId;
33-
@XmlElement
3430
public Result result;
3531

3632
}

src/main/java/fr/cnes/sonar/plugins/icode/model/Result.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
*/
1717
package fr.cnes.sonar.plugins.icode.model;
1818

19-
import javax.xml.bind.annotation.XmlAttribute;
20-
import javax.xml.bind.annotation.XmlElement;
21-
2219
/**
2320
* Class used to unmarshal i-Code xml file.
2421
*
@@ -28,19 +25,12 @@
2825
*/
2926
public class Result {
3027

31-
@XmlAttribute
3228
public String resultId;
33-
@XmlAttribute
3429
public String fileName;
35-
@XmlAttribute
3630
public String resultLine;
37-
@XmlAttribute
3831
public String resultTypePlace;
39-
@XmlAttribute
4032
public String resultNamePlace;
41-
@XmlAttribute
4233
public String resultValue;
43-
@XmlElement
4434
public String resultMessage;
4535

4636
}

src/main/java/fr/cnes/sonar/plugins/icode/model/Rule.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
*/
1818
package fr.cnes.sonar.plugins.icode.model;
1919

20-
import javax.xml.bind.annotation.XmlElement;
2120

2221
/**
2322
* Class used to unmarshal i-Code xml file.
@@ -28,27 +27,17 @@
2827
*/
2928
public class Rule {
3029

31-
@XmlElement
30+
3231
public String key;
33-
@XmlElement
3432
public String name;
35-
@XmlElement
3633
public String internalKey;
37-
@XmlElement
3834
public String description;
39-
@XmlElement
4035
public String severity;
41-
@XmlElement
4236
public String cardinality;
43-
@XmlElement
4437
public String status;
45-
@XmlElement
4638
public String type;
47-
@XmlElement
4839
public String tag;
49-
@XmlElement
5040
public String remediationFunction;
51-
@XmlElement
5241
public String remediationFunctionBaseEffort;
5342

5443
}

0 commit comments

Comments
 (0)