diff --git a/src/ui/prosmd/util/CorrespondanceSMDElement.java b/src/ui/prosmd/util/CorrespondanceSMDElement.java new file mode 100644 index 0000000000000000000000000000000000000000..08b46b4a37c3fa26885cc09153cf98bebb552c83 --- /dev/null +++ b/src/ui/prosmd/util/CorrespondanceSMDElement.java @@ -0,0 +1,49 @@ +package ui.prosmd.util; + +import translator.ADComponent; +import ui.TGComponent; + +public class CorrespondanceSMDElement { + + private ADComponent adComp; + private TGComponent tgComp; + private String panelName; + private String machineCode; + + public CorrespondanceSMDElement(ADComponent adComp, TGComponent tgComp, String panelName, String machineCode) { + super(); + // TODO Auto-generated constructor stub + this.adComp = adComp; + this.tgComp = tgComp; + this.panelName = panelName; + this.machineCode = machineCode; + } + + public ADComponent getAdComp() { + return adComp; + } + + public String getMachineCode() { + return machineCode; + } + + public String getPanelName() { + return panelName; + } + + public TGComponent getTgComp() { + return tgComp; + } + + + + + public String toString() + { + String out=""; + out+="{"+adComp.toString()+" ; "+tgComp.toString()+" ; "+panelName+" ; "+machineCode+"}"; + return out; + } + + +} diff --git a/src/ui/prosmd/util/CorrespondanceSMDManager.java b/src/ui/prosmd/util/CorrespondanceSMDManager.java new file mode 100644 index 0000000000000000000000000000000000000000..037fc30b449e92a635e1c0d4a7ad649303f1a736 --- /dev/null +++ b/src/ui/prosmd/util/CorrespondanceSMDManager.java @@ -0,0 +1,65 @@ +package ui.prosmd.util; + +import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; + +import translator.ADComponent; +import ui.TGComponent; +import ui.prosmd.ProSMDState; + +public class CorrespondanceSMDManager { + + List <CorrespondanceSMDElement> elements; + + public CorrespondanceSMDManager() { + elements=new LinkedList<CorrespondanceSMDElement>(); + } + + + public void addCorrespondance(ADComponent adComp, TGComponent tgComp, String panelName, String machineCode) + { + CorrespondanceSMDElement ce=new CorrespondanceSMDElement(adComp,tgComp,panelName,machineCode); + elements.add(ce); + } + + + public ADComponent getADComp(TGComponent tgComp, String panelName, String machineCode) + { + Iterator<CorrespondanceSMDElement> i=elements.iterator(); + ADComponent adComp=null; + + while (i.hasNext()) + { + CorrespondanceSMDElement ce=i.next(); + if ( (ce.getTgComp().equals(tgComp))&& (ce.getPanelName().equals(panelName))&&(ce.getMachineCode().equals(machineCode))) + adComp=ce.getAdComp(); + } + return adComp; + } + + /* + * we just look for name + * because we only have one junction for all the states with the same value + */ + public ADComponent getADComp(ProSMDState stateComp, String panelName, String machineCode) + { + Iterator<CorrespondanceSMDElement> i=elements.iterator(); + ADComponent adComp=null; + String stateName=stateComp.getValue(); + + while (i.hasNext()) + { + CorrespondanceSMDElement ce=i.next(); + String cState=ce.getTgComp().getValue(); + String cMachineCode=ce.getMachineCode(); + if ( (cState!=null) && (cMachineCode!=null) ) + if ( (cState.equals(stateName))&& (ce.getPanelName().equals(panelName))&&(cMachineCode.equals(machineCode))) + adComp=ce.getAdComp(); + } + return adComp; + } + + + +}