Coser-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- 1259 discussions
Author: maven-release
Date: 2014-03-17 17:32:14 +0100 (Mon, 17 Mar 2014)
New Revision: 1155
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1155
Log:
[maven-release-plugin] copy for tag coser-1.5-alpha-1
Added:
tags/coser-1.5-alpha-1/
1
0
r1154 - in trunk: . coser-business coser-ui coser-web
by maven-release@users.forge.codelutin.com 17 Mar '14
by maven-release@users.forge.codelutin.com 17 Mar '14
17 Mar '14
Author: maven-release
Date: 2014-03-17 17:32:04 +0100 (Mon, 17 Mar 2014)
New Revision: 1154
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1154
Log:
[maven-release-plugin] prepare release coser-1.5-alpha-1
Modified:
trunk/coser-business/pom.xml
trunk/coser-ui/pom.xml
trunk/coser-web/pom.xml
trunk/pom.xml
Modified: trunk/coser-business/pom.xml
===================================================================
--- trunk/coser-business/pom.xml 2014-03-17 16:24:01 UTC (rev 1153)
+++ trunk/coser-business/pom.xml 2014-03-17 16:32:04 UTC (rev 1154)
@@ -5,7 +5,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>coser</artifactId>
- <version>1.5-SNAPSHOT</version>
+ <version>1.5-alpha-1</version>
</parent>
<groupId>fr.ifremer.coser</groupId>
Modified: trunk/coser-ui/pom.xml
===================================================================
--- trunk/coser-ui/pom.xml 2014-03-17 16:24:01 UTC (rev 1153)
+++ trunk/coser-ui/pom.xml 2014-03-17 16:32:04 UTC (rev 1154)
@@ -5,7 +5,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>coser</artifactId>
- <version>1.5-SNAPSHOT</version>
+ <version>1.5-alpha-1</version>
</parent>
<groupId>fr.ifremer.coser</groupId>
Modified: trunk/coser-web/pom.xml
===================================================================
--- trunk/coser-web/pom.xml 2014-03-17 16:24:01 UTC (rev 1153)
+++ trunk/coser-web/pom.xml 2014-03-17 16:32:04 UTC (rev 1154)
@@ -5,7 +5,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>coser</artifactId>
- <version>1.5-SNAPSHOT</version>
+ <version>1.5-alpha-1</version>
</parent>
<groupId>fr.ifremer.coser</groupId>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-03-17 16:24:01 UTC (rev 1153)
+++ trunk/pom.xml 2014-03-17 16:32:04 UTC (rev 1154)
@@ -10,7 +10,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>coser</artifactId>
- <version>1.5-SNAPSHOT</version>
+ <version>1.5-alpha-1</version>
<packaging>pom</packaging>
<name>Coser</name>
@@ -59,9 +59,9 @@
</modules>
<scm>
- <connection>scm:svn:https://svn.codelutin.com/coser/trunk</connection>
- <developerConnection>scm:svn:https://svn.codelutin.com/coser/trunk</developerConnection>
- <url>https://forge.codelutin.com/repositories/browse/coser/trunk</url>
+ <connection>scm:svn:https://svn.codelutin.com/coser/tags/coser-1.5-alpha-1</connection>
+ <developerConnection>scm:svn:https://svn.codelutin.com/coser/tags/coser-1.5-alpha-1</developerConnection>
+ <url>https://forge.codelutin.com/repositories/browse/coser/tags/coser-1.5-alpha-1</url>
</scm>
<distributionManagement>
<site>
1
0
Author: tchemit
Date: 2014-03-17 17:24:01 +0100 (Mon, 17 Mar 2014)
New Revision: 1153
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1153
Log:
fixes #3545 (nuiton-web)
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-03-17 16:16:39 UTC (rev 1152)
+++ trunk/pom.xml 2014-03-17 16:24:01 UTC (rev 1153)
@@ -147,7 +147,7 @@
<dependency>
<groupId>org.nuiton.web</groupId>
<artifactId>nuiton-struts2</artifactId>
- <version>1.2</version>
+ <version>1.16</version>
</dependency>
<dependency>
1
0
Author: tchemit
Date: 2014-03-17 17:16:39 +0100 (Mon, 17 Mar 2014)
New Revision: 1152
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1152
Log:
fixes #3545 (nuiton-web)
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-03-17 16:10:45 UTC (rev 1151)
+++ trunk/pom.xml 2014-03-17 16:16:39 UTC (rev 1152)
@@ -147,7 +147,7 @@
<dependency>
<groupId>org.nuiton.web</groupId>
<artifactId>nuiton-struts2</artifactId>
- <version>1.15-SNAPSHOT</version>
+ <version>1.2</version>
</dependency>
<dependency>
1
0
Author: tchemit
Date: 2014-03-17 17:10:45 +0100 (Mon, 17 Mar 2014)
New Revision: 1151
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1151
Log:
fixes #3545 (jaxx + nuiton-matrix)
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-03-17 15:22:52 UTC (rev 1150)
+++ trunk/pom.xml 2014-03-17 16:10:45 UTC (rev 1151)
@@ -84,9 +84,9 @@
<coserI18nBundle>coser-i18n</coserI18nBundle>
<!-- Versions -->
- <jaxxVersion>2.8.2-SNAPSHOT</jaxxVersion>
+ <jaxxVersion>2.8.2</jaxxVersion>
<nuitonI18nVersion>3.0</nuitonI18nVersion>
- <nuitonMatrixVersion>2.4-SNAPSHOT</nuitonMatrixVersion>
+ <nuitonMatrixVersion>2.3.3</nuitonMatrixVersion>
<struts.version>2.3.16.1</struts.version>
<nuitonReportPluginVersion>3.0-rc-1</nuitonReportPluginVersion>
1
0
r1150 - in trunk/coser-business/src: main/java/fr/ifremer/coser/bean test/java/fr/ifremer/coser/bean
by tchemit@users.forge.codelutin.com 17 Mar '14
by tchemit@users.forge.codelutin.com 17 Mar '14
17 Mar '14
Author: tchemit
Date: 2014-03-17 16:22:52 +0100 (Mon, 17 Mar 2014)
New Revision: 1150
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1150
Log:
add source property in echobase project
Added:
trunk/coser-business/src/test/java/fr/ifremer/coser/bean/EchoBaseProjectTest.java
Modified:
trunk/coser-business/src/main/java/fr/ifremer/coser/bean/EchoBaseProject.java
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/bean/EchoBaseProject.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/bean/EchoBaseProject.java 2014-03-17 09:57:34 UTC (rev 1149)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/bean/EchoBaseProject.java 2014-03-17 15:22:52 UTC (rev 1150)
@@ -26,9 +26,7 @@
import com.google.common.base.Function;
import com.google.common.io.Files;
import org.apache.commons.io.IOUtils;
-import org.apache.commons.io.filefilter.OrFileFilter;
-import org.apache.commons.io.filefilter.PrefixFileFilter;
-import org.apache.commons.io.filefilter.SuffixFileFilter;
+import org.apache.commons.io.filefilter.RegexFileFilter;
import org.apache.commons.lang3.StringUtils;
import java.io.File;
@@ -158,6 +156,10 @@
return new File(basedir, "maps");
}
+ public File getRawDataDirectory() {
+ return new File(basedir, "source");
+ }
+
/**
* Load a project from his basedir.
*
@@ -209,7 +211,7 @@
if (zoneName != null) {
props.setProperty("project.zoneName", zoneName);
}
- if (surveyName!= null) {
+ if (surveyName != null) {
props.setProperty("project.surveyName", surveyName);
}
if (comment != null) {
@@ -250,9 +252,7 @@
}
public static FilenameFilter newMapSpeciesFilenameFilter(String surveyName) {
- OrFileFilter result = new OrFileFilter();
- result.addFileFilter(new PrefixFileFilter(surveyName + "_"));
- result.addFileFilter(new SuffixFileFilter(".png"));
+ RegexFileFilter result = new RegexFileFilter("^" + surveyName + "_[^_]+?\\.png");
return result;
}
Added: trunk/coser-business/src/test/java/fr/ifremer/coser/bean/EchoBaseProjectTest.java
===================================================================
--- trunk/coser-business/src/test/java/fr/ifremer/coser/bean/EchoBaseProjectTest.java (rev 0)
+++ trunk/coser-business/src/test/java/fr/ifremer/coser/bean/EchoBaseProjectTest.java 2014-03-17 15:22:52 UTC (rev 1150)
@@ -0,0 +1,48 @@
+package fr.ifremer.coser.bean;
+
+/*
+ * #%L
+ * Coser :: Business
+ * %%
+ * Copyright (C) 2010 - 2014 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.io.File;
+import java.io.FilenameFilter;
+
+/**
+ * Created on 3/17/14.
+ *
+ * @author Tony Chemit <chemit(a)codelutin.com>
+ * @since 1.5
+ */
+public class EchoBaseProjectTest {
+
+ @Test
+ public void newMapSpeciesFilenameFilter() {
+
+ FilenameFilter filter = EchoBaseProject.newMapSpeciesFilenameFilter("survey");
+ Assert.assertFalse(filter.accept(new File(""), "survey"));
+ Assert.assertFalse(filter.accept(new File(""), "survey.png"));
+ Assert.assertFalse(filter.accept(new File(""), "survey_SPECIES_BAD.png"));
+ Assert.assertTrue(filter.accept(new File(""), "survey_SPECIES.png"));
+ }
+}
Property changes on: trunk/coser-business/src/test/java/fr/ifremer/coser/bean/EchoBaseProjectTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
1
0
Author: tchemit
Date: 2014-03-17 10:57:34 +0100 (Mon, 17 Mar 2014)
New Revision: 1149
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1149
Log:
fix javassist dependencies
Modified:
trunk/coser-business/pom.xml
trunk/pom.xml
Modified: trunk/coser-business/pom.xml
===================================================================
--- trunk/coser-business/pom.xml 2014-03-16 19:00:12 UTC (rev 1148)
+++ trunk/coser-business/pom.xml 2014-03-17 09:57:34 UTC (rev 1149)
@@ -98,7 +98,7 @@
<artifactId>xwork-core</artifactId>
</dependency>
<dependency>
- <groupId>javassist</groupId>
+ <groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
</dependency>
<dependency>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2014-03-16 19:00:12 UTC (rev 1148)
+++ trunk/pom.xml 2014-03-17 09:57:34 UTC (rev 1149)
@@ -228,6 +228,12 @@
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>${struts.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javassist</groupId>
+ <artifactId>javassist</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -246,12 +252,18 @@
<groupId>org.apache.struts.xwork</groupId>
<artifactId>xwork-core</artifactId>
<version>${struts.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javassist</groupId>
+ <artifactId>javassist</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
- <groupId>javassist</groupId>
+ <groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
- <version>3.12.1.GA</version>
+ <version>3.18.1-GA</version>
<scope>runtime</scope>
</dependency>
1
0
16 Mar '14
Author: tchemit
Date: 2014-03-16 20:00:12 +0100 (Sun, 16 Mar 2014)
New Revision: 1148
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1148
Log:
refs #4664 extract is working for legacy results
Modified:
trunk/coser-business/src/main/java/fr/ifremer/coser/result/CoserRequestExecutor.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/DefaultCoserRequestContext.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/EchoBasePredicates.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/AbstractEchoBaseCommand.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/ExtractRawDataAndResultsCommand.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/LegacyPredicates.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/AbstractLegacyCommand.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/ExtractRawDataAndResultsCommand.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/DeleteResultsRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/ExtractRawDataAndResultsRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForExtractRawDataAndResultsRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForPopulationIndicatorResultRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForExtractRawDataAndResultsRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForPopulationIndicatorResultRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesListForCommunityIndicatorResultRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetZonesForExtractRawDataAndResultsRequest.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/result/ExtractRawDataAndResultsResult.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Extracts.java
trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Reports.java
trunk/coser-web/src/main/java/fr/ifremer/coser/web/ServiceHelper.java
trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/search/ExtractAction.java
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/CoserRequestExecutor.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/CoserRequestExecutor.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/CoserRequestExecutor.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -27,6 +27,7 @@
import fr.ifremer.coser.CoserApplicationContext;
import fr.ifremer.coser.CoserTechnicalException;
import fr.ifremer.coser.result.repository.ResultRepository;
+import fr.ifremer.coser.result.request.DeleteResultsRequest;
import fr.ifremer.coser.result.request.ExtractRawDataAndResultsRequest;
import fr.ifremer.coser.result.result.FileResult;
import org.apache.commons.collections4.CollectionUtils;
@@ -108,7 +109,7 @@
public CoserResult executeUnique(CoserRequestContext context, CoserRequest request) {
Preconditions.checkNotNull(request);
- Preconditions.checkArgument(request.isFilled());
+ Preconditions.checkArgument(request.isFilled(), "Request " + request + " is not filled.");
List<ResultRepository> repositories = getMatchingRepositories(context, request);
if (CollectionUtils.isEmpty(repositories)) {
@@ -126,6 +127,16 @@
return result;
}
+ public void deleteResults(CoserRequestContext context,
+ DeleteResultsRequest request) {
+
+ // do delete results (don't care about result)
+ executeAll(context, request);
+
+ // reload projects
+ repositoryProvider.resetRepositories();
+ }
+
/**
* Execute the given {@code request} on any matching result repository.
* <p/>
@@ -138,14 +149,11 @@
public List<CoserResult> executeAll(CoserRequestContext context, CoserRequest request) {
Preconditions.checkNotNull(request);
- Preconditions.checkArgument(request.isFilled());
+ Preconditions.checkArgument(request.isFilled(), "Request " + request + " is not filled.");
List<CoserResult> result = Lists.newArrayList();
List<ResultRepository> repositories = getMatchingRepositories(context, request);
- if (CollectionUtils.isEmpty(repositories)) {
- throw new NoResultRepositoryFoundException("No result repository matching request", request);
- }
for (ResultRepository repository : repositories) {
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/DefaultCoserRequestContext.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/DefaultCoserRequestContext.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/DefaultCoserRequestContext.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -30,6 +30,7 @@
import fr.ifremer.coser.result.util.Charts;
import fr.ifremer.coser.result.util.Extracts;
import fr.ifremer.coser.result.util.Reports;
+import org.nuiton.util.FileUtil;
import java.io.File;
import java.io.IOException;
@@ -93,7 +94,7 @@
public File getTemporaryDirectory() {
if (temporaryDirectory == null) {
try {
- temporaryDirectory = File.createTempFile("coser-", "");
+ temporaryDirectory = FileUtil.createTempDirectory("coser-", "");
} catch (IOException e) {
throw new CoserTechnicalException("Could not create temporary directory.", e);
}
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/EchoBasePredicates.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/EchoBasePredicates.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/EchoBasePredicates.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -22,6 +22,7 @@
* #L%
*/
+import com.google.common.base.Preconditions;
import com.google.common.base.Predicate;
import com.google.common.collect.Lists;
@@ -76,6 +77,7 @@
private final List<String> species;
CommunitySpeciesPredicate(List<String> species) {
+ Preconditions.checkNotNull(species, "Species can not be null");
this.species = species;
}
@@ -92,6 +94,7 @@
private final List<String> indicator;
CommunityIndicatorPredicate(List<String> indicator) {
+ Preconditions.checkNotNull(indicator, "Indicators can not be null");
this.indicator = indicator;
}
@@ -108,6 +111,7 @@
private final List<String> species;
PopulationSpeciesPredicate(List<String> species) {
+ Preconditions.checkNotNull(species, "Species can not be null");
this.species = species;
}
@@ -124,6 +128,7 @@
private final List<String> indicator;
PopulationIndicatorPredicate(List<String> indicator) {
+ Preconditions.checkNotNull(indicator, "Indicators can not be null");
this.indicator = indicator;
}
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/AbstractEchoBaseCommand.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/AbstractEchoBaseCommand.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/AbstractEchoBaseCommand.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -118,7 +118,7 @@
return result;
}
- protected ExtractRawDataAndResultsResult newExtractRawDataAndResultsResult(MultiKeyMap<String, File> pdfMaps, Map<String, Pair<File, String>> pdfCharts) {
+ protected ExtractRawDataAndResultsResult newExtractRawDataAndResultsResult(MultiKeyMap<String, File> pdfMaps, MultiKeyMap<String, Pair<File, String>> pdfCharts) {
ExtractRawDataAndResultsResult result = new ExtractRawDataAndResultsResult(
repository.getId(), pdfMaps, pdfCharts);
return result;
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/ExtractRawDataAndResultsCommand.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/ExtractRawDataAndResultsCommand.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/echobase/command/ExtractRawDataAndResultsCommand.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -25,7 +25,6 @@
import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
import fr.ifremer.coser.CoserTechnicalException;
import fr.ifremer.coser.bean.SpeciesMap;
import fr.ifremer.coser.result.repository.echobase.EchoBasePredicates;
@@ -67,9 +66,10 @@
//TODO Remove false when will be ok...
boolean result = false && repository.matchExtractTypeList(request) &&
repository.matchZone(request);
- if (result) {
+ if (result && repository.isIndicatorsResult()) {
- if (request.getExtractTypeList().contains(DataType.POPULATION)) {
+ if (request.getExtractTypeList().contains(DataType.POPULATION) &&
+ CollectionUtils.isNotEmpty(request.getPopulationIndicatorList())) {
// match population indicator?
Predicate<String[]> predicate = Predicates.and(
@@ -80,7 +80,8 @@
if (!result) {
- if (request.getExtractTypeList().contains(DataType.COMMUNITY)) {
+ if (request.getExtractTypeList().contains(DataType.COMMUNITY) &&
+ CollectionUtils.isNotEmpty(request.getCommunityIndicatorList())) {
// match community indicator?
Predicate<String[]> predicate = Predicates.and(
@@ -104,7 +105,7 @@
File extractDirectory = request.getExtractDirectory();
// les sources se retrouve dans le zip a cote du pdf
- if (extractTypeList.contains(DataType.SOURCE)) {
+ if (extractTypeList.contains(DataType.SOURCE) && repository.isDataResult()) {
if (log.isDebugEnabled()) {
log.debug("Extracting sources");
}
@@ -114,31 +115,38 @@
// les cartes doivent se retrouver dans le pdf
MultiKeyMap<String, File> pdfMaps = null;
- if (extractTypeList.contains(DataType.MAP)) {
+ if (extractTypeList.contains(DataType.MAP) && repository.isMapsResult()) {
if (log.isDebugEnabled()) {
log.debug("Extracting maps");
}
- pdfMaps = new MultiKeyMap<String, File>();
- SpeciesMap speciesMap = repository.getSpeciesMap();
- String zone = repository.getZone();
- for (String species : speciesList) {
- File mapFile = repository.getMapSpeciesFile(species);
- String speciesName = speciesMap.getSpeciesName(species);
- pdfMaps.put(zone, speciesName, mapFile);
- }
+ pdfMaps = extractMaps(speciesList);
}
// les graphiques sont également dans le pdf
- Map<String, Pair<File, String>> pdfCharts = null;
- if (CollectionUtils.isNotEmpty(communityIndicatorList) ||
- CollectionUtils.isNotEmpty(populationIndicatorList)) {
+ MultiKeyMap<String, Pair<File, String>> pdfCharts = new MultiKeyMap<String, Pair<File, String>>();
+
+ if (CollectionUtils.isNotEmpty(communityIndicatorList) && repository.isIndicatorsResult()) {
if (log.isDebugEnabled()) {
- log.debug("Extracting charts");
+ log.debug("Extracting community charts");
}
- pdfCharts = extractCharts(speciesList,
- communityIndicatorList,
- populationIndicatorList);
+
+ MultiKeyMap<String, Pair<File, String>> map = extractCommunityResults(communityIndicatorList,
+ repository.getZone(),
+ 650,
+ 430);
+ pdfCharts.putAll(map);
}
+ if (CollectionUtils.isNotEmpty(populationIndicatorList) && repository.isIndicatorsResult()) {
+ if (log.isDebugEnabled()) {
+ log.debug("Extracting population charts");
+ }
+ MultiKeyMap<String, Pair<File, String>> map = extractPopulationResults(speciesList,
+ populationIndicatorList,
+ repository.getZone(),
+ 650,
+ 430);
+ pdfCharts.putAll(map);
+ }
ExtractRawDataAndResultsResult result = newExtractRawDataAndResultsResult(pdfMaps, pdfCharts);
return result;
}
@@ -162,36 +170,22 @@
}
/**
- * @param species species to extract in population indicators
- * @param communityIndicators community indicators to extract
- * @param populationIndicators population indicators to extract
- * @return charts files and their data with key: zone , indicator [- speciesName for population])
- * and value: (graphFile, graphData)
+ * Extract all maps for matchings species.
+ *
+ * @param speciesList list of species to extract
+ * @return map of map files indexed by zone - speciesName
*/
- protected Map<String, Pair<File, String>> extractCharts(List<String> species,
- List<String> communityIndicators,
- List<String> populationIndicators) {
-
+ protected MultiKeyMap<String, File> extractMaps(List<String> speciesList) {
+ MultiKeyMap<String, File> pdfMaps;
+ pdfMaps = new MultiKeyMap<String, File>();
+ SpeciesMap speciesMap = repository.getSpeciesMap();
String zone = repository.getZone();
-
- Map<String, Pair<File, String>> result = Maps.newLinkedHashMap();
-
- if (CollectionUtils.isNotEmpty(communityIndicators)) {
- result.putAll(extractCommunityResults(communityIndicators,
- zone,
- 650,
- 430));
+ for (String species : speciesList) {
+ File mapFile = repository.getMapSpeciesFile(species);
+ String speciesName = speciesMap.getSpeciesName(species);
+ pdfMaps.put(zone, speciesName, mapFile);
}
-
- if (CollectionUtils.isNotEmpty(populationIndicators)) {
- result.putAll(extractPopulationResults(species,
- populationIndicators,
- zone,
- 650,
- 430));
- }
-
- return result;
+ return pdfMaps;
}
/**
@@ -203,10 +197,10 @@
* @param height graph height
* @return maps of generated graph image (temp file) and data indexed by natural key (indicator - species)
*/
- public Map<String, Pair<File, String>> extractCommunityResults(List<String> selectedIndicators,
- String zone,
- int width,
- int height) {
+ public MultiKeyMap<String, Pair<File, String>> extractCommunityResults(List<String> selectedIndicators,
+ String zone,
+ int width,
+ int height) {
// Get exact list of indicators usable for this result
List<String> indicators = Lists.newArrayList(getCommunityIndicators());
@@ -228,7 +222,7 @@
}
});
- Map<String, Pair<File, String>> result = Maps.newHashMap();
+ MultiKeyMap<String, Pair<File, String>> result = new MultiKeyMap<String, Pair<File, String>>();
for (String indicator : indicators) {
@@ -254,7 +248,7 @@
width,
height);
- result.put(indicator, Pair.of(chartFile, rawDataText));
+ result.put(zone, indicator, Pair.of(chartFile, rawDataText));
}
return result;
}
@@ -269,17 +263,17 @@
* @param height graph height
* @return maps of generated graph image (temp file) and data indexed by natural key (indicator - species)
*/
- public Map<String, Pair<File, String>> extractPopulationResults(List<String> selectedSpecies,
- List<String> selectedIndicators,
- String zone,
- int width,
- int height) {
+ public MultiKeyMap<String, Pair<File, String>> extractPopulationResults(List<String> selectedSpecies,
+ List<String> selectedIndicators,
+ String zone,
+ int width,
+ int height) {
// Get exact list of species to use
List<String> speciesList = Lists.newArrayList(getPopulationSpecies());
speciesList.retainAll(selectedSpecies);
- Map<String, Pair<File, String>> result = Maps.newHashMap();
+ MultiKeyMap<String, Pair<File, String>> result = new MultiKeyMap<String, Pair<File, String>>();
for (String species : speciesList) {
@@ -309,7 +303,7 @@
width,
height);
- result.put(indicator + "-" + species, Pair.of(chartFile, rawDataText));
+ result.put(zone, indicator + "-" + species, Pair.of(chartFile, rawDataText));
}
}
return result;
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/LegacyPredicates.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/LegacyPredicates.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/LegacyPredicates.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -22,6 +22,7 @@
* #L%
*/
+import com.google.common.base.Preconditions;
import com.google.common.base.Predicate;
import com.google.common.collect.Lists;
@@ -80,6 +81,7 @@
protected final String speciesListLetter;
SpeciesListPredicate(String speciesList) {
+ Preconditions.checkNotNull(speciesList, "SpeciesList can not be null");
this.speciesListLetter = String.valueOf(speciesList.charAt(0));
}
@@ -96,6 +98,7 @@
private final List<String> speciesList;
CommunitySpeciesListPredicate(List<String> speciesList) {
+ Preconditions.checkNotNull(speciesList, "SpeciesList can not be null");
this.speciesList = speciesList;
}
@@ -113,6 +116,7 @@
private final List<String> species;
CommunitySpeciesPredicate(List<String> species) {
+ Preconditions.checkNotNull(species, "Species can not be null");
this.species = species;
}
@@ -130,6 +134,7 @@
private final List<String> indicator;
CommunityIndicatorPredicate(List<String> indicator) {
+ Preconditions.checkNotNull(indicator, "Indicators can not be null");
this.indicator = indicator;
}
@@ -146,6 +151,7 @@
private final List<String> species;
PopulationSpeciesPredicate(List<String> species) {
+ Preconditions.checkNotNull(species, "Species can not be null");
this.species = species;
}
@@ -162,6 +168,7 @@
private final List<String> indicator;
PopulationIndicatorPredicate(List<String> indicator) {
+ Preconditions.checkNotNull(indicator, "Indicators can not be null");
this.indicator = indicator;
}
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/AbstractLegacyCommand.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/AbstractLegacyCommand.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/AbstractLegacyCommand.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -159,7 +159,7 @@
return result;
}
- protected ExtractRawDataAndResultsResult newExtractRawDataAndResultsResult(MultiKeyMap<String, File> pdfMaps, Map<String, Pair<File, String>> pdfCharts) {
+ protected ExtractRawDataAndResultsResult newExtractRawDataAndResultsResult(MultiKeyMap<String, File> pdfMaps, MultiKeyMap<String, Pair<File, String>> pdfCharts) {
ExtractRawDataAndResultsResult result = new ExtractRawDataAndResultsResult(
repository.getId(), pdfMaps, pdfCharts);
return result;
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/ExtractRawDataAndResultsCommand.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/ExtractRawDataAndResultsCommand.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/repository/legacy/command/ExtractRawDataAndResultsCommand.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -25,7 +25,6 @@
import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
import fr.ifremer.coser.bean.SpeciesMap;
import fr.ifremer.coser.result.repository.legacy.LegacyPredicates;
import fr.ifremer.coser.result.request.ExtractRawDataAndResultsRequest;
@@ -62,9 +61,13 @@
public boolean accept(ExtractRawDataAndResultsRequest request) {
boolean result = repository.matchExtractTypeList(request) &&
repository.matchZone(request);
- if (result) {
+ if (result && repository.isMapsResult()) {
+ //FIXME Should we do something here? check species list...
+ }
+ if (result && repository.isIndicatorsResult()) {
- if (request.getExtractTypeList().contains(DataType.POPULATION)) {
+ if (request.getExtractTypeList().contains(DataType.POPULATION) &&
+ CollectionUtils.isNotEmpty(request.getPopulationIndicatorList())) {
// match population indicator?
Predicate<String[]> predicate = Predicates.and(
@@ -75,7 +78,8 @@
if (!result) {
- if (request.getExtractTypeList().contains(DataType.COMMUNITY)) {
+ if (request.getExtractTypeList().contains(DataType.COMMUNITY) &&
+ CollectionUtils.isNotEmpty(request.getCommunityIndicatorList())) {
// match community indicator?
Predicate<String[]> predicate = Predicates.and(
@@ -99,7 +103,7 @@
File extractDirectory = request.getExtractDirectory();
// les sources se retrouve dans le zip a cote du pdf
- if (extractTypeList.contains(DataType.SOURCE)) {
+ if (extractTypeList.contains(DataType.SOURCE) && repository.isDataResult()) {
if (log.isDebugEnabled()) {
log.debug("Extracting sources");
}
@@ -109,31 +113,38 @@
// les cartes doivent se retrouver dans le pdf
MultiKeyMap<String, File> pdfMaps = null;
- if (extractTypeList.contains(DataType.MAP)) {
+ if (extractTypeList.contains(DataType.MAP) && repository.isMapsResult()) {
if (log.isDebugEnabled()) {
log.debug("Extracting maps");
}
- pdfMaps = new MultiKeyMap<String, File>();
- SpeciesMap speciesMap = repository.getSpeciesMap();
- String zone = repository.getZone();
- for (String species : speciesList) {
- File mapFile = repository.getMapSpeciesFile(species);
- String speciesName = speciesMap.getSpeciesName(species);
- pdfMaps.put(zone, speciesName, mapFile);
- }
+ pdfMaps = extractMaps(speciesList);
}
// les graphiques sont également dans le pdf
- Map<String, Pair<File, String>> pdfCharts = null;
- if (CollectionUtils.isNotEmpty(communityIndicatorList) ||
- CollectionUtils.isNotEmpty(populationIndicatorList)) {
+ MultiKeyMap<String, Pair<File, String>> pdfCharts = new MultiKeyMap<String, Pair<File, String>>();
+
+ if (CollectionUtils.isNotEmpty(communityIndicatorList) && repository.isIndicatorsResult()) {
if (log.isDebugEnabled()) {
- log.debug("Extracting charts");
+ log.debug("Extracting community charts");
}
- pdfCharts = extractCharts(speciesList,
- communityIndicatorList,
- populationIndicatorList);
+
+ MultiKeyMap<String, Pair<File, String>> map = extractCommunityResults(communityIndicatorList,
+ repository.getZone(),
+ 650,
+ 430);
+ pdfCharts.putAll(map);
}
+ if (CollectionUtils.isNotEmpty(populationIndicatorList) && repository.isIndicatorsResult()) {
+ if (log.isDebugEnabled()) {
+ log.debug("Extracting population charts");
+ }
+ MultiKeyMap<String, Pair<File, String>> map = extractPopulationResults(speciesList,
+ populationIndicatorList,
+ repository.getZone(),
+ 650,
+ 430);
+ pdfCharts.putAll(map);
+ }
ExtractRawDataAndResultsResult result = newExtractRawDataAndResultsResult(pdfMaps, pdfCharts);
return result;
}
@@ -155,36 +166,22 @@
}
/**
- * @param species species to extract in population indicators
- * @param communityIndicators community indicators to extract
- * @param populationIndicators population indicators to extract
- * @return charts files and their data with key: zone , indicator [- speciesName for population])
- * and value: (graphFile, graphData)
+ * Extract all maps for matchings species.
+ *
+ * @param speciesList list of species to extract
+ * @return map of map files indexed by zone - speciesName
*/
- protected Map<String, Pair<File, String>> extractCharts(List<String> species,
- List<String> communityIndicators,
- List<String> populationIndicators) {
-
+ protected MultiKeyMap<String, File> extractMaps(List<String> speciesList) {
+ MultiKeyMap<String, File> pdfMaps;
+ pdfMaps = new MultiKeyMap<String, File>();
+ SpeciesMap speciesMap = repository.getSpeciesMap();
String zone = repository.getZone();
-
- Map<String, Pair<File, String>> result = Maps.newLinkedHashMap();
-
- if (CollectionUtils.isNotEmpty(communityIndicators)) {
- result.putAll(extractCommunityResults(communityIndicators,
- zone,
- 650,
- 430));
+ for (String species : speciesList) {
+ File mapFile = repository.getMapSpeciesFile(species);
+ String speciesName = speciesMap.getSpeciesName(species);
+ pdfMaps.put(zone, speciesName, mapFile);
}
-
- if (CollectionUtils.isNotEmpty(populationIndicators)) {
- result.putAll(extractPopulationResults(species,
- populationIndicators,
- zone,
- 650,
- 430));
- }
-
- return result;
+ return pdfMaps;
}
/**
@@ -196,10 +193,10 @@
* @param height graph height
* @return maps of generated graph image (temp file) and data indexed by natural key (indicator - species)
*/
- public Map<String, Pair<File, String>> extractCommunityResults(List<String> selectedIndicators,
- String zone,
- int width,
- int height) {
+ public MultiKeyMap<String, Pair<File, String>> extractCommunityResults(List<String> selectedIndicators,
+ String zone,
+ int width,
+ int height) {
// Get exact list of indicators usable for this result
List<String> indicators = Lists.newArrayList(getCommunityIndicators());
@@ -221,7 +218,7 @@
}
});
- Map<String, Pair<File, String>> result = Maps.newHashMap();
+ MultiKeyMap<String, Pair<File, String>> result = new MultiKeyMap<String, Pair<File, String>>();
for (String indicator : indicators) {
@@ -247,7 +244,7 @@
width,
height);
- result.put(indicator, Pair.of(chartFile, rawDataText));
+ result.put(zone, indicator, Pair.of(chartFile, rawDataText));
}
return result;
}
@@ -262,17 +259,17 @@
* @param height graph height
* @return maps of generated graph image (temp file) and data indexed by natural key (indicator - species)
*/
- public Map<String, Pair<File, String>> extractPopulationResults(List<String> selectedSpecies,
- List<String> selectedIndicators,
- String zone,
- int width,
- int height) {
+ public MultiKeyMap<String, Pair<File, String>> extractPopulationResults(List<String> selectedSpecies,
+ List<String> selectedIndicators,
+ String zone,
+ int width,
+ int height) {
// Get exact list of species to use
List<String> speciesList = Lists.newArrayList(getPopulationSpecies());
speciesList.retainAll(selectedSpecies);
- Map<String, Pair<File, String>> result = Maps.newHashMap();
+ MultiKeyMap<String, Pair<File, String>> result = new MultiKeyMap<String, Pair<File, String>>();
for (String species : speciesList) {
@@ -302,7 +299,7 @@
width,
height);
- result.put(indicator + "-" + species, Pair.of(chartFile, rawDataText));
+ result.put(zone, indicator + "-" + species, Pair.of(chartFile, rawDataText));
}
}
return result;
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/DeleteResultsRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/DeleteResultsRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/DeleteResultsRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -62,8 +62,8 @@
@Override
public boolean isFilled() {
return !(resultRepositoryType == null ||
- resultType == null ||
- CollectionUtils.isEmpty(zoneList));
+ resultType == null ||
+ CollectionUtils.isEmpty(zoneList));
}
@Override
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/ExtractRawDataAndResultsRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/ExtractRawDataAndResultsRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/ExtractRawDataAndResultsRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -59,12 +59,12 @@
@Override
public boolean isFilled() {
- return !(
- CollectionUtils.isEmpty(extractTypeList) ||
- CollectionUtils.isEmpty(zoneList) ||
- CollectionUtils.isEmpty(populationIndicatorList) ||
- CollectionUtils.isEmpty(communityIndicatorList) ||
- CollectionUtils.isEmpty(speciesList));
+ return !(CollectionUtils.isEmpty(extractTypeList) ||
+ CollectionUtils.isEmpty(zoneList) ||
+ CollectionUtils.isEmpty(speciesList) ||
+ (CollectionUtils.isEmpty(populationIndicatorList) &&
+ CollectionUtils.isEmpty(communityIndicatorList))
+ );
}
@Override
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForExtractRawDataAndResultsRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForExtractRawDataAndResultsRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForExtractRawDataAndResultsRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -43,19 +43,12 @@
protected List<String> zoneList;
- protected List<String> populationIndicatorList;
-
- protected List<String> communityIndicatorList;
-
protected List<DataType> extractTypeList;
@Override
public boolean isFilled() {
- return !(
- CollectionUtils.isEmpty(extractTypeList) ||
- CollectionUtils.isEmpty(zoneList) ||
- CollectionUtils.isEmpty(populationIndicatorList) ||
- CollectionUtils.isEmpty(communityIndicatorList));
+ return !(CollectionUtils.isEmpty(extractTypeList) ||
+ CollectionUtils.isEmpty(zoneList));
}
@Override
@@ -79,22 +72,4 @@
Preconditions.checkArgument(CollectionUtils.isNotEmpty(zoneList));
this.zoneList = zoneList;
}
-
- public List<String> getPopulationIndicatorList() {
- return populationIndicatorList;
- }
-
- public void setPopulationIndicatorList(List<String> populationIndicatorList) {
- Preconditions.checkArgument(CollectionUtils.isNotEmpty(populationIndicatorList));
- this.populationIndicatorList = populationIndicatorList;
- }
-
- public List<String> getCommunityIndicatorList() {
- return communityIndicatorList;
- }
-
- public void setCommunityIndicatorList(List<String> communityIndicatorList) {
- Preconditions.checkArgument(CollectionUtils.isNotEmpty(communityIndicatorList));
- this.communityIndicatorList = communityIndicatorList;
- }
}
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForPopulationIndicatorResultRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForPopulationIndicatorResultRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetIndicatorsForPopulationIndicatorResultRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -45,9 +45,7 @@
@Override
public boolean isFilled() {
- return !(facade == null ||
- zone == null ||
- species == null);
+ return !(facade == null || zone == null || species == null);
}
@Override
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForExtractRawDataAndResultsRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForExtractRawDataAndResultsRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForExtractRawDataAndResultsRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -47,9 +47,8 @@
@Override
public boolean isFilled() {
- return !(
- CollectionUtils.isEmpty(extractTypeList) ||
- CollectionUtils.isEmpty(zoneList));
+ return !(CollectionUtils.isEmpty(extractTypeList) ||
+ CollectionUtils.isEmpty(zoneList));
}
@Override
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForPopulationIndicatorResultRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForPopulationIndicatorResultRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesForPopulationIndicatorResultRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -43,9 +43,7 @@
@Override
public boolean isFilled() {
- return !(
- facade == null ||
- zone == null);
+ return !(facade == null || zone == null);
}
@Override
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesListForCommunityIndicatorResultRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesListForCommunityIndicatorResultRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetSpeciesListForCommunityIndicatorResultRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -45,10 +45,7 @@
@Override
public boolean isFilled() {
- return !(
- facade == null ||
- zone == null ||
- indicator == null);
+ return !(facade == null || zone == null || indicator == null);
}
@Override
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetZonesForExtractRawDataAndResultsRequest.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetZonesForExtractRawDataAndResultsRequest.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/request/GetZonesForExtractRawDataAndResultsRequest.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -22,12 +22,8 @@
* #L%
*/
-import com.google.common.base.Preconditions;
import fr.ifremer.coser.result.CoserRequest;
-import org.apache.commons.collections4.CollectionUtils;
-import java.util.List;
-
/**
* Request to extract data.
* <p/>
@@ -36,26 +32,12 @@
* @author Tony Chemit <chemit(a)codelutin.com>
* @since 1.5
*/
-public class GetZonesForExtractRawDataAndResultsRequest implements CoserRequest, CoserRequestZoneListAware {
+public class GetZonesForExtractRawDataAndResultsRequest implements CoserRequest {
private static final long serialVersionUID = 1L;
- protected List<String> zoneList;
-
@Override
public boolean isFilled() {
- return !(CollectionUtils.isEmpty(zoneList));
+ return true;
}
-
- @Override
- public List<String> getZoneList() {
- return zoneList;
- }
-
- @Override
- public void setZoneList(List<String> zoneList) {
- Preconditions.checkArgument(CollectionUtils.isNotEmpty(zoneList));
- this.zoneList = zoneList;
- }
-
}
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/result/ExtractRawDataAndResultsResult.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/result/ExtractRawDataAndResultsResult.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/result/ExtractRawDataAndResultsResult.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -27,7 +27,6 @@
import org.apache.commons.lang3.tuple.Pair;
import java.io.File;
-import java.util.Map;
/**
* Created on 3/15/14.
@@ -43,11 +42,11 @@
protected final MultiKeyMap<String, File> pdfMaps;
- protected final Map<String, Pair<File, String>> pdfCharts;
+ protected final MultiKeyMap<String, Pair<File, String>> pdfCharts;
public ExtractRawDataAndResultsResult(String source,
MultiKeyMap<String, File> pdfMaps,
- Map<String, Pair<File, String>> pdfCharts) {
+ MultiKeyMap<String, Pair<File, String>> pdfCharts) {
this.source = source;
this.pdfMaps = pdfMaps;
this.pdfCharts = pdfCharts;
@@ -59,7 +58,7 @@
}
@Override
- public Pair<MultiKeyMap<String, File>, Map<String, Pair<File, String>>> getResult() {
+ public Pair<MultiKeyMap<String, File>, MultiKeyMap<String, Pair<File, String>>> getResult() {
return Pair.of(pdfMaps, pdfCharts);
}
}
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Extracts.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Extracts.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Extracts.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -36,6 +36,7 @@
import java.io.File;
import java.io.IOException;
+import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -61,12 +62,12 @@
// merge all results
MultiKeyMap<String, File> pdfMaps = new MultiKeyMap<String, File>();
- Map<String, Pair<File, String>> pdfCharts = Maps.newHashMap();
+ MultiKeyMap<String, Pair<File, String>> pdfCharts = new MultiKeyMap<String, Pair<File, String>>();
for (ExtractRawDataAndResultsResult result : results) {
- Pair<MultiKeyMap<String, File>, Map<String, Pair<File, String>>> repositoryResult = result.getResult();
+ Pair<MultiKeyMap<String, File>, MultiKeyMap<String, Pair<File, String>>> repositoryResult = result.getResult();
MultiKeyMap<String, File> pdfMap = repositoryResult.getLeft();
- Map<String, Pair<File, String>> pdfChart = repositoryResult.getRight();
+ MultiKeyMap<String, Pair<File, String>> pdfChart = repositoryResult.getRight();
if (MapUtils.isNotEmpty(pdfMap)) {
pdfMaps.putAll(pdfMap);
}
@@ -97,7 +98,8 @@
}
String filename = Reports.getDechargeFilename(locale);
File dechargePDF = new File(extractDirectory, filename);
- reports.generateDechargePDF(dechargePDF, locale, null, null);
+ Date lastDataUpdateDate = context.getConfig().getLastDataUpdateDate();
+ reports.generateDechargePDF(dechargePDF, locale, lastDataUpdateDate, null);
// make zip
if (log.isDebugEnabled()) {
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Reports.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Reports.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/result/util/Reports.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -23,6 +23,9 @@
*/
import com.google.common.base.Preconditions;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Sets;
import com.itextpdf.text.DocumentException;
import fr.ifremer.coser.CoserConstants;
import fr.ifremer.coser.CoserTechnicalException;
@@ -40,6 +43,7 @@
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
+import org.apache.commons.collections4.MapUtils;
import org.apache.commons.collections4.keyvalue.MultiKey;
import org.apache.commons.collections4.map.MultiKeyMap;
import org.apache.commons.io.FileUtils;
@@ -59,16 +63,13 @@
import java.io.OutputStream;
import java.io.StringWriter;
import java.io.Writer;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
-import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.SortedSet;
-import java.util.TreeSet;
import static org.nuiton.i18n.I18n.l;
@@ -141,8 +142,8 @@
// chargement du reftax et des code types especes pour connaitre
// le type des especes de poissons
// parcourt du fichier des types de données
- Map<String, Integer> refTaxSpeciesNumSys = new HashMap<String, Integer>();
- Map<String, String> refTaxSpeciesName = new HashMap<String, String>();
+ Map<String, Integer> refTaxSpeciesNumSys = Maps.newHashMap();
+ Map<String, String> refTaxSpeciesName = Maps.newHashMap();
Iterator<String[]> itReftax = project.getRefTaxSpecies().iterator(true);
while (itReftax.hasNext()) {
String[] tuple = itReftax.next();
@@ -160,7 +161,7 @@
}
// code type / especes
- Map<String, Integer[]> specyTypes = new HashMap<String, Integer[]>();
+ Map<String, Integer[]> specyTypes = Maps.newHashMap();
Iterator<String[]> itTypeSpecies = project.getTypeEspeces().iterator(true);
while (itTypeSpecies.hasNext()) {
// "Types";"Commentaire";"NumSys min";"NumSys max","Code"
@@ -176,11 +177,11 @@
File estComIndFile = new File(resultDirectory, rsufiResult.getEstComIndName());
// donnees intermediare (map liste id > liste des indicateurs)
- Map<String, SortedSet<String>> indicatorMap = new HashMap<String, SortedSet<String>>();
+ Map<String, SortedSet<String>> indicatorMap = Maps.newHashMap();
// le resutat sera une map complexe
// map liste id > liste des especes (nom complet)
- Map<String, SortedSet<String>> speciesMap = new HashMap<String, SortedSet<String>>();
+ Map<String, SortedSet<String>> speciesMap = Maps.newHashMap();
// Campagne Indicateur Liste Strate Annee Estimation EcartType CV
DataStorage dataStorage = DataStorages.load(estComIndFile, CoserConstants.CSV_RESULT_SEPARATOR_CHAR);
@@ -196,7 +197,7 @@
// get indicator list
SortedSet<String> indicatorList = indicatorMap.get(listNumber);
if (indicatorList == null) {
- indicatorList = new TreeSet<String>();
+ indicatorList = Sets.newTreeSet();
indicatorMap.put(listNumber, indicatorList);
}
@@ -223,7 +224,7 @@
}
if (selectionSpeciesList != null) {
- SortedSet<String> speciesList = new TreeSet<String>();
+ SortedSet<String> speciesList = Sets.newTreeSet();
for (String speciesCode : selectionSpeciesList) {
// get species full name
@@ -257,7 +258,7 @@
// render freemarker template
Template mapTemplate = freemarkerConfiguration.getTemplate("metainfo.ftl", locale);
- Map<String, Object> root = new HashMap<String, Object>();
+ Map<String, Object> root = Maps.newHashMap();
root.put("indicatorsMap", indicatorMap);
root.put("speciesMap", speciesMap);
@@ -297,9 +298,17 @@
*
* @param disclamerPdf pdf file to generate
* @param locale generated pdf locale
+ * @param updateDate last update date of results
+ * @param surveyName optional survey name
*/
- public void generateDechargePDF(File disclamerPdf, Locale locale, Date updateDate, String surveyName) {
+ public void generateDechargePDF(File disclamerPdf,
+ Locale locale,
+ Date updateDate,
+ String surveyName) {
+ Preconditions.checkNotNull(disclamerPdf);
+ Preconditions.checkNotNull(locale);
+ Preconditions.checkNotNull(updateDate);
OutputStream os = null;
try {
@@ -317,9 +326,12 @@
// render freemarker template
Template mapTemplate = freemarkerConfiguration.getTemplate("decharge.ftl", locale);
- Map<String, Object> root = new HashMap<String, Object>();
+ Map<String, Object> root = Maps.newHashMap();
root.put("updateDate", updateDate);
- root.put("surveyName", surveyName);
+ // il se peut que pour l'extraction un fichier de décharge ne soit
+ // pas généré pour une campagne en particulier
+ // on passe un nom vide a freemarker
+ root.put("surveyName", surveyName == null ? "" : surveyName);
Writer out = new StringWriter();
mapTemplate.process(root, out);
@@ -361,12 +373,12 @@
public void generateExtractPDF(File directory,
List<String> zones,
MultiKeyMap<String, File> pdfMaps,
- Map<String, Pair<File, String>> pdfCharts,
+ MultiKeyMap<String, Pair<File, String>> pdfCharts,
ZoneMap zoneMap,
Locale locale) {
for (String zone : zones) {
- Collection<File> toDelete = new ArrayList<File>();
+ Collection<File> toDelete = Lists.newArrayList();
OutputStream os = null;
try {
@@ -376,7 +388,7 @@
htmlContent.append("<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />");
htmlContent.append("</head><body>");
- if (pdfMaps != null) {
+ if (MapUtils.isNotEmpty(pdfMaps)) {
for (Map.Entry<MultiKey<? extends String>, File> mapEntry : pdfMaps.entrySet()) {
String zoneId = mapEntry.getKey().getKey(0);
if (zoneId.equals(zone)) {
@@ -392,9 +404,9 @@
}
}
- if (pdfCharts != null) {
- for (Map.Entry<String, Pair<File, String>> chartFileAndData : pdfCharts.entrySet()) {
- String zoneId = chartFileAndData.getKey();
+ if (MapUtils.isNotEmpty(pdfCharts)) {
+ for (MultiKeyMap.Entry<MultiKey<? extends String>, Pair<File, String>> chartFileAndData : pdfCharts.entrySet()) {
+ String zoneId = chartFileAndData.getKey().getKey(0);
if (zoneId.equals(zone)) {
File chartFile = chartFileAndData.getValue().getLeft();
String content = chartFileAndData.getValue().getRight();
Modified: trunk/coser-web/src/main/java/fr/ifremer/coser/web/ServiceHelper.java
===================================================================
--- trunk/coser-web/src/main/java/fr/ifremer/coser/web/ServiceHelper.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-web/src/main/java/fr/ifremer/coser/web/ServiceHelper.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -132,6 +132,16 @@
// --- Result methods -------------------------------------------------- //
// --------------------------------------------------------------------- //
+ public FileResult extractRawDataAndResults(Locale locale,
+ ExtractRawDataAndResultsRequest request) {
+
+ CoserRequestContext context = newRequestContext(locale);
+
+ FileResult result = getRequestExecutor().executeUnique(context, request);
+
+ return result;
+ }
+
public FileResult getFileResult(CoserRequest request) {
CoserRequestContext context = newRequestContext();
@@ -178,29 +188,12 @@
return resultAsMap;
}
- /**
- * Extract raw data and results.
- *
- * @param request extract request
- */
- public FileResult extractResults(ExtractRawDataAndResultsRequest request) {
-
- CoserRequestContext context = newRequestContext();
-
- // Get all extracted data
- FileResult result = getRequestExecutor().executeUnique(context, request);
- return result;
- }
-
public void deleteResults(DeleteResultsRequest request) {
CoserRequestContext context = newRequestContext();
// do delete results (don't care about result)
- getRequestExecutor().executeAll(context, request);
-
- // reload projects
- applicationContext.getRepositoryProvider().resetRepositories();
+ getRequestExecutor().deleteResults(context, request);
}
public void registerNewUploadedResults(String login, File resultFile) {
@@ -249,7 +242,10 @@
}
protected CoserRequestContext newRequestContext() {
- return new DefaultCoserRequestContext(applicationContext,
- action.getLocale());
+ return newRequestContext(action.getLocale());
}
+
+ protected CoserRequestContext newRequestContext(Locale locale) {
+ return new DefaultCoserRequestContext(applicationContext, locale);
+ }
}
Modified: trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/search/ExtractAction.java
===================================================================
--- trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/search/ExtractAction.java 2014-03-16 18:59:34 UTC (rev 1147)
+++ trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/search/ExtractAction.java 2014-03-16 19:00:12 UTC (rev 1148)
@@ -199,6 +199,7 @@
GetSpeciesForExtractRawDataAndResultsRequest speciesRequest =
requestBuilder(GetSpeciesForExtractRawDataAndResultsRequest.class).
addZoneList(selectZones).
+ addExtractTypeList(selectTypes).
toRequest();
species = getService().getMultipleResultAsMap(speciesRequest);
@@ -290,8 +291,7 @@
addPopulationIndicatorList(selectPopIndicators).
toRequest();
- resultFile = getService().getFileResult(request);
-
+ resultFile = getService().extractRawDataAndResults(locale, request);
return SUCCESS;
}
1
0
r1147 - in trunk/coser-web/src/main/webapp: WEB-INF/content/search js
by tchemit@users.forge.codelutin.com 16 Mar '14
by tchemit@users.forge.codelutin.com 16 Mar '14
16 Mar '14
Author: tchemit
Date: 2014-03-16 19:59:34 +0100 (Sun, 16 Mar 2014)
New Revision: 1147
Url: http://forge.codelutin.com/projects/coser/repository/revisions/1147
Log:
fixes #4669
Modified:
trunk/coser-web/src/main/webapp/WEB-INF/content/search/extract-input.jsp
trunk/coser-web/src/main/webapp/js/coser.js
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/search/extract-input.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/search/extract-input.jsp 2014-03-15 15:11:29 UTC (rev 1146)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/search/extract-input.jsp 2014-03-16 18:59:34 UTC (rev 1147)
@@ -24,6 +24,56 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title><s:text name="message.search.extract.title" /></title>
+ <style type="text/css">
+ .select {
+ width:100%;
+ }
+ </style>
+ <script type="text/javascript">
+ <s:if test="!selectZones.empty">
+ var f = function() {
+
+ var valid = $('#selectZones option:selected').length>0;
+ if (valid) {
+ valid = $('#selectTypes option:selected').length >0;
+ }
+ if (valid) {
+ valid = $('#selectSpecies option:selected').length >0;
+ }
+ if (valid) {
+ valid = ($('#selectPopIndicators option:selected').length +
+ $('#selectComIndicators option:selected').length) >0;
+ }
+ var action = $('#submitAction');
+ if (valid) {
+ action.removeAttr('disabled');
+ } else {
+ action.attr('disabled', 'disabled');
+ }
+ };
+ $('select').change(f).trigger( "change" );
+ f();
+ </s:if>
+ <s:else>
+ var f = function() {
+
+ var valid = $('#selectZones option:selected').length>0;
+ if (valid) {
+ valid = $('#selectTypes option:selected').length >0;
+ }
+ var action = $('#nextAction');
+ if (valid) {
+ action.removeAttr('disabled');
+ } else {
+ action.attr('disabled', 'disabled');
+ }
+ };
+ </s:else>
+ $(document).ready(function () {
+ $('select').change(f).trigger( "change" );
+ f();
+ });
+ </script>
</head>
<body>
@@ -35,7 +85,8 @@
<tr>
<td><s:text name="message.common.zones" /> :</td>
<td>
- <select name="selectZones" multiple="multiple" style="width:100%" id="selectZones">
+ <select name="selectZones" multiple="multiple" id="selectZones"
+ class="select">
<s:iterator value="zones" var="zone">
<option value="<s:property value="key" />"
<s:if test="selectZones.contains(#zone.key)">
@@ -56,7 +107,8 @@
<tr>
<td><s:text name="message.common.datatypes" /> :</td>
<td>
- <select name="selectTypes" multiple="multiple" style="width:100%" id="selectTypes">
+ <select name="selectTypes" multiple="multiple" id="selectTypes"
+ class="select">
<s:iterator value="types" var="type">
<option value="<s:property value="key" />"
<s:if test="selectTypes.contains(#type.key)">
@@ -97,7 +149,8 @@
title="<s:text name="message.common.selectnone" />" /></td>
</tr>
<tr>
- <td colspan="2"><s:submit value="%{getText('message.search.extract.updatelists')}" /></td>
+ <td colspan="2"><s:submit id='nextAction'
+ value="%{getText('message.search.extract.updatelists')}" /></td>
</tr>
</table>
@@ -110,7 +163,8 @@
<td><s:text name="message.common.indicatorsof" /><br />
<s:text name="message.common.community" /> :</td>
<td>
- <select name="selectComIndicators" multiple="multiple" style="width:100%" size="10" id="selectComIndicators">
+ <select name="selectComIndicators" multiple="multiple"
+ class="select" size="10" id="selectComIndicators">
<s:iterator value="comIndicators" var="comIndicator">
<option value="<s:property value="key" />"
<s:if test="selectComIndicators.contains(#comIndicator.key)">
@@ -134,7 +188,8 @@
<td><s:text name="message.common.indicatorsof" /><br />
<s:text name="message.common.population" /> :</td>
<td>
- <select name="selectPopIndicators" multiple="multiple" style="width:100%" size="10" id="selectPopIndicators">
+ <select name="selectPopIndicators" multiple="multiple"
+ class="select" size="10" id="selectPopIndicators">
<s:iterator value="popIndicators" var="popIndicator">
<option value="<s:property value="key" />"
<s:if test="selectPopIndicators.contains(#popIndicator.key)">
@@ -156,7 +211,8 @@
<tr>
<td><s:text name="message.common.species" /> :</td>
<td>
- <select name="selectSpecies" multiple="multiple" style="width:100%" size="10" id="selectSpecies">
+ <select name="selectSpecies" multiple="multiple"
+ class="select" size="10" id="selectSpecies">
<s:iterator value="species" var="specy">
<option value="<s:property value="key" />"
<s:if test="selectSpecies.contains(#specy.key)">
@@ -175,7 +231,9 @@
title="<s:text name="message.common.selectnone" />" /></td>
</tr>
<tr>
- <td colspan="2"><s:submit name="submitAction" value="%{getText('message.search.extract.extract')}" /></td>
+ <td colspan="2"><s:submit name="submitAction"
+ value="%{getText('message.search.extract.extract')}"
+ disabled="true"/></td>
</tr>
</table>
</s:if>
Modified: trunk/coser-web/src/main/webapp/js/coser.js
===================================================================
--- trunk/coser-web/src/main/webapp/js/coser.js 2014-03-15 15:11:29 UTC (rev 1146)
+++ trunk/coser-web/src/main/webapp/js/coser.js 2014-03-16 18:59:34 UTC (rev 1147)
@@ -29,9 +29,11 @@
// selection tous les elements d'un select
function coserSelectAll(select) {
$(select).children("option").prop('selected',true);
+ $(select).change();
}
// deselection tous les elements d'un select
function coserUnSelectAll(select) {
$(select).children("option").prop('selected',false);
+ $(select).change();
}
1
0
16 Mar '14
See <http://ci.codelutin.com/jenkins/job/coser-nightly/11/changes>
Changes:
[Tony CHEMIT] refs #4664 review Result API (using Command pattern), need to finish the web part
------------------------------------------
[...truncated 1012 lines...]
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[139,29] cannot find symbol
symbol: method getAvailableSpecies(fr.ifremer.coser.result.CoserRequest)
location: variable resultService of type fr.ifremer.coser.result.CoserResultEngine
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[154,29] cannot find symbol
symbol: method getAvailableIndicators(fr.ifremer.coser.result.CoserRequest)
location: variable resultService of type fr.ifremer.coser.result.CoserResultEngine
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[86,19] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[95,40] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[87,39] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[96,53] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[104,19] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[94,55] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[88,23] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[96,19] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[95,53] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[96,55] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[187,79] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[273,75] no suitable method found for requestBuilder(java.util.Locale)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(no instance(s) of type variable(s) R exist so that argument type java.util.Locale conforms to formal parameter type java.lang.Class<R>)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[121,40] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
[INFO] 19 errors
[INFO] -------------------------------------------------------------
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[JENKINS] Archiving disabled
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Coser ............................................. SUCCESS [ 9.755 s]
[INFO] Coser :: Business ................................. SUCCESS [ 31.876 s]
[INFO] Coser :: UI ....................................... SUCCESS [01:30 min]
[INFO] Coser :: Web ...................................... FAILURE [ 3.171 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:17 min
[INFO] Finished at: 2014-03-13T01:07:19+01:00
[INFO] Final Memory: 104M/1465M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project coser-web: Compilation failure: Compilation failure:
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[139,29] cannot find symbol
[ERROR] symbol: method getAvailableSpecies(fr.ifremer.coser.result.CoserRequest)
[ERROR] location: variable resultService of type fr.ifremer.coser.result.CoserResultEngine
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[154,29] cannot find symbol
[ERROR] symbol: method getAvailableIndicators(fr.ifremer.coser.result.CoserRequest)
[ERROR] location: variable resultService of type fr.ifremer.coser.result.CoserResultEngine
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[86,19] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[95,40] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[87,39] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[96,53] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[104,19] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[94,55] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[88,23] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[96,19] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[95,53] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[96,55] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[187,79] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[273,75] no suitable method found for requestBuilder(java.util.Locale)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (no instance(s) of type variable(s) R exist so that argument type java.util.Locale conforms to formal parameter type java.lang.Class<R>)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[121,40] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] <http://ci.codelutin.com/jenkins/job/coser-nightly/ws/trunk/coser-web/src/ma…>:[43,16] no suitable method found for requestBuilder()
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.util.Locale,java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] method fr.ifremer.coser.web.actions.common.CoserAction.<R>requestBuilder(java.lang.Class<R>) is not applicable
[ERROR] (cannot instantiate from arguments because actual and formal argument lists differ in length)
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project coser-web: Compilation failure
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:108)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:116)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:361)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
at org.jvnet.hudson.maven3.launcher.Maven31Launcher.main(Maven31Launcher.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven31Main.launch(Maven31Main.java:181)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:134)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:69)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:328)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:133)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 30 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :coser-web
Sending e-mails to: coser-commits(a)list.forge.codelutin.com chemit+codelutin-ci(a)codelutin.com
channel stopped
Skipping sonar analysis due to bad build status FAILURE
1
1