This is an old revision of the document!


Table of Contents

Applications

Applications are simply containers for some named pieces of code that can make use of the features of the framework, that can be easily launched from the UrbiFlock application launcher, and that can be shared over the network.

The most important property of an application in Urbiflock is that it should be easy to share it with your friends. Applications should thus be mobile entities that can be passed to your friends and received from your friends. This is still TODO.

The mobility requirement needs some thought in how we are going to structure applications:

  • does the entire app. needs to be an isolate?
  • will we copy physical .at source files?

How can applications communicate with one another? Directly through far refs to “remote application interfaces” or via a “facade” (the remote flockr that owns the remote application?

Every application should implement at least a start() method. This method should launch the application. It is called by the application launcher when the application button is clicked.

Local API

  • name()
  • owner()
  • registerApplicationListener(type, listener): registers a listener that listens for new applications of type type that appear in the network.
  • start(): does nothing if not overridden. Is called by the launcher.
  • pause(): does nothing if not overridden.
  • unpause(): does nothing if not overridden.
  • stop(): takes offline the application. Is called when the application is closed.
  • export(asType): exports the application such that other Flockr applications can discover it and interact with it.

Remote API

  • name()
  • getOwnerAndProfile(): returns the remote interface to the application together with the profile of the Flockr that hosts it.
uf/application.1235747629.txt.gz · Last modified: 2009/11/18 14:41 by alombide
 
 
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki