|
From: <de...@us...> - 2012-12-18 23:26:15
|
Revision: 8154
http://fudaa.svn.sourceforge.net/fudaa/?rev=8154&view=rev
Author: deniger
Date: 2012-12-18 23:26:07 +0000 (Tue, 18 Dec 2012)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIni.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBranche.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheOrifice.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheSaintVenant.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniCasierProfil.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniNoeudNiveauContinu.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniSection.java
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionDPTIChanged.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CondInitNodeFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponent.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIni.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIni.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIni.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -3,7 +3,7 @@
/**
* @pdOid 3c448e8e-0967-42a5-9bb5-a6ecbb4cf791
*/
-public abstract class DonPrtCIni extends AbstractInfosEMH implements Cloneable {
+public abstract class DonPrtCIni<T extends DonPrtCIni> extends AbstractInfosEMH implements Cloneable {
/**
* @pdOid 3681abe7-e53c-4cf8-85f1-7d5344c18225
@@ -13,6 +13,8 @@
return EnumInfosEMH.DON_PRT_CINI;
}
+ public abstract void initFrom(T dpti);
+
@Override
protected Object clone() {
try {
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBranche.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBranche.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBranche.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -6,7 +6,7 @@
/**
* @author Adrien Hadoux Utilise pour DPTI a la fois pour branche et casier.
*/
-public class DonPrtCIniBranche extends DonPrtCIni {
+public class DonPrtCIniBranche extends DonPrtCIni<DonPrtCIniBranche> {
/**
* @pdOid 49462937-9dc3-4428-8141-69531acf15d2
@@ -27,7 +27,6 @@
}
/**
- * @param newQini @pdOid dcc8b50e-bb81-4e1c-93e5-f6ae6e3c41c1
*/
public final void setQini(double newQini) {
qini = newQini;
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheOrifice.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheOrifice.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheOrifice.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -44,14 +44,21 @@
}
}
-
@PropertyDesc(i18n = "ouv.property")
public final double getOuv() {
return ouv;
}
+ @Override
+ public void initFrom(DonPrtCIniBranche donPrtCIniBranche) {
+ super.initFrom(donPrtCIniBranche);
+ ouv = ((DonPrtCIniBrancheOrifice) donPrtCIniBranche).ouv;
+ sensOuv = ((DonPrtCIniBrancheOrifice) donPrtCIniBranche).sensOuv;
+ }
+
/**
- * @param newOuv @pdOid 736e9469-8d18-418f-8f6c-c829c1880d9a
+ * @param newOuv
+ * @pdOid 736e9469-8d18-418f-8f6c-c829c1880d9a
*/
public final void setOuv(double newOuv) {
ouv = newOuv;
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheSaintVenant.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheSaintVenant.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniBrancheSaintVenant.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -3,12 +3,8 @@
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.common.annotation.PropertyDesc;
-// ** @pdOid ed3ea8f4-4a5b-474e-b418-154451f41191 */
public class DonPrtCIniBrancheSaintVenant extends DonPrtCIniBranche {
- /**
- * @pdOid 5ca78cba-32d2-4106-8363-f13660756436
- */
private double qruis;
/**
@@ -28,8 +24,14 @@
return qruis;
}
+ @Override
+ public void initFrom(DonPrtCIniBranche donPrtCIniBranche) {
+ super.initFrom(donPrtCIniBranche);
+ qruis = ((DonPrtCIniBrancheSaintVenant) donPrtCIniBranche).qruis;
+ }
+
/**
- * @param newQruis @pdOid 547ffb46-5854-47ab-b4cc-7e772e9dcca0
+ * @param newQruis
*/
public void setQruis(double newQruis) {
qruis = newQruis;
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniCasierProfil.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniCasierProfil.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniCasierProfil.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -1,7 +1,7 @@
/**
* *********************************************************************
* Module: DonPrtCIniCasierProfil.java Author: battista Purpose: Defines the Class DonPrtCIniCasierProfil
- **********************************************************************
+ * *********************************************************************
*/
package org.fudaa.dodico.crue.metier.emh;
@@ -9,9 +9,8 @@
import org.fudaa.dodico.crue.common.annotation.PropertyDesc;
/**
- * @pdOid 658774af-10cb-4bbf-bd58-5a41b5958f14
*/
-public class DonPrtCIniCasierProfil extends DonPrtCIni {
+public final class DonPrtCIniCasierProfil extends DonPrtCIni<DonPrtCIniCasierProfil> {
private double qruis;
@@ -22,6 +21,11 @@
qruis = def.getDefaultDoubleValue("qruis");
}
+ @Override
+ public void initFrom(DonPrtCIniCasierProfil dpti) {
+ this.qruis = dpti.qruis;
+ }
+
@PropertyDesc(i18n = "qruis.property")
public double getQruis() {
return qruis;
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniNoeudNiveauContinu.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniNoeudNiveauContinu.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniNoeudNiveauContinu.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -3,9 +3,8 @@
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.common.annotation.PropertyDesc;
-/** @pdOid c6c7ea5b-9ca5-4a74-ac7d-e86e406c5b48 */
-public class DonPrtCIniNoeudNiveauContinu extends DonPrtCIni {
- /** @pdOid b151682c-b6d9-40a5-8cd6-c55a4172fc7d */
+public final class DonPrtCIniNoeudNiveauContinu extends DonPrtCIni<DonPrtCIniNoeudNiveauContinu> {
+
private double zini;
/**
@@ -15,7 +14,12 @@
zini = def.getDefaultDoubleValue("zini");
}
- @PropertyDesc(i18n="zini.property")
+ @Override
+ public void initFrom(DonPrtCIniNoeudNiveauContinu dpti) {
+ this.zini = dpti.zini;
+ }
+
+ @PropertyDesc(i18n = "zini.property")
public final double getZini() {
return zini;
}
@@ -27,5 +31,4 @@
public final void setZini(double newZini) {
zini = newZini;
}
-
}
\ No newline at end of file
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniSection.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniSection.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtCIniSection.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -2,9 +2,8 @@
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
-/** @pdOid e4a6d3c3-64e5-4fc6-b895-754829f6310f */
-public class DonPrtCIniSection extends DonPrtCIni {
- /** @pdOid b4c2a8a4-16c3-4b62-9386-b0586e7d34fe */
+public final class DonPrtCIniSection extends DonPrtCIni<DonPrtCIniSection> {
+
private double zini;
/**
@@ -14,7 +13,14 @@
zini = def.getDefaultDoubleValue("zini");
}
- /** @pdOid cb68f4f8-53cf-4c4d-bf9c-945ebcc5d3ef */
+ @Override
+ public void initFrom(DonPrtCIniSection dpti) {
+ zini = dpti.zini;
+ }
+
+ /**
+ * @pdOid cb68f4f8-53cf-4c4d-bf9c-945ebcc5d3ef
+ */
public final double getZini() {
return zini;
}
@@ -26,5 +32,4 @@
public final void setZini(double newZini) {
zini = newZini;
}
-
}
\ No newline at end of file
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionDPTIChanged.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionDPTIChanged.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionDPTIChanged.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -33,10 +33,13 @@
}
for (Pair<EMH, DonPrtCIni> pair : toModify) {
final EMH emh = pair.first;
- //normallement, il n'y a qu'un dptiC
+ //normallement, il n'y a qu'un dpti
List<DonPrtCIni> dpti = emh.getDPTI();
- emh.removeInfosEMH(dpti);
- emh.addInfosEMH(pair.second.deepClone());
+ if (dpti.isEmpty()) {
+ emh.addInfosEMH(pair.second.deepClone());
+ } else {
+ dpti.get(0).initFrom(pair.second);
+ }
}
return log;
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CondInitNodeFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CondInitNodeFactory.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CondInitNodeFactory.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -28,6 +28,7 @@
/**
*
+ * Construit des noms en clonant les dpti: un seul dpti cloné par EMH.
* @author Frédéric Deniger
*/
public class CondInitNodeFactory {
@@ -41,7 +42,7 @@
CrueConfigMetier ccm = modellingScenarioService.getSelectedProjet().getCoeurConfig().getCrueConfigMetier();
List<Node> nodes = new ArrayList<Node>();
if (methodeInterpol.isNoeudActiveRequireDPTI()) {
- nodes.add(buildNoeud(methodeInterpol,sousModele, ccm));
+ nodes.add(buildNoeud(methodeInterpol, sousModele, ccm));
}
if (methodeInterpol.isBrancheActiveRequireDPTI()) {
nodes.add(buildBranche(sousModele, ccm));
@@ -55,7 +56,7 @@
return nodes;
}
- private Node buildNoeud(EnumMethodeInterpol methodeInterpol,EMHSousModele sousModele, CrueConfigMetier ccm) {
+ private Node buildNoeud(EnumMethodeInterpol methodeInterpol, EMHSousModele sousModele, CrueConfigMetier ccm) {
List<Node> nodes = createNodes(sousModele.getNoeuds(), ccm);
if (EnumMethodeInterpol.BAIGNOIRE.equals(methodeInterpol) && !nodes.isEmpty()) {
CondInitNode first = (CondInitNode) nodes.get(0);
@@ -77,20 +78,26 @@
return NodeHelper.createNode(nodes, NbBundle.getMessage(CondInitNodeFactory.class, "CiniNoeuds.DisplayName"));
}
- private void addNodes(Map<Class, List<Description>> cache, DonPrtCIni cini, PropertyFinder finder, EMH noeud, CrueConfigMetier ccm, List<Node> nodes) {
+ private void addNodes(Map<Class, List<Description>> cache, DonPrtCIni cini, PropertyFinder finder, EMH emh, CrueConfigMetier ccm, List<Node> nodes) {
List<Description> descriptions = cache.get(cini.getClass());
if (descriptions == null) {
descriptions = finder.getAvailablePropertiesSorted(cini.getClass());
cache.put(cini.getClass(), descriptions);
}
for (Description description : descriptions) {
- CondInitNode node = createNode(noeud, cini, description, ccm);
+ CondInitNode node = createNode(emh, cini, description, ccm);
nodes.add(node);
}
}
+ HashMap<String, DonPrtCIni> clonedByEmhName = new HashMap<String, DonPrtCIni>();
- private CondInitNode createNode(EMH noeud, DonPrtCIni cini, Description description, CrueConfigMetier ccm) {
- CondInitNode node = new CondInitNode(noeud, cini.deepClone(), description.property, ccm, perspectiveServiceModelling);
+ private CondInitNode createNode(EMH emh, DonPrtCIni cini, Description description, CrueConfigMetier ccm) {
+ DonPrtCIni dpti = clonedByEmhName.get(emh.getNom());
+ if (dpti == null) {
+ dpti = cini.deepClone();
+ clonedByEmhName.put(emh.getNom(), dpti);
+ }
+ CondInitNode node = new CondInitNode(emh, dpti, description.property, ccm, perspectiveServiceModelling);
return node;
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponent.java 2012-12-18 23:01:12 UTC (rev 8153)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponent.java 2012-12-18 23:26:07 UTC (rev 8154)
@@ -7,7 +7,9 @@
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import javax.swing.*;
import org.fudaa.ctulu.CtuluLog;
import org.fudaa.dodico.crue.common.Pair;
@@ -148,12 +150,16 @@
public void valideModificationHandler() {
Node[] nodes = getExplorerManager().getRootContext().getChildren().getNodes();
List<Pair<EMH, DonPrtCIni>> toModify = new ArrayList<Pair<EMH, DonPrtCIni>>();
+ Set<String> emhDone = new HashSet<String>();
for (Node node : nodes) {
Node[] emhNodes = node.getChildren().getNodes();
for (Node emhNode : emhNodes) {
EMH emh = emhNode.getLookup().lookup(EMH.class);
- DonPrtCIni content = emhNode.getLookup().lookup(DonPrtCIni.class);
- toModify.add(new Pair(emh, content));
+ if (!emhDone.contains(emh.getNom())) {
+ emhDone.add(emh.getNom());
+ DonPrtCIni content = emhNode.getLookup().lookup(DonPrtCIni.class);
+ toModify.add(new Pair(emh, content));
+ }
}
}
EditionDPTIChanged change = new EditionDPTIChanged();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|