|
From: <de...@us...> - 2012-08-31 09:13:40
|
Revision: 7598
http://fudaa.svn.sourceforge.net/fudaa/?rev=7598&view=rev
Author: deniger
Date: 2012-08-31 09:13:28 +0000 (Fri, 31 Aug 2012)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/comparaison/config/OrdResDynamicPropertyFilter.java
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/ores/CrueConverterORES_V1P1P1.java
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdRes.java
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/ModeleResultatTimeContent.java
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/OrdResExtractor.java
trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationHelper.java
trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorORES.java
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/PerspectiveState.java
trunk/soft/fudaa-crue/ui-comparison/src/main/java/org/fudaa/fudaa/crue/comparison/ScenarioComparaisonController.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/OrdResScenarioNode.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportRunContent.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableKey.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/PerspectiveServiceReport.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportRunAlternatifService.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportService.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportTimeFormatter.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/transversal/ReportTransversalGrapheBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
Added Paths:
-----------
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/comparaison/config/OrdResDynamicPropertyFilter.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/comparaison/config/OrdResDynamicPropertyFilter.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/comparaison/config/OrdResDynamicPropertyFilter.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -1,5 +1,6 @@
package org.fudaa.dodico.crue.comparaison.config;
+import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -43,7 +44,7 @@
String method = "ordRes" + normalizeEMHType(emhType);
try {
OrdRes ordRes = (OrdRes) PropertyUtilsCache.getInstance().getProperty(ordResScenario, method);
- Set<Dde> ddes = ordRes.getDdes();
+ Collection<Dde> ddes = ordRes.getDdes();
return TransformerHelper.toSetOfId(ddes);
} catch (Exception e) {
LOGGER.log(Level.SEVERE, "getOrdresProps " + normalizeEMHType(emhType), e);
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/ores/CrueConverterORES_V1P1P1.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/ores/CrueConverterORES_V1P1P1.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/ores/CrueConverterORES_V1P1P1.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -5,6 +5,7 @@
import java.beans.PropertyDescriptor;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -205,7 +206,6 @@
}
public void convertMetierToDao(OrdRes in, Object daoToFill, CtuluLog log) {
- String simpleName = daoToFill.getClass().getSimpleName();
final PropertyDescriptor[] propertyDescriptors = PropertyUtils.getPropertyDescriptors(daoToFill);
Set<String> ddeProperties = new HashSet<String>();
for (PropertyDescriptor propertyDescriptor : propertyDescriptors) {
@@ -214,7 +214,7 @@
ddeProperties.add(name);
}
}
- Set<Dde> ddes = in.getDdes();
+ Collection<Dde> ddes = in.getDdes();
for (Dde dde : ddes) {
String nom = dde.getNom();
String ddeNom = CrueDaoStructureORES_V1P1P1.PREFIX_PROPERTY_DDE + StringUtils.capitalize(nom);
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -5,6 +5,7 @@
import java.util.List;
import java.util.Map;
import org.fudaa.dodico.crue.metier.helper.EMHHelper;
+import org.fudaa.dodico.crue.metier.transformer.TransformerHelper;
/**
*
@@ -56,4 +57,8 @@
Collection<EMH> values = emhByUid.values();
return EMHHelper.selectEMHS(values, emhCat);
}
+
+ public Map<String, EMH> getEmhByNom() {
+ return TransformerHelper.toMapOfNom(emhByUid.values());
+ }
}
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdRes.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdRes.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdRes.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -1,8 +1,9 @@
package org.fudaa.dodico.crue.metier.emh;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
-import java.util.Set;
+import java.util.List;
import java.util.TreeMap;
import org.fudaa.dodico.crue.config.CrueConfigMetier;
import org.fudaa.dodico.crue.metier.OrdResKey;
@@ -54,8 +55,8 @@
}
@Visibility(ihm = false)
- public Set<Dde> getDdes() {
- return new HashSet<Dde>(values.values());
+ public List<Dde> getDdes() {
+ return new ArrayList<Dde>(values.values());
}
@Override
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/ModeleResultatTimeContent.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/ModeleResultatTimeContent.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/ModeleResultatTimeContent.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -81,6 +81,18 @@
return tempSceByCalc.get(key.getNomCalcul()) + key.getDuree();
}
+ public long getTempsCalc(ResultatKey key) {
+ return key.getDuree();
+ }
+
+ public double getTempsCalcInSec(ResultatKey key) {
+ return key.getDuree() / 1000d;
+ }
+
+ public double getTempSceInSec(ResultatKey key) {
+ return getTempSce(key) / 1000d;
+ }
+
public static ModeleResultatTimeContent extract(EMHModeleBase modele) {
ResultatPasDeTemps pasDeTemps = modele.getResultatCalculPasDeTemps();
if (pasDeTemps == null) {
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/OrdResExtractor.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/OrdResExtractor.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/result/OrdResExtractor.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -38,11 +38,11 @@
return res;
}
- public List<OrdResVariableSelection> getOrdResSelectedVarForEMH(Collection<EMH> selectedEMHs) {
+ public List<OrdResVariableSelection> getOrdResSelectedVarForEMH(Collection<EMH> selectedEMHs) {
return getOrdResSelectedVar(getFilteredOrdRes(selectedEMHs));
}
- public List<OrdResVariableSelection> getOrdResSelectedVarForEMHorAll(Collection<EMH> selectedEMHs) {
+ public List<OrdResVariableSelection> getOrdResSelectedVarForEMHorAll(Collection<EMH> selectedEMHs) {
if (CollectionUtils.isEmpty(selectedEMHs)) {
return getOrdResSelectedVarForAll();
}
@@ -55,15 +55,15 @@
List<OrdResVariableSelection> getOrdResSelectedVar(Collection<OrdRes> ordResList) {
ArrayList<OrdResVariableSelection> res = new ArrayList<OrdResVariableSelection>();
- for (OrdRes ordRes : ordResList) {
+ for (OrdRes ordResItem : ordResList) {
List<String> usableVariables = new ArrayList<String>();
- Set<Dde> ddes = ordRes.getDdes();
+ List<Dde> ddes = ordResItem.getDdes();
for (Dde dde : ddes) {
if (dde.getValeur()) {
usableVariables.add(dde.getNom());
}
}
- res.add(new OrdResVariableSelection(ordRes.getKey(), usableVariables));
+ res.add(new OrdResVariableSelection(ordResItem.getKey(), usableVariables));
}
return res;
Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationHelper.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationHelper.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationHelper.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -305,26 +305,20 @@
final List<EMH> listeEMHs = crueData.getAllSimpleEMH();
final CtuluLog analyze = new CtuluLog(BusinessMessages.RESOURCE_BUNDLE);
- UniqueNomFinder uniqueNomFinder = new UniqueNomFinder();
+
for (final EMH emh : listeEMHs) {
+ String old = emh.getNom();
ValidationHelper.computeNom(emh, ValidationHelper.getPrefixFor(emh), analyze, "crue9.cant.rename.emh", null);
+ String newName = emh.getNom();
+ if (!old.equals(newName)) {
+ ensureUniqueName(listeEMHs, emh);
+ }
+
}
- //on s'assure de l'unicité des noms
- EditionRename rename = new EditionRename();
+ //on s'assure de l'unicité des noms pour tous
for (final EMH emh : listeEMHs) {
- List<String> noms = TransformerHelper.toNom(listeEMHs);
- final String oldName = emh.getNom();
- noms.remove(oldName);
- String newName = uniqueNomFinder.findUniqueName(noms, oldName);
- if (!oldName.equals(newName)) {
- emh.setNom(newName);
- }
- //pour toutes les emhs, on met à jours les noms.
- //pour les casiers, ce sont les noeuds qui prendront le dessus:
- if (!emh.getCatType().equals(EnumCatEMH.CASIER)) {
- rename.propagateName(emh);
- }
+ ensureUniqueName(listeEMHs, emh);
}
final DonFrtConteneur frottements = crueData.getFrottements();
@@ -333,17 +327,16 @@
for (final DonFrt donFrt : listFrt) {
final LoiFF loi = donFrt.getLoi();
final String pref = loi.getType().getNom() + CruePrefix.SEP;
+ String oldName = donFrt.getNom();
ValidationHelper.computeNom(donFrt, pref, analyze, "crue9.cant.rename.frt", null);
+ String newName = donFrt.getNom();
+ if (!oldName.equals(newName)) {
+ ensureUniqueNameDonFrt(listFrt, donFrt);
+ }
}
//on evite les doublons:
for (final DonFrt donFrt : listFrt) {
- List<String> noms = TransformerHelper.toNom(listFrt);
- final String oldName = donFrt.getNom();
- noms.remove(oldName);
- String newName = uniqueNomFinder.findUniqueName(noms, oldName);
- if (!oldName.equals(newName)) {
- donFrt.setNom(newName);
- }
+ ensureUniqueNameDonFrt(listFrt, donFrt);
}
}
@@ -466,4 +459,32 @@
validateObject(StringUtils.EMPTY, res, editedObject, ccm);
return res;
}
+
+ public static void ensureUniqueName(final List<EMH> listeEMHs, final EMH emh) {
+ UniqueNomFinder uniqueNomFinder = new UniqueNomFinder();
+ EditionRename rename = new EditionRename();
+ List<String> noms = TransformerHelper.toNom(listeEMHs);
+ final String oldName = emh.getNom();
+ noms.remove(oldName);
+ String newName = uniqueNomFinder.findUniqueName(noms, oldName);
+ if (!oldName.equals(newName)) {
+ emh.setNom(newName);
+ }
+ //pour toutes les emhs, on met à jours les noms.
+ //pour les casiers, ce sont les noeuds qui prendront le dessus:
+ if (!emh.getCatType().equals(EnumCatEMH.CASIER)) {
+ rename.propagateName(emh);
+ }
+ }
+
+ public static void ensureUniqueNameDonFrt(final List<DonFrt> listFrt, final DonFrt donFrt) {
+ List<String> noms = TransformerHelper.toNom(listFrt);
+ final String oldName = donFrt.getNom();
+ noms.remove(oldName);
+ UniqueNomFinder uniqueNomFinder = new UniqueNomFinder();
+ String newName = uniqueNomFinder.findUniqueName(noms, oldName);
+ if (!oldName.equals(newName)) {
+ donFrt.setNom(newName);
+ }
+ }
}
Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorORES.java
===================================================================
--- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorORES.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorORES.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -1,9 +1,9 @@
package org.fudaa.dodico.crue.validation;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Collections;
import java.util.List;
-import java.util.Set;
import org.fudaa.ctulu.CtuluLog;
import org.fudaa.ctulu.CtuluLogRecord;
import org.fudaa.dodico.crue.common.CollectionCrueUtil;
@@ -65,7 +65,7 @@
OrdResScenario other = loadDefault();
EMHScenario scenario = new EMHScenario(null);
scenario.addInfosEMH(other);
- Set<Dde> required = other.getOrdResBrancheBarrageFilEau().getDdes();
+ Collection<Dde> required = other.getOrdResBrancheBarrageFilEau().getDdes();
other.getOrdResBrancheBarrageFilEau().setValues(Collections.<Dde>emptyList());
List<CtuluLog> validateScenario = validator.validateScenario(scenario);
CtuluLog log = validateScenario.get(0);
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/PerspectiveState.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/PerspectiveState.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/PerspectiveState.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -13,7 +13,7 @@
MODE_READ(true,"mode.visualization"),
/**
* utilise pour un mode readOnly temporaire
- * par exemple si un scenario est chargée, la perspective passe en readonly temporaire
+ * par exemple si un scenario est chargée, la perspective étude passe en readonly temporaire
*/
MODE_READ_ONLY_TEMP(false,"mode.readOnlyTemp"),
/**
Modified: trunk/soft/fudaa-crue/ui-comparison/src/main/java/org/fudaa/fudaa/crue/comparison/ScenarioComparaisonController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-comparison/src/main/java/org/fudaa/fudaa/crue/comparison/ScenarioComparaisonController.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-comparison/src/main/java/org/fudaa/fudaa/crue/comparison/ScenarioComparaisonController.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -175,7 +175,7 @@
@SuppressWarnings("serial")
private AbstractAction createCollapseAction() {
- return new AbstractActionIcon(MessageComparison.getMessage(PROPERTY_COLLAPSE), CrueIconsProvider.getIcon("/org/fudaa/fudaa/crue/comparison/arrow-in.png"),
+ return new AbstractActionIcon(MessageComparison.getMessage(PROPERTY_COLLAPSE), CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/comparison/arrow-in.png"),
PROPERTY_COLLAPSE) {
@Override
@@ -201,7 +201,7 @@
@SuppressWarnings("serial")
private AbstractAction createExpandAction() {
- return new AbstractActionIcon(MessageComparison.getMessage(PROPERTY_EXPAND), CrueIconsProvider.getIcon("/org/fudaa/fudaa/crue/comparison/arrow-out.png"),
+ return new AbstractActionIcon(MessageComparison.getMessage(PROPERTY_EXPAND), CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/comparison/arrow-out.png"),
PROPERTY_EXPAND) {
@Override
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/OrdResScenarioNode.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/OrdResScenarioNode.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/OrdResScenarioNode.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -6,7 +6,6 @@
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
-import java.util.List;
import org.apache.commons.lang.StringUtils;
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.common.CollectionCrueUtil;
@@ -14,9 +13,7 @@
import org.fudaa.dodico.crue.metier.emh.OrdResScenario;
import org.fudaa.dodico.crue.metier.transformer.TransformerHelper;
import org.fudaa.fudaa.crue.common.property.AbstractNodeFirable;
-import org.fudaa.fudaa.crue.common.property.PropertyNodeBuilder;
import org.fudaa.fudaa.crue.common.property.PropertySupportReadWrite;
-import org.fudaa.fudaa.crue.common.property.PropertySupportReflection;
import org.fudaa.fudaa.crue.modelling.node.AbstractModellingNodeFirable;
import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling;
import org.openide.nodes.Children;
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportRunContent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportRunContent.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportRunContent.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -3,6 +3,9 @@
*/
package org.fudaa.fudaa.crue.report.data;
+import java.util.HashMap;
+import java.util.Map;
+import org.fudaa.dodico.crue.metier.emh.EMH;
import org.fudaa.dodico.crue.metier.emh.EMHScenario;
import org.fudaa.dodico.crue.metier.etude.EMHRun;
import org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario;
@@ -17,6 +20,7 @@
EMHRun run;
ManagerEMHScenario managerScenario;
ReportRunKey runKey;
+ Map<String, EMH> emhByName;
public ReportRunContent(EMHRun run, ManagerEMHScenario managerScenario, ReportRunEnum runKey) {
this.run = run;
@@ -30,8 +34,16 @@
public void setScenario(EMHScenario scenario) {
this.scenario = scenario;
+ emhByName = scenario.getIdRegistry().getEmhByNom();
}
+ public EMH getEMH(String nom) {
+ if (emhByName == null) {
+ return null;
+ }
+ return emhByName.get(nom);
+ }
+
public ReportRunKey getRunKey() {
return runKey;
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableKey.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableKey.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableKey.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -17,9 +17,6 @@
this.variableType = type;
}
- public String getRunAlternatifId() {
- return variableName;
- }
public ReportVariableTypeEnum getVariableType() {
return variableType;
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -6,6 +6,7 @@
import com.memoire.bu.BuBorders;
import java.awt.BorderLayout;
import java.awt.Dialog;
+import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
@@ -85,7 +86,10 @@
return fileChooser;
}
};
- pn.add(fileChooserPanel, BorderLayout.SOUTH);
+ JPanel pnSouth = new JPanel(new FlowLayout(FlowLayout.LEFT));
+ pnSouth.add(new JLabel(NbBundle.getMessage(ReportExportHelper.class, "Export.ChooseFile.LabelName")));
+ pnSouth.add(fileChooserPanel);
+ pn.add(pnSouth, BorderLayout.SOUTH);
pn.setBorder(BuBorders.EMPTY3333);
final DialogDescriptor dialogDescriptor = new DialogDescriptor(pn, NbBundle.getMessage(ReportExportHelper.class, "Export.DialogTitle"), true, new Object[]{NotifyDescriptor.OK_OPTION, NotifyDescriptor.CANCEL_OPTION},
NotifyDescriptor.OK_OPTION,
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/PerspectiveServiceReport.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/PerspectiveServiceReport.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/PerspectiveServiceReport.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -19,8 +19,11 @@
import org.fudaa.fudaa.crue.report.ReportTimeTopComponent;
import org.fudaa.fudaa.crue.report.ReportViewManagerTopComponent;
import org.fudaa.fudaa.crue.report.ReportVisualTopComponent;
+import org.fudaa.fudaa.crue.report.data.ReportRunContent;
+import org.fudaa.fudaa.crue.report.service.ReportService;
import org.fudaa.fudaa.crue.study.services.CrueService;
import org.openide.util.Lookup;
+import org.openide.util.Lookup.Result;
import org.openide.util.LookupEvent;
import org.openide.util.LookupListener;
import org.openide.util.lookup.ServiceProvider;
@@ -47,40 +50,50 @@
* contient l'état ouvert ou non
*/
private CrueService crueService = Lookup.getDefault().lookup(CrueService.class);
+ ReportService reportService = Lookup.getDefault().lookup(ReportService.class);
+ Result<ReportRunContent> runContentResult;
public PerspectiveServiceReport() {
- super(PerspectiveEnum.POST);
+ super(PerspectiveEnum.REPORT);
crueService.addEMHProjetStateLookupListener(new LookupListener() {
@Override
public void resultChanged(LookupEvent ev) {
projectLoadedChange();
}
});
- crueService.addPostLookupListener(new LookupListener() {
+ runContentResult = reportService.getLookup().lookupResult(ReportRunContent.class);
+ runContentResult.addLookupListener(new LookupListener() {
@Override
public void resultChanged(LookupEvent ev) {
- postLoadedChanged();
+ reportLoadedChanged();
}
});
}
- public void postLoadedChanged() {
+ public void reportLoadedChanged() {
//la methode setState gère le mode RO.
- setState(crueService.isAScenarioLoadedInPostPerspective() ? PerspectiveState.MODE_READ : PerspectiveState.MODE_READ_ONLY_TEMP);
+ updateState();
}
public void projectLoadedChange() {
if (crueService.getProjectLoaded() == null) {
resetStateToReadOnlyTemp();
} else {
- setState(crueService.isProjetReadOnly() ? PerspectiveState.MODE_READ_ONLY_ALWAYS : PerspectiveState.MODE_READ_ONLY_TEMP);
+ updateState();
}
+ }
+ protected void updateState() {
+ if (crueService.isProjetReadOnly()) {
+ setState(PerspectiveState.MODE_READ_ONLY_ALWAYS);
+ } else {
+ setState(reportService.getRunCourant() != null ? PerspectiveState.MODE_READ : PerspectiveState.MODE_READ_ONLY_TEMP);
+ }
}
@Override
public boolean supportEdition() {
- return false;
+ return true;
}
@Override
@@ -107,6 +120,7 @@
@Override
public boolean activate() {
+ updateState();
return true;
}
Added: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -0,0 +1,142 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.report.service;
+
+import java.io.IOException;
+import java.util.Map;
+import org.apache.commons.lang.StringUtils;
+import org.fudaa.dodico.crue.metier.emh.EMH;
+import org.fudaa.dodico.crue.metier.emh.ResultatKey;
+import org.fudaa.fudaa.crue.report.data.ReportRunContent;
+import org.fudaa.fudaa.crue.report.data.ReportRunKey;
+import org.fudaa.fudaa.crue.report.data.ReportRunVariableKey;
+import org.fudaa.fudaa.crue.report.data.ReportVariableTypeEnum;
+import org.openide.util.Exceptions;
+import org.openide.util.Lookup;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class ReportResultProviderService {
+
+ public static String TIME_TEMPS_SCE = "TempsSce";
+ public static String TIME_TEMPS_CALC = "TempsCalc";
+ public static String TIME_NOM_CALC = "NomCalc";
+ ReportService reportService = Lookup.getDefault().lookup(ReportService.class);
+ ReportRunAlternatifService reportRunAlternatifService = Lookup.getDefault().lookup(ReportRunAlternatifService.class);
+
+ /**
+ * si c'est un temps, l'EMH n'est pas utilisée
+ *
+ * @param key
+ * @param emh
+ * @return
+ */
+ public Double getValue(ReportRunVariableKey key, String emhNom) {
+ ReportVariableTypeEnum variableType = key.getVariable().getVariableType();
+ switch (variableType) {
+ case TIME:
+ return getTimeValue(key);
+ case EXPR:
+ throw new IllegalAccessError();
+ case READ:
+ return getReadValue(key, emhNom);
+ }
+ throw new IllegalAccessError("unknown " + variableType);
+ }
+
+ public ReportRunContent getRunContent(ReportRunKey key) {
+ if (key.isCourant()) {
+ return reportService.getRunCourant();
+ }
+ return reportRunAlternatifService.getRunContent(key);
+ }
+
+ public EMH getEMH(String nom, ReportRunKey key) {
+ ReportRunContent runContent = getRunContent(key);
+ if (runContent == null) {
+ return null;
+ }
+ return runContent.getEMH(nom);
+ }
+
+ public String getValueAsString(ReportRunVariableKey key, String emhNom) {
+ ReportVariableTypeEnum variableType = key.getVariable().getVariableType();
+ switch (variableType) {
+ case TIME:
+ return getTimeValueAsString(key);
+ case EXPR:
+ throw new IllegalAccessError();
+ case READ:
+ return getReadValueAsString(key, emhNom);
+ }
+ throw new IllegalAccessError("unknown " + variableType);
+ }
+
+ private Double getTimeValue(ReportRunVariableKey key) {
+ final String variableName = key.getVariable().getVariableName();
+ if (TIME_NOM_CALC.equals(variableName)) {
+ throw new IllegalAccessError("nom calc cannot be translate to double");
+ } else if (TIME_TEMPS_CALC.equals(variableName)) {
+ ResultatKey selectedTime = reportService.getSelectedTime();
+ if (selectedTime == null) {
+ return null;
+ }
+ return reportService.getTimeContent().getTempsCalcInSec(selectedTime);
+
+ } else if (TIME_TEMPS_SCE.equals(variableName)) {
+ ResultatKey selectedTime = reportService.getSelectedTime();
+ if (selectedTime == null) {
+ return null;
+ }
+ return reportService.getTimeContent().getTempSceInSec(selectedTime);
+
+ }
+ throw new UnsupportedOperationException("Not yet implemented");
+ }
+
+ private Double getReadValue(ReportRunVariableKey key, String emhNom) {
+ ResultatKey selectedTime = reportService.getSelectedTime();
+ if (selectedTime == null) {
+ return null;
+ }
+ EMH emh = getEMH(emhNom, key.getRunKey());
+ if (emh == null || emh.getResultatCalcul() == null) {
+ return null;
+ }
+ try {
+ final Map<String, Object> read = emh.getResultatCalcul().read(selectedTime);
+ if (read == null) {
+ return null;
+ }
+ return (Double) read.get(key.getVariable().getVariableName());
+ } catch (IOException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ return null;
+
+ }
+
+ private String getTimeValueAsString(ReportRunVariableKey key) {
+ final String variableName = key.getVariable().getVariableName();
+ if (TIME_NOM_CALC.equals(variableName)) {
+ ResultatKey selectedTime = reportService.getSelectedTime();
+ return selectedTime == null ? StringUtils.EMPTY : selectedTime.getNomCalcul();
+ } else if (TIME_TEMPS_CALC.equals(variableName)) {
+ return reportService.getReportTimeFormatter().getTempsCalcAsString();
+ } else if (TIME_TEMPS_SCE.equals(variableName)) {
+ return reportService.getReportTimeFormatter().getTempsSceAsString();
+ }
+ throw new UnsupportedOperationException("Not yet implemented");
+ }
+
+ private String getReadValueAsString(ReportRunVariableKey key, String emhNom) {
+ Double val = getReadValue(key, emhNom);
+ if (val == null) {
+ return StringUtils.EMPTY;
+ }
+ return reportService.getCcm().format(key.getVariable().getVariableName(), val);
+ }
+}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportRunAlternatifService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportRunAlternatifService.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportRunAlternatifService.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -13,6 +13,7 @@
import org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario;
import org.fudaa.dodico.crue.metier.transformer.TransformerHelper;
import org.fudaa.fudaa.crue.report.data.ReportRunEnum;
+import org.fudaa.fudaa.crue.report.data.ReportRunKey;
import org.fudaa.fudaa.crue.study.services.CrueService;
import org.openide.util.Lookup;
import org.openide.util.LookupEvent;
@@ -119,4 +120,17 @@
public Lookup getLookup() {
return lookup;
}
+
+ public ReportRunContent getRunContent(ReportRunKey key) {
+ if (key == null) {
+ return null;
+ }
+ Collection<? extends ReportRunContent> lookupAll = lookup.lookupAll(ReportRunContent.class);
+ for (ReportRunContent reportRunContent : lookupAll) {
+ if (key.equals(reportRunContent.getRunKey())) {
+ return reportRunContent;
+ }
+ }
+ return null;
+ }
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportService.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportService.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -124,7 +124,9 @@
if (selectedTime != null) {
dynamicContent.remove(selectedTime);
}
- dynamicContent.add(key);
+ if (key != null) {
+ dynamicContent.add(key);
+ }
}
public void setTimeFormat(ReportTimeFormatOption timeFormat) {
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportTimeFormatter.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportTimeFormatter.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportTimeFormatter.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -34,6 +34,14 @@
timeContent = service.getTimeContent();
}
+ public String getTempsSceAsString() {
+ return getResulatKeyTempsSceToStringTransformer().transform(service.getSelectedTime());
+ }
+
+ public String getTempsCalcAsString() {
+ return getResulatKeyTempsCalcToStringTransformer().transform(service.getSelectedTime());
+ }
+
public CrueConfigMetier getCcm() {
return ccm;
}
@@ -98,7 +106,7 @@
}
Long millis = (Long) in;
if (option.dureeFormatType.equals(DureeFormatType.AS_SECOND)) {
- return ccm.format(CrueConfigMetierConstants.PROP_TEMPSCALC, millis)+" s";
+ return ccm.format(CrueConfigMetierConstants.PROP_TEMPSCALC, millis) + " s";
}
return option.dureeFormater.print(new Period(millis.longValue()));
}
@@ -122,7 +130,7 @@
private String formatDuree(Long millis) {
if (option.dureeFormatType.equals(DureeFormatType.AS_SECOND)) {
- return ccm.format(CrueConfigMetierConstants.PROP_TEMPSSCE, millis)+" s";
+ return ccm.format(CrueConfigMetierConstants.PROP_TEMPSSCE, millis) + " s";
}
return option.dureeFormater.print(new Period(millis.longValue()));
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/transversal/ReportTransversalGrapheBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/transversal/ReportTransversalGrapheBuilder.java 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/transversal/ReportTransversalGrapheBuilder.java 2012-08-31 09:13:28 UTC (rev 7598)
@@ -3,6 +3,7 @@
*/
package org.fudaa.fudaa.crue.report.transversal;
+import java.util.Iterator;
import java.util.List;
import org.fudaa.dodico.crue.common.Pair;
import org.fudaa.dodico.crue.metier.emh.CatEMHSection;
@@ -66,6 +67,11 @@
double min = uiController.getCourbe().getModel().getXMin();
double max = uiController.getCourbe().getModel().getXMax();
final List<ReportRunVariableKey> profils = content.profilVariables;
+ for (Iterator<ReportRunVariableKey> it = profils.iterator(); it.hasNext();) {
+ ReportRunVariableKey reportRunVariableKey = it.next();
+// reportRunVariableKey.
+
+ }
}
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties 2012-08-31 08:00:23 UTC (rev 7597)
+++ trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties 2012-08-31 09:13:28 UTC (rev 7598)
@@ -11,3 +11,4 @@
Export.Task.Name=Exportation en cours
Export.OperationFinish=Exportation termin\u00e9e: {0}
ReportExportNodeAction.DisplayName=Exporter
+Export.ChooseFile.LabelName=Fichier CSV:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|