<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi Muhannad,<br>
    I *am* confused then, but no worries on this, we will get to the
    bottom of this.<br>
    <br>
    I see no connection between the HelloWorld.java file and the model
    that you sent.<br>
    In other words, the IterateOverArray.xml file does not mention the
    HelloWorld class.<br>
    <br>
    You say the HelloWorld.java file implements the contents of the
    "Composite Actor" of the model in<br>
    IterateOverArray.xml file.  If this message does not answer your
    question then could you send me that model?<br>
    <br>
    Also, if you send the model, if you can give me step by step
    instructions on how to replicate the error, then I can take a look.
    I would need really detailed instructions.<br>
    <br>
    However, I *may* have answered your question.<br>
    <br>
    I've attached a model that may replicate the problem.  To create the
    model, I opened IterateOverArray.xml<br>
    in Ptolemy and did Graph -> Instantiate Entity.  For the
    classname, I typed in org.helloworld.HelloWorld<br>
    and hit ok.  This created a HelloWorld composite.  I then dragged
    the connections from the original CompositeActor to the HelloWorld,
    saved the model as IterateOverArrayHelloWorld.xml and ran the model
    and got a stack trace similar to yours.<br>
    <br>
    I took a look at your HelloWorld.java and the CGISimple.java file
    that I sent and noticed that your HelloWorld.java file instantiates
    MirrorPorts, whereas CGISimple.java instantiates
    IterateOverArray.IteratePorts.  I changed HelloWorld.java<br>
    to use IterateoOverArray.IteratePort:<br>
    <br>
            //mpInput = new MirrorPort(iter, "input");
    mpInput.setInput(true);                                               
    <br>
            mpInput = new IterateOverArray.IteratePort(iter, "input");<br>
            //mpOutput = new MirrorPort(iter, "output");
    mpOutput.setOutput(true);                                           
    <br>
            mpOutput = new IterateOverArray.IteratePort(iter, "output");<br>
    ...<br>
        //private MirrorPort
    mpInput;                                                                                        
    <br>
        //private MirrorPort
    mpOutput;                                                                                       
    <br>
    <br>
        private IterateOverArray.IteratePort mpInput;<br>
        private IterateOverArray.IteratePort mpOutput;<br>
    <br>
    After recompiling HelloWorld.java, the model runs.<br>
    <br>
    Does this answer your question, or did answer and entirely different
    question? :-)<br>
    <br>
    _Christopher<br>
    <br>
    <br>
    On 1/12/12 10:44 AM, Ali, Muhannad wrote:
    <blockquote
      cite="mid:9FFA5573-43FA-4D2D-A030-64569129FAEA@student.kit.edu"
      type="cite">Hi Christopher,
      <div><br>
      </div>
      <div>Thank you for your reply .. I'm afraid I am not that familiar
        with what you described about Ptolemy. I guess the problem is
        much simpler.</div>
      <div><br>
      </div>
      <div>Actually the Java Code replicates only the "Composite Actor"
        in the model shown in IterateOverArray.xml. The other actors and
        director are to be added from Kepler after running it using the
        new developed "HelloWorld" module, got it?</div>
      <div><br>
      </div>
      <div>The question is, although I "replicated" the composite actor
        (programmatically), it did not work properly as when I designed
        it using Kepler GUI?</div>
      <div><br>
      </div>
      <div>Best regards,</div>
      <div><br>
      </div>
      <div>Muhannad</div>
      <div><br>
      </div>
      <div>
        <div>On Jan 12, 2012, at 7:28 PM, Christopher Brooks wrote:</div>
        <br class="Apple-interchange-newline">
        <blockquote type="cite">
          <meta content="text/html; charset=ISO-8859-1"
            http-equiv="Content-Type">
          <div bgcolor="#FFFFFF" text="#000000"> Hi Muhannad,<br>
            I'm slightly confused, but attached is some overly complex
            code that implements the model along with the steps I used
            to create that code.<br>
            <br>
            You included a model called IterateOverArray.xml and you are
            trying to write Java code (HelloWorld.java) that replicates
            the functionality of that model, right?<br>
            <br>
            However, you did not include the model that runs your java
            code.<br>
            The stack trace below is from a test run of a model that
            uses your HelloWorld.java,<br>
            <br>
            I would need to see your test driver to get much further,
            but attached is some code that could help you.<br>
            <br>
            Ptolemy II does have a code generator that generates Java
            code that constructs a TypedComposite.<br>
            This code generator is called "copernicus".  See the Ptolemy
            II faq for details about the code generators.<br>
            <a moz-do-not-send="true" class="moz-txt-link-freetext"
              href="http://ptolemy.berkeley.edu/ptolemyII/ptIIfaq.htm#CodeGen">http://ptolemy.berkeley.edu/ptolemyII/ptIIfaq.htm#CodeGen</a><br>
            <br>
            To follow the steps below, you would need to work from a
            Ptolemy II tree.<br>
            However, you don't have to run copernicus, you could just
            look at the .java file that is attached and<br>
            not actually *do* the steps below.<br>
            <br>
            Under Mac OS X, to create the $PTII/bin/copernicus shell
            script, these steps might work:<br>
              cd kepler/ptII/src<br>
              export PTII=`pwd`<br>
              ./configure<br>
              ant<br>
              cd bin; make<br>
            <br>
            I was able to generate Java code that calls the Ptolemy
            methods for your model, though it was not easy.<br>
            <br>
            1) To simplify the output, I stripped out the graphical xml
            attributes of the model.  I did this by running:<br>
            java -classpath $PTII
            ptolemy.moml.filter.RemoveGraphicalClasses
            IterateOverArray.xml > ISimple.xml<br>
            <br>
            2) I then edited the model and removed a bunch of Kepler
            specific attributes.<br>
            There is a significant bug in Kepler where the documentation
            is replicated for each actor, see<br>
            <a moz-do-not-send="true" class="moz-txt-link-freetext"
              href="http://bugzilla.ecoinformatics.org/show_bug.cgi?id=4168">http://bugzilla.ecoinformatics.org/show_bug.cgi?id=4168</a><br>
            <br>
            3) Eventually, I ended up with ISimple.xml, which is
            attached.<br>
            <br>
            4) I ran the copernicus code generator with<br>
              $PTII/bin/copernicus -shallow ISimple.xml<br>
            This created $PTII/ptolemy/copernicus/shallow/cg/ISimple,
            which contains a .class file for the model.<br>
            <br>
            5) I changed to that directory and ran:<br>
            make jodeDecompile<br>
            <br>
            6) That created a CGISimple.java file, which I then edited.<br>
            The issue is that the copernicus code generator seems to
            change Display actors to Discard actors.<br>
            Probably the RemoveGraphicalClassesFilter is running.<br>
            <br>
            My solution was to edit CGISimple.java and change<br>
              import ptolemy.actor.lib.Discard;<br>
            to<br>
              import ptolemy.actor.lib.gui.Display;<br>
            <br>
            and<br>
             Discard discard = new Discard(this, "Display2");<br>
            to<br>
             Display discard = new Display(this, "Display2");<br>
            <br>
            See the attached CGISimple.java file for the code.<br>
            Unfortunately, it is difficult to see the forest for the
            trees because I believe that the .xml file had many of the
            properties for the actors set, and/or the copernicus code
            generator just blindly creates code to instantiate
            everything.<br>
            <br>
            Anyway, it is difficult to see what to do, but it should
            give you an idea.<br>
            <br>
            7) I then recompiled the code.  Unfortunately, the makefile
            has a bug<br>
             javac -classpath $PTII:. ISimple/CGISimple.java<br>
            <br>
            8) I then ran the code:<br>
             java -classpath .:${PTvII}
            ptolemy.actor.gui.CompositeActorApplication -class
            ISimple.CGISimple<br>
            <br>
            _Christopher<br>
            <br>
            On 1/12/12 9:14 AM, Ali, Muhannad wrote:
            <blockquote
              cite="mid:B7469179-C62E-49A9-A601-E8AC13B650EB@student.kit.edu"
              type="cite">
              <meta http-equiv="Content-Type" content="text/html;
                charset=ISO-8859-1">
              <div style="">
                <div><br>
                </div>
                <div>Hello,</div>
                <div><br>
                </div>
                <div>I need to develop a composite actor
                  (programmatically) using eclipse. Before I code it, I
                  designed it on Kepler canvas (see file
                  IterateOverArray.xml attached) in order to test the
                  functionality and then encapsulate it in my own
                  composite actor. When I designed it, it worked
                  perfectly but when I coded it and tried to run the
                  program .. I always get the following error:</div>
                <div><br>
                </div>
                <div>"</div>
                <div>ptolemy.kernel.util.IllegalActionException:
                  Conversion is not supported from
                  ptolemy.data.ArrayToken '{"1 - 1"}' to the type string
                  because the type of the token is higher or
                  incomparable with the given type.</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.data.StringToken.convert(StringToken.java:172)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
