diff --git a/modeling/DIPLODOCUS/SmartCardProtocol.xml b/modeling/DIPLODOCUS/SmartCardProtocol.xml index 423cc9ffb15482d96110fc45b31a25e4c14fc37b..8b6f22e709cad5f4f43ff9e191426e3548b47100 100755 --- a/modeling/DIPLODOCUS/SmartCardProtocol.xml +++ b/modeling/DIPLODOCUS/SmartCardProtocol.xml @@ -8,16 +8,16 @@ <cdparam x="535" y="347" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="556" y="321" id="113" /> -<P2 x="534" y="395" id="68" /> +<P1 x="556" y="321" id="169" /> +<P2 x="534" y="395" id="216" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="3" > <cdparam x="820" y="398" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="1025" y="471" id="210" /> -<P2 x="761" y="548" id="98" /> +<P1 x="1025" y="471" id="63" /> +<P2 x="761" y="548" id="184" /> <Point x="887" y="577" /> <AutomaticDrawing data="true" /> </CONNECTOR><SUBCOMPONENT type="-1" id="2" > @@ -33,128 +33,128 @@ <cdparam x="568" y="323" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="710" y="403" id="96" /> -<P2 x="693" y="321" id="135" /> +<P1 x="710" y="403" id="186" /> +<P2 x="693" y="321" id="147" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="5" > <cdparam x="522" y="390" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="534" y="369" id="63" /> -<P2 x="453" y="322" id="33" /> +<P1 x="534" y="369" id="211" /> +<P2 x="453" y="322" id="41" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="6" > <cdparam x="409" y="124" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="401" y="83" id="31" /> -<P2 x="593" y="84" id="111" /> +<P1 x="401" y="83" id="43" /> +<P2 x="593" y="84" id="171" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="7" > <cdparam x="656" y="426" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="805" y="542" id="92" /> -<P2 x="969" y="474" id="196" /> +<P1 x="805" y="542" id="190" /> +<P2 x="969" y="474" id="77" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="8" > <cdparam x="656" y="400" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="805" y="509" id="90" /> -<P2 x="931" y="466" id="198" /> +<P1 x="805" y="509" id="192" /> +<P2 x="931" y="466" id="75" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="9" > <cdparam x="602" y="327" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="751" y="406" id="82" /> -<P2 x="842" y="362" id="162" /> +<P1 x="751" y="406" id="200" /> +<P2 x="842" y="362" id="105" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="10" > <cdparam x="689" y="292" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="842" y="388" id="166" /> -<P2 x="931" y="352" id="188" /> +<P1 x="842" y="388" id="109" /> +<P2 x="931" y="352" id="85" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="11" > <cdparam x="656" y="377" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="805" y="481" id="86" /> -<P2 x="931" y="443" id="190" /> +<P1 x="805" y="481" id="196" /> +<P2 x="931" y="443" id="83" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="12" > <cdparam x="656" y="351" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="805" y="448" id="88" /> -<P2 x="931" y="416" id="192" /> +<P1 x="805" y="448" id="194" /> +<P2 x="931" y="416" id="81" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="13" > <cdparam x="741" y="296" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="931" y="387" id="194" /> -<P2 x="805" y="419" id="84" /> +<P1 x="931" y="387" id="79" /> +<P2 x="805" y="419" id="198" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="14" > <cdparam x="735" y="260" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="931" y="317" id="186" /> -<P2 x="734" y="269" id="123" /> +<P1 x="931" y="317" id="87" /> +<P2 x="734" y="269" id="159" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="15" > <cdparam x="641" y="230" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="734" y="235" id="125" /> -<P2 x="931" y="278" id="184" /> +<P1 x="734" y="235" id="157" /> +<P2 x="931" y="278" id="89" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="16" > <cdparam x="641" y="195" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="734" y="190" id="127" /> -<P2 x="931" y="235" id="182" /> +<P1 x="734" y="190" id="155" /> +<P2 x="931" y="235" id="91" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="17" > <cdparam x="740" y="353" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="842" y="362" id="161" /> -<P2 x="734" y="301" id="129" /> +<P1 x="842" y="362" id="104" /> +<P2 x="734" y="301" id="153" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="18" > <cdparam x="460" y="270" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="534" y="290" id="119" /> -<P2 x="453" y="290" id="39" /> +<P1 x="534" y="290" id="163" /> +<P2 x="453" y="290" id="35" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="19" > <cdparam x="387" y="129" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="453" y="116" id="43" /> -<P2 x="534" y="116" id="131" /> +<P1 x="453" y="116" id="31" /> +<P2 x="534" y="116" id="151" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="20" > @@ -162,63 +162,63 @@ <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> <P1 x="453" y="202" id="37" /> -<P2 x="534" y="202" id="117" /> +<P2 x="534" y="202" id="165" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="21" > <cdparam x="460" y="236" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="534" y="247" id="115" /> -<P2 x="453" y="247" id="35" /> +<P1 x="534" y="247" id="167" /> +<P2 x="453" y="247" id="39" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="22" > <cdparam x="389" y="163" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="Connector between ports" /> -<P1 x="453" y="156" id="41" /> -<P2 x="534" y="156" id="121" /> +<P1 x="453" y="156" id="33" /> +<P2 x="534" y="156" id="161" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="23" > <cdparam x="967" y="190" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> -<P1 x="931" y="185" id="180" /> -<P2 x="734" y="111" id="109" /> +<P1 x="931" y="185" id="93" /> +<P2 x="734" y="111" id="173" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="24" > <cdparam x="1028" y="535" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> -<P1 x="630" y="324" id="133" /> -<P2 x="669" y="406" id="94" /> +<P1 x="630" y="324" id="149" /> +<P2 x="669" y="406" id="188" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="25" > <cdparam x="1308" y="303" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> -<P1 x="1232" y="368" id="146" /> -<P2 x="1167" y="370" id="200" /> +<P1 x="1232" y="368" id="127" /> +<P2 x="1167" y="370" id="73" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="26" > <cdparam x="1172" y="437" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> -<P1 x="1167" y="405" id="202" /> -<P2 x="1232" y="403" id="148" /> +<P1 x="1167" y="405" id="71" /> +<P2 x="1232" y="403" id="125" /> <AutomaticDrawing data="true" /> </CONNECTOR> <CONNECTOR type="126" id="29" > <cdparam x="1041" y="162" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> -<P1 x="1167" y="198" id="204" /> -<P2 x="1167" y="266" id="206" /> +<P1 x="1167" y="198" id="69" /> +<P2 x="1167" y="266" id="67" /> <Point x="1227" y="207" /> <Point x="1227" y="247" /> <AutomaticDrawing data="true" /> @@ -243,8 +243,8 @@ <cdparam x="877" y="343" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="1000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector from TGComponent to TGComponent" value="Connector between ports" /> -<P1 x="1167" y="444" id="208" /> -<P2 x="1232" y="431" id="150" /> +<P1 x="1167" y="444" id="65" /> +<P2 x="1232" y="431" id="123" /> <AutomaticDrawing data="true" /> </CONNECTOR> <COMPONENT type="1202" id="53" > @@ -272,14 +272,14 @@ </COMPONENT> <SUBCOMPONENT type="1203" id="32" > <father id="53" num="0" /> -<cdparam x="388" y="83" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="443" y="116" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="277" minY="-13" maxY="263" /> -<infoparam name="TGComponent" value="Event reset, pTS, end" /> +<cdrectangleparam minX="-10" maxX="280" minY="-10" maxY="266" /> +<infoparam name="TGComponent" value="Request activation" /> <TGConnectingPoint num="0" id="31" /> <extraparam> -<Prop commName="reset, pTS, end" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="activation" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -289,16 +289,16 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="34" > <father id="53" num="1" /> -<cdparam x="440" y="322" /> +<cdparam x="440" y="156" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="277" minY="-13" maxY="263" /> -<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> +<infoparam name="TGComponent" value="Event data_Ready" /> <TGConnectingPoint num="0" id="33" /> <extraparam> -<Prop commName="answerToReset, pTSConfirm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<Prop commName="data_Ready" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Type type="1" typeOther="" /> +<Type type="2" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -306,14 +306,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="36" > <father id="53" num="2" /> -<cdparam x="440" y="247" /> +<cdparam x="440" y="290" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="277" minY="-13" maxY="263" /> -<infoparam name="TGComponent" value="Channel fromSCtoD" /> +<infoparam name="TGComponent" value="Event data_Ready_SC" /> <TGConnectingPoint num="0" id="35" /> <extraparam> -<Prop commName="fromSCtoD" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="40" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="data_Ready_SC" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -340,14 +340,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="40" > <father id="53" num="4" /> -<cdparam x="440" y="290" /> +<cdparam x="440" y="247" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="277" minY="-13" maxY="263" /> -<infoparam name="TGComponent" value="Event data_Ready_SC" /> +<infoparam name="TGComponent" value="Channel fromSCtoD" /> <TGConnectingPoint num="0" id="39" /> <extraparam> -<Prop commName="data_Ready_SC" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromSCtoD" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="40" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -357,16 +357,16 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="42" > <father id="53" num="5" /> -<cdparam x="440" y="156" /> +<cdparam x="440" y="322" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-13" maxX="277" minY="-13" maxY="263" /> -<infoparam name="TGComponent" value="Event data_Ready" /> +<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> <TGConnectingPoint num="0" id="41" /> <extraparam> -<Prop commName="data_Ready" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> -<Type type="1" typeOther="" /> -<Type type="2" typeOther="" /> +<Prop commName="answerToReset, pTSConfirm" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -374,14 +374,14 @@ </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="44" > <father id="53" num="6" /> -<cdparam x="443" y="116" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="388" y="83" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="280" minY="-10" maxY="266" /> -<infoparam name="TGComponent" value="Request activation" /> +<cdrectangleparam minX="-13" maxX="277" minY="-13" maxY="263" /> +<infoparam name="TGComponent" value="Event reset, pTS, end" /> <TGConnectingPoint num="0" id="43" /> <extraparam> -<Prop commName="activation" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="reset, pTS, end" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -428,61 +428,61 @@ <info hiddeni="false" /> </extraparam> </COMPONENT> -<SUBCOMPONENT type="1201" id="81" > +<SUBCOMPONENT type="1200" id="146" > <father id="238" num="0" /> -<cdparam x="521" y="369" /> -<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="842" y="133" /> +<sizeparam width="570" height="485" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="922" minY="-13" maxY="517" /> -<infoparam name="Composite port" value="" /> -<TGConnectingPoint num="0" id="63" /> -<TGConnectingPoint num="1" id="64" /> -<TGConnectingPoint num="2" id="65" /> -<TGConnectingPoint num="3" id="66" /> -<TGConnectingPoint num="4" id="67" /> -<TGConnectingPoint num="5" id="68" /> -<TGConnectingPoint num="6" id="69" /> -<TGConnectingPoint num="7" id="70" /> -<TGConnectingPoint num="8" id="71" /> -<TGConnectingPoint num="9" id="72" /> -<TGConnectingPoint num="10" id="73" /> -<TGConnectingPoint num="11" id="74" /> -<TGConnectingPoint num="12" id="75" /> -<TGConnectingPoint num="13" id="76" /> -<TGConnectingPoint num="14" id="77" /> -<TGConnectingPoint num="15" id="78" /> -<TGConnectingPoint num="16" id="79" /> -<TGConnectingPoint num="17" id="80" /> -</SUBCOMPONENT> -<SUBCOMPONENT type="1202" id="108" > -<father id="238" num="1" /> -<cdparam x="565" y="416" /> -<sizeparam width="240" height="145" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdrectangleparam minX="0" maxX="365" minY="0" maxY="45" /> +<infoparam name="TGComponent" value="TCPIP Entities" /> +<TGConnectingPoint num="0" id="138" /> +<TGConnectingPoint num="1" id="139" /> +<TGConnectingPoint num="2" id="140" /> +<TGConnectingPoint num="3" id="141" /> +<TGConnectingPoint num="4" id="142" /> +<TGConnectingPoint num="5" id="143" /> +<TGConnectingPoint num="6" id="144" /> +<TGConnectingPoint num="7" id="145" /> +<extraparam> +<info hiddeni="false" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="103" > +<father id="146" num="0" /> +<cdparam x="931" y="167" /> +<sizeparam width="236" height="317" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="695" minY="0" maxY="385" /> -<infoparam name="TGComponent" value="Application" /> -<TGConnectingPoint num="0" id="100" /> -<TGConnectingPoint num="1" id="101" /> -<TGConnectingPoint num="2" id="102" /> -<TGConnectingPoint num="3" id="103" /> -<TGConnectingPoint num="4" id="104" /> -<TGConnectingPoint num="5" id="105" /> -<TGConnectingPoint num="6" id="106" /> -<TGConnectingPoint num="7" id="107" /> +<cdrectangleparam minX="0" maxX="334" minY="0" maxY="168" /> +<infoparam name="TGComponent" value="TCPIP" /> +<TGConnectingPoint num="0" id="95" /> +<TGConnectingPoint num="1" id="96" /> +<TGConnectingPoint num="2" id="97" /> +<TGConnectingPoint num="3" id="98" /> +<TGConnectingPoint num="4" id="99" /> +<TGConnectingPoint num="5" id="100" /> +<TGConnectingPoint num="6" id="101" /> +<TGConnectingPoint num="7" id="102" /> <extraparam> <Data isAttacker="No" Operation="" /> +<Attribute access="2" id="wind" value="64" type="0" typeOther="" /> +<Attribute access="2" id="seqNum" value="0" type="0" typeOther="" /> +<Attribute access="2" id="i" value="" type="0" typeOther="" /> +<Attribute access="2" id="j" value="" type="0" typeOther="" /> +<Attribute access="2" id="a" value="0" type="0" typeOther="" /> +<Attribute access="2" id="b" value="0" type="0" typeOther="" /> +<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="83" > -<father id="108" num="0" /> -<cdparam x="741" y="406" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="64" > +<father id="103" num="0" /> +<cdparam x="1012" y="471" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Request start_TCP_IP" /> -<TGConnectingPoint num="0" id="82" /> +<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> +<infoparam name="Primitive port" value="Event opened" /> +<TGConnectingPoint num="0" id="63" /> <extraparam> -<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="opened" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -490,16 +490,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="85" > -<father id="108" num="1" /> -<cdparam x="795" y="419" /> +<SUBCOMPONENT type="1203" id="66" > +<father id="103" num="1" /> +<cdparam x="1157" y="444" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Channel fromTtoA" /> -<TGConnectingPoint num="0" id="84" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Event stop" /> +<TGConnectingPoint num="0" id="65" /> <extraparam> -<Prop commName="fromTtoA" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="stop" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -507,16 +507,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="87" > -<father id="108" num="2" /> -<cdparam x="795" y="481" /> +<SUBCOMPONENT type="1203" id="68" > +<father id="103" num="2" /> +<cdparam x="1157" y="266" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Event send_TCP" /> -<TGConnectingPoint num="0" id="86" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Channel temp" /> +<TGConnectingPoint num="0" id="67" /> <extraparam> -<Prop commName="send_TCP" commType="1" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="temp" commType="0" origin="false" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -524,16 +524,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="89" > -<father id="108" num="3" /> -<cdparam x="795" y="448" /> +<SUBCOMPONENT type="1203" id="70" > +<father id="103" num="3" /> +<cdparam x="1157" y="198" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Event open, abort, close" /> -<TGConnectingPoint num="0" id="88" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Channel temp" /> +<TGConnectingPoint num="0" id="69" /> <extraparam> -<Prop commName="open, abort, close" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="temp" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -541,16 +541,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="91" > -<father id="108" num="4" /> -<cdparam x="795" y="509" /> +<SUBCOMPONENT type="1203" id="72" > +<father id="103" num="4" /> +<cdparam x="1157" y="405" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Event receive_Application" /> -<TGConnectingPoint num="0" id="90" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Request req_Timer" /> +<TGConnectingPoint num="0" id="71" /> <extraparam> -<Prop commName="receive_Application" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="req_Timer" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -558,16 +558,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="93" > -<father id="108" num="5" /> -<cdparam x="795" y="542" /> +<SUBCOMPONENT type="1203" id="74" > +<father id="103" num="5" /> +<cdparam x="1157" y="370" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Channel fromAtoT" /> -<TGConnectingPoint num="0" id="92" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Event timeOut" /> +<TGConnectingPoint num="0" id="73" /> <extraparam> -<Prop commName="fromAtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="timeOut" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -575,16 +575,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="95" > -<father id="108" num="6" /> -<cdparam x="659" y="406" /> +<SUBCOMPONENT type="1203" id="76" > +<father id="103" num="6" /> +<cdparam x="921" y="466" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> -<infoparam name="TGComponent" value="Request start_Application" /> -<TGConnectingPoint num="0" id="94" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Event receive_Application" /> +<TGConnectingPoint num="0" id="75" /> <extraparam> -<Prop commName="start_Application" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="receive_Application" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -592,16 +592,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="97" > -<father id="108" num="7" /> -<cdparam x="697" y="403" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="78" > +<father id="103" num="7" /> +<cdparam x="959" y="474" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="227" minY="-13" maxY="132" /> -<infoparam name="Primitive port" value="Event connectionOpened" /> -<TGConnectingPoint num="0" id="96" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Channel fromAtoT" /> +<TGConnectingPoint num="0" id="77" /> <extraparam> -<Prop commName="connectionOpened" commType="1" origin="true" finite="true" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromAtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -609,16 +609,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="99" > -<father id="108" num="8" /> -<cdparam x="748" y="548" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="80" > +<father id="103" num="8" /> +<cdparam x="921" y="387" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="227" minY="-13" maxY="132" /> -<infoparam name="Primitive port" value="Event opened" /> -<TGConnectingPoint num="0" id="98" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Channel fromTtoA" /> +<TGConnectingPoint num="0" id="79" /> <extraparam> -<Prop commName="opened" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromTtoA" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -626,43 +626,33 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1202" id="145" > -<father id="238" num="2" /> -<cdparam x="534" y="97" /> -<sizeparam width="200" height="237" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="82" > +<father id="103" num="9" /> +<cdparam x="921" y="416" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="735" minY="0" maxY="293" /> -<infoparam name="TGComponent" value="SmartCard" /> -<TGConnectingPoint num="0" id="137" /> -<TGConnectingPoint num="1" id="138" /> -<TGConnectingPoint num="2" id="139" /> -<TGConnectingPoint num="3" id="140" /> -<TGConnectingPoint num="4" id="141" /> -<TGConnectingPoint num="5" id="142" /> -<TGConnectingPoint num="6" id="143" /> -<TGConnectingPoint num="7" id="144" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Event open, abort, close" /> +<TGConnectingPoint num="0" id="81" /> <extraparam> -<Data isAttacker="No" Operation="" /> -<Attribute access="2" id="resetType" value="0" type="0" typeOther="" /> -<Attribute access="2" id="a" value="0" type="0" typeOther="" /> -<Attribute access="2" id="b" value="" type="4" typeOther="" /> -<Attribute access="2" id="i" value="0" type="0" typeOther="" /> -<Attribute access="2" id="j" value="0" type="0" typeOther="" /> -<Attribute access="2" id="x" value="0" type="0" typeOther="" /> -<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" /> -<Attribute access="2" id="t" value="" type="0" typeOther="" /> +<Prop commName="open, abort, close" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="110" > -<father id="145" num="0" /> -<cdparam x="721" y="111" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="84" > +<father id="103" num="10" /> +<cdparam x="921" y="443" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Event send" /> -<TGConnectingPoint num="0" id="109" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Event send_TCP" /> +<TGConnectingPoint num="0" id="83" /> <extraparam> -<Prop commName="send" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="send_TCP" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -670,16 +660,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="112" > -<father id="145" num="1" /> -<cdparam x="580" y="84" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="86" > +<father id="103" num="11" /> +<cdparam x="921" y="352" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Event reset, pTS, end" /> -<TGConnectingPoint num="0" id="111" /> +<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="85" /> <extraparam> -<Prop commName="reset, pTS, end" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="start_TCP_IP" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -687,16 +677,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="114" > -<father id="145" num="2" /> -<cdparam x="543" y="321" /> +<SUBCOMPONENT type="1203" id="88" > +<father id="103" num="12" /> +<cdparam x="918" y="317" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> -<TGConnectingPoint num="0" id="113" /> +<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> +<infoparam name="TGComponent" value="Channel fromTtoP" /> +<TGConnectingPoint num="0" id="87" /> <extraparam> -<Prop commName="answerToReset, pTSConfirm" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromTtoP" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -704,16 +694,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="116" > -<father id="145" num="3" /> -<cdparam x="521" y="247" /> +<SUBCOMPONENT type="1203" id="90" > +<father id="103" num="13" /> +<cdparam x="918" y="278" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Channel fromSCtoD" /> -<TGConnectingPoint num="0" id="115" /> +<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> +<infoparam name="TGComponent" value="Channel fromPtoT" /> +<TGConnectingPoint num="0" id="89" /> <extraparam> -<Prop commName="fromSCtoD" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="40" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="true" checkConfStatus="1" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromPtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -721,16 +711,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="118" > -<father id="145" num="4" /> -<cdparam x="521" y="202" /> +<SUBCOMPONENT type="1203" id="92" > +<father id="103" num="14" /> +<cdparam x="918" y="235" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Channel fromDtoSC" /> -<TGConnectingPoint num="0" id="117" /> +<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> +<infoparam name="TGComponent" value="Event receive" /> +<TGConnectingPoint num="0" id="91" /> <extraparam> -<Prop commName="fromDtoSC" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="40" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="null" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="receive" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -738,16 +728,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="120" > -<father id="145" num="5" /> -<cdparam x="521" y="290" /> +<SUBCOMPONENT type="1203" id="94" > +<father id="103" num="15" /> +<cdparam x="918" y="185" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Event data_Ready_SC" /> -<TGConnectingPoint num="0" id="119" /> +<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> +<infoparam name="TGComponent" value="Event send" /> +<TGConnectingPoint num="0" id="93" /> <extraparam> -<Prop commName="data_Ready_SC" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="send" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -755,33 +745,62 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="122" > -<father id="145" num="6" /> -<cdparam x="521" y="156" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1201" id="122" > +<father id="146" num="1" /> +<cdparam x="829" y="362" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Event data_Ready" /> -<TGConnectingPoint num="0" id="121" /> +<cdrectangleparam minX="-13" maxX="557" minY="-13" maxY="472" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="104" /> +<TGConnectingPoint num="1" id="105" /> +<TGConnectingPoint num="2" id="106" /> +<TGConnectingPoint num="3" id="107" /> +<TGConnectingPoint num="4" id="108" /> +<TGConnectingPoint num="5" id="109" /> +<TGConnectingPoint num="6" id="110" /> +<TGConnectingPoint num="7" id="111" /> +<TGConnectingPoint num="8" id="112" /> +<TGConnectingPoint num="9" id="113" /> +<TGConnectingPoint num="10" id="114" /> +<TGConnectingPoint num="11" id="115" /> +<TGConnectingPoint num="12" id="116" /> +<TGConnectingPoint num="13" id="117" /> +<TGConnectingPoint num="14" id="118" /> +<TGConnectingPoint num="15" id="119" /> +<TGConnectingPoint num="16" id="120" /> +<TGConnectingPoint num="17" id="121" /> +</SUBCOMPONENT> +<SUBCOMPONENT type="1202" id="137" > +<father id="146" num="2" /> +<cdparam x="1232" y="328" /> +<sizeparam width="140" height="141" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="0" maxX="430" minY="0" maxY="344" /> +<infoparam name="TGComponent" value="Timer" /> +<TGConnectingPoint num="0" id="129" /> +<TGConnectingPoint num="1" id="130" /> +<TGConnectingPoint num="2" id="131" /> +<TGConnectingPoint num="3" id="132" /> +<TGConnectingPoint num="4" id="133" /> +<TGConnectingPoint num="5" id="134" /> +<TGConnectingPoint num="6" id="135" /> +<TGConnectingPoint num="7" id="136" /> <extraparam> -<Prop commName="data_Ready" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> -<Type type="1" typeOther="" /> -<Type type="2" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<Data isAttacker="No" Operation="" /> +<Attribute access="2" id="x" value="0" type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="124" > -<father id="145" num="7" /> -<cdparam x="721" y="269" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<father id="137" num="0" /> +<cdparam x="1222" y="431" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Channel fromTtoP" /> +<cdrectangleparam minX="-10" maxX="130" minY="-10" maxY="131" /> +<infoparam name="TGComponent" value="Event stop" /> <TGConnectingPoint num="0" id="123" /> <extraparam> -<Prop commName="fromTtoP" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="stop" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -790,15 +809,15 @@ </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="126" > -<father id="145" num="8" /> -<cdparam x="721" y="235" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<father id="137" num="1" /> +<cdparam x="1222" y="403" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Channel fromPtoT" /> +<cdrectangleparam minX="-10" maxX="130" minY="-10" maxY="131" /> +<infoparam name="TGComponent" value="Request req_Timer" /> <TGConnectingPoint num="0" id="125" /> <extraparam> -<Prop commName="fromPtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="req_Timer" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -807,15 +826,15 @@ </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1203" id="128" > -<father id="145" num="9" /> -<cdparam x="721" y="190" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<father id="137" num="2" /> +<cdparam x="1222" y="368" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Event receive" /> +<cdrectangleparam minX="-10" maxX="130" minY="-10" maxY="131" /> +<infoparam name="TGComponent" value="Event timeOut" /> <TGConnectingPoint num="0" id="127" /> <extraparam> -<Prop commName="receive" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="timeOut" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -823,33 +842,43 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="130" > -<father id="145" num="10" /> -<cdparam x="721" y="301" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1202" id="183" > +<father id="238" num="1" /> +<cdparam x="534" y="97" /> +<sizeparam width="200" height="237" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="TGComponent" value="Request start_TCP_IP" /> -<TGConnectingPoint num="0" id="129" /> +<cdrectangleparam minX="0" maxX="735" minY="0" maxY="293" /> +<infoparam name="TGComponent" value="SmartCard" /> +<TGConnectingPoint num="0" id="175" /> +<TGConnectingPoint num="1" id="176" /> +<TGConnectingPoint num="2" id="177" /> +<TGConnectingPoint num="3" id="178" /> +<TGConnectingPoint num="4" id="179" /> +<TGConnectingPoint num="5" id="180" /> +<TGConnectingPoint num="6" id="181" /> +<TGConnectingPoint num="7" id="182" /> <extraparam> -<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<Data isAttacker="No" Operation="" /> +<Attribute access="2" id="resetType" value="0" type="0" typeOther="" /> +<Attribute access="2" id="a" value="0" type="0" typeOther="" /> +<Attribute access="2" id="b" value="" type="4" typeOther="" /> +<Attribute access="2" id="i" value="0" type="0" typeOther="" /> +<Attribute access="2" id="j" value="0" type="0" typeOther="" /> +<Attribute access="2" id="x" value="0" type="0" typeOther="" /> +<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" /> +<Attribute access="2" id="t" value="" type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="132" > -<father id="145" num="11" /> -<cdparam x="524" y="116" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="148" > +<father id="183" num="0" /> +<cdparam x="680" y="321" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="190" minY="-10" maxY="227" /> -<infoparam name="TGComponent" value="Request activation" /> -<TGConnectingPoint num="0" id="131" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="Primitive port" value="Event connectionOpened" /> +<TGConnectingPoint num="0" id="147" /> <extraparam> -<Prop commName="activation" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="connectionOpened" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -857,14 +886,14 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="134" > -<father id="145" num="12" /> +<SUBCOMPONENT type="1203" id="150" > +<father id="183" num="1" /> <cdparam x="620" y="324" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="-10" maxX="190" minY="-10" maxY="227" /> <infoparam name="TGComponent" value="Request start_Application" /> -<TGConnectingPoint num="0" id="133" /> +<TGConnectingPoint num="0" id="149" /> <extraparam> <Prop commName="start_Application" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> @@ -874,16 +903,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="136" > -<father id="145" num="13" /> -<cdparam x="680" y="321" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="152" > +<father id="183" num="2" /> +<cdparam x="524" y="116" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> -<infoparam name="Primitive port" value="Event connectionOpened" /> -<TGConnectingPoint num="0" id="135" /> +<cdrectangleparam minX="-10" maxX="190" minY="-10" maxY="227" /> +<infoparam name="TGComponent" value="Request activation" /> +<TGConnectingPoint num="0" id="151" /> <extraparam> -<Prop commName="connectionOpened" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="activation" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -891,55 +920,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1200" id="229" > -<father id="238" num="3" /> -<cdparam x="842" y="133" /> -<sizeparam width="570" height="485" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="365" minY="0" maxY="45" /> -<infoparam name="TGComponent" value="TCPIP Entities" /> -<TGConnectingPoint num="0" id="221" /> -<TGConnectingPoint num="1" id="222" /> -<TGConnectingPoint num="2" id="223" /> -<TGConnectingPoint num="3" id="224" /> -<TGConnectingPoint num="4" id="225" /> -<TGConnectingPoint num="5" id="226" /> -<TGConnectingPoint num="6" id="227" /> -<TGConnectingPoint num="7" id="228" /> -<extraparam> -<info hiddeni="false" /> -</extraparam> -</SUBCOMPONENT> -<SUBCOMPONENT type="1202" id="160" > -<father id="229" num="0" /> -<cdparam x="1232" y="328" /> -<sizeparam width="140" height="141" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="0" maxX="430" minY="0" maxY="344" /> -<infoparam name="TGComponent" value="Timer" /> -<TGConnectingPoint num="0" id="152" /> -<TGConnectingPoint num="1" id="153" /> -<TGConnectingPoint num="2" id="154" /> -<TGConnectingPoint num="3" id="155" /> -<TGConnectingPoint num="4" id="156" /> -<TGConnectingPoint num="5" id="157" /> -<TGConnectingPoint num="6" id="158" /> -<TGConnectingPoint num="7" id="159" /> -<extraparam> -<Data isAttacker="No" Operation="" /> -<Attribute access="2" id="x" value="0" type="0" typeOther="" /> -</extraparam> -</SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="147" > -<father id="160" num="0" /> -<cdparam x="1222" y="368" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="154" > +<father id="183" num="3" /> +<cdparam x="721" y="301" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="130" minY="-10" maxY="131" /> -<infoparam name="TGComponent" value="Event timeOut" /> -<TGConnectingPoint num="0" id="146" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="153" /> <extraparam> -<Prop commName="timeOut" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -947,16 +937,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="149" > -<father id="160" num="1" /> -<cdparam x="1222" y="403" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="156" > +<father id="183" num="4" /> +<cdparam x="721" y="190" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="130" minY="-10" maxY="131" /> -<infoparam name="TGComponent" value="Request req_Timer" /> -<TGConnectingPoint num="0" id="148" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Event receive" /> +<TGConnectingPoint num="0" id="155" /> <extraparam> -<Prop commName="req_Timer" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="receive" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -964,16 +954,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="151" > -<father id="160" num="2" /> -<cdparam x="1222" y="431" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="158" > +<father id="183" num="5" /> +<cdparam x="721" y="235" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="130" minY="-10" maxY="131" /> -<infoparam name="TGComponent" value="Event stop" /> -<TGConnectingPoint num="0" id="150" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Channel fromPtoT" /> +<TGConnectingPoint num="0" id="157" /> <extraparam> -<Prop commName="stop" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromPtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -981,85 +971,50 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1201" id="179" > -<father id="229" num="1" /> -<cdparam x="829" y="362" /> -<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> -<hidden value="false" /> -<cdrectangleparam minX="-13" maxX="557" minY="-13" maxY="472" /> -<infoparam name="Composite port" value="" /> -<TGConnectingPoint num="0" id="161" /> -<TGConnectingPoint num="1" id="162" /> -<TGConnectingPoint num="2" id="163" /> -<TGConnectingPoint num="3" id="164" /> -<TGConnectingPoint num="4" id="165" /> -<TGConnectingPoint num="5" id="166" /> -<TGConnectingPoint num="6" id="167" /> -<TGConnectingPoint num="7" id="168" /> -<TGConnectingPoint num="8" id="169" /> -<TGConnectingPoint num="9" id="170" /> -<TGConnectingPoint num="10" id="171" /> -<TGConnectingPoint num="11" id="172" /> -<TGConnectingPoint num="12" id="173" /> -<TGConnectingPoint num="13" id="174" /> -<TGConnectingPoint num="14" id="175" /> -<TGConnectingPoint num="15" id="176" /> -<TGConnectingPoint num="16" id="177" /> -<TGConnectingPoint num="17" id="178" /> -</SUBCOMPONENT> -<SUBCOMPONENT type="1202" id="220" > -<father id="229" num="2" /> -<cdparam x="931" y="167" /> -<sizeparam width="236" height="317" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="160" > +<father id="183" num="6" /> +<cdparam x="721" y="269" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="334" minY="0" maxY="168" /> -<infoparam name="TGComponent" value="TCPIP" /> -<TGConnectingPoint num="0" id="212" /> -<TGConnectingPoint num="1" id="213" /> -<TGConnectingPoint num="2" id="214" /> -<TGConnectingPoint num="3" id="215" /> -<TGConnectingPoint num="4" id="216" /> -<TGConnectingPoint num="5" id="217" /> -<TGConnectingPoint num="6" id="218" /> -<TGConnectingPoint num="7" id="219" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Channel fromTtoP" /> +<TGConnectingPoint num="0" id="159" /> <extraparam> -<Data isAttacker="No" Operation="" /> -<Attribute access="2" id="wind" value="64" type="0" typeOther="" /> -<Attribute access="2" id="seqNum" value="0" type="0" typeOther="" /> -<Attribute access="2" id="i" value="" type="0" typeOther="" /> -<Attribute access="2" id="j" value="" type="0" typeOther="" /> -<Attribute access="2" id="a" value="0" type="0" typeOther="" /> -<Attribute access="2" id="b" value="0" type="0" typeOther="" /> -<Attribute access="2" id="tcpctrl" value="" type="5" typeOther="TCP_CTRL" /> +<Prop commName="fromTtoP" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> +<Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="181" > -<father id="220" num="0" /> -<cdparam x="918" y="185" /> +<SUBCOMPONENT type="1203" id="162" > +<father id="183" num="7" /> +<cdparam x="521" y="156" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> -<infoparam name="TGComponent" value="Event send" /> -<TGConnectingPoint num="0" id="180" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Event data_Ready" /> +<TGConnectingPoint num="0" id="161" /> <extraparam> -<Prop commName="send" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> -<Type type="0" typeOther="" /> -<Type type="0" typeOther="" /> +<Prop commName="data_Ready" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="uint_16" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Type type="1" typeOther="" /> +<Type type="2" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="183" > -<father id="220" num="1" /> -<cdparam x="918" y="235" /> +<SUBCOMPONENT type="1203" id="164" > +<father id="183" num="8" /> +<cdparam x="521" y="290" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> -<infoparam name="TGComponent" value="Event receive" /> -<TGConnectingPoint num="0" id="182" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Event data_Ready_SC" /> +<TGConnectingPoint num="0" id="163" /> <extraparam> -<Prop commName="receive" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="data_Ready_SC" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1067,16 +1022,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="185" > -<father id="220" num="2" /> -<cdparam x="918" y="278" /> +<SUBCOMPONENT type="1203" id="166" > +<father id="183" num="9" /> +<cdparam x="521" y="202" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> -<infoparam name="TGComponent" value="Channel fromPtoT" /> -<TGConnectingPoint num="0" id="184" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Channel fromDtoSC" /> +<TGConnectingPoint num="0" id="165" /> <extraparam> -<Prop commName="fromPtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromDtoSC" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="40" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="null" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1084,16 +1039,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="187" > -<father id="220" num="3" /> -<cdparam x="918" y="317" /> +<SUBCOMPONENT type="1203" id="168" > +<father id="183" num="10" /> +<cdparam x="521" y="247" /> <sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> -<infoparam name="TGComponent" value="Channel fromTtoP" /> -<TGConnectingPoint num="0" id="186" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Channel fromSCtoD" /> +<TGConnectingPoint num="0" id="167" /> <extraparam> -<Prop commName="fromTtoP" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromSCtoD" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="40" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="true" checkConfStatus="1" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1101,16 +1056,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="189" > -<father id="220" num="4" /> -<cdparam x="921" y="352" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="170" > +<father id="183" num="11" /> +<cdparam x="543" y="321" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Request start_TCP_IP" /> -<TGConnectingPoint num="0" id="188" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Event answerToReset, pTSConfirm" /> +<TGConnectingPoint num="0" id="169" /> <extraparam> -<Prop commName="start_TCP_IP" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="answerToReset, pTSConfirm" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1118,16 +1073,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="191" > -<father id="220" num="5" /> -<cdparam x="921" y="443" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="172" > +<father id="183" num="12" /> +<cdparam x="580" y="84" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Event send_TCP" /> -<TGConnectingPoint num="0" id="190" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Event reset, pTS, end" /> +<TGConnectingPoint num="0" id="171" /> <extraparam> -<Prop commName="send_TCP" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="reset, pTS, end" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1135,16 +1090,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="193" > -<father id="220" num="6" /> -<cdparam x="921" y="416" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="174" > +<father id="183" num="13" /> +<cdparam x="721" y="111" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Event open, abort, close" /> -<TGConnectingPoint num="0" id="192" /> +<cdrectangleparam minX="-13" maxX="187" minY="-13" maxY="224" /> +<infoparam name="TGComponent" value="Event send" /> +<TGConnectingPoint num="0" id="173" /> <extraparam> -<Prop commName="open, abort, close" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="send" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1152,16 +1107,35 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="195" > -<father id="220" num="7" /> -<cdparam x="921" y="387" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1202" id="210" > +<father id="238" num="2" /> +<cdparam x="565" y="416" /> +<sizeparam width="240" height="145" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Channel fromTtoA" /> -<TGConnectingPoint num="0" id="194" /> +<cdrectangleparam minX="0" maxX="695" minY="0" maxY="385" /> +<infoparam name="TGComponent" value="Application" /> +<TGConnectingPoint num="0" id="202" /> +<TGConnectingPoint num="1" id="203" /> +<TGConnectingPoint num="2" id="204" /> +<TGConnectingPoint num="3" id="205" /> +<TGConnectingPoint num="4" id="206" /> +<TGConnectingPoint num="5" id="207" /> +<TGConnectingPoint num="6" id="208" /> +<TGConnectingPoint num="7" id="209" /> <extraparam> -<Prop commName="fromTtoA" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Data isAttacker="No" Operation="" /> +</extraparam> +</SUBCOMPONENT> +<SUBCOMPONENT type="1203" id="185" > +<father id="210" num="0" /> +<cdparam x="748" y="548" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="227" minY="-13" maxY="132" /> +<infoparam name="Primitive port" value="Event opened" /> +<TGConnectingPoint num="0" id="184" /> +<extraparam> +<Prop commName="opened" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1169,16 +1143,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="197" > -<father id="220" num="8" /> -<cdparam x="959" y="474" /> -<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="187" > +<father id="210" num="1" /> +<cdparam x="697" y="403" /> +<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Channel fromAtoT" /> -<TGConnectingPoint num="0" id="196" /> +<cdrectangleparam minX="-13" maxX="227" minY="-13" maxY="132" /> +<infoparam name="Primitive port" value="Event connectionOpened" /> +<TGConnectingPoint num="0" id="186" /> <extraparam> -<Prop commName="fromAtoT" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="connectionOpened" commType="1" origin="true" finite="true" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1186,16 +1160,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="199" > -<father id="220" num="9" /> -<cdparam x="921" y="466" /> +<SUBCOMPONENT type="1203" id="189" > +<father id="210" num="2" /> +<cdparam x="659" y="406" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Event receive_Application" /> -<TGConnectingPoint num="0" id="198" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Request start_Application" /> +<TGConnectingPoint num="0" id="188" /> <extraparam> -<Prop commName="receive_Application" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="start_Application" commType="2" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1203,16 +1177,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="201" > -<father id="220" num="10" /> -<cdparam x="1157" y="370" /> +<SUBCOMPONENT type="1203" id="191" > +<father id="210" num="3" /> +<cdparam x="795" y="542" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Event timeOut" /> -<TGConnectingPoint num="0" id="200" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Channel fromAtoT" /> +<TGConnectingPoint num="0" id="190" /> <extraparam> -<Prop commName="timeOut" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromAtoT" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1220,16 +1194,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="203" > -<father id="220" num="11" /> -<cdparam x="1157" y="405" /> +<SUBCOMPONENT type="1203" id="193" > +<father id="210" num="4" /> +<cdparam x="795" y="509" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Request req_Timer" /> -<TGConnectingPoint num="0" id="202" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Event receive_Application" /> +<TGConnectingPoint num="0" id="192" /> <extraparam> -<Prop commName="req_Timer" commType="2" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="receive_Application" commType="1" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1237,16 +1211,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="205" > -<father id="220" num="12" /> -<cdparam x="1157" y="198" /> +<SUBCOMPONENT type="1203" id="195" > +<father id="210" num="5" /> +<cdparam x="795" y="448" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Channel temp" /> -<TGConnectingPoint num="0" id="204" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Event open, abort, close" /> +<TGConnectingPoint num="0" id="194" /> <extraparam> -<Prop commName="temp" commType="0" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="open, abort, close" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1254,16 +1228,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="207" > -<father id="220" num="13" /> -<cdparam x="1157" y="266" /> +<SUBCOMPONENT type="1203" id="197" > +<father id="210" num="6" /> +<cdparam x="795" y="481" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Channel temp" /> -<TGConnectingPoint num="0" id="206" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Event send_TCP" /> +<TGConnectingPoint num="0" id="196" /> <extraparam> -<Prop commName="temp" commType="0" origin="false" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="send_TCP" commType="1" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1271,16 +1245,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="209" > -<father id="220" num="14" /> -<cdparam x="1157" y="444" /> +<SUBCOMPONENT type="1203" id="199" > +<father id="210" num="7" /> +<cdparam x="795" y="419" /> <sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-10" maxX="226" minY="-10" maxY="307" /> -<infoparam name="TGComponent" value="Event stop" /> -<TGConnectingPoint num="0" id="208" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Channel fromTtoA" /> +<TGConnectingPoint num="0" id="198" /> <extraparam> -<Prop commName="stop" commType="1" origin="true" finite="true" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="fromTtoA" commType="0" origin="false" finite="false" blocking="true" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1288,16 +1262,16 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> -<SUBCOMPONENT type="1203" id="211" > -<father id="220" num="15" /> -<cdparam x="1012" y="471" /> -<sizeparam width="26" height="26" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<SUBCOMPONENT type="1203" id="201" > +<father id="210" num="8" /> +<cdparam x="741" y="406" /> +<sizeparam width="21" height="21" minWidth="1" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="-13" maxX="223" minY="-13" maxY="304" /> -<infoparam name="Primitive port" value="Event opened" /> -<TGConnectingPoint num="0" id="210" /> +<cdrectangleparam minX="-10" maxX="230" minY="-10" maxY="135" /> +<infoparam name="TGComponent" value="Request start_TCP_IP" /> +<TGConnectingPoint num="0" id="200" /> <extraparam> -<Prop commName="opened" commType="1" origin="true" finite="false" blocking="false" maxSamples="8" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="0" dataFlowType="int16_t" associatedEvent="" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> +<Prop commName="start_TCP_IP" commType="2" origin="true" finite="false" blocking="false" maxSamples="1" widthSamples="4" isLossy="false" isPrex="false" isPostex="false" lossPercentage="0" maxNbOfLoss="-1" dataFlowType="VOID" associatedEvent="VOID" checkConf="false" checkConfStatus="0" checkAuth="false" checkWeakAuthStatus="0" checkStrongAuthStatus="0" vc="-1" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> <Type type="0" typeOther="" /> @@ -1305,6 +1279,32 @@ <Type type="0" typeOther="" /> </extraparam> </SUBCOMPONENT> +<SUBCOMPONENT type="1201" id="229" > +<father id="238" num="3" /> +<cdparam x="521" y="369" /> +<sizeparam width="26" height="26" minWidth="10" minHeight="10" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<hidden value="false" /> +<cdrectangleparam minX="-13" maxX="922" minY="-13" maxY="517" /> +<infoparam name="Composite port" value="" /> +<TGConnectingPoint num="0" id="211" /> +<TGConnectingPoint num="1" id="212" /> +<TGConnectingPoint num="2" id="213" /> +<TGConnectingPoint num="3" id="214" /> +<TGConnectingPoint num="4" id="215" /> +<TGConnectingPoint num="5" id="216" /> +<TGConnectingPoint num="6" id="217" /> +<TGConnectingPoint num="7" id="218" /> +<TGConnectingPoint num="8" id="219" /> +<TGConnectingPoint num="9" id="220" /> +<TGConnectingPoint num="10" id="221" /> +<TGConnectingPoint num="11" id="222" /> +<TGConnectingPoint num="12" id="223" /> +<TGConnectingPoint num="13" id="224" /> +<TGConnectingPoint num="14" id="225" /> +<TGConnectingPoint num="15" id="226" /> +<TGConnectingPoint num="16" id="227" /> +<TGConnectingPoint num="17" id="228" /> +</SUBCOMPONENT> </TMLComponentTaskDiagramPanel> @@ -6631,7 +6631,7 @@ On prend b=1 comme exemple </COMPONENT> <COMPONENT type="1105" id="1475" > -<cdparam x="797" y="120" /> +<cdparam x="803" y="171" /> <sizeparam width="200" height="200" minWidth="100" minHeight="35" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> @@ -6667,7 +6667,7 @@ On prend b=1 comme exemple </COMPONENT> <COMPONENT type="1100" id="1545" > -<cdparam x="51" y="90" /> +<cdparam x="111" y="90" /> <sizeparam width="459" height="321" minWidth="150" minHeight="150" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="10" maxX="1400" minY="10" maxY="900" /> @@ -6703,11 +6703,11 @@ On prend b=1 comme exemple </COMPONENT> <SUBCOMPONENT type="1101" id="1484" > <father id="1545" num="0" /> -<cdparam x="226" y="304" /> -<sizeparam width="109" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="152" y="154" /> +<sizeparam width="163" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::Timer" /> +<cdrectangleparam minX="0" maxX="296" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::InterfaceDevice" /> <TGConnectingPoint num="0" id="1476" /> <TGConnectingPoint num="1" id="1477" /> <TGConnectingPoint num="2" id="1478" /> @@ -6717,16 +6717,16 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1482" /> <TGConnectingPoint num="7" id="1483" /> <extraparam> -<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> +<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1493" > <father id="1545" num="1" /> -<cdparam x="290" y="234" /> -<sizeparam width="139" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="351" y="153" /> +<sizeparam width="136" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="320" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::Application" /> +<cdrectangleparam minX="0" maxX="323" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::SmartCard" /> <TGConnectingPoint num="0" id="1485" /> <TGConnectingPoint num="1" id="1486" /> <TGConnectingPoint num="2" id="1487" /> @@ -6736,12 +6736,12 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1491" /> <TGConnectingPoint num="7" id="1492" /> <extraparam> -<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> +<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1502" > <father id="1545" num="2" /> -<cdparam x="96" y="246" /> +<cdparam x="156" y="246" /> <sizeparam width="108" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> <cdrectangleparam minX="0" maxX="351" minY="0" maxY="271" /> @@ -6760,11 +6760,11 @@ On prend b=1 comme exemple </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1511" > <father id="1545" num="3" /> -<cdparam x="291" y="153" /> -<sizeparam width="136" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="350" y="234" /> +<sizeparam width="139" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="323" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::SmartCard" /> +<cdrectangleparam minX="0" maxX="320" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::Application" /> <TGConnectingPoint num="0" id="1503" /> <TGConnectingPoint num="1" id="1504" /> <TGConnectingPoint num="2" id="1505" /> @@ -6774,16 +6774,16 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1509" /> <TGConnectingPoint num="7" id="1510" /> <extraparam> -<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> +<info value="AppC::Application" taskName="Application" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1520" > <father id="1545" num="4" /> -<cdparam x="92" y="154" /> -<sizeparam width="163" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="286" y="304" /> +<sizeparam width="109" height="50" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="296" minY="0" maxY="271" /> -<infoparam name="TGComponent" value="AppC::InterfaceDevice" /> +<cdrectangleparam minX="0" maxX="350" minY="0" maxY="271" /> +<infoparam name="TGComponent" value="AppC::Timer" /> <TGConnectingPoint num="0" id="1512" /> <TGConnectingPoint num="1" id="1513" /> <TGConnectingPoint num="2" id="1514" /> @@ -6793,7 +6793,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1518" /> <TGConnectingPoint num="7" id="1519" /> <extraparam> -<info value="AppC::InterfaceDevice" taskName="InterfaceDevice" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> +<info value="AppC::Timer" taskName="Timer" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> @@ -6801,7 +6801,7 @@ On prend b=1 comme exemple <cdparam x="800" y="322" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="{info}" /> -<P1 x="847" y="320" id="1465" /> +<P1 x="853" y="371" id="1465" /> <P2 x="799" y="450" id="1435" /> <AutomaticDrawing data="true" /> <extraparam> @@ -6813,7 +6813,7 @@ On prend b=1 comme exemple <cdparam x="510" y="411" /> <sizeparam width="0" height="0" minWidth="0" minHeight="0" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <infoparam name="connector" value="{info}" /> -<P1 x="510" y="411" id="1528" /> +<P1 x="570" y="411" id="1528" /> <P2 x="612" y="462" id="1436" /> <AutomaticDrawing data="true" /> <extraparam> @@ -7050,11 +7050,11 @@ On prend b=1 comme exemple </COMPONENT> <SUBCOMPONENT type="1101" id="1674" > <father id="1717" num="0" /> -<cdparam x="392" y="119" /> -<sizeparam width="136" height="37" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="277" y="90" /> +<sizeparam width="108" height="40" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="136" minY="0" maxY="130" /> -<infoparam name="TGComponent" value="AppC::SmartCard" /> +<cdrectangleparam minX="0" maxX="164" minY="0" maxY="127" /> +<infoparam name="TGComponent" value="AppC::TCPIP" /> <TGConnectingPoint num="0" id="1666" /> <TGConnectingPoint num="1" id="1667" /> <TGConnectingPoint num="2" id="1668" /> @@ -7064,7 +7064,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1672" /> <TGConnectingPoint num="7" id="1673" /> <extraparam> -<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> +<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1683" > @@ -7088,11 +7088,11 @@ On prend b=1 comme exemple </SUBCOMPONENT> <SUBCOMPONENT type="1101" id="1692" > <father id="1717" num="2" /> -<cdparam x="277" y="90" /> -<sizeparam width="108" height="40" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> +<cdparam x="392" y="119" /> +<sizeparam width="136" height="37" minWidth="75" minHeight="1" maxWidth="2000" maxHeight="2000" minDesiredWidth="0" minDesiredHeight="0" /> <hidden value="false" /> -<cdrectangleparam minX="0" maxX="164" minY="0" maxY="127" /> -<infoparam name="TGComponent" value="AppC::TCPIP" /> +<cdrectangleparam minX="0" maxX="136" minY="0" maxY="130" /> +<infoparam name="TGComponent" value="AppC::SmartCard" /> <TGConnectingPoint num="0" id="1684" /> <TGConnectingPoint num="1" id="1685" /> <TGConnectingPoint num="2" id="1686" /> @@ -7102,7 +7102,7 @@ On prend b=1 comme exemple <TGConnectingPoint num="6" id="1690" /> <TGConnectingPoint num="7" id="1691" /> <extraparam> -<info value="AppC::TCPIP" taskName="TCPIP" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> +<info value="AppC::SmartCard" taskName="SmartCard" referenceTaskName="AppC" priority="0" operationMEC="" fatherComponentMECType="0" /> </extraparam> </SUBCOMPONENT> diff --git a/src/main/java/tmltranslator/TMLTextSpecification.java b/src/main/java/tmltranslator/TMLTextSpecification.java index de546d35dc70e288b68ed9f2a7ba7462ab7d3087..7dac4e4c49857f2fc5d22ee2aa22c9be64dfcd31 100755 --- a/src/main/java/tmltranslator/TMLTextSpecification.java +++ b/src/main/java/tmltranslator/TMLTextSpecification.java @@ -1,26 +1,26 @@ /* Copyright or (C) or Copr. GET / ENST, Telecom-Paris, Ludovic Apvrille - * + * * ludovic.apvrille AT enst.fr - * + * * This software is a computer program whose purpose is to allow the * edition of TURTLE analysis, design and deployment diagrams, to * allow the generation of RT-LOTOS or Java code from this diagram, * and at last to allow the analysis of formal validation traces * obtained from external tools, e.g. RTL from LAAS-CNRS and CADP * from INRIA Rhone-Alpes. - * + * * This software is governed by the CeCILL license under French law and * abiding by the rules of distribution of free software. You can use, * modify and/ or redistribute the software under the terms of the CeCILL * license as circulated by CEA, CNRS and INRIA at the following URL * "http://www.cecill.info". - * + * * As a counterpart to the access to the source code and rights to copy, * modify and redistribute granted by the license, users are provided only * with a limited warranty and the software's author, the holder of the * economic rights, and the successive licensors have only limited * liability. - * + * * In this respect, the user's attention is drawn to the risks associated * with loading, using, modifying and/or developing or reproducing the * software by the user in light of its specific status of free software, @@ -31,42 +31,34 @@ * requirements in conditions enabling the security of their systems and/or * data to be ensured and, more generally, to use and operate it in the * same conditions as regards security. - * + * * The fact that you are presently reading this means that you have had * knowledge of the CeCILL license and that you accept its terms. */ - - - package tmltranslator; +import common.SpecConfigTTool; import myutil.Conversion; import myutil.FileException; import myutil.FileUtils; import myutil.TraceManager; -import tmltranslator.SecurityPattern; - import java.io.BufferedReader; -import java.io.File; import java.io.StringReader; import java.util.ArrayList; import java.util.Date; -import java.util.Map; import java.util.HashMap; - - - -import common.SpecConfigTTool; +import java.util.Map; /** * Class TMLTextSpecification * Import and export of TML textual specifications * Creation: 12/09/2007 - * @version 1.0 12/09/2007 + * * @author Ludovic APVRILLE + * @version 1.0 12/09/2007 */ public class TMLTextSpecification<E> { public final static String CR = "\n"; @@ -74,15 +66,15 @@ public class TMLTextSpecification<E> { public final static String CR2 = "\n\n"; public final static String SC = ";"; public final static String C = ","; - - - public final static String AENCRYPT="AE"; - public final static String SENCRYPT="SE"; - public final static String MAC="MAC"; - public final static String NONCE="NONCE"; - public final static String HASH="HASH"; - public final static String ADV="ADV"; - + + + public final static String AENCRYPT = "AE"; + public final static String SENCRYPT = "SE"; + public final static String MAC = "MAC"; + public final static String NONCE = "NONCE"; + public final static String HASH = "HASH"; + public final static String ADV = "ADV"; + private String spec; private String title; @@ -95,7 +87,7 @@ public class TMLTextSpecification<E> { private boolean inDec = true; private boolean inTask = false; private boolean inTaskDec = false; - // private boolean inTaskBehavior = false; + // private boolean inTaskBehavior = false; private TMLTask task; private TMLActivityElement tmlae; private ArrayList<TMLParserSaveElt> parses; @@ -104,9 +96,11 @@ public class TMLTextSpecification<E> { private static String keywords[] = {"BOOL", "INT", "NAT", "CHANNEL", "EVENT", "REQUEST", "LOSSYCHANNEL", "VCCHANNEL", "LOSSYEVENT", "LOSSYREQUEST", "BRBW", "NBRNBW", - "BRNBW", "INF", "NIB", "NINB", "TASK", "ENDTASK", "IF", "ELSE", "ORIF", "ENDIF", "FOR", "ENDFOR", - "SELECTEVT", "CASE", "ENDSELECTEVT", "ENDCASE", "WRITE", "READ", "WAIT", "NOTIFY", "NOTIFIED", "RAND", "CASERAND", "ENDRAND", "ENDCASERAND", "EXECI", "EXECC", "DELAY", "RANDOM", - "RANDOMSEQ", "ENDRANDOMSEQ", "SEQ", "ENDSEQ"}; + "BRNBW", "INF", "NIB", "NINB", "TASK", "ENDTASK", "TASKOP", "IF", "ELSE", "ORIF", "ENDIF", "FOR", "ENDFOR", + "SELECTEVT", "CASE", "ENDSELECTEVT", "ENDCASE", "WRITE", "READ", "WAIT", "NOTIFY", "NOTIFIED", "NOTIFYREQUEST", "RAND", "CASERAND", + "ENDRAND", + "ENDCASERAND", "EXECI", "EXECC", "DELAY", "RANDOM", + "RANDOMSEQ", "ENDRANDOMSEQ", "SEQ", "ENDSEQ"}; private String channeltypes[] = {"BRBW", "NBRNBW", "BRNBW"}; private String eventtypes[] = {"INF", "NIB", "NINB"}; @@ -130,7 +124,7 @@ public class TMLTextSpecification<E> { } public void saveFile(String path, String filename) throws FileException { - SpecConfigTTool.checkAndCreateTMLDir(path); + SpecConfigTTool.checkAndCreateTMLDir(path); TraceManager.addUser("Saving TML spec file in " + path + filename); FileUtils.saveFile(path + filename, spec); } @@ -148,7 +142,6 @@ public class TMLTextSpecification<E> { } - public void indent() { indent(4); } @@ -161,10 +154,10 @@ public class TMLTextSpecification<E> { int nbOpen = 0; int nbClose = 0; - while ( (indexEnd = spec.indexOf('\n')) > -1) { - tmp = spec.substring(0, indexEnd+1); + while ((indexEnd = spec.indexOf('\n')) > -1) { + tmp = spec.substring(0, indexEnd + 1); try { - spec = spec.substring(indexEnd+1, spec.length()); + spec = spec.substring(indexEnd + 1, spec.length()); } catch (Exception e) { spec = ""; } @@ -189,9 +182,9 @@ public class TMLTextSpecification<E> { private int nbOf(String _tmp, String[] array) { String tmp; - // int size; + // int size; - for(int i=0; i<array.length; i++) { + for (int i = 0; i < array.length; i++) { if (_tmp.startsWith(array[i])) { tmp = _tmp.substring(array[i].length(), _tmp.length()); //TraceManager.addDev("tmp=" + tmp + " _tmp" + _tmp + " array=" + array[i]); @@ -207,11 +200,10 @@ public class TMLTextSpecification<E> { public String toString() { return spec; } - public String toTextFormat(TMLModeling<E> tmlm) { - tmlm.removeForksAndJoins(); + tmlm.removeForksAndJoins(); tmlm.sortByName(); // Print TMLTasks WCET @@ -220,15 +212,13 @@ public class TMLTextSpecification<E> { spec = makeDeclarations(tmlm); //Set up Cryptographic Configurations - + spec += makeTasks(tmlm); indent(); return spec; } - - public String makeDeclarations(TMLModeling<E> tmlm) { int i; String sb = ""; @@ -237,7 +227,7 @@ public class TMLTextSpecification<E> { sb += "// Generated: " + new Date().toString() + CR2; sb += "// Channels" + CR; - for(TMLChannel ch:tmlm.getChannels()) { + for (TMLChannel ch : tmlm.getChannels()) { if (ch.isBasicChannel()) { sb += "CHANNEL" + SP + ch.getName() + SP + TMLChannel.getStringType(ch.getType()) + SP + ch.getSize(); if (!ch.isInfinite()) { @@ -253,25 +243,25 @@ public class TMLTextSpecification<E> { sb += "VCCHANNEL" + SP + ch.getName() + SP + ch.getVC() + CR; } } else { - sb += "CHANNEL" + SP + ch.getName() + SP + TMLChannel.getStringType(ch.getType()) + SP + ch.getSize(); + sb += "CHANNEL" + SP + ch.getName() + SP + TMLChannel.getStringType(ch.getType()) + SP + ch.getSize(); if (!ch.isInfinite()) { sb += SP + ch.getMax(); } - + sb += SP + "OUT"; - for (TMLTask task: ch.getOriginTasks()) { + for (TMLTask task : ch.getOriginTasks()) { sb += SP + task.getName(); } sb += SP + "IN"; - for (TMLTask task: ch.getDestinationTasks()) { + for (TMLTask task : ch.getDestinationTasks()) { sb += SP + task.getName(); } sb += CR; - + if (ch.isLossy()) { - sb += "LOSSYCHANNEL" + SP + ch.getName() + SP + ch.getLossPercentage() + SP + ch.getMaxNbOfLoss() + CR; + sb += "LOSSYCHANNEL" + SP + ch.getName() + SP + ch.getLossPercentage() + SP + ch.getMaxNbOfLoss() + CR; } if (ch.getVC() >= 0) { @@ -280,16 +270,15 @@ public class TMLTextSpecification<E> { } - } - sb+= CR; + sb += CR; sb += "// Events" + CR; - for(TMLEvent evt:tmlm.getEvents()) { + for (TMLEvent evt : tmlm.getEvents()) { sb += "EVENT" + SP + evt.getName() + "("; - for(i=0; i<evt.getNbOfParams(); i++) { + for (i = 0; i < evt.getNbOfParams(); i++) { if (i != 0) { - sb+= ", "; + sb += ", "; } sb += TMLType.getStringType(evt.getType(i).getType()); } @@ -298,37 +287,37 @@ public class TMLTextSpecification<E> { if (!evt.isInfinite()) { sb += SP + evt.getMaxSize(); } - sb += SP + evt.getOriginTask().getName() + SP + evt.getDestinationTask().getName(); + sb += SP + evt.getOriginTask().getName() + SP + evt.getDestinationTask().getName(); - sb+= CR; + sb += CR; if (evt.isLossy()) { sb += "LOSSYEVENT" + SP + evt.getName() + SP + evt.getLossPercentage() + SP + evt.getMaxNbOfLoss() + CR; } } - sb+= CR; + sb += CR; sb += "// Requests" + CR; - for(TMLRequest request:tmlm.getRequests()) { + for (TMLRequest request : tmlm.getRequests()) { sb += "REQUEST" + SP + request.getName() + "("; - for(i=0; i<request.getNbOfParams(); i++) { + for (i = 0; i < request.getNbOfParams(); i++) { if (i != 0) { - sb+= ", "; + sb += ", "; } sb += TMLType.getStringType(request.getType(i).getType()); } sb += ")"; - for(TMLTask t: request.getOriginTasks()) { - sb+= SP + t.getName(); + for (TMLTask t : request.getOriginTasks()) { + sb += SP + t.getName(); } sb += SP + request.getDestinationTask().getName(); - sb+= CR; + sb += CR; if (request.isLossy()) { sb += "LOSSYREQUEST" + SP + request.getName() + SP + request.getLossPercentage() + SP + request.getMaxNbOfLoss() + CR; } } - sb+= CR; + sb += CR; return sb; @@ -336,7 +325,7 @@ public class TMLTextSpecification<E> { public String makeTasks(TMLModeling<E> tmlm) { String sb = ""; - for(TMLTask task: tmlm.getTasks()) { + for (TMLTask task : tmlm.getTasks()) { sb += "TASK" + SP + task.getName() + CR; sb += "TASKOP" + SP + task.getOperation() + CR; sb += makeActivity(task); @@ -349,9 +338,9 @@ public class TMLTextSpecification<E> { String sb = ""; sb += "//Local variables" + CR; - for(TMLAttribute attr: task.getAttributes()) { + for (TMLAttribute attr : task.getAttributes()) { sb += TMLType.getStringType(attr.getType().getType()) + SP + attr.getName(); - if ((attr.getInitialValue() != null) && (attr.getInitialValue().length() > 0)){ + if ((attr.getInitialValue() != null) && (attr.getInitialValue().length() > 0)) { sb += " = " + attr.getInitialValue(); } sb += CR; @@ -370,7 +359,7 @@ public class TMLTextSpecification<E> { TMLActivityElementChannel tmlch; TMLActivityElementEvent tmlevt; TMLSendRequest tmlreq; - // TMLEvent evt; + // TMLEvent evt; TMLRandom random; int i; String tmp1, tmp2; @@ -382,57 +371,51 @@ public class TMLTextSpecification<E> { return ""; } else if (elt instanceof TMLExecI) { - code = "EXECI" + SP + modifyString(((TMLExecI)elt).getAction()) + CR; + code = "EXECI" + SP + modifyString(((TMLExecI) elt).getAction()) + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLExecIInterval) { - code = "EXECI" + SP + modifyString(((TMLExecIInterval)elt).getMinDelay()) + SP + modifyString(((TMLExecIInterval)elt).getMaxDelay()) + CR; + code = "EXECI" + SP + modifyString(((TMLExecIInterval) elt).getMinDelay()) + SP + modifyString(((TMLExecIInterval) elt).getMaxDelay()) + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLExecC) { - if (elt.securityPattern==null){ - code = "EXECC" + SP + modifyString(((TMLExecC)elt).getAction()) + CR; - } - else { - String type=""; - if (elt.securityPattern.type.equals("Asymmetric Encryption")){ - type = AENCRYPT; - } - else if (elt.securityPattern.type.equals("Symmetric Encryption")){ - type = SENCRYPT; - } - else if (elt.securityPattern.type.equals("MAC")){ - type = MAC; - } - else if (elt.securityPattern.type.equals("Nonce")){ - type = NONCE; - } - else if (elt.securityPattern.type.equals("Hash")){ - type = HASH; - } - else { - type = ADV; - } - code = "EXECC" + SP + modifyString(((TMLExecC)elt).getAction()) + SP + elt.securityPattern.name + SP + type + SP + elt.securityPattern.encTime + SP + elt.securityPattern.decTime + SP + elt.securityPattern.overhead + SP + elt.securityPattern.size + SP + elt.securityPattern.nonce + SP + elt.securityPattern.key+ CR; - } + if (elt.securityPattern == null) { + code = "EXECC" + SP + modifyString(((TMLExecC) elt).getAction()) + CR; + } else { + String type = ""; + if (elt.securityPattern.type.equals("Asymmetric Encryption")) { + type = AENCRYPT; + } else if (elt.securityPattern.type.equals("Symmetric Encryption")) { + type = SENCRYPT; + } else if (elt.securityPattern.type.equals("MAC")) { + type = MAC; + } else if (elt.securityPattern.type.equals("Nonce")) { + type = NONCE; + } else if (elt.securityPattern.type.equals("Hash")) { + type = HASH; + } else { + type = ADV; + } + code = "EXECC" + SP + modifyString(((TMLExecC) elt).getAction()) + SP + elt.securityPattern.name + SP + type + SP + elt.securityPattern.encTime + SP + elt.securityPattern.decTime + SP + elt.securityPattern.overhead + SP + elt.securityPattern.size + SP + elt.securityPattern.nonce + SP + elt.securityPattern.key + CR; + } return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLExecCInterval) { - code = "EXECC" + SP + modifyString(((TMLExecCInterval)elt).getMinDelay()) + SP + modifyString(((TMLExecCInterval)elt).getMaxDelay()) + CR; + code = "EXECC" + SP + modifyString(((TMLExecCInterval) elt).getMinDelay()) + SP + modifyString(((TMLExecCInterval) elt).getMaxDelay()) + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLDelay) { - tmp1 = ((TMLDelay)elt).getMinDelay(); - tmp2 = ((TMLDelay)elt).getMaxDelay(); + tmp1 = ((TMLDelay) elt).getMinDelay(); + tmp2 = ((TMLDelay) elt).getMaxDelay(); if (tmp1.compareTo(tmp2) == 0) { - code = "DELAY" + SP + modifyString(((TMLDelay)elt).getMinDelay()) + SP + modifyString(((TMLDelay)elt).getUnit()) + CR; + code = "DELAY" + SP + modifyString(((TMLDelay) elt).getMinDelay()) + SP + modifyString(((TMLDelay) elt).getUnit()) + CR; } else { - code = "DELAY" + SP + modifyString(((TMLDelay)elt).getMinDelay()) + SP + modifyString(((TMLDelay)elt).getMaxDelay()) + SP + modifyString(((TMLDelay)elt).getUnit()) + CR; + code = "DELAY" + SP + modifyString(((TMLDelay) elt).getMinDelay()) + SP + modifyString(((TMLDelay) elt).getMaxDelay()) + SP + modifyString(((TMLDelay) elt).getUnit()) + CR; } return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLForLoop) { - tmlfl = (TMLForLoop)elt; + tmlfl = (TMLForLoop) elt; code = "FOR(" + tmlfl.getInit() + SC + SP; code += tmlfl.getCondition() + SC + SP; code += tmlfl.getIncrement() + ")" + CR; @@ -440,75 +423,73 @@ public class TMLTextSpecification<E> { return code + "ENDFOR" + CR + makeBehavior(task, elt.getNextElement(1)); } else if (elt instanceof TMLRandom) { - random = (TMLRandom)elt; - code = "RANDOM" + SP + modifyString(""+random.getFunctionId()) + SP; + random = (TMLRandom) elt; + code = "RANDOM" + SP + modifyString("" + random.getFunctionId()) + SP; code += modifyString(random.getVariable()) + SP; code += modifyString(random.getMinValue()) + SP; code += modifyString(random.getMaxValue()) + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLActionState) { - code = modifyString(((TMLActivityElementWithAction)elt).getAction()) + CR; + code = modifyString(((TMLActivityElementWithAction) elt).getAction()) + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLWriteChannel) { - tmlch = (TMLActivityElementChannel)elt; + tmlch = (TMLActivityElementChannel) elt; code = "WRITE "; - for(int k=0; k<tmlch.getNbOfChannels(); k++) { + for (int k = 0; k < tmlch.getNbOfChannels(); k++) { code = code + tmlch.getChannel(k).getName() + SP; } code = code + modifyString(tmlch.getNbOfSamples()); - if (elt.securityPattern!=null){ - code = code + SP + elt.securityPattern.name + CR; - } - else { - code = code + CR; + if (elt.securityPattern != null) { + code = code + SP + elt.securityPattern.name + CR; + } else { + code = code + CR; } return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLReadChannel) { - tmlch = (TMLActivityElementChannel)elt; - if (elt.securityPattern==null){ - code = "READ " + tmlch.getChannel(0).getName() + SP + modifyString(tmlch.getNbOfSamples()) + CR; - } - else { - code = "READ " + tmlch.getChannel(0).getName() + SP + modifyString(tmlch.getNbOfSamples()) + SP + elt.securityPattern.name + CR; + tmlch = (TMLActivityElementChannel) elt; + if (elt.securityPattern == null) { + code = "READ " + tmlch.getChannel(0).getName() + SP + modifyString(tmlch.getNbOfSamples()) + CR; + } else { + code = "READ " + tmlch.getChannel(0).getName() + SP + modifyString(tmlch.getNbOfSamples()) + SP + elt.securityPattern.name + CR; } return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLSendEvent) { - tmlevt = (TMLActivityElementEvent)elt; + tmlevt = (TMLActivityElementEvent) elt; code = "NOTIFY " + tmlevt.getEvent().getName() + " " + tmlevt.getAllParams(" ") + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLWaitEvent) { - tmlevt = (TMLActivityElementEvent)elt; + tmlevt = (TMLActivityElementEvent) elt; code = "WAIT " + tmlevt.getEvent().getName() + " " + tmlevt.getAllParams(" ") + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLNotifiedEvent) { - tmlevt = (TMLActivityElementEvent)elt; + tmlevt = (TMLActivityElementEvent) elt; code = "NOTIFIED " + tmlevt.getEvent().getName() + " " + tmlevt.getVariable() + CR; return code + makeBehavior(task, elt.getNextElement(0)); } else if (elt instanceof TMLSendRequest) { - tmlreq = (TMLSendRequest)elt; - code = "REQUEST " + tmlreq.getRequest().getName() + " " + tmlreq.getAllParams(" ") + CR; + tmlreq = (TMLSendRequest) elt; + code = "NOTIFYREQUEST " + tmlreq.getRequest().getName() + " " + tmlreq.getAllParams(" ") + CR; return code + makeBehavior(task, elt.getNextElement(0)); - } else if (elt instanceof TMLSequence) { + } else if (elt instanceof TMLSequence) { code = ""; - for(i=0; i<elt.getNbNext(); i++) { + for (i = 0; i < elt.getNbNext(); i++) { code += makeBehavior(task, elt.getNextElement(i)); } return code; } else if (elt instanceof TMLChoice) { - TMLChoice choice = (TMLChoice)elt; + TMLChoice choice = (TMLChoice) elt; code = ""; - if (choice.getNbGuard() !=0 ) { - // code1 = ""; + if (choice.getNbGuard() != 0) { + // code1 = ""; int index1 = choice.getElseGuard(), index2 = choice.getAfterGuard(); int nb = Math.max(choice.nbOfNonDeterministicGuard(), choice.nbOfStochasticGuard()); if (nb > 0) { @@ -516,14 +497,14 @@ public class TMLTextSpecification<E> { code += "RAND" + CR; } nb = 0; - for(i=0; i<choice.getNbGuard(); i++) { + for (i = 0; i < choice.getNbGuard(); i++) { if (i != index2) { if (choice.isNonDeterministicGuard(i)) { - code2 = "" + (int)(Math.floor(100/choice.getNbGuard())); - nb ++; - } else if (choice.isStochasticGuard(i)){ + code2 = "" + (int) (Math.floor(100 / choice.getNbGuard())); + nb++; + } else if (choice.isStochasticGuard(i)) { code2 = prepareString(choice.getStochasticGuard(i)); - nb ++; + nb++; } else { code2 = modifyString(choice.getGuard(i)); code2 = Conversion.replaceAllChar(code2, '[', "("); @@ -544,7 +525,7 @@ public class TMLTextSpecification<E> { code += "ENDCASERAND" + CR; } } else { - if (i==0) { + if (i == 0) { code += "IF " + code2; } else { if (i != index1) { @@ -571,9 +552,9 @@ public class TMLTextSpecification<E> { } else if (elt instanceof TMLSelectEvt) { code = "SELECTEVT" + CR; - for(i=0; i<elt.getNbNext(); i++) { + for (i = 0; i < elt.getNbNext(); i++) { try { - tmlevt = (TMLActivityElementEvent)(elt.getNextElement(i)); + tmlevt = (TMLActivityElementEvent) (elt.getNextElement(i)); code += "CASE "; code += tmlevt.getEvent().getName() + " " + tmlevt.getAllParams(" ") + CR; code += makeBehavior(task, elt.getNextElement(i).getNextElement(0)); @@ -587,7 +568,7 @@ public class TMLTextSpecification<E> { } else if (elt instanceof TMLRandomSequence) { code = "RANDOMSEQ" + CR; - for(i=0; i<elt.getNbNext(); i++) { + for (i = 0; i < elt.getNbNext(); i++) { code += "SEQ" + CR; code += makeBehavior(task, elt.getNextElement(i)); code += "ENDSEQ" + CR; @@ -619,7 +600,7 @@ public class TMLTextSpecification<E> { public String printErrors() { String ret = ""; - for(TMLTXTError error: errors) { + for (TMLTXTError error : errors) { ret += "ERROR at line " + error.lineNb + ": " + error.message + CR; try { ret += "->" + spec.split("\n")[error.lineNb] + CR2; @@ -632,7 +613,7 @@ public class TMLTextSpecification<E> { public String printWarnings() { String ret = ""; - for(TMLTXTError error: warnings) { + for (TMLTXTError error : warnings) { ret += "WARNING at line " + error.lineNb + CR; ret += error.message + CR; } @@ -648,7 +629,7 @@ public class TMLTextSpecification<E> { } else { ret += printErrors() + CR + printWarnings() + CR; ret += "Compilation failed" + CR; - ret += errors.size() + " error(s), "+ warnings.size() + " warning(s)" + CR; + ret += errors.size() + " error(s), " + warnings.size() + " warning(s)" + CR; } return ret; @@ -663,22 +644,22 @@ public class TMLTextSpecification<E> { BufferedReader br = new BufferedReader(sr); String s; String s1; - String [] split; + String[] split; int lineNb = 0; inDec = true; inTask = false; inTaskDec = false; - // inTaskBehavior = false; + // inTaskBehavior = false; //String instruction; parses = new ArrayList<TMLParserSaveElt>(); - //Start by reading once and creating all Cryptographic Configuration - try { - while((s = br.readLine()) != null) { + //Start by reading once and creating all Cryptographic Configuration + try { + while ((s = br.readLine()) != null) { if (s != null) { s = s.trim(); //TraceManager.addDev("s=" + s); @@ -690,23 +671,23 @@ public class TMLTextSpecification<E> { split = s1.split("\\s"); if (split.length > 0) { findSec(split); - + } } lineNb++; } } - - } catch (Exception e){ + + } catch (Exception e) { TraceManager.addError("Exception when reading specification: " + e.getMessage()); addError(0, lineNb, 0, "Exception when reading specification"); - } - - lineNb=0; - br = new BufferedReader(new StringReader(spec)); + } + + lineNb = 0; + br = new BufferedReader(new StringReader(spec)); try { - while((s = br.readLine()) != null) { + while ((s = br.readLine()) != null) { if (s != null) { s = s.trim(); //TraceManager.addDev("s=" + s); @@ -732,37 +713,32 @@ public class TMLTextSpecification<E> { } } - public void findSec(String[] _split){ - if (isInstruction(_split[0],"EXECC")){ - if (_split.length>4){ - String ccName = _split[3]; - String type = _split[4]; - String stringType=""; - if (type.equals(AENCRYPT)){ - stringType="Symmetric Encryption"; - } - else if (type.equals(SENCRYPT)){ - stringType="Symmetric Encryption"; - } - else if (type.equals(HASH)){ - stringType = "Hash"; - } - else if (type.equals(MAC)){ - stringType = "MAC"; - } - else if (type.equals(NONCE)){ - stringType = "Nonce"; - } - else if (type.equals(ADV)){ - stringType = "Advanced"; - } - if (!stringType.equals("")){ - SecurityPattern sp = new SecurityPattern(ccName, stringType, _split[6], _split[7], _split[4], _split[5], _split[8], "", _split[9]); - securityPatternMap.put(ccName, sp); - } - } - } - } + public void findSec(String[] _split) { + if (isInstruction(_split[0], "EXECC")) { + if (_split.length > 4) { + String ccName = _split[3]; + String type = _split[4]; + String stringType = ""; + if (type.equals(AENCRYPT)) { + stringType = "Symmetric Encryption"; + } else if (type.equals(SENCRYPT)) { + stringType = "Symmetric Encryption"; + } else if (type.equals(HASH)) { + stringType = "Hash"; + } else if (type.equals(MAC)) { + stringType = "MAC"; + } else if (type.equals(NONCE)) { + stringType = "Nonce"; + } else if (type.equals(ADV)) { + stringType = "Advanced"; + } + if (!stringType.equals("")) { + SecurityPattern sp = new SecurityPattern(ccName, stringType, _split[6], _split[7], _split[4], _split[5], _split[8], "", _split[9]); + securityPatternMap.put(ccName, sp); + } + } + } + } public void addError(int _type, int _lineNb, int _charNb, String _msg) { TMLTXTError error = new TMLTXTError(_type); @@ -781,7 +757,7 @@ public class TMLTextSpecification<E> { TMLRequest request; TMLTask t1, t2; TMLAttribute attribute; - // TMLType type; + // TMLType type; TMLStopState stop; TMLRandom random; int tmp, tmp0, tmp1, i; @@ -806,7 +782,7 @@ public class TMLTextSpecification<E> { } // CHANNEL - if(isInstruction("CHANNEL", _split[0])) { + if (isInstruction("CHANNEL", _split[0])) { if (!inDec) { error = "A channel may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); @@ -814,7 +790,7 @@ public class TMLTextSpecification<E> { } if (!((_split.length > 7))) { - error = "A channel must be declared with at least 7 parameters, and not: " + (_split.length - 1) ; + error = "A channel must be declared with at least 7 parameters, and not: " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -831,35 +807,38 @@ public class TMLTextSpecification<E> { return -1; } - // Max nb of elements? - try { - tmp = Integer.decode(_split[4]).intValue(); - dec = 1; - } catch (Exception e) {dec = 0; tmp=8;} + // Max nb of elements? + try { + tmp = Integer.decode(_split[4]).intValue(); + dec = 1; + } catch (Exception e) { + dec = 0; + tmp = 8; + } - //TraceManager.addDev("Checking OUT"); - // "OUT" keyword? - if (!checkParameter("CHANNEL", _split, 4+dec, 10, _lineNb)) { + //TraceManager.addDev("Checking OUT"); + // "OUT" keyword? + if (!checkParameter("CHANNEL", _split, 4 + dec, 10, _lineNb)) { return -1; } - //TraceManager.addDev("Checking other params of channels"); - int indexOfIN = -1; - for(i=5+dec; i<_split.length; i++) { - if (!checkParameter("CHANNEL", _split, i, 0, _lineNb)) { - return -1; - } - if (_split[i].compareTo("IN") == 0) { - indexOfIN = i; - } - } + //TraceManager.addDev("Checking other params of channels"); + int indexOfIN = -1; + for (i = 5 + dec; i < _split.length; i++) { + if (!checkParameter("CHANNEL", _split, i, 0, _lineNb)) { + return -1; + } + if (_split[i].compareTo("IN") == 0) { + indexOfIN = i; + } + } - if (indexOfIN == -1) { - error = "\"IN\" keyword is missing"; - addError(0, _lineNb, 0, error); - return -1; - } + if (indexOfIN == -1) { + error = "\"IN\" keyword is missing"; + addError(0, _lineNb, 0, error); + return -1; + } if (tmlm.getChannelByName(_split[1]) != null) { error = "Duplicate definition of channel " + _split[1]; @@ -875,38 +854,40 @@ public class TMLTextSpecification<E> { ch.setTypeByName(_split[2]); try { tmp = Integer.decode(_split[3]).intValue(); - } catch (Exception e) {tmp = 4;} + } catch (Exception e) { + tmp = 4; + } ch.setSize(tmp); - ch.setMax(tmp); - - for(i=5+dec; i<_split.length; i++) { - if (i != indexOfIN) { - t1 = tmlm.getTMLTaskByName(_split[i]); - if (t1 == null) { - t1 = new TMLTask(_split[i], null, null); - tmlm.addTask(t1); - //TraceManager.addDev("New task:" + _split[4+dec]); - } - ch.addTaskPort(t1, null, (i<indexOfIN)); - } - - } - - ch.toBasicIfPossible(); - - if (!(ch.isBasicChannel())) { - if (ch.isBadComplexChannel()) { - error = "A complex channel must be \"1 -> many\" of \"many -> 1\""; - addError(0, _lineNb, 0, error); - return -1; - } - } + ch.setMax(tmp); + + for (i = 5 + dec; i < _split.length; i++) { + if (i != indexOfIN) { + t1 = tmlm.getTMLTaskByName(_split[i]); + if (t1 == null) { + t1 = new TMLTask(_split[i], null, null); + tmlm.addTask(t1); + //TraceManager.addDev("New task:" + _split[4+dec]); + } + ch.addTaskPort(t1, null, (i < indexOfIN)); + } + + } + + ch.toBasicIfPossible(); + + if (!(ch.isBasicChannel())) { + if (ch.isBadComplexChannel()) { + error = "A complex channel must be \"1 -> many\" of \"many -> 1\""; + addError(0, _lineNb, 0, error); + return -1; + } + } tmlm.addChannel(ch); } // CHANNEL // LOSSYCHANNEL - if(isInstruction("LOSSYCHANNEL", _split[0])) { + if (isInstruction("LOSSYCHANNEL", _split[0])) { if (!inDec) { error = "A lossychannel may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); @@ -914,7 +895,7 @@ public class TMLTextSpecification<E> { } if (!((_split.length > 3) && (_split.length < 5))) { - error = "A lossychannel must be declared with exactly 3 parameters, and not " + (_split.length - 1) ; + error = "A lossychannel must be declared with exactly 3 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -942,23 +923,27 @@ public class TMLTextSpecification<E> { try { tmp0 = Integer.decode(_split[2]).intValue(); - } catch (Exception e) {tmp0 = 5;} + } catch (Exception e) { + tmp0 = 5; + } try { tmp1 = Integer.decode(_split[3]).intValue(); - } catch (Exception e) {tmp1 = -1;} + } catch (Exception e) { + tmp1 = -1; + } ch.setLossy(true, tmp0, tmp1); } // LOSSYCHANNEL - if(isInstruction("VCCHANNEL", _split[0])) { + if (isInstruction("VCCHANNEL", _split[0])) { if (!inDec) { error = "A ycchannel may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); return -1; } - if (_split.length != 2) { - error = "A vcchannel must be declared with exactly 2 parameters, and not " + (_split.length - 1) ; + if (_split.length != 3) { + error = "A vcchannel must be declared with exactly 2 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -982,14 +967,16 @@ public class TMLTextSpecification<E> { try { tmp0 = Integer.decode(_split[2]); - } catch (Exception e) {tmp0 = -1;} + } catch (Exception e) { + tmp0 = -1; + } ch.setVC(tmp0); } // VCCHANNEL // EVENT - if(isInstruction("EVENT", _split[0])) { + if (isInstruction("EVENT", _split[0])) { if (!inDec) { error = "An event may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); @@ -997,7 +984,7 @@ public class TMLTextSpecification<E> { } if (!((_split.length > 4) && (_split.length < 7))) { - error = "An event must be declared with only 4 or 5 parameters, and not " + (_split.length - 1) ; + error = "An event must be declared with only 4 or 5 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1058,15 +1045,15 @@ public class TMLTextSpecification<E> { evt = new TMLEvent(id, null, tmp, blocking); evt.addParam(params); - t1 = tmlm.getTMLTaskByName(_split[3+dec]); + t1 = tmlm.getTMLTaskByName(_split[3 + dec]); if (t1 == null) { - t1 = new TMLTask(_split[3+dec], null, null); + t1 = new TMLTask(_split[3 + dec], null, null); //TraceManager.addDev("New task:" + _split[3+dec]); tmlm.addTask(t1); } - t2 = tmlm.getTMLTaskByName(_split[4+dec]); + t2 = tmlm.getTMLTaskByName(_split[4 + dec]); if (t2 == null) { - t2 = new TMLTask(_split[4+dec], null, null); + t2 = new TMLTask(_split[4 + dec], null, null); //TraceManager.addDev("New task:" + _split[4+dec]); tmlm.addTask(t2); } @@ -1077,7 +1064,7 @@ public class TMLTextSpecification<E> { } // EVENT // LOSSYEVENT - if(isInstruction("LOSSYEVENT", _split[0])) { + if (isInstruction("LOSSYEVENT", _split[0])) { if (!inDec) { error = "A lossyevent may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); @@ -1085,7 +1072,7 @@ public class TMLTextSpecification<E> { } if (!((_split.length > 3) && (_split.length < 5))) { - error = "A lossyevent must be declared with exactly 3 parameters, and not " + (_split.length - 1) ; + error = "A lossyevent must be declared with exactly 3 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1113,16 +1100,20 @@ public class TMLTextSpecification<E> { try { tmp0 = Integer.decode(_split[2]).intValue(); - } catch (Exception e) {tmp0 = 5;} + } catch (Exception e) { + tmp0 = 5; + } try { tmp1 = Integer.decode(_split[3]).intValue(); - } catch (Exception e) {tmp1 = -1;} + } catch (Exception e) { + tmp1 = -1; + } evt.setLossy(true, tmp0, tmp1); } // LOSSYEVENT // REQUEST - if((isInstruction("REQUEST", _split[0])) && (inDec)) { + if ((isInstruction("REQUEST", _split[0])) && (inDec)) { if (!inDec) { error = "A request may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); @@ -1130,7 +1121,7 @@ public class TMLTextSpecification<E> { } if (_split.length < 4) { - error = "A request must be declared with at least 4 paremeters, and not " + (_split.length - 1) ; + error = "A request must be declared with at least 4 paremeters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1145,7 +1136,7 @@ public class TMLTextSpecification<E> { return -1; } - for(i=2; i<_split.length; i++) { + for (i = 2; i < _split.length; i++) { if (!checkParameter("REQUEST", _split, i, 0, _lineNb)) { return -1; } @@ -1160,14 +1151,14 @@ public class TMLTextSpecification<E> { request = new TMLRequest(id, null); request.addParam(params); - for(i=2; i<_split.length; i++) { + for (i = 2; i < _split.length; i++) { t1 = tmlm.getTMLTaskByName(_split[i]); if (t1 == null) { t1 = new TMLTask(_split[i], null, null); //TraceManager.addDev("New task:" + _split[i]); tmlm.addTask(t1); } - if ((i+1) == _split.length) { + if ((i + 1) == _split.length) { request.setDestinationTask(t1); t1.setRequested(true); t1.setRequest(request); @@ -1180,7 +1171,7 @@ public class TMLTextSpecification<E> { } // REQUEST // LOSSYREQUEST - if(isInstruction("LOSSYREQUEST", _split[0])) { + if (isInstruction("LOSSYREQUEST", _split[0])) { if (!inDec) { error = "A lossyrequest may not be declared in a non-declaration part of a TML specification"; addError(0, _lineNb, 0, error); @@ -1188,7 +1179,7 @@ public class TMLTextSpecification<E> { } if (!((_split.length > 3) && (_split.length < 5))) { - error = "A lossyrequest must be declared with exactly 3 parameters, and not " + (_split.length - 1) ; + error = "A lossyrequest must be declared with exactly 3 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1216,16 +1207,20 @@ public class TMLTextSpecification<E> { try { tmp0 = Integer.decode(_split[2]).intValue(); - } catch (Exception e) {tmp0 = 5;} + } catch (Exception e) { + tmp0 = 5; + } try { tmp1 = Integer.decode(_split[3]).intValue(); - } catch (Exception e) {tmp1 = -1;} + } catch (Exception e) { + tmp1 = -1; + } request.setLossy(true, tmp0, tmp1); } // LOSSYREQUEST // TASK - if((isInstruction("TASK", _split[0]))) { + if ((isInstruction("TASK", _split[0]))) { //TraceManager.addDev("In task"); if (inTask) { @@ -1237,10 +1232,10 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = true; - // inTaskBehavior = false; + // inTaskBehavior = false; if (_split.length != 2) { - error = "A task must be declared with exactly 2 parameters, and not " + (_split.length - 1) ; + error = "A task must be declared with exactly 2 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1251,9 +1246,9 @@ public class TMLTextSpecification<E> { //TraceManager.addDev("In task: 12"); task = tmlm.getTMLTaskByName(_split[1]); - if ((task != null) && (task.getActivityDiagram() != null)) { + if ((task != null) && (task.getActivityDiagram() != null)) { if (task.getActivityDiagram().getFirst() != null) { - error = "Duplicate definition for task "+ (_split[1]); + error = "Duplicate definition for task " + (_split[1]); addError(0, _lineNb, 0, error); return -1; } @@ -1274,7 +1269,7 @@ public class TMLTextSpecification<E> { // TASKOP - if((isInstruction("TASKOP", _split[0]))) { + if ((isInstruction("TASKOP", _split[0]))) { //An operation is really specified? if (!inTask) { @@ -1283,9 +1278,19 @@ public class TMLTextSpecification<E> { return -1; } + if (!inTaskDec) { + error = "A task operation cannot be declared outside the declarative part of another task"; + addError(0, _lineNb, 0, error); + return -1; + } + + inDec = false; + inTask = true; + inTaskDec = true; + String tmpOp = ""; - for(int j=1; j<_split.length; j++) { + for (int j = 1; j < _split.length; j++) { tmpOp += _split[j]; } @@ -1294,7 +1299,7 @@ public class TMLTextSpecification<E> { // ENDTASK - if((isInstruction("ENDTASK", _split[0]))) { + if ((isInstruction("ENDTASK", _split[0]))) { if (!inTask) { error = "A endtask may not be used outside the body of a task"; addError(0, _lineNb, 0, error); @@ -1303,7 +1308,7 @@ public class TMLTextSpecification<E> { inDec = true; inTask = false; inTaskDec = false; - // inTaskBehavior = false; + // inTaskBehavior = false; stop = new TMLStopState("stop", null); task.getActivityDiagram().addElement(stop); @@ -1314,9 +1319,9 @@ public class TMLTextSpecification<E> { // Attribute declaration - if ((isInstruction("INT", _split[0])) || (isInstruction("NAT", _split[0])) || (isInstruction("BOOL", _split[0]))){ + if ((isInstruction("INT", _split[0])) || (isInstruction("NAT", _split[0])) || (isInstruction("BOOL", _split[0]))) { if (!inTaskDec) { - error = "An attribute declaration must be done in a task right after its declaration, and before its bahavior"; + error = "An attribute declaration must be done in a task right after its declaration, and before its behavior"; addError(0, _lineNb, 0, error); return -1; } @@ -1324,7 +1329,7 @@ public class TMLTextSpecification<E> { String inst = _split[0].toUpperCase(); if (!((_split.length == 2) || (_split.length == 4))) { - error = "An attribute declaration must be done with either 1 or 3 parameters, and not " + (_split.length - 1) ; + error = "An attribute declaration must be done with either 1 or 3 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1354,7 +1359,7 @@ public class TMLTextSpecification<E> { } // Attribute declaration // RANDOM - if((isInstruction("RANDOM", _split[0]))) { + if ((isInstruction("RANDOM", _split[0]))) { if (!inTask) { error = "A RANDOM operation may only be performed in a task body"; @@ -1365,10 +1370,10 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; if (_split.length != 5) { - error = "A RANDOM operation must be declared with exactly 4 parameters, and not " + (_split.length - 1) ; + error = "A RANDOM operation must be declared with exactly 4 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1400,7 +1405,7 @@ public class TMLTextSpecification<E> { } // RANDOM // READ - if((isInstruction("READ", _split[0]))) { + if ((isInstruction("READ", _split[0]))) { if (!inTask) { error = "A READ operation may only be performed in a task body"; @@ -1411,10 +1416,10 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; - if (_split.length != 3 && _split.length!= 4) { - error = "A READ operation must be declared with exactly 3 or 4 parameters, and not " + (_split.length - 1) ; + if (_split.length != 3 && _split.length != 4) { + error = "A READ operation must be declared with exactly 3 or 4 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1428,12 +1433,12 @@ public class TMLTextSpecification<E> { }*/ ch = tmlm.getChannelByName(_split[1]); - if (ch == null ){ - error = "Undeclared channel: " + _split[1]; + if (ch == null) { + error = "Undeclared channel: " + _split[1]; addError(0, _lineNb, 0, error); return -1; } - if (!(ch.hasDestinationTask(task))){ + if (!(ch.hasDestinationTask(task))) { error = "READ operations must be done only in destination task(s). Should be in task(s): " + ch.getNameOfDestinationTasks(); addError(0, _lineNb, 0, error); return -1; @@ -1445,19 +1450,19 @@ public class TMLTextSpecification<E> { tmlrch.setNbOfSamples(_split[2]); task.getActivityDiagram().addElement(tmlrch); tmlae.addNext(tmlrch); - - if (_split.length==4){ - if (securityPatternMap.containsKey(_split[3])){ - tmlrch.securityPattern = securityPatternMap.get(_split[3]); - } - } - + + if (_split.length == 4) { + if (securityPatternMap.containsKey(_split[3])) { + tmlrch.securityPattern = securityPatternMap.get(_split[3]); + } + } + tmlae = tmlrch; } // READ // WRITE - if((isInstruction("WRITE", _split[0]))) { + if ((isInstruction("WRITE", _split[0]))) { if (!inTask) { error = "A WRITE operation may only be performed in a task body"; @@ -1468,12 +1473,11 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; + - - - if (_split.length > 5 || _split.length <2) { - error = "A WRITE operation must be declared with at most 4 parameters, and not " + (_split.length - 1) ; + if (_split.length > 5 || _split.length < 2) { + error = "A WRITE operation must be declared with at most 4 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -1482,64 +1486,63 @@ public class TMLTextSpecification<E> { return -1; } - //TraceManager.addDev("Handling write channel 1"); + //TraceManager.addDev("Handling write channel 1"); TMLWriteChannel tmlwch = new TMLWriteChannel(_split[1], null); - if (_split.length>3){ - if (securityPatternMap.containsKey(_split[_split.length-1])){ - tmlwch.securityPattern = securityPatternMap.get(_split[_split.length-1]); - } - for(int k=0; k<_split.length-3; k++) { - //TraceManager.addDev("Handling write channel 1.1"); - ch = tmlm.getChannelByName(_split[1+k]); - if (ch == null ){ - error = "Undeclared channel: " + _split[1+k]; - addError(0, _lineNb, 0, error); - return -1; - } - //TraceManager.addDev("Handling write channel 1.2 for task: " + task.getName()); - if (!(ch.hasOriginTask(task))){ - error = "WRITE operations must be done only in origin task(s). Should be in task(s): " + ch.getNameOfOriginTasks(); - addError(0, _lineNb, 0, error); - return -1; - } - //TraceManager.addDev("Handling write channel 1.3"); - - tmlwch.addChannel(ch); - } - } - else { - - for(int k=0; k<_split.length-2; k++) { - //TraceManager.addDev("Handling write channel 1.1"); - ch = tmlm.getChannelByName(_split[1+k]); - if (ch == null ){ - error = "Undeclared channel: " + _split[1+k]; - addError(0, _lineNb, 0, error); - return -1; - } - //TraceManager.addDev("Handling write channel 1.2 for task: " + task.getName()); - if (!(ch.hasOriginTask(task))){ - error = "WRITE operations must be done only in origin task(s). Should be in task(s): " + ch.getNameOfOriginTasks(); - addError(0, _lineNb, 0, error); - return -1; - } - //TraceManager.addDev("Handling write channel 1.3"); - - tmlwch.addChannel(ch); - } - } - //TraceManager.addDev("Handling write channel 2"); + if (_split.length > 3) { + if (securityPatternMap.containsKey(_split[_split.length - 1])) { + tmlwch.securityPattern = securityPatternMap.get(_split[_split.length - 1]); + } + for (int k = 0; k < _split.length - 3; k++) { + //TraceManager.addDev("Handling write channel 1.1"); + ch = tmlm.getChannelByName(_split[1 + k]); + if (ch == null) { + error = "Undeclared channel: " + _split[1 + k]; + addError(0, _lineNb, 0, error); + return -1; + } + //TraceManager.addDev("Handling write channel 1.2 for task: " + task.getName()); + if (!(ch.hasOriginTask(task))) { + error = "WRITE operations must be done only in origin task(s). Should be in task(s): " + ch.getNameOfOriginTasks(); + addError(0, _lineNb, 0, error); + return -1; + } + //TraceManager.addDev("Handling write channel 1.3"); + + tmlwch.addChannel(ch); + } + } else { + + for (int k = 0; k < _split.length - 2; k++) { + //TraceManager.addDev("Handling write channel 1.1"); + ch = tmlm.getChannelByName(_split[1 + k]); + if (ch == null) { + error = "Undeclared channel: " + _split[1 + k]; + addError(0, _lineNb, 0, error); + return -1; + } + //TraceManager.addDev("Handling write channel 1.2 for task: " + task.getName()); + if (!(ch.hasOriginTask(task))) { + error = "WRITE operations must be done only in origin task(s). Should be in task(s): " + ch.getNameOfOriginTasks(); + addError(0, _lineNb, 0, error); + return -1; + } + //TraceManager.addDev("Handling write channel 1.3"); + + tmlwch.addChannel(ch); + } + } + //TraceManager.addDev("Handling write channel 2"); tmlwch.setNbOfSamples(_split[2]); task.getActivityDiagram().addElement(tmlwch); tmlae.addNext(tmlwch); - + tmlae = tmlwch; } // WRITE // NOTIFY - if((isInstruction("NOTIFY", _split[0]))) { + if ((isInstruction("NOTIFY", _split[0]))) { if (!inTask) { error = "A NOTIFY operation may only be performed in a task body"; @@ -1550,17 +1553,17 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; if (_split.length < 2) { - error = "A NOTIFY operation must be declared with at least 2 parameters, and not " + (_split.length - 1) ; + error = "A NOTIFY operation must be declared with at least 2 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } evt = tmlm.getEventByName(_split[1]); if (evt == null) { - error = "Unknown event: " + _split[1] ; + error = "Unknown event: " + _split[1]; addError(0, _lineNb, 0, error); return -1; } @@ -1568,14 +1571,14 @@ public class TMLTextSpecification<E> { dec = evt.getNbOfParams(); if (_split.length != 2 + dec) { - error = "A NOTIFY operation on evt " + evt.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1) ; + error = "A NOTIFY operation on evt " + evt.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } TMLSendEvent sevt = new TMLSendEvent(evt.getName(), null); sevt.setEvent(evt); - for(i=2; i<2 + dec; i++) { + for (i = 2; i < 2 + dec; i++) { sevt.addParam(_split[i]); } @@ -1585,7 +1588,7 @@ public class TMLTextSpecification<E> { } // NOTIFY // WAIT - if((isInstruction("WAIT", _split[0]))) { + if ((isInstruction("WAIT", _split[0]))) { if (!inTask) { error = "A WAIT operation may only be performed in a task body"; @@ -1596,17 +1599,17 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; if (_split.length < 2) { - error = "A WAIT operation must be declared with at least 2 parameters, and not " + (_split.length - 1) ; + error = "A WAIT operation must be declared with at least 2 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } evt = tmlm.getEventByName(_split[1]); if (evt == null) { - error = "Unknown event: " + _split[1] ; + error = "Unknown event: " + _split[1]; addError(0, _lineNb, 0, error); return -1; } @@ -1614,20 +1617,20 @@ public class TMLTextSpecification<E> { dec = evt.getNbOfParams(); if (_split.length != 2 + dec) { - error = "A WAIT operation on evt " + evt.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1) ; + error = "A WAIT operation on evt " + evt.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } // Each param must be a declared attribute of the right type - for(i=2; i<2 + dec; i++) { + for (i = 2; i < 2 + dec; i++) { attribute = task.getAttributeByName(_split[i]); if (attribute == null) { error = "Attribute: " + _split[i] + " is undeclared"; addError(0, _lineNb, 0, error); return -1; } - if (attribute.type.getType() != evt.getType(i-2).getType()) { + if (attribute.type.getType() != evt.getType(i - 2).getType()) { error = "Attribute: " + _split[i] + " is not of the right type"; addError(0, _lineNb, 0, error); return -1; @@ -1637,7 +1640,7 @@ public class TMLTextSpecification<E> { TMLWaitEvent wevt = new TMLWaitEvent(evt.getName(), null); wevt.setEvent(evt); - for(i=2; i<2 + dec; i++) { + for (i = 2; i < 2 + dec; i++) { wevt.addParam(_split[i]); } @@ -1647,7 +1650,7 @@ public class TMLTextSpecification<E> { } // WAIT // NOTIFIED - if((isInstruction("NOTIFIED", _split[0]))) { + if ((isInstruction("NOTIFIED", _split[0]))) { if (!inTask) { error = "A NOTIFIED operation may only be performed in a task body"; @@ -1658,17 +1661,17 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; if (_split.length != 3) { - error = "A NOTIFIED operation must be declared with exactly 2 parameters, and not " + (_split.length - 1) ; + error = "A NOTIFIED operation must be declared with exactly 2 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } evt = tmlm.getEventByName(_split[1]); if (evt == null) { - error = "Unknown event: " + _split[1] ; + error = "Unknown event: " + _split[1]; addError(0, _lineNb, 0, error); return -1; } @@ -1694,23 +1697,23 @@ public class TMLTextSpecification<E> { tmlae = nevt; } // NOTIFIED - // Send REQUEST - if((isInstruction("REQUEST", _split[0])) && (inTask)) { + // Send REQUEST a.k.a. NOTIFYREQUEST + if ((isInstruction("NOTIFYREQUEST", _split[0])) && (inTask)) { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; if (_split.length < 2) { - error = "A REQUEST operation must be declared with at least 1 parameter (request name), and not " + (_split.length - 1) ; + error = "A REQUEST operation must be declared with at least 1 parameter (request name), and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } request = tmlm.getRequestByName(_split[1]); if (request == null) { - error = "Unknown request: " + _split[1] ; + error = "Unknown request: " + _split[1]; addError(0, _lineNb, 0, error); return -1; } @@ -1718,14 +1721,14 @@ public class TMLTextSpecification<E> { dec = request.getNbOfParams(); if (_split.length != 2 + dec) { - error = "A REQUEST operation on request " + request.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1) ; + error = "A REQUEST operation on request " + request.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } TMLSendRequest sreq = new TMLSendRequest(request.getName(), null); sreq.setRequest(request); - for(i=2; i<2 + dec; i++) { + for (i = 2; i < 2 + dec; i++) { sreq.addParam(_split[i]); } @@ -1735,7 +1738,7 @@ public class TMLTextSpecification<E> { } // Send REQUEST // FOR - if((isInstruction("FOR", _split[0])) && (inTask)) { + if ((isInstruction("FOR", _split[0])) && (inTask)) { //TraceManager.addDev("FOR encountered"); if (_split.length < 2) { error = "FOR operation: missing parameters"; @@ -1746,11 +1749,11 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the three elements of FOR String forp = _split[1]; - // String forps[]; + // String forps[]; tmp0 = forp.indexOf('('); tmp1 = forp.lastIndexOf(')'); if ((tmp0 == -1) || (tmp1 == -1)) { @@ -1758,33 +1761,33 @@ public class TMLTextSpecification<E> { addError(0, _lineNb, 0, error); return -1; } - forp = forp.substring(tmp0+1, tmp1); - int first = forp.indexOf(";"); - String init = ""; - if (first > -1) { - init = forp.substring(0, first); - } else { - error = "FOR operation: badly formed parameters"; + forp = forp.substring(tmp0 + 1, tmp1); + int first = forp.indexOf(";"); + String init = ""; + if (first > -1) { + init = forp.substring(0, first); + } else { + error = "FOR operation: badly formed parameters"; addError(0, _lineNb, 0, error); return -1; - } + } - String condition = ""; - String increment = ""; - forp = forp.substring(first+1, forp.length()).trim(); + String condition = ""; + String increment = ""; + forp = forp.substring(first + 1, forp.length()).trim(); - int second = forp.indexOf(";"); - if (second == -1) { - error = "FOR operation: badly formed parameters "; + int second = forp.indexOf(";"); + if (second == -1) { + error = "FOR operation: badly formed parameters "; addError(0, _lineNb, 0, error); return -1; - } + } + + condition = forp.substring(0, second); + increment = forp.substring(second + 1, forp.length()); + - condition = forp.substring(0, second); - increment = forp.substring(second+1, forp.length()); - - - // All is ok: constructing the FOR + // All is ok: constructing the FOR parseElt = new TMLParserSaveElt(); parseElt.type = TMLParserSaveElt.FOR; parses.add(0, parseElt); @@ -1800,7 +1803,7 @@ public class TMLTextSpecification<E> { } // FOR // ENDFOR - if(isInstruction("ENDFOR", _split[0])) { + if (isInstruction("ENDFOR", _split[0])) { if (!inTask) { error = "ENDFOR: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -1810,7 +1813,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -1834,14 +1837,14 @@ public class TMLTextSpecification<E> { } // ENDFOR // SELECTEVT - if((isInstruction("SELECTEVT", _split[0]))) { + if ((isInstruction("SELECTEVT", _split[0]))) { if (!inTask) { error = "SELECTEVT: must be used in a Task body"; addError(0, _lineNb, 0, error); return -1; } - if(_split.length > 1) { + if (_split.length > 1) { error = "A SELECTEVT cannot have any parameters"; addError(0, _lineNb, 0, error); return -1; @@ -1850,7 +1853,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; parseElt = new TMLParserSaveElt(); parseElt.type = TMLParserSaveElt.SELECTEVT; @@ -1867,7 +1870,7 @@ public class TMLTextSpecification<E> { } // SELECTEVT // ENDSELECTEVT - if((isInstruction("ENDSELECTEVT", _split[0]))) { + if ((isInstruction("ENDSELECTEVT", _split[0]))) { if (!inTask) { error = "ENDSELECTEVT: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -1877,7 +1880,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -1897,7 +1900,7 @@ public class TMLTextSpecification<E> { } // ENDSELECTEVT // CASE - if((isInstruction("CASE", _split[0]))) { + if ((isInstruction("CASE", _split[0]))) { if (!inTask) { error = "CASE: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -1920,9 +1923,9 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; - if(_split.length < 2) { + if (_split.length < 2) { error = "A CASE must have at least two parameters"; addError(0, _lineNb, 0, error); return -1; @@ -1930,7 +1933,7 @@ public class TMLTextSpecification<E> { evt = tmlm.getEventByName(_split[1]); if (evt == null) { - error = "Unknown event: " + _split[1] ; + error = "Unknown event: " + _split[1]; addError(0, _lineNb, 0, error); return -1; } @@ -1938,14 +1941,14 @@ public class TMLTextSpecification<E> { dec = evt.getNbOfParams(); if (_split.length != 2 + dec) { - error = "A CASE operation on evt " + evt.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1) ; + error = "A CASE operation on evt " + evt.getName() + " must be declared with exactly " + (1 + dec) + " parameters and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } TMLWaitEvent wevt = new TMLWaitEvent(evt.getName(), null); wevt.setEvent(evt); - for(i=2; i<2 + dec; i++) { + for (i = 2; i < 2 + dec; i++) { wevt.addParam(_split[i]); } @@ -1963,7 +1966,7 @@ public class TMLTextSpecification<E> { // ENDCASE - if((isInstruction("ENDCASE", _split[0]))) { + if ((isInstruction("ENDCASE", _split[0]))) { if (!inTask) { error = "ENDCASE: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -1973,7 +1976,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -1995,14 +1998,14 @@ public class TMLTextSpecification<E> { } // ENDCASE // RANDOMSEQ - if((isInstruction("RANDOMSEQ", _split[0]))) { + if ((isInstruction("RANDOMSEQ", _split[0]))) { if (!inTask) { error = "RANDOMSEQ: must be used in a Task body"; addError(0, _lineNb, 0, error); return -1; } - if(_split.length > 1) { + if (_split.length > 1) { error = "A RANDOMSEQ cannot have any parameters"; addError(0, _lineNb, 0, error); return -1; @@ -2011,7 +2014,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; parseElt = new TMLParserSaveElt(); parseElt.type = TMLParserSaveElt.RANDOMSEQ; @@ -2028,7 +2031,7 @@ public class TMLTextSpecification<E> { } // RANDOMSEQ // ENDRANDOMSEQ - if((isInstruction("ENDRANDOMSEQ", _split[0]))) { + if ((isInstruction("ENDRANDOMSEQ", _split[0]))) { if (!inTask) { error = "ENDRANDOMSEQ: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2038,7 +2041,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -2059,7 +2062,7 @@ public class TMLTextSpecification<E> { // SEQ - if((isInstruction("SEQ", _split[0]))) { + if ((isInstruction("SEQ", _split[0]))) { if (!inTask) { error = "SEQ: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2082,9 +2085,9 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; - if(_split.length >1 ) { + if (_split.length > 1) { error = "A SEQ has no parameter"; addError(0, _lineNb, 0, error); return -1; @@ -2096,7 +2099,7 @@ public class TMLTextSpecification<E> { return -1; } - TMLRandomSequence rseq = (TMLRandomSequence)parseElt.tmlae; + TMLRandomSequence rseq = (TMLRandomSequence) parseElt.tmlae; TMLSequence seq = new TMLSequence("sequence", null); rseq.addNext(seq); @@ -2112,7 +2115,7 @@ public class TMLTextSpecification<E> { } // SEQ // ENDSEQ - if((isInstruction("ENDSEQ", _split[0]))) { + if ((isInstruction("ENDSEQ", _split[0]))) { if (!inTask) { error = "ENDSEQ: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2122,7 +2125,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -2144,14 +2147,14 @@ public class TMLTextSpecification<E> { } // ENDSEQ // RAND - if((isInstruction("RAND", _split[0]))) { + if ((isInstruction("RAND", _split[0]))) { if (!inTask) { error = "RAND: must be used in a Task body"; addError(0, _lineNb, 0, error); return -1; } - if(_split.length > 1) { + if (_split.length > 1) { error = "A RAND cannot have any parameters"; addError(0, _lineNb, 0, error); return -1; @@ -2160,7 +2163,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; parseElt = new TMLParserSaveElt(); parseElt.type = TMLParserSaveElt.RAND; @@ -2177,7 +2180,7 @@ public class TMLTextSpecification<E> { } // RAND // ENDRAND - if((isInstruction("ENDRAND", _split[0]))) { + if ((isInstruction("ENDRAND", _split[0]))) { if (!inTask) { error = "ENDRAND: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2187,7 +2190,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -2207,7 +2210,7 @@ public class TMLTextSpecification<E> { } // ENDRAND // CASERAND - if((isInstruction("CASERAND", _split[0]))) { + if ((isInstruction("CASERAND", _split[0]))) { if (!inTask) { error = "CASERAND: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2230,9 +2233,9 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; - if(_split.length != 2) { + if (_split.length != 2) { error = "A CASERAND should have one parameter"; addError(0, _lineNb, 0, error); return -1; @@ -2244,7 +2247,7 @@ public class TMLTextSpecification<E> { return -1; } - TMLChoice choice = (TMLChoice)parseElt.tmlae; + TMLChoice choice = (TMLChoice) parseElt.tmlae; TMLSequence seq = new TMLSequence("sequence", null); choice.addGuard("[" + _split[1] + "%]"); choice.addNext(seq); @@ -2263,7 +2266,7 @@ public class TMLTextSpecification<E> { // ENDCASERAND - if((isInstruction("ENDCASERAND", _split[0]))) { + if ((isInstruction("ENDCASERAND", _split[0]))) { if (!inTask) { error = "ENDCASERAND: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2273,7 +2276,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -2295,14 +2298,14 @@ public class TMLTextSpecification<E> { } // ENDCASERAND // IF - if((isInstruction("IF", _split[0]))) { + if ((isInstruction("IF", _split[0]))) { if (!inTask) { error = "IF: must be used in a Task body"; addError(0, _lineNb, 0, error); return -1; } - if(_split.length != 2) { + if (_split.length != 2) { error = "IF should be followed by one condition"; addError(0, _lineNb, 0, error); return -1; @@ -2311,7 +2314,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; String cond = _split[1].trim(); tmp0 = cond.indexOf('('); @@ -2321,7 +2324,7 @@ public class TMLTextSpecification<E> { addError(0, _lineNb, 0, error); return -1; } - cond = cond.substring(tmp0+1, tmp1); + cond = cond.substring(tmp0 + 1, tmp1); parseElt = new TMLParserSaveElt(); parseElt.type = TMLParserSaveElt.IF; @@ -2344,14 +2347,14 @@ public class TMLTextSpecification<E> { } // IF // ORIF - if((isInstruction("ORIF", _split[0]))) { + if ((isInstruction("ORIF", _split[0]))) { if (!inTask) { error = "ORIF: must be used in a Task body"; addError(0, _lineNb, 0, error); return -1; } - if(_split.length != 2) { + if (_split.length != 2) { error = "ORIF should be followed by one condition"; addError(0, _lineNb, 0, error); return -1; @@ -2360,7 +2363,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; String cond = _split[1].trim(); @@ -2372,7 +2375,7 @@ public class TMLTextSpecification<E> { addError(0, _lineNb, 0, error); return -1; } - cond = cond.substring(tmp0+1, tmp1); + cond = cond.substring(tmp0 + 1, tmp1); //TraceManager.addDev("cond2=" + cond); if (parses.size() == 0) { @@ -2398,7 +2401,7 @@ public class TMLTextSpecification<E> { tmlae.addNext(stop); TMLSequence seq = new TMLSequence("sequence", null); - TMLChoice choice = (TMLChoice)parseElt.tmlae; + TMLChoice choice = (TMLChoice) parseElt.tmlae; task.getActivityDiagram().addElement(seq); choice.addNext(seq); @@ -2408,14 +2411,14 @@ public class TMLTextSpecification<E> { } // ORIF // ELSE - if((isInstruction("ELSE", _split[0]))) { + if ((isInstruction("ELSE", _split[0]))) { if (!inTask) { error = "ELSE: must be used in a Task body"; addError(0, _lineNb, 0, error); return -1; } - if(_split.length != 1) { + if (_split.length != 1) { error = "ELSE should have no parameter"; addError(0, _lineNb, 0, error); return -1; @@ -2424,7 +2427,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; if (parses.size() == 0) { error = "ELSE: badly placed instruction."; @@ -2442,10 +2445,10 @@ public class TMLTextSpecification<E> { task.getActivityDiagram().addElement(stop); tmlae.addNext(stop); - parseElt.nbElse ++; + parseElt.nbElse++; TMLSequence seq = new TMLSequence("sequence", null); - TMLChoice choice = (TMLChoice)parseElt.tmlae; + TMLChoice choice = (TMLChoice) parseElt.tmlae; task.getActivityDiagram().addElement(seq); choice.addNext(seq); @@ -2455,7 +2458,7 @@ public class TMLTextSpecification<E> { } // ELSE // ENDIF - if((isInstruction("ENDIF", _split[0]))) { + if ((isInstruction("ENDIF", _split[0]))) { if (!inTask) { error = "ENDIF: must be used in a Task body"; addError(0, _lineNb, 0, error); @@ -2465,7 +2468,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; // Extract the first element of the stack if (parses.size() == 0) { @@ -2489,7 +2492,7 @@ public class TMLTextSpecification<E> { } // ENDIF // EXECI - if((isInstruction("EXECI", _split[0]))) { + if ((isInstruction("EXECI", _split[0]))) { if (!inTask) { error = "An EXECI operation may only be performed in a task body"; @@ -2500,10 +2503,10 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; - if ((_split.length < 2) ||(_split.length > 4)) { - error = "An EXECI operation must be declared with 1 or 2 parameters, and not " + (_split.length - 1) ; + if ((_split.length < 2) || (_split.length > 4)) { + error = "An EXECI operation must be declared with 1 or 2 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } @@ -2525,7 +2528,7 @@ public class TMLTextSpecification<E> { } // EXECI // EXECC - if((isInstruction("EXECC", _split[0]))) { + if ((isInstruction("EXECC", _split[0]))) { if (!inTask) { error = "An EXECC operation may only be performed in a task body"; @@ -2536,43 +2539,42 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; - if (_split.length>4){ - if (securityPatternMap.containsKey(_split[2])){ - //Security operation - TMLExecC execc = new TMLExecC("execc", null); - execc.setAction(_split[1]); - execc.securityPattern = securityPatternMap.get(_split[2]); - tmlae.addNext(execc); - task.getActivityDiagram().addElement(execc); - tmlae = execc; - } - } - else { - if ((_split.length < 2) ||(_split.length > 4)) { - error = "An EXECC operation must be declared with 1, 2 parameters, and not " + (_split.length - 1) ; - addError(0, _lineNb, 0, error); - return -1; - } - if (_split.length == 2) { - TMLExecC execc = new TMLExecC("execc", null); - execc.setAction(_split[1]); - tmlae.addNext(execc); - task.getActivityDiagram().addElement(execc); - tmlae = execc; - } else { - TMLExecCInterval execci = new TMLExecCInterval("execci", null); - execci.setMinDelay(_split[1]); - execci.setMaxDelay(_split[2]); - tmlae.addNext(execci); - task.getActivityDiagram().addElement(execci); - tmlae = execci; - } + // inTaskBehavior = true; + if (_split.length > 4) { + if (securityPatternMap.containsKey(_split[2])) { + //Security operation + TMLExecC execc = new TMLExecC("execc", null); + execc.setAction(_split[1]); + execc.securityPattern = securityPatternMap.get(_split[2]); + tmlae.addNext(execc); + task.getActivityDiagram().addElement(execc); + tmlae = execc; + } + } else { + if ((_split.length < 2) || (_split.length > 4)) { + error = "An EXECC operation must be declared with 1, 2 parameters, and not " + (_split.length - 1); + addError(0, _lineNb, 0, error); + return -1; + } + if (_split.length == 2) { + TMLExecC execc = new TMLExecC("execc", null); + execc.setAction(_split[1]); + tmlae.addNext(execc); + task.getActivityDiagram().addElement(execc); + tmlae = execc; + } else { + TMLExecCInterval execci = new TMLExecCInterval("execci", null); + execci.setMinDelay(_split[1]); + execci.setMaxDelay(_split[2]); + tmlae.addNext(execci); + task.getActivityDiagram().addElement(execci); + tmlae = execci; + } } } // EXECC // DELAY - if((isInstruction("DELAY", _split[0]))) { + if ((isInstruction("DELAY", _split[0]))) { if (!inTask) { error = "A DELAY operation may only be performed in a task body"; @@ -2583,17 +2585,17 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; - if ((_split.length < 3) ||(_split.length > 5)) { - error = "A DELAY operation must be declared with 2 or 3 parameters, and not " + (_split.length - 1) ; + if ((_split.length < 3) || (_split.length > 5)) { + error = "A DELAY operation must be declared with 2 or 3 parameters, and not " + (_split.length - 1); addError(0, _lineNb, 0, error); return -1; } if (_split.length == 3) { if (!checkParameter("DELAY", _split, 2, 0, _lineNb)) { - error = "A DELAY operation must be specified with a valid time unit (ns, us, ms, s))" ; + error = "A DELAY operation must be specified with a valid time unit (ns, us, ms, s))"; addError(0, _lineNb, 0, error); return -1; } @@ -2601,7 +2603,7 @@ public class TMLTextSpecification<E> { if (_split.length == 4) { if (!checkParameter("DELAY", _split, 3, 0, _lineNb)) { - error = "A DELAY operation must be specified with a valid time unit (ns, us, ms, s))" ; + error = "A DELAY operation must be specified with a valid time unit (ns, us, ms, s))"; addError(0, _lineNb, 0, error); return -1; } @@ -2625,7 +2627,8 @@ public class TMLTextSpecification<E> { } // EXECC // Other command - if((_split[0].length() > 0) && (!(isInstruction(_split[0])))) { + if ((_split[0].length() > 0) && (!(isInstruction(_split[0])))) { + //TraceManager.addDev("Not an instruction:" + _split[0]); if (!inTask) { error = "Syntax error in TML modeling: unrecognized instruction:" + _split[0]; addError(0, _lineNb, 0, error); @@ -2635,7 +2638,7 @@ public class TMLTextSpecification<E> { inDec = false; inTask = true; inTaskDec = false; - // inTaskBehavior = true; + // inTaskBehavior = true; TMLActionState action = new TMLActionState(_split[0], null); action.setAction(_line); @@ -2662,75 +2665,75 @@ public class TMLTextSpecification<E> { boolean err = false; String error; - if(_parameter < _split.length) { - switch(_type) { - case 0: - if (!isAValidId(_split[_parameter])) { - err = true; - } - break; - case 1: - if (!isANumeral(_split[_parameter])) { - err = true; - } - break; - case 2: - if (!isIncluded(_split[_parameter], channeltypes)) { - err = true; - } - break; - case 3: - if (!isIncluded(_split[_parameter], eventtypes)) { - err = true; - } - break; - case 4: - if (!isAValidId(getEvtId(_split[_parameter]))) { - err = true; - //TraceManager.addDev("Unvalid id"); - } else if (!TMLEvent.isAValidListOfParams(getParams(_split[_parameter]))) { - //TraceManager.addDev("Unvalid param"); - err = true; - } - break; - case 5: - if (!(_split[_parameter].equals("="))) { - TraceManager.addDev("Error of ="); - err = true; - } - break; - case 6: - if (_inst.equals("BOOL")) { - String tmp = _split[_parameter].toUpperCase(); - if (!(tmp.equals("TRUE") || tmp.equals("FALSE"))) { + if (_parameter < _split.length) { + switch (_type) { + case 0: + if (!isAValidId(_split[_parameter])) { err = true; } - } else { + break; + case 1: if (!isANumeral(_split[_parameter])) { err = true; } - } - break; - case 7: - if (!isAValidId(_split[_parameter]) && !isANumeral(_split[_parameter])) { - err = true; - } - break; - case 8: - if (!isAValidUnit(_split[_parameter])) { - err = true; - } - break; - case 9: - if (!isANegativeOrPositiveNumeral(_split[_parameter])) { - err = true; - } - break; - case 10: - if (!(_split[_parameter].compareTo("OUT") == 0)) { - err = true; - } - break; + break; + case 2: + if (!isIncluded(_split[_parameter], channeltypes)) { + err = true; + } + break; + case 3: + if (!isIncluded(_split[_parameter], eventtypes)) { + err = true; + } + break; + case 4: + if (!isAValidId(getEvtId(_split[_parameter]))) { + err = true; + //TraceManager.addDev("Unvalid id"); + } else if (!TMLEvent.isAValidListOfParams(getParams(_split[_parameter]))) { + //TraceManager.addDev("Unvalid param"); + err = true; + } + break; + case 5: + if (!(_split[_parameter].equals("="))) { + TraceManager.addDev("Error of ="); + err = true; + } + break; + case 6: + if (_inst.equals("BOOL")) { + String tmp = _split[_parameter].toUpperCase(); + if (!(tmp.equals("TRUE") || tmp.equals("FALSE"))) { + err = true; + } + } else { + if (!isANumeral(_split[_parameter])) { + err = true; + } + } + break; + case 7: + if (!isAValidId(_split[_parameter]) && !isANumeral(_split[_parameter])) { + err = true; + } + break; + case 8: + if (!isAValidUnit(_split[_parameter])) { + err = true; + } + break; + case 9: + if (!isANegativeOrPositiveNumeral(_split[_parameter])) { + err = true; + } + break; + case 10: + if (!(_split[_parameter].compareTo("OUT") == 0)) { + err = true; + } + break; } } else { err = true; @@ -2756,7 +2759,7 @@ public class TMLTextSpecification<E> { return false; } - boolean b1 = (_id.substring(0,1)).matches("[a-zA-Z]"); + boolean b1 = (_id.substring(0, 1)).matches("[a-zA-Z]"); boolean b2 = _id.matches("\\w*"); boolean b3 = checkKeywords(_id); @@ -2790,7 +2793,7 @@ public class TMLTextSpecification<E> { public static boolean checkKeywords(String _id) { String id = _id.toUpperCase(); - for(int i=0; i<keywords.length; i++) { + for (int i = 0; i < keywords.length; i++) { if (id.compareTo(keywords[i]) == 0) { return false; } @@ -2800,7 +2803,7 @@ public class TMLTextSpecification<E> { public boolean isIncluded(String _id, String[] _list) { String id = _id.toUpperCase(); - for(int i=0; i<_list.length; i++) { + for (int i = 0; i < _list.length; i++) { if (id.compareTo(_list[i]) == 0) { return true; } diff --git a/src/main/java/ui/tmldd/TMLArchiCommunicationArtifact.java b/src/main/java/ui/tmldd/TMLArchiCommunicationArtifact.java index df423a0b259240a5044c6b3046e87220bb305e6d..6ee5ae33b6d2fb8ea10de09268663dc9a1c98462 100755 --- a/src/main/java/ui/tmldd/TMLArchiCommunicationArtifact.java +++ b/src/main/java/ui/tmldd/TMLArchiCommunicationArtifact.java @@ -139,7 +139,7 @@ public class TMLArchiCommunicationArtifact extends TGCWithoutInternalComponent i g.drawLine(x+width-space-cran, y+space, x+width-space-cran, y+space+cran); g.drawLine(x+width-space-cran, y+space+cran, x + width-space, y+space+cran); - g.drawImage(IconManager.img9, x+width-space-fileX + 3, y + space + 7, null); + //g.drawImage(IconManager.img9, x+width-space-fileX + 3, y + space + 7, null); g.drawString(value, x + textX , y + textY); diff --git a/tmltranslator/build.gradle b/tmltranslator/build.gradle index e03e31b7e47fe6f4b00ca9c441ea77a20a66d77a..21417c2c3f9a08a1708b177bf2662ea2791539dd 100644 --- a/tmltranslator/build.gradle +++ b/tmltranslator/build.gradle @@ -13,9 +13,9 @@ dependencies { compileOnly name: 'opencloud' compileOnly name: 'JavaPlot' compileOnly name: 'derbynet' - compileOnly name: 'commons-codec-1.10' - compileOnly name: 'commons-io-2.5-javadoc' - compileOnly name: 'commons-io-2.5' + compile name: 'commons-codec-1.10' + compile name: 'commons-io-2.5-javadoc' + compile name: 'commons-io-2.5' compileOnly name: 'jsoup-1.8.1' compileOnly name: 'gs-core-1.3' compileOnly name:'batik-awt-util' diff --git a/tmltranslator/manifest.txt b/tmltranslator/manifest.txt index d0d5ac1d610e1fe17c8652d6d91e40dd1043071d..81ce2af2c29bb167a7ab2d8053f6c5c193809ff3 100755 --- a/tmltranslator/manifest.txt +++ b/tmltranslator/manifest.txt @@ -1,2 +1,2 @@ Main-Class: TMLTranslator -Class-Path: com.microsoft.z3.jar +Class-Path: com.microsoft.z3.jar commons-io-2.5.jar commons-math3-3.6.1.jar commons-codec-1.10.jar