Re: [Aglets-users] Create an Aglet with a parameter in run() method
Status: Beta
Brought to you by:
cat4hire
From: Thomas H. <Tho...@es...> - 2006-06-15 12:32:04
|
On Thursday 15 June 2006 14:08, Diego Giardinetto wrote: > Could I write an aglet with a run() method as the follow? > > public void run(Type arg){ > //some code... > } An aglet written like that will probably not do what you expect. It will compile without a problem because there is no syntax error in writing a run(Type arg) like that. The aglet server will even load the aglet without complaint. The aglet will, however, not execute "//some code". The reason is that the aget server will call your aglet's run() method (the one without parameters, inherited from Aglet) and this method is empty. The run(Type arg) method is never called. > And, if I can, how can I pass the argument with the creation method > createAglet(...)? You pass the argument object as the third parameter of AgletContext.createAglet(), as you have probably tried. In the aglet, override method 'public void onCreation(java.lang.Object init)'. The 'init' parameter of onCreation() is the object you gave createAglet() as third parameter. Save it into a data member of the aglet and read it from there in run(). I recommend you to install the aglets source package from SourceForge: http://prdownloads.sourceforge.net/aglets/aglets-2.0.2-src.jar?download Unpack it in such a way that the 'src/' directory is next to 'bin/', 'lib/', 'public/' and the other subdirectories extracted from the binary package. Enter the src directory and run 'ant' to build the API documentation into directory 'doc/' at the same level as 'src/'. For 'AgletContext.createAglet(java.net.URL, java.lang.String, java.lang.Object)' it specifies that "init is an object passed on to the aglet's onCreation method". Exactly what you were looking for. :) Hope this helps. Thomas. -- [Random fortune cookie]: This was the most unkindest cut of all. -- William Shakespeare, "Julius Caesar" Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm |