[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.
- Activity in java,
david ROBIN <=