programming with jxta hello world peer discovery peer group discovery creating peer group joining a...
Post on 01-May-2015
218 Views
Preview:
TRANSCRIPT
Programming with JXTAProgramming with JXTA
Hello WorldHello World
Peer discoveryPeer discovery
Peer Group discoveryPeer Group discovery
Creating Peer groupCreating Peer group
Joining a Peer GroupJoining a Peer Group
JXTA: Hello WorldJXTA: Hello World
RequirementRequirement Java SDK (Java SDK (http://java.sun.com)[jdk1.6.0_03])[jdk1.6.0_03] JXTA (JXTA (http://download.jxta.org/index.html)
[JXTA 2.4.1] [JXTA 2.4.1] Esempi (Esempi (
http://www.dia.unisa.it/%7Ecordasco/teaching/ASDAD0607/jxta_devguide.zip
) [JXTA 2.3]) [JXTA 2.3]
JXTA: Hello WorldJXTA: Hello World
Compilare usando JXTA javac -classpath ..\lib\jxta.jar; $[FileName]
Lanciare un applicazione java -classpath ..\lib\jxta.jar;..\lib\bcprov-jdk14.jar;..\lib\log4j.jar;. $
[CurClass]
JXTA: Hello WorldJXTA: Hello Worldimport net.jxta.peergroup.PeerGroup;import net.jxta.peergroup.PeerGroupFactory;import net.jxta.exception.PeerGroupException;public class SimpleJxtaApp { // This is a simple example of how an application would
start jxtastatic PeerGroup netPeerGroup = null;public static void main(String args[]) {
System.out.println("Starting JXTA ....");SimpleJxtaApp myapp = new SimpleJxtaApp();myapp.startJxta();System.out.println("Hello from JXTA group " + netPeerGroup.getPeerGroupName() );System.out.println(" Group ID = " + netPeerGroup.getPeerGroupID().toString());System.out.println(" Peer name = " + netPeerGroup.getPeerName());System.out.println(" Peer ID = " + netPeerGroup.getPeerID().toString());
System.out.println( "Good Bye ....");myapp.netPeerGroup.stopApp();System.exit(0);
}private void startJxta() {
try { // create and start the default JXTA NetPeerGroupnetPeerGroup = PeerGroupFactory.newNetPeerGroup();
} catch (PeerGroupException e) { // could not instantiate the group, print the stack and exit
System.out.println("fatal error : group creation failure");e.printStackTrace();
System.exit(1);}
}}
JXTA: ConfigurazioneJXTA: Configurazione
JXTA: ConfigurazioneJXTA: Configurazione
JXTA: ConfigurazioneJXTA: Configurazione
DemoDemo
Programming with JXTAProgramming with JXTA
Peer discoveryPeer discovery Gli advertisement vengono mantenuti nella cache di Gli advertisement vengono mantenuti nella cache di
JXTA (./.jxta/cm)JXTA (./.jxta/cm) In particolare per ogni gruppo sarà presente una In particolare per ogni gruppo sarà presente una
sottodirectorysottodirectory ./.jxta/cm/jxta-NetGroup./.jxta/cm/jxta-NetGroup
./.jxta/cm/group-ID./.jxta/cm/group-ID Le directory contengono tre tipi di fileLe directory contengono tre tipi di file
*.idx file, indice*.idx file, indice
record-offset.tbl, entry listrecord-offset.tbl, entry list
advertisement.tbl, advertisementadvertisement.tbl, advertisement
Programming with JXTAProgramming with JXTA
Peer discoveryPeer discovery Per leggere i messaggi dalla cache si usa il metodo Per leggere i messaggi dalla cache si usa il metodo
getLocalAdvertisement();getLocalAdvertisement(); Per scrivere nella cache si usa invece il metodo Per scrivere nella cache si usa invece il metodo
getRemoteAdvertisement(); (il quale invia un getRemoteAdvertisement(); (il quale invia un messaggio di discovery e attende la risposta).messaggio di discovery e attende la risposta).
Come si ottiene la rispostaCome si ottiene la rispostaSi può aspettare e successivamente controllare la propria Si può aspettare e successivamente controllare la propria cache (getLocalAdvertisement())cache (getLocalAdvertisement())
Si può utilizzare un Discovery Listner (utilizzato nella demo).Si può utilizzare un Discovery Listner (utilizzato nella demo).
Programming with JXTAProgramming with JXTA
Per instanziare JXTA
Per discovery
Programming with JXTAProgramming with JXTA
destinazione
tipo
Attributi della query
Threshold
Programming with JXTAProgramming with JXTA
DemoDemo
Peer DiscoveryPeer Discovery
Programming with JXTAProgramming with JXTA
Group discoveryGroup discovery Simile al discovery dei peerSimile al discovery dei peer In questa demo l’operazione di discovery non In questa demo l’operazione di discovery non
parte finchè il nodo non è connesso ad parte finchè il nodo non è connesso ad almeno un rendezvousalmeno un rendezvous
Creazione gruppi usando la shellCreazione gruppi usando la shell
Programming with JXTAProgramming with JXTA
Programming with JXTAProgramming with JXTA
Programming with JXTAProgramming with JXTA
DemoDemo
Group DiscoveryGroup Discovery
Programming with JXTAProgramming with JXTA
Creating Peer Group and publishing Creating Peer Group and publishing advertisementadvertisement Stampa dei gruppi presenti nella cacheStampa dei gruppi presenti nella cache Creazione del gruppoCreazione del gruppo
IdIdImplAdvImplAdvNome Nome DescrizioneDescrizione
Pubblicare un gruppoPubblicare un grupporemotePublish(adv)remotePublish(adv)
Programming with JXTAProgramming with JXTA
Programming with JXTAProgramming with JXTA
Programming with JXTAProgramming with JXTA
DemoDemo
Creating Peer Group and publishing Creating Peer Group and publishing advertisementadvertisement
Programming with JXTAProgramming with JXTA
Joining a peer groupJoining a peer group
Programming with JXTAProgramming with JXTA
Programming with JXTAProgramming with JXTA
Programming with JXTAProgramming with JXTA
DemoDemo
Joining a peer groupJoining a peer group
top related