ptolemy.data.type.BaseType$StringType.convert(BaseType.java:615)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.data.ArrayToken.<init>(ArrayToken.java:151)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
ptolemy.actor.lib.hoc.IterateOverArray$IterateDirector.transferOutputs(IterateOverArray.java:706)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.CompositeActor.fire(CompositeActor.java:469)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.CompositeActor.iterate(CompositeActor.java:1069)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:188)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.CompositeActor.fire(CompositeActor.java:458)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.Manager.iterate(Manager.java:742)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.Manager.execute(Manager.java:351)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.Manager.run(Manager.java:1111)</div>
                <div><span class="x_Apple-tab-span"
                    style="white-space:pre"></span>at
                  ptolemy.actor.Manager$PtolemyRunThread.run(Manager.java:1641</div>
                <div>" </div>
                <div><br>
                </div>
                <div>My code is:</div>
                <div><br>
                </div>
                <div>"</div>
                <div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">package</span>
                    org.helloworld;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco; min-height:15px">
                    <br>
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.TypedCompositeActor;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.TypedIOPort;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.TypedIORelation;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.lib.ElementsToArray;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.lib.Expression;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.lib.hoc.IterateOverArray;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.actor.lib.hoc.MirrorPort;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.kernel.CompositeEntity;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.kernel.util.IllegalActionException;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">import</span>
                    ptolemy.kernel.util.NameDuplicationException;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco; min-height:15px">
                    <br>
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      style="color:#9a1867">public</span> <span
                      style="color:#9a1867">class</span> <span
                      style="text-decoration:underline">HelloWorld</span>
                    <span style="color:#9a1867"> extends</span>
                    TypedCompositeActor {</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco; min-height:15px">
                    <br>
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">public</span>
                    HelloWorld(CompositeEntity container, String name)</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">throws</span>
                    NameDuplicationException, IllegalActionException {</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">super</span>(container,
                    name);</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">params</span> = <span
                      style="color:#9a1867">new</span> TypedIOPort(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"params"</span>, <span
                      style="color:#9a1867">true</span>, <span
                      style="color:#9a1867">false</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">params</span>.setMultiport(<span
                      style="color:#9a1867">true</span>);</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">output</span> = <span
                      style="color:#9a1867">new</span> TypedIOPort(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"output"</span>, <span
                      style="color:#9a1867">false</span>, <span
                      style="color:#9a1867">true</span>);</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">elems2Arr</span> = <span
                      style="color:#9a1867">new</span> ElementsToArray(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"elems2Arr"</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">relation1</span> = <span
                      style="color:#9a1867">new</span> TypedIORelation(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"realtion1"</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco;
                    color:rgb(0,35,199)"> <span style="color:#000000"><span
                        class="x_Apple-tab-span" style="white-space:pre"></span></span>params<span
                      style="color:#000000">.link(</span>relation1<span
                      style="color:#000000">);</span></div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco;
                    color:rgb(0,35,199)"> <span style="color:#000000"><span
                        class="x_Apple-tab-span" style="white-space:pre"></span></span>elems2Arr<span
                      style="color:#000000">.</span>input<span
                      style="color:#000000">.link(</span>relation1<span
                      style="color:#000000">);</span></div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">iter</span> = <span
                      style="color:#9a1867">new</span> IterateOverArray(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"iter"</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">mpInput</span> = <span
                      style="color:#9a1867">new</span> MirrorPort(<span
                      style="color:#0023c7">iter</span>, <span
                      style="color:#382ffa">"input"</span>); <span
                      style="color:#0023c7">mpInput</span>.setInput(<span
                      style="color:#9a1867">true</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">mpOutput</span> = <span
                      style="color:#9a1867">new</span> MirrorPort(<span
                      style="color:#0023c7">iter</span>, <span
                      style="color:#382ffa">"output"</span>); <span
                      style="color:#0023c7">mpOutput</span>.setOutput(<span
                      style="color:#9a1867">true</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">exp</span> = <span
                      style="color:#9a1867">new</span> Expression(<span
                      style="color:#0023c7">iter</span>, <span
                      style="color:#382ffa">"exp"</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco;
                    color:rgb(56,47,250)"> <span style="color:#000000"><span
                        class="x_Apple-tab-span" style="white-space:pre"></span></span><span
                      style="color:#0023c7">exp</span><span
                      style="color:#000000">.</span><span
                      style="color:#0023c7">expression</span><span
                      style="color:#000000">.setExpression(</span>"input
                    + ' - ' + iterationCount"<span style="color:#000000">);</span></div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">relation2</span> = <span
                      style="color:#9a1867">new</span> TypedIORelation(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"realtion2"</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco;
                    color:rgb(0,35,199)"> <span style="color:#000000"><span
                        class="x_Apple-tab-span" style="white-space:pre"></span></span>elems2Arr<span
                      style="color:#000000">.</span>output<span
                      style="color:#000000">.link(</span>relation2<span
                      style="color:#000000">);</span></div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">iter</span>.getPort(<span
                      style="color:#382ffa">"input"</span>).link(<span
                      style="color:#0023c7">relation2</span>);</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">relation3</span> = <span
                      style="color:#9a1867">new</span> TypedIORelation(<span
                      style="color:#9a1867">this</span>, <span
                      style="color:#382ffa">"realtion3"</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#0023c7">iter</span>.getPort(<span
                      style="color:#382ffa">"output"</span>).link(<span
                      style="color:#0023c7">relation3</span>);</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco;
                    color:rgb(0,35,199)"> <span style="color:#000000"><span
                        class="x_Apple-tab-span" style="white-space:pre"></span></span>output<span
                      style="color:#000000">.link(</span>relation3<span
                      style="color:#000000">);</span></div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span>}</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">public</span> TypedIOPort <span
                      style="color:#0023c7">params</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">public</span> TypedIOPort <span
                      style="color:#0023c7">output</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco; min-height:15px">
                    <br>
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span> MirrorPort <span
                      style="color:#0023c7">mpInput</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span> MirrorPort <span
                      style="color:#0023c7">mpOutput</span>;</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span>
                    ElementsToArray <span style="color:#0023c7">elems2Arr</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span>
                    IterateOverArray <span style="color:#0023c7">iter</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span> Expression <span
                      style="color:#0023c7">exp</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco; min-height:15px">
                    <br>
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span>
                    TypedIORelation <span style="color:#0023c7">relation1</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span>
                    TypedIORelation <span style="color:#0023c7">relation2</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">private</span>
                    TypedIORelation <span style="color:#0023c7">relation3</span>;</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco; min-height:15px">
                    <br>
                  </div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco;
                    color:rgb(119,119,119)"> <span
                      style="color:#000000"><span
                        class="x_Apple-tab-span" style="white-space:pre"></span></span>@Override</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">public</span> <span
                      style="color:#9a1867">void</span> fire() <span
                      style="color:#9a1867">throws</span>
                    IllegalActionException {</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span><span
                      style="color:#9a1867">super</span>.fire();</div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> <span
                      class="x_Apple-tab-span" style="white-space:pre"></span>}</div>
                  <div style="margin-top: 0px; margin-right: 0px;
                    margin-bottom: 0px; margin-left: 0px; font: normal
                    normal normal 11px/normal Monaco; min-height: 15px;
                    "> <span class="x_Apple-tab-span"
                      style="white-space:pre"></span><br
                      class="x_webkit-block-placeholder">
                  </div>
                  <div style="margin-top:0px; margin-right:0px;
                    margin-bottom:0px; margin-left:0px; font:normal
                    normal normal 11px/normal Monaco"> }</div>
                </div>
                <div>"</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div>I guess the problem is related to the director
                  inside IterateOverArray actor .. any help please?</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div>Thank you!</div>
                <div><br>
                </div>
                <div>Muhannad Ali</div>
                <div><br>
                </div>
                <div><br>
                </div>
              </div>
              <br>
              <fieldset class="mimeAttachmentHeader"></fieldset>
              <br>
              <pre wrap="">_______________________________________________
Kepler-users mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Kepler-users@kepler-project.org">Kepler-users@kepler-project.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users">http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users</a>
</pre>
            </blockquote>
            <br>
            <pre class="moz-signature" cols="72">-- 
Christopher Brooks, PMP                       University of California
CHESS Executive Director                      US Mail: 337 Cory Hall
Programmer/Analyst CHESS/Ptolemy/Trust        Berkeley, CA 94720-1774
ph: 510.643.9841                                (Office: 545Q Cory)
home: (F-Tu) 707.665.0131 cell: 707.332.0670 </pre>
          </div>
          <span><ISimple.xml></span><span><CGISimple.java></span></blockquote>
      </div>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Kepler-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Kepler-users@kepler-project.org">Kepler-users@kepler-project.org</a>
<a class="moz-txt-link-freetext" href="http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users">http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users</a>
</pre>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Christopher Brooks, PMP                       University of California
CHESS Executive Director                      US Mail: 337 Cory Hall
Programmer/Analyst CHESS/Ptolemy/Trust        Berkeley, CA 94720-1774
ph: 510.643.9841                                (Office: 545Q Cory)
home: (F-Tu) 707.665.0131 cell: 707.332.0670 </pre>
  </body>
</html>