|
From: <de...@us...> - 2016-10-24 14:43:42
|
Revision: 9452
http://sourceforge.net/p/fudaa/svn/9452
Author: deniger
Date: 2016-10-24 14:43:39 +0000 (Mon, 24 Oct 2016)
Log Message:
-----------
code plus securis?\195?\169 pour la gestion des traductions.
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/ui/OrdCalcScenarioUiState.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculDuplicateNodeAction.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/ui/OrdCalcScenarioUiState.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/ui/OrdCalcScenarioUiState.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/ui/OrdCalcScenarioUiState.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -20,7 +20,7 @@
private final LinkedHashMap<String, CalcOrdCalcUiState> calcOrdCalcUiStates = new LinkedHashMap<>();
public void addCalcOrdCalcUiStates(String calcId, OrdCalc calcOrdCalcUiState) {
- calcOrdCalcUiStates.put(calcId, new CalcOrdCalcUiState(calcId, calcOrdCalcUiState));
+ calcOrdCalcUiStates.put(calcId.toUpperCase(), new CalcOrdCalcUiState(calcId, calcOrdCalcUiState));
}
/**
@@ -31,6 +31,12 @@
return new ArrayList<>(calcOrdCalcUiStates.keySet());
}
+ public void addAll(OrdCalcScenarioUiState other) {
+ if (other != null) {
+ calcOrdCalcUiStates.putAll(other.calcOrdCalcUiStates);
+ }
+ }
+
/**
*
* @return la liste des ordCalc UI dans l'ordre
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -108,7 +108,7 @@
protected Result sortCalcWithSavedUi(OrdCalcScenario ocal, List<Calc> clonedCalcs, OrdCalcScenarioUiState uiOCalData) {
Result res = new Result();
- Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfNom(clonedCalcs);
+ Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfId(clonedCalcs);
final List<String> calcNameInOrder = uiOCalData.getCalcNameInOrder();
boolean isCoherent = isUiSavedCalcAccordingToCalcs(clonedCalcs, calcNameInOrder);
if (!isCoherent) {
@@ -118,9 +118,9 @@
List<OrdCalc> ordCalcsInScenario = ocal.getOrdCalc();
Set<String> namesOfActiveCalcul = new HashSet<>();
for (OrdCalc ordCalc : ordCalcsInScenario) {
- String calcName = ordCalc.getCalc().getNom();
- namesOfActiveCalcul.add(calcName);
- final Calc calc = clonedCalcsByName.get(calcName);
+ String calcId = ordCalc.getCalc().getId();
+ namesOfActiveCalcul.add(calcId);
+ final Calc calc = clonedCalcsByName.get(calcId);
res.ordCalcs.add(ordCalc.deepCloneButNotCalc(calc));
}
final List<CalcOrdCalcUiState> uiStates = uiOCalData.getUiStates();
@@ -128,13 +128,13 @@
final String calcName = uiState.getCalcId();
if (!namesOfActiveCalcul.contains(calcName)) {
final OrdCalc ordCalcSaved = uiState.getOrdCalc();
- final Calc calc = clonedCalcsByName.get(calcName);
+ final Calc calc = clonedCalcsByName.get(calcName.toUpperCase());
assert calc != null : "uiOrdCalc: should not be null as the method isUiSavedCalcAccordingToCalcs should have tested it";
res.ordCalcsInUI.add(ordCalcSaved.deepCloneButNotCalc(calc));
}
}
for (String calcName : calcNameInOrder) {
- final Calc calc = clonedCalcsByName.get(calcName);
+ final Calc calc = clonedCalcsByName.get(calcName.toUpperCase());
assert calc != null : "should not be null as the method isUiSavedCalcAccordingToCalcs should have tested it";
res.calcs.add(calc);
}
@@ -149,10 +149,10 @@
*/
protected boolean isUiSavedCalcAccordingToCalcs(Collection<Calc> clonedCalcs, final Collection<String> calcNameInOrder) {
//on va d'abord voir si le tout est cohérent:
- Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfNom(clonedCalcs);
if (clonedCalcs.size() == calcNameInOrder.size()) {
+ Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfId(clonedCalcs);
for (String string : calcNameInOrder) {
- if (!clonedCalcsByName.containsKey(string)) {
+ if (!clonedCalcsByName.containsKey(string.toUpperCase())) {
return false;
}
}
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -49,7 +49,7 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
- if (PropertyEnv.PROP_STATE.equals(evt.getPropertyName())
+ if (durationEditor != null && PropertyEnv.PROP_STATE.equals(evt.getPropertyName())
&& evt.getNewValue() == PropertyEnv.STATE_VALID) {
setValue(durationEditor.getDuration());
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -7,6 +7,8 @@
import java.beans.PropertyChangeEvent;
import java.util.ArrayList;
import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
import org.fudaa.ctulu.CtuluLogGroup;
@@ -129,21 +131,40 @@
@Override
public void valideModificationHandler() {
Node[] nodes = getExplorerManager().getRootContext().getChildren().getNodes();
+ //contiendra tous les calculs. Dans un premier temps ne contient que les permanents
List<Calc> newCalcs = new ArrayList<>();
+ //que les transitoires
+ List<Calc> newCalcsTransitoire = new ArrayList<>();
+ //contiendra tous les ordres de calcul. Dans un premier temps ne contient que les permanents
List<OrdCalc> newOrdCalcs = new ArrayList<>();
- //contiendra les données persistées dans l'éditeur ( données ui uniquement).
+ //que les transitoires
+ List<OrdCalc> newOrdCalcsTransitoire = new ArrayList<>();
+ //contiendra les données persistées dans l'éditeur ( données ui uniquement). Ne contient que les permanents au début
OrdCalcScenarioUiState uiStates = new OrdCalcScenarioUiState();
+ //que les tansitoires
+ OrdCalcScenarioUiState uiStatesTransitoire = new OrdCalcScenarioUiState();
for (Node node : nodes) {
CalculNode calculNode = (CalculNode) node;
- newCalcs.add(calculNode.getCalc());
+ final boolean isCalculPermanent = calculNode.getCalc().isPermanent();
+ OrdCalcScenarioUiState uiStatesToUse = isCalculPermanent ? uiStates : uiStatesTransitoire;
+ List<Calc> newCalcsToUse = isCalculPermanent ? newCalcs : newCalcsTransitoire;
+ List<OrdCalc> newOrdCalcsToUse = isCalculPermanent ? newOrdCalcs : newOrdCalcsTransitoire;
+ newCalcsToUse.add(calculNode.getCalc());
CalculOcalNode ocalNode = calculNode.getOcalNode();
if (ocalNode != null) {
- newOrdCalcs.add(ocalNode.getOrdCalc());
- uiStates.addCalcOrdCalcUiStates(calculNode.getCalc().getId(), ocalNode.getOrdCalc());
+ newOrdCalcsToUse.add(ocalNode.getOrdCalc());
+ uiStatesToUse.addCalcOrdCalcUiStates(calculNode.getCalc().getId(), ocalNode.getOrdCalc());
} else if (calculNode.getOldUsedOrdCalc() != null) {
- uiStates.addCalcOrdCalcUiStates(calculNode.getCalc().getId(), calculNode.getOldUsedOrdCalc());
+ uiStatesToUse.addCalcOrdCalcUiStates(calculNode.getCalc().getId(), calculNode.getOldUsedOrdCalc());
+ } else {
+ Logger.getLogger(ModellingComputeDataTopComponent.class.getName()).log(Level.SEVERE, "calc without ocal data");
}
}
+ //pour mettre dans l'ordre les permanents puis les transitoires
+ uiStates.addAll(uiStatesTransitoire);
+ newOrdCalcs.addAll(newOrdCalcsTransitoire);
+ newCalcs.addAll(newCalcsTransitoire);
+
OrdCalcScenario ocalTemp = new OrdCalcScenario();
DonCLimMScenario dclmTemp = new DonCLimMScenario();
for (OrdCalc ordCalc : newOrdCalcs) {
@@ -281,11 +302,11 @@
fac.addNewCalc(calc);
}
}
+
private class CalcNodeListener implements NodeListener {
public void reorderChildren() {
expandedNodesManager.saveState();
- //on s'assure que les permanents sont avant les transitoire
setModified(true);
expandedNodesManager.restoreState();
}
@@ -348,10 +369,8 @@
public boolean canMoveEndBeAdded(Node[] selectedNodes) {
for (Node node : selectedNodes) {
if (!node.getClass().equals(CalculNode.class)) {
-
return false;
}
- return ((CalculNode) node).isActivated();
}
return true;
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -72,6 +72,9 @@
PerspectiveServiceModelling perpective = Lookup.getDefault().lookup(PerspectiveServiceModelling.class);
perpective.setDirty(false);
+ } else {
+ DialogHelper.showError(NbBundle.getMessage(ModellingSaveAction.class, "ModellingSaveAction.ErrorMessage",
+ scenarioService.getManagerScenarioLoaded().getNom()));
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculDuplicateNodeAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculDuplicateNodeAction.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculDuplicateNodeAction.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -40,7 +40,7 @@
calc.setNom(nameFinder.findUniqueName(nodesName, calc.getNom(), 2));
CalculNodeFactory fac = new CalculNodeFactory(targetNode.outlineView);
CalculOcalNode ocalNode = targetNode.getOcalNode();
- OrdCalc ordCalc = null;
+ OrdCalc ordCalc;
if (ocalNode != null) {
ordCalc = ocalNode.getOrdCalc();
} else {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2016-10-24 14:43:39 UTC (rev 9452)
@@ -22,6 +22,7 @@
import org.fudaa.dodico.crue.metier.emh.DonLoiHYConteneur;
import org.fudaa.dodico.crue.metier.emh.Loi;
import org.fudaa.dodico.crue.metier.emh.OrdCalc;
+import org.fudaa.dodico.crue.metier.factory.OrdCalcFactory;
import org.fudaa.dodico.crue.metier.helper.CalcHelper;
import org.fudaa.dodico.crue.metier.helper.OrdCalcCloner;
import org.fudaa.dodico.crue.metier.helper.OrdCalcCloner.Result;
@@ -95,7 +96,12 @@
CalculNode node = new CalculNode(outlineView, createChildren(calc, ordCalcByCalc, donLoiHYConteneurCloned), calc, ccm,
perspectiveServiceModelling);
if (!node.isActivated()) {
- node.setOldUsedOrdCalc(uiOrdCalcByCalc.get(calc));
+ OrdCalc saved = uiOrdCalcByCalc.get(calc);
+ if (saved == null) {
+ saved = OrdCalcFactory.createDefaultOcal(calc, ccm);
+ }
+ node.setOldUsedOrdCalc(saved);
+
}
nodes.add(node);
}
@@ -109,6 +115,7 @@
node = new CalculNode(outlineView, createChildren(newCalc, Collections.<Calc, OrdCalc>emptyMap(), donLoiHYConteneurCloned), newCalc,
ccm,
perspectiveServiceModelling);
+ node.setOldUsedOrdCalc(OrdCalcFactory.createDefaultOcal(newCalc, ccm));
ExplorerManager newManager = ExplorerManager.find(outlineView);
final Node[] newNodeArray = new Node[]{node};
newManager.getRootContext().getChildren().add(newNodeArray);
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties 2016-10-24 14:43:04 UTC (rev 9451)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties 2016-10-24 14:43:39 UTC (rev 9452)
@@ -19,6 +19,7 @@
Export.EndMessageDetails=Fichiers g\u00e9n\u00e9r\u00e9s {0}
ExportCrue10.EndMessageDetails=Fichiers g\u00e9n\u00e9r\u00e9s {0} dans la version de grammaire {1}
ModellingSaveAction.SucceedMessage=Sc\u00e9nario {0} sauv\u00e9
+ModellingSaveAction.ErrorMessage=Echec lors de la sauvegarde du sc\u00e9nario {0}. V\u00e9rifier le compte-rendu d''op\u00e9ration.
ModellingCloseAction.ActivatedIsModified=La vue active contient des donn\u00e9es non valid\u00e9es
ModellingCloseAction.IsModified=Des donn\u00e9es ne sont pas enregistr\u00e9es
ModellingCloseAction.Confirm=Voulez-vous ignorer les modifications et fermer le sc\u00e9nario ?
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-11-22 11:20:30
|
Revision: 9460
http://sourceforge.net/p/fudaa/svn/9460
Author: deniger
Date: 2016-11-22 11:20:28 +0000 (Tue, 22 Nov 2016)
Log Message:
-----------
CRUE-706
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementTopComponent.java
trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties
trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/OutlineViewExportTableModel.java
Added Paths:
-----------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementExportTableModel.java
Added: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementExportTableModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementExportTableModel.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementExportTableModel.java 2016-11-22 11:20:28 UTC (rev 9460)
@@ -0,0 +1,108 @@
+/*
+GPL 2
+ */
+package org.fudaa.fudaa.crue.modelling.list;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collections;
+import java.util.List;
+import javax.swing.JTable;
+import jxl.write.Label;
+import jxl.write.WritableCell;
+import org.fudaa.ctulu.CtuluLibString;
+import org.fudaa.ctulu.table.CtuluTableModelInterface;
+import org.openide.nodes.Node;
+import org.openide.util.Exceptions;
+
+/**
+ * Un modèle pour adapter l'export cvs/Excel de la liste des frottement
+ *
+ * @author Frederic Deniger
+ */
+public class ModellingListFrottementExportTableModel implements CtuluTableModelInterface {
+
+ //l'indice de la premiere colonne
+ int idxColumnBrancheName = 0;
+ //l'offset impliqué par la première colonne
+ int offsetToApply = 1;
+ JTable listFrtTable;
+ List<String> rowNames;
+
+ public ModellingListFrottementExportTableModel(JTable listFrtTable) {
+ this.listFrtTable = listFrtTable;
+ //le noms des lignes.
+ rowNames = (List<String>) listFrtTable.getClientProperty(ModellingListFrottementTopComponent.PROPERTY_FOR_ROW_NAMES);
+ }
+
+ @Override
+ public int[] getSelectedRows() {
+ return null;
+ }
+
+ /**
+ *
+ * @param rowIndex
+ * @param columnIndex
+ * @return la valeur a utliser en (rowIndex,columnIndex). Pour la première colonne on utilise le nom de la ligne
+ */
+ @Override
+ public Object getValue(int rowIndex, int columnIndex) {
+ //on utilise le noms des lignes
+ if (columnIndex == idxColumnBrancheName) {
+ if (rowNames == null || rowNames.size() < rowIndex) {
+ return CtuluLibString.EMPTY_STRING;
+ }
+ return rowNames.get(rowIndex);
+ }
+ Object val = listFrtTable.getValueAt(rowIndex, columnIndex - offsetToApply);
+ if (val instanceof Node.Property) {
+ try {
+ return ((Node.Property) val).getValue();
+ } catch (IllegalAccessException | InvocationTargetException ex) {
+ Exceptions.printStackTrace(ex);
+ }
+ }
+ return val;
+ }
+
+ @Override
+ public String getColumnName(int colIdx) {
+ if (colIdx == idxColumnBrancheName) {
+ return org.openide.util.NbBundle.getMessage(ModellingListFrottementExportTableModel.class, "listFrottementExport.first.column.name");
+ }
+ return listFrtTable.getColumnName(colIdx - offsetToApply);
+ }
+
+ @Override
+ public WritableCell getExcelWritable(int _rowInModel, int _colInModel, int _rowInXls, int _colInXls) {
+ final Object o = getValue(_rowInModel, _colInModel);
+ if (o == null) {
+ return null;
+ }
+ String s = o.toString();
+ if (s == null) {
+ return null;
+ }
+ s = s.trim();
+ if (s.length() == 0) {
+ return null;
+ }
+ return new Label(_colInXls, _rowInXls, s);
+ }
+
+ @Override
+ public int getMaxCol() {
+ return offsetToApply + listFrtTable.getColumnCount();
+ }
+
+ @Override
+ public int getMaxRow() {
+ return listFrtTable.getRowCount();
+ }
+
+ @Override
+ public List<String> getComments() {
+ return Collections.emptyList();
+ }
+
+}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementTopComponent.java 2016-11-22 09:48:54 UTC (rev 9459)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListFrottementTopComponent.java 2016-11-22 11:20:28 UTC (rev 9460)
@@ -26,7 +26,7 @@
import org.apache.commons.lang.StringUtils;
import org.fudaa.ctulu.gui.CtuluFileChooser;
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
-import org.fudaa.ctulu.table.CtuluTableModelDefault;
+import org.fudaa.ctulu.table.CtuluTableModelInterface;
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.config.lit.LitNomme;
import org.fudaa.dodico.crue.metier.emh.CatEMHBranche;
@@ -48,7 +48,6 @@
import org.fudaa.fudaa.crue.modelling.loi.ModellingOpenDFRTNodeAction;
import org.fudaa.fudaa.crue.modelling.services.EnumModification;
import org.fudaa.fudaa.crue.modelling.services.ScenarioModificationEvent;
-import org.fudaa.fudaa.crue.views.export.OutlineViewExportTableModel;
import org.openide.util.NbBundle;
import org.openide.windows.TopComponent;
@@ -68,6 +67,7 @@
public static final String TOPCOMPONENT_ACTION = "CTL_" + TOPCOMPONENT_ID;
public static final String PROP_LIT_NUMEROTE = "LitNumerote";
public static final String PROPERTY_BRANCHE = "BRANCHE";
+ protected static final String PROPERTY_FOR_ROW_NAMES = "rowNames";
Long sousModeleUid;
private JScrollPane scrollPane;
private JTable table;
@@ -77,6 +77,17 @@
// menu d'import des fichiers XLS/CSV
JMenuItem importItem;
+ protected final ActionListener modifiedActionListener = new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ setModified(true);
+ }
+ };
+ boolean isUpdating;
+ CatEMHBranche brancheToSelect = null;
+ // GridBuilder gridBuilder;
+ private boolean editable;
+
public ModellingListFrottementTopComponent() {
setName(NbBundle.getMessage(ModellingListFrottementTopComponent.class, TOPCOMPONENT_ACTION));
setToolTipText(NbBundle.getMessage(ModellingListFrottementTopComponent.class, "HINT_" + TOPCOMPONENT_ID));
@@ -84,13 +95,6 @@
setBorder(BorderFactory.createCompoundBorder(getBorder(), BuBorders.EMPTY3333));
}
- protected final ActionListener modifiedActionListener = new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- setModified(true);
- }
- };
-
@Override
protected String getViewHelpCtxId() {
return "vueListeFrottements";
@@ -127,7 +131,6 @@
protected void scenarioReloaded() {
scenarioLoaded();
}
- boolean isUpdating;
@Override
public void setModified(boolean modified) {
@@ -202,6 +205,7 @@
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.setCellSelectionEnabled(false);
table.setRowSelectionAllowed(true);
+ table.putClientProperty(PROPERTY_FOR_ROW_NAMES, rows);
table.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
@@ -278,7 +282,7 @@
* Export csv/xlsx du tableau
*/
protected void exportTable() {
- CtuluTableModelDefault defaultModel = new OutlineViewExportTableModel(table, null, null);
+ CtuluTableModelInterface defaultModel = new ModellingListFrottementExportTableModel(table);
CtuluTableSimpleExporter.doExport(';', defaultModel, CtuluUIForNetbeans.DEFAULT);
}
@@ -328,7 +332,6 @@
scenarioReloaded();
}
}
- CatEMHBranche brancheToSelect = null;
public void setBrancheUid(Long uid) {
CatEMHBranche branche = (CatEMHBranche) getScenario().getIdRegistry().getEmh(uid);
@@ -348,8 +351,6 @@
void readProperties(java.util.Properties p) {
}
-// GridBuilder gridBuilder;
- private boolean editable;
@Override
protected void setEditable(boolean b) {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties 2016-11-22 09:48:54 UTC (rev 9459)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties 2016-11-22 11:20:28 UTC (rev 9460)
@@ -58,4 +58,5 @@
Filtre.Label=Branche :
button.export.name=Exporter
-button.import.name=Importer
\ No newline at end of file
+button.import.name=Importer
+listFrottementExport.first.column.name=Branche / Section
Modified: trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/OutlineViewExportTableModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/OutlineViewExportTableModel.java 2016-11-22 09:48:54 UTC (rev 9459)
+++ trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/OutlineViewExportTableModel.java 2016-11-22 11:20:28 UTC (rev 9460)
@@ -10,6 +10,7 @@
import org.openide.util.Exceptions;
/**
+ * Le modele pour adapater une table netbeans a un export excel/csv utilisé par ctulu
*
* @author Frederic Deniger
*/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2017-01-11 22:10:07
|
Revision: 9516
http://sourceforge.net/p/fudaa/svn/9516
Author: deniger
Date: 2017-01-11 22:10:05 +0000 (Wed, 11 Jan 2017)
Log Message:
-----------
javadoc
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/AbstractSelectedEMHService.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSelectedEMHService.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportSelectedEMHService.java
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/AbstractSelectedEMHService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/AbstractSelectedEMHService.java 2017-01-11 21:53:56 UTC (rev 9515)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/AbstractSelectedEMHService.java 2017-01-11 22:10:05 UTC (rev 9516)
@@ -12,33 +12,74 @@
import org.openide.util.lookup.InstanceContent;
/**
- * conserve les UID des EMH sélectionnés
+ * conserve les UID des EMH sélectionnés dans une perspective.
*
+ * <table border="1" cellpadding="3" cellspacing="0" summary="lookups">
+ * <tr>
+ * <th align="left">Lookup</th>
+ * <th align="left">Commentaire</th>
+ * <th align="left">Méthodes utilisant le lookup</th>
+ * </tr>
+ * <tr>
+ * <td>{@link java.lang.Long}: </td>
+ * <td> les uids des EMHS sélectionnés.
+ * </td>
+ * <td>{@link #setSelectedEMHs(java.util.Collection)}, {@link #getSelectedUids()}, {@link #clearContent()}</td>
+ * </tr>
+ * </table>
+ *
* @author Frederic Deniger
*/
public class AbstractSelectedEMHService implements Lookup.Provider {
- private InstanceContent dynamicContent = new InstanceContent();
- private Lookup lookup = new AbstractLookup(dynamicContent);
+ /**
+ * le contenu du lookup du service
+ */
+ private final InstanceContent dynamicContent = new InstanceContent();
+ /**
+ * le lookup du service
+ */
+ private final Lookup lookup = new AbstractLookup(dynamicContent);
+ /**
+ * true si le lookup est en cours de modifications ( vaudra true lors de l'ajout de plusieurs éléments et false à la fin de l'action).
+ */
+ private boolean updating;
+ /**
+ *
+ * @return le lookup du service
+ */
@Override
public Lookup getLookup() {
return lookup;
}
- private boolean updating;
+ /**
+ * @return si la selection est en cours de mise à jour.
+ */
public boolean isUpdating() {
return updating;
}
+ /**
+ * efface la sélection en cours et la remplace par la nouvelle sélection {@code emhs}.
+ * Au cours des opérations {@link #isUpdating()} vaudra true, puis false à la fin de la modification du lookup du service
+ *
+ * @see EMH#getUiId()
+ * @param emhs la nouvelle sélectiond'EMHs ( on récupère les uid).: ne doit pas être null.
+ */
public void setSelectedEMHs(Collection<EMH> emhs) {
+ //on nettoie le contenu actuel.
clearContent();
+ //on ajoute la nouvelle selection
final int size = emhs.size();
+ //en cours de modification si au moins un element à ajouter
if (size > 1) {
updating = true;
}
int idx = 0;
for (EMH emh : emhs) {
+ //pour envoyer un event à la dernière modification
if (++idx == size) {
updating = false;
}
@@ -47,14 +88,24 @@
updating = false;
}
+ /**
+ * efface la sélection en cours et la remplace par la nouvelle sélection {@code emhs}.
+ * Au cours des opérations {@link #isUpdating()} vaudra true, puis false à la fin de la modification du lookup du service
+ *
+ * @param uids la nouvelle sélection d'uid ne doit pas être null
+ */
public void setSelectedUids(Collection<Long> uids) {
+ //on nettoie le contenu actuel.
clearContent();
+ //on ajoute la nouvelle selection
final int size = uids.size();
+ //en cours de modification si au moins un element à ajouter
if (size > 1) {
updating = true;
}
int idx = 0;
for (Long uid : uids) {
+ //pour envoyer un event à la dernière modification
if (++idx == size) {
updating = false;
}
@@ -63,11 +114,19 @@
updating = false;
}
+ /**
+ *
+ * @return ensemble des uid en cours de sélection. Jamais null.
+ */
public Set<Long> getSelectedUids() {
return new HashSet<Long>(lookup.lookupAll(Long.class));
}
- public void clearContent() {
+ /**
+ * Supprime la sélection courante.
+ */
+ private void clearContent() {
+ //on recupere tous les uids sélectionnés et on les enleve du lookup.
Collection<? extends Long> lookupAll = lookup.lookupAll(Long.class);
final int size = lookupAll.size();
if (size > 1) {
@@ -75,6 +134,7 @@
}
int idx = 0;
for (Long uid : lookupAll) {
+ //pour envoyer un event à la dernière modification
if (++idx == size) {
updating = false;
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSelectedEMHService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSelectedEMHService.java 2017-01-11 21:53:56 UTC (rev 9515)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSelectedEMHService.java 2017-01-11 22:10:05 UTC (rev 9516)
@@ -8,13 +8,19 @@
import org.openide.util.lookup.ServiceProvider;
/**
- * conserve les UID des EMH sélectionnés
+ * conserve les UID des EMH sélectionnées. Pour les lookup voir {@link org.fudaa.fudaa.crue.common.services.AbstractSelectedEMHService}.
*
+ * @see org.fudaa.fudaa.crue.common.services.AbstractSelectedEMHService
+ *
* @author Frederic Deniger
*/
@ServiceProvider(service = ModellingSelectedEMHService.class)
public class ModellingSelectedEMHService extends AbstractSelectedEMHService implements Lookup.Provider {
+ /**
+ *
+ * @return le lookup du service
+ */
@Override
public Lookup getLookup() {
return super.getLookup();
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportSelectedEMHService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportSelectedEMHService.java 2017-01-11 21:53:56 UTC (rev 9515)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportSelectedEMHService.java 2017-01-11 22:10:05 UTC (rev 9516)
@@ -8,13 +8,19 @@
import org.openide.util.lookup.ServiceProvider;
/**
- * conserve les UID des EMH sélectionnés
+ * conserve les UID des EMH sélectionnées. Pour les lookup voir {@link org.fudaa.fudaa.crue.common.services.AbstractSelectedEMHService}.
*
+ * @see org.fudaa.fudaa.crue.common.services.AbstractSelectedEMHService
+ *
* @author Frederic Deniger
*/
@ServiceProvider(service = ReportSelectedEMHService.class)
public class ReportSelectedEMHService extends AbstractSelectedEMHService implements Lookup.Provider {
+ /**
+ *
+ * @return le lookup du service
+ */
@Override
public Lookup getLookup() {
return super.getLookup();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2017-01-25 16:13:02
|
Revision: 9529
http://sourceforge.net/p/fudaa/svn/9529
Author: deniger
Date: 2017-01-25 16:13:00 +0000 (Wed, 25 Jan 2017)
Log Message:
-----------
javadoc + renommage de classes pour etre plus claire
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/ScenarioAutoModifiedState.java
trunk/soft/fudaa-crue/ui-commandline/src/main/java/org/fudaa/fudaa/crue/uicommandline/ArgumentLineAnalyser.java
trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ProjectLoadProgressRunnable.java
trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ScenarioLoaderServiceAbstract.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java
trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/ScenarioAutoModifiedState.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/ScenarioAutoModifiedState.java 2017-01-25 15:06:46 UTC (rev 9528)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/ScenarioAutoModifiedState.java 2017-01-25 16:13:00 UTC (rev 9529)
@@ -3,7 +3,10 @@
*/
package org.fudaa.dodico.crue.metier;
+import org.fudaa.dodico.crue.metier.emh.EMHScenario;
+
/**
+ * Contient un etat des modifications appporteés automatiquement lors du chargement du scenario.
*
* @author Frederic Deniger
*/
@@ -14,40 +17,79 @@
private boolean profilModified;
private boolean ordResModified;
+ /**
+ * des EMHs ont été réordonnées
+ *
+ * @see EMHScenario#sort()
+ */
public void setReorderedDone() {
this.reorderedDone = true;
}
+ /**
+ * @return true si des EMHs ont été réordonnées
+ * @see EMHScenario#sort()
+ */
public boolean isReorderedDone() {
return reorderedDone;
}
+ /**
+ *
+ *
+ * @return true si des EMHS/lois ont été renommées (Crue 9)
+ */
public boolean isRenamedDone() {
return renamedDone;
}
+ /**
+ *
+ * @return true si des Profiles ont été modifies
+ * @see org.fudaa.dodico.crue.validation.ValidateAndRebuildProfilSection
+ */
public boolean isProfilModified() {
return profilModified;
}
+ /**
+ *
+ * @return si des OrdRes ont été modifiés
+ */
public boolean isOrdResModified() {
return ordResModified;
}
-
-
+ /**
+ * A appeler si des EMHS/lois ont été renommées (Crue 9)
+ */
public void setRenamedDone() {
this.renamedDone = true;
}
+ /**
+ * A appeler si des Profiles ont été modifies
+ *
+ * @see org.fudaa.dodico.crue.validation.ValidateAndRebuildProfilSection
+ */
public void setProfilModified() {
this.profilModified = true;
}
+ /**
+ * A appeler si des OrdRes ont été modifiés
+ *
+ * @see org.fudaa.dodico.crue.validation.ValidatorORES
+ *
+ */
public void setOrdResModified() {
this.ordResModified = true;
}
+ /**
+ *
+ * @return true si au moins une modification a été apportée
+ */
public boolean isNormalized() {
return renamedDone || reorderedDone || profilModified || ordResModified;
}
Modified: trunk/soft/fudaa-crue/ui-commandline/src/main/java/org/fudaa/fudaa/crue/uicommandline/ArgumentLineAnalyser.java
===================================================================
--- trunk/soft/fudaa-crue/ui-commandline/src/main/java/org/fudaa/fudaa/crue/uicommandline/ArgumentLineAnalyser.java 2017-01-25 15:06:46 UTC (rev 9528)
+++ trunk/soft/fudaa-crue/ui-commandline/src/main/java/org/fudaa/fudaa/crue/uicommandline/ArgumentLineAnalyser.java 2017-01-25 16:13:00 UTC (rev 9529)
@@ -14,28 +14,53 @@
import org.openide.windows.WindowManager;
/**
+ * Ne contient pas de lookup. Un service utilise par Netbeans RCP pour traiter les arguements de lancement de l'application.
+ * Dans le cas de Fudaa-Crue permet de gérer le multi-instance de Fudaa-Crue: demnader de remettre en avant-plan l'application Fudaa-Crue ou ouvrir une nouvelle
+ * instance qui ne sera pas persistée.
*
* @author deniger
*/
@ServiceProvider(service = OptionProcessor.class)
public class ArgumentLineAnalyser extends OptionProcessor {
+ /**
+ * Clé de l'option pour remettre en avant-plan l'application Fudaa-Crue ( l'utilisateur clique plusieurs fois sur l'icone)
+ */
private static final String TO_FRONT_OPTION = "toFront";
+ /**
+ * Clé de l'option lancer une nouvelle instance qui contiendra une copie temporaire des fichiers de configuration de Nebeans RCP.
+ */
private static final String IS_COPY_OPTION = "isCopy";
-// private Set<File> userDirOpened = new HashSet<File>();
- private Option openMultiInstances = Option.withoutArgument(Option.NO_SHORT_NAME, "multi-instances");
- private Option toFront = Option.withoutArgument(Option.NO_SHORT_NAME, TO_FRONT_OPTION);
- private Option isCopy = Option.withoutArgument(Option.NO_SHORT_NAME, IS_COPY_OPTION);
+ /**
+ * ouverture multi-instance
+ */
+ private final Option openMultiInstances = Option.withoutArgument(Option.NO_SHORT_NAME, "multi-instances");
+ /**
+ * Reactiver la fenetre Fudaa-Crue
+ */
+ private final Option toFront = Option.withoutArgument(Option.NO_SHORT_NAME, TO_FRONT_OPTION);
+ /**
+ * nouvelle instance avec copie des fichiers de configuration.
+ */
+ private final Option isCopy = Option.withoutArgument(Option.NO_SHORT_NAME, IS_COPY_OPTION);
+ /**
+ * Un cas de lancements mutliples est detecté: gestion de ces cas de figure
+ */
private void activateOrCreateNewInstance() {
+ //propose un choix à u l'utilisateur
MultiNetbeansInstanceChooser.Result res = MultiNetbeansInstanceChooser.choose(getOpenedInstances(true));
+ //il veut créer une nouvelle instance
if (res.isCreateNew()) {
launchNewInstance();
+ //il veut activer une instance existante
} else if (res.isActivateExisting()) {
OpenedNetbeansInstance instance = res.getInstance();
+ //c'est l'instance en cours: simple on bouge met le focus sur la fenetre principale
if (instance.isCurrent()) {
moveMainWindowToFront();
} else {
+ //sinon on relance Fudaa-crue.exe dans le bon dossier userDir en demande d'activer l'autre instance...
activateInstance(instance.getUserDir());
}
}
@@ -53,7 +78,6 @@
if (!openedInstances.isEmpty()) {
Result choose = MultiNetbeansInstanceChooser.choose(openedInstances);
if (choose.isActivateExisting()) {
- //WindowManager.getDefault().getMainWindow().setVisible(false);
activateInstance(choose.getInstance().getUserDir());
System.exit(0);
} else if (choose.isCancel()) {
@@ -63,6 +87,9 @@
}
}
+ /**
+ * Une instance est déjà lancée: il faut demander à l'utilisateur ce qu'il veut faire.
+ */
private void instanceAlreadyLaunched() {
EventQueue.invokeLater(new Runnable() {
@@ -73,6 +100,9 @@
});
}
+ /**
+ * Création d'une nouvelle instance en copiant les fichiers de configuration userDir.
+ */
private void launchNewInstance() {
try {
File newUserDir = MultiNetbeansInstanceUtils.createNewUserDir();
@@ -82,14 +112,25 @@
}
}
+ /**
+ *
+ * @param userDir permet d'identifier l'instance à activer
+ */
private void activateInstance(File userDir) {
launchAppli(userDir, "--" + TO_FRONT_OPTION);
}
+ /**
+ * Lancement de Fudaa-Crue dans le userDir fourni et avec l'option donnée
+ *
+ * @param newUserDir le userDir a utiliser
+ * @param option l'option
+ */
private void launchAppli(File newUserDir, final String option) {
File platformDir = new File(System.getProperty("netbeans.home"));
File binDir = new File(platformDir.getParentFile(), "bin");
+ //on relance l'exe avec la bonne option:
File exe = new File(binDir, MultiNetbeansInstanceUtils.isWindows() ? "fudaacrue.exe" : "fudaacrue");
ProcessBuilder builder = new ProcessBuilder(exe.getAbsolutePath(), "--userdir", newUserDir.getAbsolutePath(), option);
try {
@@ -99,7 +140,10 @@
}
}
- public void moveMainWindowToFront() {
+ /**
+ * Envoie la fenetre de l'application courante en avant-plan.
+ */
+ private void moveMainWindowToFront() {
EventQueue.invokeLater(new Runnable() {
@Override
@@ -109,6 +153,10 @@
});
}
+ /**
+ *
+ * @return les 3 options: multi-instances, toFront et nouvelle instance.
+ */
@Override
protected Set<Option> getOptions() {
HashSet set = new HashSet();
@@ -118,12 +166,19 @@
return set;
}
+ /**
+ *
+ * @param includeCurrent si true, l'instance courante doit être ajouté à la liste
+ * @return liste des instances de Netbeans ouvertes.
+ */
private List<OpenedNetbeansInstance> getOpenedInstances(boolean includeCurrent) {
+ //le résultats
List<OpenedNetbeansInstance> openedIstance = new ArrayList<>();
if (includeCurrent) {
OpenedNetbeansInstance thisInstance = new OpenedNetbeansInstance(MultiNetbeansInstanceUtils.getUserDir(), MultiNetbeansInstanceUtils.getMainWindowTitle(), true);
openedIstance.add(thisInstance);
}
+ //on parcourt la listes des instances ouvertes:
List<File> userDirOpened = MultiNetbeansInstanceUtils.listUserDir();
for (File userDir : userDirOpened) {
File frameName = MultiNetbeansInstanceUtils.getFrameName(userDir);
@@ -138,6 +193,13 @@
return openedIstance;
}
+ /**
+ * traitement des arguments de l'application pour réactiver une instance (toFront) ou créer une nouvelle instance.
+ *
+ * @param env non utilisé
+ * @param maps les options passées en parametres
+ * @throws CommandException
+ */
@Override
protected void process(Env env, Map<Option, String[]> maps) throws CommandException {
//for copied instances we just move to front.
Modified: trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ProjectLoadProgressRunnable.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ProjectLoadProgressRunnable.java 2017-01-25 15:06:46 UTC (rev 9528)
+++ trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ProjectLoadProgressRunnable.java 2017-01-25 16:13:00 UTC (rev 9529)
@@ -28,12 +28,24 @@
this.run = run;
}
+ /**
+ * met à jour la barre de progression (indeterminate) et charge le scenario/run.
+ *
+ * @param handle
+ * @return
+ */
@Override
public ScenarioLoaderOperation run(ProgressHandle handle) {
handle.switchToIndeterminate();
return load();
}
+ /**
+ * Lance directement le chargement via {@link ScenarioLoader}
+ *
+ * @return le resultat du chargement du scenario.
+ * @see ScenarioLoader
+ */
public ScenarioLoaderOperation load() {
ScenarioLoader loader = new ScenarioLoader(scenario, projet, projet.getCoeurConfig());
return loader.load(run);
Modified: trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ScenarioLoaderServiceAbstract.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ScenarioLoaderServiceAbstract.java 2017-01-25 15:06:46 UTC (rev 9528)
+++ trunk/soft/fudaa-crue/ui-loader/src/main/java/org/fudaa/fudaa/crue/loader/ScenarioLoaderServiceAbstract.java 2017-01-25 16:13:00 UTC (rev 9529)
@@ -18,59 +18,131 @@
import org.openide.util.lookup.InstanceContent;
/**
+ * Classe abstraite pour les services gerant le cycle de vie d'un scenario.
+ * <table border="1" cellpadding="3" cellspacing="0" summary="lookups">
+ * <tr>
+ * <th align="left">Lookup</th>
+ * <th align="left">Commentaire</th>
+ * <th align="left">Méthode utilisant le lookup</th>
+ * </tr>
+ * <tr>
+ * <td>{@link EMHScenario}</td>
+ * <td>
+ * Le scenario chargé
+ * </td>
+ * <td><code>{@link #getScenarioLoaded()}</code></td>
+ * </tr>
+ * <tr>
+ * <td>{@link ManagerEMHScenario}</td>
+ * <td> Le ManagerEMHScenario chargé: contient en plus des infos sur le run chargé mais non utile ici
+ * <td><code>{@link #getManagerScenarioLoaded()}</code></td>
+ * </tr>
+ * <tr>
+ * <td>{@link EMHRun}</td>
+ * <td> Le run chargé</td>
+ * <td><code>{@link #getRunLoaded()}</code></td>
+ * </tr>
+ ** <tr>
+ * <td>{@link org.fudaa.ctulu.CtuluLogGroup}</td>
+ * <td>Bilan de la dernière opération effectuée dans la perspective</td>
+ * <td><code>{@link #getLastLogsGroup()}</code></td>
+ * </tr>
+ * </table>
*
* @author deniger
*/
public class ScenarioLoaderServiceAbstract implements Lookup.Provider {
-
+
+ //les lookups:
protected InstanceContent dynamicContent = new InstanceContent();
protected Lookup lookup = new AbstractLookup(dynamicContent);
+ //pour suivre la selection de la perspective.
SelectedPerspectiveService service = Lookup.getDefault().lookup(SelectedPerspectiveService.class);
+ //la perspective utilisant cette classe.
private final PerspectiveEnum perspectiveToActive;
-
+
+ /**
+ *
+ * @param perspectiveToActive la perspective a activer après le chargement d'un scenario.
+ */
public ScenarioLoaderServiceAbstract(PerspectiveEnum perspectiveToActive) {
this.perspectiveToActive = perspectiveToActive;
}
-
+
+ /**
+ *
+ * @return le scenario chargé
+ */
public EMHScenario getScenarioLoaded() {
return lookup.lookup(EMHScenario.class);
}
-
+
+ /**
+ *
+ * @return true si scenario chargé
+ */
public boolean isScenarioLoaded() {
return getScenarioLoaded() != null;
}
-
+
+ /**
+ *
+ * @return le managerEMHScenario chargé
+ */
public ManagerEMHScenario getManagerScenarioLoaded() {
return lookup.lookup(ManagerEMHScenario.class);
}
-
+
+ /**
+ *
+ * @return le run chargé.
+ */
public EMHRun getRunLoaded() {
return lookup.lookup(EMHRun.class);
}
-
+
+ /**
+ *
+ * @return true si run chargé
+ */
protected boolean isRunLoaded() {
return getRunLoaded() != null;
}
-
+
@Override
public Lookup getLookup() {
return lookup;
}
-
+
+ /**
+ *
+ * @return bilan de la dernière opération.
+ */
public CtuluLogGroup getLastLogsGroup() {
return lookup.lookup(CtuluLogGroup.class);
}
-
+
+ /**
+ *
+ * @param ctuluLogGroup le nouveau bilan a persister.
+ */
protected void updateLastLogsGroup(CtuluLogGroup ctuluLogGroup) {
CtuluLogGroup lastLogsGroup = getLastLogsGroup();
+ //on enleve le précédent
if (lastLogsGroup != null) {
dynamicContent.remove(lastLogsGroup);
}
+ //et ajoute le nouveau.
if (ctuluLogGroup != null) {
dynamicContent.add(ctuluLogGroup);
}
}
-
+
+ /**
+ * Decharge l'ensemble: Scenario, ManagerEMHScenario, Run et le dernier bilan.
+ *
+ * @return toujours true
+ */
public boolean unloadScenario() {
final EMHRun runLoaded = getRunLoaded();
if (runLoaded != null) {
@@ -89,45 +161,68 @@
dynamicContent.remove(scenarioLoaded);
}
return true;
-
+
}
- protected boolean addLogToLookup = false;
-
+
+ /**
+ * Lors du chargement d'un scenario, des modifications automatiques peuvent être apportées. Si un service veut afficher ces modifications, il doit redéfinir
+ * cette methode.
+ *
+ * @param modificationDoneWhileLoading
+ */
protected void manageAutomaticModification(ScenarioAutoModifiedState modificationDoneWhileLoading) {
}
-
+
+ /**
+ * Chargement du scenario/run avec mis à jour du bilan et activation de la perspective (voir constructeur)
+ *
+ * @param projet le projet
+ * @param managerScenario le scenario a charger
+ * @param run le run a chargé. Si null, ignoré.
+ * @return true si chargé
+ * @see ProjectLoadProgressRunnable
+ * @see org.fudaa.dodico.crue.projet.ScenarioLoader
+ */
protected boolean loadScenario(final EMHProjet projet, final ManagerEMHScenario managerScenario, final EMHRun run) {
+ //Chargement
final ProjectLoadProgressRunnable projectLoadProgressRunnable = new ProjectLoadProgressRunnable(projet, managerScenario, run);
final ScenarioLoaderOperation load = doLoad(projectLoadProgressRunnable, LoaderService.getNom(managerScenario, run));
-
+//l'opération est terminée. On se place dans le thread swing pour mettre à jour les composants swing...
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
final EMHScenario result = load == null ? null : load.getResult();
if (result != null) {
+ //on active la perspective
service.activePerspective(perspectiveToActive);
+ //on ferme eventuellement l'ancien scenario
unloadScenario();
- if (addLogToLookup) {
- dynamicContent.add(load.getLogs());
- }
+ //on charge les logs et le manager
+ dynamicContent.add(load.getLogs());
dynamicContent.add(managerScenario);
+ //on charge le run
if (run != null) {
dynamicContent.add(run);
}
+ //et finalement le scenario
+ //attention l'ordre est important car beaucoup de service ecoute l'objet EMHScenario.
+ //en l'ajoutant à la fin, on est sur que ces services auront aussi accès aux autres données ( bilan, run, manager).
dynamicContent.add(load.getResult());
}
+ //on affiche en avant-plan le bilan si des erreurs ont été trouvées:
if (load.getLogs().containsError() || load.getLogs().containsFatalError()) {
LogsDisplayer.displayError(load.getLogs(), CommonMessage.getMessage("LoadScenarioBilan.DialogTitle", managerScenario.getNom()));
}
+ //et eventuellement les modifications opérées pendant le chargement.
if (result != null) {
manageAutomaticModification(load.getAutoModifiedState());
}
}
});
-
+ //return true si le scenario est bien présent:
return load.getResult() != null;
}
-
+
public ScenarioLoaderOperation doLoad(final ProjectLoadProgressRunnable projectLoadProgressRunnable, final String nom) {
ScenarioLoaderOperation load = null;
if (EventQueue.isDispatchThread()) {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java 2017-01-25 15:06:46 UTC (rev 9528)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java 2017-01-25 16:13:00 UTC (rev 9529)
@@ -25,22 +25,57 @@
import org.openide.util.lookup.ServiceProviders;
/**
+ * Le service de base de la perspective Modélisation permettant de gérer le scenario ouvert: chargement, sauvegarde,...
+ * <table border="1" cellpadding="3" cellspacing="0" summary="lookups">
+ * <tr>
+ * <th align="left">Lookup</th>
+ * <th align="left">Commentaire</th>
+ * <th align="left">Méthode utilisant le lookup</th>
+ * </tr>
+ * <tr>
+ * <td>{@link EMHScenario}</td>
+ * <td>
+ * Le scenario chargé
+ * </td>
+ * <td><code>{@link #getScenarioLoaded()}</code></td>
+ * </tr>
+ * <tr>
+ * <td>{@link ManagerEMHScenario}</td>
+ * <td> Le ManagerEMHScenario chargé: contient en plus des infos sur le run chargé mais non utile ici
+ * <td><code>{@link #getManagerScenarioLoaded()}</code></td>
+ * </tr>
+ * <tr>
+ * <td>{@link org.fudaa.ctulu.CtuluLogGroup}</td>
+ * <td>Bilan de la dernière opération effectuée dans la perspective</td>
+ * <td><code>{@link #getLastLogsGroup()}</code></td>
+ * </tr>
+ * </table>
*
* @author deniger
*/
@ServiceProviders(value = {
- @ServiceProvider(service = ModellingScenarioService.class),
+ @ServiceProvider(service = ModellingScenarioService.class)
+ ,
@ServiceProvider(service = ModellingScenarioServiceImpl.class)})
public class ModellingScenarioServiceImpl extends ScenarioLoaderServiceAbstract implements ModellingScenarioService {
- private EMHProjetServiceImpl projetService = Lookup.getDefault().lookup(EMHProjetServiceImpl.class);
+ private final EMHProjetServiceImpl projetService = Lookup.getDefault().lookup(EMHProjetServiceImpl.class);
+ private File tempDir;
+ private boolean reloading;
+
public ModellingScenarioServiceImpl() {
super(PerspectiveEnum.MODELLING);
- addLogToLookup = true;
}
- File tempDir;
+ /**
+ * Fait appel à la méthode de la classe parent. Créé en plus un dossier temporaire pour les sauvegardes.
+ *
+ * @param projet le projet contenant le scenario
+ * @param scenario le scenario a charger
+ * @return true sir le scenario a pu etre chargé.
+ * @see ScenarioLoaderServiceAbstract#loadScenario(org.fudaa.dodico.crue.metier.etude.EMHProjet, org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario, org.fudaa.dodico.crue.metier.etude.EMHRun)
+ */
@Override
public boolean loadScenario(EMHProjet projet, ManagerEMHScenario scenario) {
boolean res = super.loadScenario(projet, scenario, null);
@@ -54,10 +89,17 @@
return res;
}
+ /**
+ * Avertit l'utilsateur des modifications apportées automatiquement lors du chargement du scenario
+ *
+ * @param modificationDoneWhileLoading les modifications effectuées au chargemenet
+ */
@Override
protected void manageAutomaticModification(ScenarioAutoModifiedState modificationDoneWhileLoading) {
+ //le scenario a été normalisé
if (modificationDoneWhileLoading.isNormalized()) {
-
+ //il faut donc avertir l'utilsateur.
+ //invokeLater pour le faire après les actions en cours.
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
@@ -73,14 +115,18 @@
/**
* Attention: a utiliser pour les tests uniquement !
*
- * @param scenario
- * @param projet
+ * @param scenario le scenario chargé
+ * @param projet le projet chargé.
*/
public void setForTest(EMHScenario scenario, EMHProjet projet) {
super.dynamicContent.add(scenario);
projetService.setForTest(projet);
}
+ /**
+ *
+ * @return le dossier temp associé au scenario chargé. Utilisé pour sauvegarder en 2 etapes les fichiers par exemple
+ */
public File getTempDir() {
return tempDir;
}
@@ -135,7 +181,7 @@
ModellingSaveProcessor saveProcessor = new ModellingSaveProcessor();
Pair<Set<String>, CtuluLogGroup> logs = CrueProgressUtils.showProgressDialogAndRun(saveProcessor,
NbBundle.getMessage(ModellingSaveAction.class,
- "CTL_ModellingSaveAction"));
+ "CTL_ModellingSaveAction"));
updateLastLogsGroup(logs.second);
if (!logs.first.isEmpty()) {
projetService.scenarioSaved(getManagerScenarioLoaded(), logs.first);
@@ -143,7 +189,6 @@
return !logs.second.containsFatalError();
}
- boolean reloading;
@Override
public boolean isReloading() {
Modified: trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java
===================================================================
--- trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java 2017-01-25 15:06:46 UTC (rev 9528)
+++ trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java 2017-01-25 16:13:00 UTC (rev 9529)
@@ -36,7 +36,6 @@
public PostServiceImpl() {
super(PerspectiveEnum.POST);
- super.addLogToLookup = true;
}
private CrueRunLauncher getRunLauncher() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2017-05-21 20:01:51
|
Revision: 9576
http://sourceforge.net/p/fudaa/svn/9576
Author: deniger
Date: 2017-05-21 20:01:48 +0000 (Sun, 21 May 2017)
Log Message:
-----------
version 1.3
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-project/pom.xml
trunk/soft/fudaa-crue/ui-sysdoc/pom.xml
Modified: trunk/soft/fudaa-crue/crue-project/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/crue-project/pom.xml 2017-05-21 20:01:37 UTC (rev 9575)
+++ trunk/soft/fudaa-crue/crue-project/pom.xml 2017-05-21 20:01:48 UTC (rev 9576)
@@ -4,7 +4,7 @@
<parent>
<artifactId>fudaa-crue</artifactId>
<groupId>org.fudaa.soft.fudaa-crue</groupId>
- <version>1.3-SNAPSHOT</version>
+ <version>1.3</version>
</parent>
<artifactId>crue-project</artifactId>
<name>Crue Project</name>
Modified: trunk/soft/fudaa-crue/ui-sysdoc/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-sysdoc/pom.xml 2017-05-21 20:01:37 UTC (rev 9575)
+++ trunk/soft/fudaa-crue/ui-sysdoc/pom.xml 2017-05-21 20:01:48 UTC (rev 9576)
@@ -4,7 +4,7 @@
<parent>
<artifactId>fudaa-crue</artifactId>
<groupId>org.fudaa.soft.fudaa-crue</groupId>
- <version>1.3-SNAPSHOT</version>
+ <version>1.3</version>
</parent>
<artifactId>ui-sysdoc</artifactId>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2017-06-28 17:33:27
|
Revision: 9654
http://sourceforge.net/p/fudaa/svn/9654
Author: deniger
Date: 2017-06-28 17:33:24 +0000 (Wed, 28 Jun 2017)
Log Message:
-----------
Classes AOC
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/EMHProjectInfos.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/FichierLHPTSupport.java
trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/projet/EMHProjetControllerTest.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/EMHProjectInfos.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/EMHProjectInfos.java 2017-06-28 17:18:45 UTC (rev 9653)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/EMHProjectInfos.java 2017-06-28 17:33:24 UTC (rev 9654)
@@ -217,6 +217,9 @@
}
private File getDir(String id) {
+ if(directories==null){
+ return null;
+ }
String path = directories.get(id);
if (CrueFileHelper.isRelative(path) && parentDirOfEtuFile == null) {
LOGGER.log(Level.WARNING, "path is relative for {0} and dir of etu is not set", id);
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/FichierLHPTSupport.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/FichierLHPTSupport.java 2017-06-28 17:18:45 UTC (rev 9653)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/etude/FichierLHPTSupport.java 2017-06-28 17:33:24 UTC (rev 9654)
@@ -58,6 +58,9 @@
private void createMap(EMHProjet emhProjet) {
final Set<String> scenarioNames = TransformerHelper.toSetNom(emhProjet.getListeScenarios());
final File dirOfFichiersEtudes = emhProjet.getDirOfFichiersEtudes();
+ if(dirOfFichiersEtudes==null){
+ return;
+ }
final String extension = CrueFileType.LHPT.getExtension();
for (String scenarioName : scenarioNames) {
String fileName = StringUtils.removeStart(scenarioName, CruePrefix.P_SCENARIO);
Modified: trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/projet/EMHProjetControllerTest.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/projet/EMHProjetControllerTest.java 2017-06-28 17:18:45 UTC (rev 9653)
+++ trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/projet/EMHProjetControllerTest.java 2017-06-28 17:33:24 UTC (rev 9654)
@@ -189,6 +189,9 @@
private void testFiles(File etuDir, String name, CrueLevelType level, CrueVersionType version) {
for (CrueFileType type : CrueFileType.values()) {
+ if(CrueFileType.LHPT.equals(type)){
+ continue;
+ }
if ((type.getCrueVersionType() == version) && (type.getLevel() == level) && (!type.isResultFileType())) {
assertTrue(new File(etuDir, name + "." + type.getExtension()).isFile());
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2017-07-13 11:27:52
|
Revision: 9661
http://sourceforge.net/p/fudaa/svn/9661
Author: deniger
Date: 2017-07-13 11:27:49 +0000 (Thu, 13 Jul 2017)
Log Message:
-----------
Classes AOC
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-aoc/pom.xml
trunk/soft/fudaa-crue/crue-aoc/src/test/java/org/fudaa/dodico/crue/io/aoc/TestCrueAOC.java
trunk/soft/fudaa-crue/crue-aoc/src/test/resources/aoc/campagne.aoc.xml
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/CrueFileType.java
trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/Crue10FileFormat.java
trunk/soft/fudaa-crue/ui-application/application.iml
trunk/soft/fudaa-crue/ui-options/src/main/resources/default-coeurs.zip
Added Paths:
-----------
trunk/soft/fudaa-crue/crue-aoc/src/main/java/org/fudaa/dodico/crue/io/aoc/CrueFileFormatBuilderAOC.java
trunk/soft/fudaa-crue/crue-config/src/test/resources/xsd/aoc-1.2.xsd
Modified: trunk/soft/fudaa-crue/crue-aoc/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/crue-aoc/pom.xml 2017-07-13 10:10:35 UTC (rev 9660)
+++ trunk/soft/fudaa-crue/crue-aoc/pom.xml 2017-07-13 11:27:49 UTC (rev 9661)
@@ -1,107 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>fudaa-crue</artifactId>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <version>1.4-SNAPSHOT</version>
- </parent>
- <artifactId>crue-aoc</artifactId>
- <name>Crue AOC</name>
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- </properties>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>test-jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <parallel>classes</parallel>
- <threadCount>5</threadCount>
- </configuration>
- </plugin>
- </plugins>
-
- </build>
- <dependencies>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-project</artifactId>
- </dependency>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-compare</artifactId>
- </dependency>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-core</artifactId>
- <scope>test</scope>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-io</artifactId>
- <scope>test</scope>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-config</artifactId>
- </dependency>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-config</artifactId>
- <scope>test</scope>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.fudaa.soft.fudaa-crue</groupId>
- <artifactId>crue-test</artifactId>
- <scope>test</scope>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <!--pour eviter de lancer les tests d'integration-->
- <profiles>
- <profile>
- <id>release</id>
- <build>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>fudaa-crue</artifactId>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <version>1.4-SNAPSHOT</version>
+ </parent>
+ <artifactId>crue-aoc</artifactId>
+ <name>Crue AOC</name>
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+ <build>
<plugins>
- <plugin>
- <groupId>com.keyboardsamurais.maven</groupId>
- <artifactId>maven-timestamp-plugin</artifactId>
- <version>1.0</version>
- <configuration>
- <propertyName>timestamp</propertyName>
- <timestampPattern>dd.MM.yyyy HH:mm</timestampPattern>
- </configuration>
- <executions>
- <execution>
- <goals>
- <goal>create</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <parallel>classes</parallel>
+ <threadCount>5</threadCount>
+ </configuration>
+ </plugin>
</plugins>
- </build>
- </profile>
- </profiles>
+
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-project</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-compare</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-core</artifactId>
+ <scope>test</scope>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-io</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-io</artifactId>
+ <scope>test</scope>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-config</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-config</artifactId>
+ <scope>test</scope>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.fudaa.soft.fudaa-crue</groupId>
+ <artifactId>crue-test</artifactId>
+ <scope>test</scope>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <!--pour eviter de lancer les tests d'integration-->
+ <profiles>
+ <profile>
+ <id>release</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>com.keyboardsamurais.maven</groupId>
+ <artifactId>maven-timestamp-plugin</artifactId>
+ <version>1.0</version>
+ <configuration>
+ <propertyName>timestamp</propertyName>
+ <timestampPattern>dd.MM.yyyy HH:mm</timestampPattern>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>create</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
Copied: trunk/soft/fudaa-crue/crue-aoc/src/main/java/org/fudaa/dodico/crue/io/aoc/CrueFileFormatBuilderAOC.java (from rev 9660, trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/CrueFileFormatBuilderLHPT.java)
===================================================================
--- trunk/soft/fudaa-crue/crue-aoc/src/main/java/org/fudaa/dodico/crue/io/aoc/CrueFileFormatBuilderAOC.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-aoc/src/main/java/org/fudaa/dodico/crue/io/aoc/CrueFileFormatBuilderAOC.java 2017-07-13 11:27:49 UTC (rev 9661)
@@ -0,0 +1,22 @@
+/**
+ * License GPL v2
+ */
+package org.fudaa.dodico.crue.io.aoc;
+
+import org.fudaa.dodico.crue.config.coeur.CoeurConfigContrat;
+import org.fudaa.dodico.crue.io.Crue10FileFormat;
+import org.fudaa.dodico.crue.io.CrueFileFormatBuilder;
+import org.fudaa.dodico.crue.io.common.CrueDataXmlReaderWriterImpl;
+import org.fudaa.dodico.crue.metier.CrueFileType;
+import org.fudaa.dodico.crue.projet.aoc.AocCampagne;
+
+public class CrueFileFormatBuilderAOC implements CrueFileFormatBuilder<AocCampagne> {
+
+ @Override
+ public Crue10FileFormat<AocCampagne> getFileFormat(CoeurConfigContrat coeurConfig) {
+ return new Crue10FileFormat<>(new CrueDataXmlReaderWriterImpl<>(CrueFileType.AOC,
+ coeurConfig, new CrueConverterAOC(), new CrueDaoStructureAOC()));
+
+ }
+
+}
Modified: trunk/soft/fudaa-crue/crue-aoc/src/test/java/org/fudaa/dodico/crue/io/aoc/TestCrueAOC.java
===================================================================
--- trunk/soft/fudaa-crue/crue-aoc/src/test/java/org/fudaa/dodico/crue/io/aoc/TestCrueAOC.java 2017-07-13 10:10:35 UTC (rev 9660)
+++ trunk/soft/fudaa-crue/crue-aoc/src/test/java/org/fudaa/dodico/crue/io/aoc/TestCrueAOC.java 2017-07-13 11:27:49 UTC (rev 9661)
@@ -8,6 +8,7 @@
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.common.io.CrueIOResu;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierLoaderDefaultTest;
+import org.fudaa.dodico.crue.config.coeur.TestCoeurConfig;
import org.fudaa.dodico.crue.io.AbstractIOTestCase;
import org.fudaa.dodico.crue.projet.aoc.*;
import org.joda.time.LocalDateTime;
@@ -26,7 +27,7 @@
File testFile;
public TestCrueAOC() {
- super(FICHIER_TEST_XML);
+ super(new CrueFileFormatBuilderAOC().getFileFormat(TestCoeurConfig.INSTANCE), FICHIER_TEST_XML);
}
private static AocCampagne read(File otfaFile) {
@@ -75,17 +76,17 @@
// Cc_T01
assertEquals("Cc_T01", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(0).getCalculRef());
assertEquals("LoiT 1", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(0).getLoiRef());
- assertEquals("Section 1", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(0).getSectionRef());
+ assertEquals("St_Section 1", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(0).getSectionRef());
assertEquals(1, campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(0).getPonderation());
// Cc_T02
assertEquals("Cc_T02", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(1).getCalculRef());
assertEquals("LoiT 2", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(1).getLoiRef());
- assertEquals("Section 2", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(1).getSectionRef());
+ assertEquals("St_Section 2", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(1).getSectionRef());
assertEquals(2, campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(1).getPonderation());
// Cc_T03
assertEquals("Cc_T03", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(2).getCalculRef());
assertEquals("LoiT 3", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(2).getLoiRef());
- assertEquals("Section 3", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(2).getSectionRef());
+ assertEquals("St_Section 3", campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(2).getSectionRef());
assertEquals(3, campagne.getDonnees().getLoisCalculsTransitoires().getLois().get(2).getPonderation());
//Strickler
@@ -126,7 +127,7 @@
assertEquals(2, campagne.getDonnees().getValidationCroisee().getGroupes().size());
AocValidationGroupe validationGroupe = campagne.getDonnees().getValidationCroisee().getGroupes().get(0);
assertEquals(2, validationGroupe.getEffectifApprentissage());
- assertEquals("1", validationGroupe.getId());
+ assertEquals("GR_1", validationGroupe.getId());
assertEquals("Groupe 1", validationGroupe.getNom());
assertEquals("Un commentaire", validationGroupe.getCommentaire());
@@ -136,7 +137,7 @@
validationGroupe = campagne.getDonnees().getValidationCroisee().getGroupes().get(1);
assertEquals(3, validationGroupe.getEffectifApprentissage());
- assertEquals("2", validationGroupe.getId());
+ assertEquals("GR_2", validationGroupe.getId());
assertEquals("Groupe 2", validationGroupe.getNom());
assertEquals("", validationGroupe.getCommentaire());
@@ -196,8 +197,4 @@
return testFile;
}
- @Override
- public void testValide() {
- //TODO Tester validité XSD.
- }
}
Modified: trunk/soft/fudaa-crue/crue-aoc/src/test/resources/aoc/campagne.aoc.xml
===================================================================
--- trunk/soft/fudaa-crue/crue-aoc/src/test/resources/aoc/campagne.aoc.xml 2017-07-13 10:10:35 UTC (rev 9660)
+++ trunk/soft/fudaa-crue/crue-aoc/src/test/resources/aoc/campagne.aoc.xml 2017-07-13 11:27:49 UTC (rev 9661)
@@ -49,9 +49,9 @@
<!-- LoiRef = référence vers un nom de loi dans le fichier LHPT associé à l'étude de la campagne -->
<!-- SectionRef = référence vers un nom de section dans le fichier DRSO associé à l'étude de la campagne -->
<!-- CalculRef = référence vers un nom de Calcul transitoire dans le fichier OCAL associé à l'étude de la campagne -->
- <LoiCalculTransitoire CalculRef="Cc_T01" LoiRef="LoiT 1" SectionRef="Section 1" Ponderation="1"/>
- <LoiCalculTransitoire CalculRef="Cc_T02" LoiRef="LoiT 2" SectionRef="Section 2" Ponderation="2"/>
- <LoiCalculTransitoire CalculRef="Cc_T03" LoiRef="LoiT 3" SectionRef="Section 3" Ponderation="3"/>
+ <LoiCalculTransitoire CalculRef="Cc_T01" LoiRef="LoiT 1" SectionRef="St_Section 1" Ponderation="1"/>
+ <LoiCalculTransitoire CalculRef="Cc_T02" LoiRef="LoiT 2" SectionRef="St_Section 2" Ponderation="2"/>
+ <LoiCalculTransitoire CalculRef="Cc_T03" LoiRef="LoiT 3" SectionRef="St_Section 3" Ponderation="3"/>
</LoisCalculsTransitoires>
<LoisStrickler>
@@ -70,7 +70,7 @@
</ListeCalculs>
<ValidationCroisee>
- <Groupe Id="1" Nom="Groupe 1">
+ <Groupe Id="GR_1" Nom="Groupe 1">
<Lois>
<!-- LoiRef = référence vers un nom de loi dans le fichier LHPT associé à l'étude de la campagne -->
<Loi LoiRef="Loi 3"/>
@@ -79,7 +79,7 @@
<EffectifApprentissage>2</EffectifApprentissage>
<Commentaire>Un commentaire</Commentaire>
</Groupe>
- <Groupe Id="2" Nom="Groupe 2">
+ <Groupe Id="GR_2" Nom="Groupe 2">
<Lois>
<!-- LoiRef = référence vers un nom de loi dans le fichier LHPT associé à l'étude de la campagne -->
<Loi LoiRef="Loi 1"/>
Copied: trunk/soft/fudaa-crue/crue-config/src/test/resources/xsd/aoc-1.2.xsd (from rev 9659, trunk/soft/fudaa-crue/crue-config/src/test/resources/xsd/lhpt-1.2.xsd)
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/test/resources/xsd/aoc-1.2.xsd (rev 0)
+++ trunk/soft/fudaa-crue/crue-config/src/test/resources/xsd/aoc-1.2.xsd 2017-07-13 11:27:49 UTC (rev 9661)
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ attributeFormDefault="unqualified" elementFormDefault="qualified"
+ targetNamespace="http://www.fudaa.fr/xsd/crue" xmlns="http://www.fudaa.fr/xsd/crue">
+
+ <xs:include schemaLocation="nomRef-fichierUnique-1.2.xsd"/>
+ <xs:include schemaLocation="frag-common-1.2.xsd"/>
+
+ <xs:element name="Chemin" type="xs:string"/>
+ <xs:element name="NomScenario" type="xs:string"/>
+
+ <xs:element name="Donnees">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="Permanent"/>
+ <xs:enumeration value="TransitoireLimnigramme"/>
+ <xs:enumeration value="TransitoireHydrogramme"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="Critere">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="ErreurQuadratique"/>
+ <xs:enumeration value="EcartNiveauxMax"/>
+ <xs:enumeration value="EcartTempsArriveeMax"/>
+ <xs:enumeration value="EcartVolumes"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="NombreIteration" type="xs:positiveInteger"/>
+ <xs:element name="NombreIterationTir" type="xs:positiveInteger"/>
+ <xs:element name="NombreTir" type="xs:positiveInteger"/>
+ <xs:element name="PonderationApprentissage" type="xs:double"/>
+ <xs:element name="PonderationValidation" type="xs:double"/>
+
+ <xs:simpleType name="positiveIntegerOrNull" id="positiveInteger">
+ <xs:restriction base="xs:nonNegativeInteger">
+ <xs:minInclusive value="0"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+
+ <xs:element name="Type">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="Seul"/>
+ <xs:enumeration value="TestRepetabilite"/>
+ <xs:enumeration value="AnalyseSensibilite"/>
+ <xs:enumeration value="ValidationCroisee"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="Algorithme">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="Recuit"/>
+ <xs:enumeration value="MonteCarlo"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="Seul">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="NombreIteration"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TestRepetabilite">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="NombreIterationTir"/>
+ <xs:element ref="NombreTir"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ValidationCroisee">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="NombreIteration" minOccurs="0"/>
+ <xs:element ref="PonderationApprentissage" minOccurs="0"/>
+ <xs:element ref="PonderationValidation" minOccurs="0"/>
+ <xs:element ref="Groupe" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LoiCalculPermanent">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute type="TypeForAttributeNomRefCalc" name="CalculRef"/>
+ <xs:attribute type="xs:string" name="LoiRef"/>
+ <xs:attribute type="xs:positiveInteger" name="Ponderation"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LoiCalculTransitoire">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute type="TypeForAttributeNomRefCalc" name="CalculRef"/>
+ <xs:attribute type="xs:token" name="LoiRef"/>
+ <xs:attribute type="TypeForAttributeNomRefSection" name="SectionRef"/>
+ <xs:attribute type="positiveIntegerOrNull" name="Ponderation"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LoiStrickler">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute type="xs:token" name="LoiRef"/>
+ <xs:attribute type="positiveIntegerOrNull" name="Min"/>
+ <xs:attribute type="positiveIntegerOrNull" name="Ini"/>
+ <xs:attribute type="positiveIntegerOrNull" name="Max"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ParamCalc">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute type="TypeForAttributeNomRefCalc" name="CalculRef"/>
+ <xs:attribute type="xs:token" name="EMHRef"/>
+ <xs:attribute type="xs:double" name="DeltaQ"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Loi">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute type="xs:token" name="LoiRef"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Lois">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Loi" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="EffectifApprentissage" type="positiveIntegerOrNull"/>
+ <xs:element name="Groupe">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Lois"/>
+ <xs:element ref="EffectifApprentissage"/>
+ <xs:element ref="Commentaire"/>
+ </xs:sequence>
+ <xs:attribute type="TypeForAttributeNom" name="Id"/>
+ <xs:attribute type="xs:token" name="Nom"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LoisCalculsPermanents">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="LoiCalculPermanent" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LoisCalculsTransitoires">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="LoiCalculTransitoire" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LoisStrickler">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="LoiStrickler" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ListeCalculs">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ParamCalc" maxOccurs="unbounded" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="AuteurCreation" type="xs:string"/>
+ <xs:element name="DateCreation" type="xs:dateTime"/>
+ <xs:element name="AuteurDerniereModif" type="xs:string"/>
+ <xs:element name="DateDerniereModif" type="xs:dateTime"/>
+ <xs:element name="EtudeAssociee">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Chemin"/>
+ <xs:element ref="NomScenario"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TypeCalage">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Donnees"/>
+ <xs:element ref="Critere"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Calage">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Type"/>
+ <xs:element ref="Algorithme"/>
+ <xs:element ref="Seul"/>
+ <xs:element ref="TestRepetabilite"/>
+ <xs:element ref="ValidationCroisee"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="DonneesCampagne">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="LoisCalculsPermanents"/>
+ <xs:element ref="LoisCalculsTransitoires"/>
+ <xs:element ref="LoisStrickler"/>
+ <xs:element ref="ListeCalculs"/>
+ <xs:element ref="ValidationCroisee"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="AOC">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Commentaire"/>
+ <xs:element ref="AuteurCreation"/>
+ <xs:element ref="DateCreation"/>
+ <xs:element ref="AuteurDerniereModif"/>
+ <xs:element ref="DateDerniereModif"/>
+ <xs:element ref="EtudeAssociee"/>
+ <xs:element ref="TypeCalage"/>
+ <xs:element ref="Calage"/>
+ <xs:element ref="DonneesCampagne"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
+
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/CrueFileType.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/CrueFileType.java 2017-07-13 10:10:35 UTC (rev 9660)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/CrueFileType.java 2017-07-13 11:27:49 UTC (rev 9661)
@@ -18,6 +18,7 @@
public enum CrueFileType implements FileType{
ETU(CrueLevelType.PROJET, null),
+ AOC(CrueLevelType.PROJET, CrueVersionType.CRUE10),
DCLM(CrueLevelType.SCENARIO, CrueVersionType.CRUE10),
DCSP(CrueLevelType.SOUS_MODELE, CrueVersionType.CRUE10),
DFRT(CrueLevelType.SOUS_MODELE, CrueVersionType.CRUE10),
Modified: trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/Crue10FileFormat.java
===================================================================
--- trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/Crue10FileFormat.java 2017-07-13 10:10:35 UTC (rev 9660)
+++ trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/Crue10FileFormat.java 2017-07-13 11:27:49 UTC (rev 9661)
@@ -32,7 +32,7 @@
/**
* @param readerWriter le reader/writer
*/
- protected Crue10FileFormat(final CrueXmlReaderWriter<M> readerWriter) {
+ public Crue10FileFormat(final CrueXmlReaderWriter<M> readerWriter) {
this(readerWriter.getFileType(), readerWriter);
}
Modified: trunk/soft/fudaa-crue/ui-application/application.iml
===================================================================
--- trunk/soft/fudaa-crue/ui-application/application.iml 2017-07-13 10:10:35 UTC (rev 9660)
+++ trunk/soft/fudaa-crue/ui-application/application.iml 2017-07-13 11:27:49 UTC (rev 9661)
@@ -9,7 +9,6 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="module" module-name="ui-aoc" />
<orderEntry type="library" name="Maven: org.netbeans.external:asm-all-5.0.1:RELEASE82" level="project" />
<orderEntry type="library" name="Maven: org.netbeans.modules:org-netbeans-bootstrap:RELEASE82" level="project" />
<orderEntry type="library" name="Maven: org.netbeans.api:org-netbeans-libs-asm:RELEASE82" level="project" />
Modified: trunk/soft/fudaa-crue/ui-options/src/main/resources/default-coeurs.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|