swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Activity in java


From: david ROBIN
Subject: Activity in java
Date: Fri, 24 Dec 1999 07:51:06 -0800 (PST)

Hi, i am making little test programs to understand how
the Activities work, in order to make an interactive
swarm.

i have done this program:

import swarm.objectbase.SwarmImpl;
import swarm.Globals;
import swarm.simtoolsgui.GUISwarmImpl;
import swarm.simtoolsgui.GUISwarm;
import swarm.activity.Activity;
import swarm.activity.Schedule;
import swarm.activity.ScheduleImpl;
import swarm.activity.ActionGroup;
import swarm.activity.ActionGroupImpl;
import swarm.objectbase.Swarm;
import swarm.defobj.Zone;
import swarm.Selector;

public class testactivities extends SwarmImpl
{
  class Agent
  {
    public Agent()
    {
      super();
    }

    public Object step ()
    {
      System.out.println (this + " step "
+Globals.env.getCurrentTime ());
      return this;
    }

  }

  public Agent agent;
  public Schedule schedule;
  

  public testactivities (Zone aZone)
  {
    super (aZone);
  }

  public Object buildObjects ()
  {
    super.buildObjects ();

    agent = new Agent ();

    return this;
  }

  public Object buildActions ()
  {
    super.buildActions ();
    schedule = new ScheduleImpl (this, 1);

    try
    {
      schedule.at$createActionTo$message(0,agent,new
Selector (agent.getClass (), "step", false));
    }
    catch (Exception e)
    {
      e.printStackTrace (System.err);
    }
    return this;
  }

  public Activity activateIn (Swarm swarmContext)
  {
    super.activateIn (swarmContext);
    
    schedule.activateIn (this);
    return getActivity ();
  }
  public Object go ()
  {
    getActivity ().getSwarmActivity ().next ();
    getActivity ().getSwarmActivity ().terminate ();
    System.out.println("end");
    return getActivity ().getStatus ();
  }


  public static void main (String []args)
   {
    Globals.env.initSwarm ("TestActivities", "0.0",
"address@hidden",args);
    testactivities test= new testactivities
(Globals.env.globalZone);
    test.buildObjects ();
    test.buildActions ();
    test.activateIn (null);
    test.go();
   }
}


it works perfectly:

address@hidden/swarm] $ javaswarm testactivities
address@hidden step 0
end
address@hidden/swarm] $


but if i change the main like this:


  public static void main (String []args)
   {
    Globals.env.initSwarm ("TestActivities", "0.0",
"address@hidden",args);
    testactivities test= new testactivities
(Globals.env.globalZone);
    test.buildObjects ();
    test.buildActions ();
    test.activateIn (null);
    getActivity ().getSwarmActivity ().next ();
    getActivity ().getSwarmActivity ().terminate ();
   }

i got the following compilation error:

address@hidden/swarm] $ javacswarm testactivities.java

Found 2 semantic errors compiling
"C:/swarm/testactivities.java":

    91.     getActivity ().getSwarmActivity ().next
();
            <------------>
*** Error: The method "getActivity" does not denote a
class method


    92.     getActivity ().getSwarmActivity
().terminate ();
            <------------>
*** Error: The method "getActivity" does not denote a
class method
address@hidden/swarm] $


and i don't understand why.
any idea?

Thanks in advance, and Merry christmas to all the list
members.
David




_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]