damon.core
Class AspectContainer

java.lang.Object
  extended by damon.core.AspectContainer
All Implemented Interfaces:
AspectActivator, AspectInvoker, ReflectionHandler

public class AspectContainer
extends java.lang.Object
implements AspectActivator, AspectInvoker, ReflectionHandler

Damon AspectManager remote class

Author:
Rubén Mondéjar

Constructor Summary
AspectContainer(easypastry.core.PastryConnection conn, easypastry.cast.CastHandler cast, AspectStorage storage, AspectHotDeployer deployer)
           
 
Method Summary
 void activate(Abstractions abstraction, AspectActivation activation)
           
 void activate(rice.p2p.commonapi.NodeHandle nh, AspectActivation activation)
           
 void activateLocally(java.lang.String aspectName, boolean isXML, MetaData md)
           
 void activationArrive(AspectActivation activation)
           
 void addFilter(java.lang.String url, java.lang.String name, easypastry.cast.CastFilter filter)
           
 void allowProxy(java.lang.String cl, java.lang.String url, int port)
           
 void allowPublisher(int port)
           
 void close()
           
 void closeProxies(java.lang.String cl)
           
 java.util.Set<java.lang.String> getAspects()
           
 int getAvailableProcessors()
           
 long getAverageLatency(rice.p2p.commonapi.NodeHandle neighbour)
           
 long getFreeMem()
           
 long getFreeSpace()
           
 java.util.Collection<rice.p2p.commonapi.NodeHandle> getGroupChildren(java.lang.String url)
           
 java.util.Collection<rice.p2p.commonapi.NodeHandle> getGroupMembers(java.lang.String url)
           
 rice.p2p.commonapi.NodeHandle getGroupParent(java.lang.String url)
           
 java.lang.String getHostName()
           
 java.lang.String getInstanceId(java.lang.String aspectName)
           
 java.util.Collection<rice.p2p.commonapi.NodeHandle> getNeighbours(boolean ordered)
           
 rice.p2p.commonapi.NodeHandle getNodeHandle()
           
 int getNumOfThreads()
           
 long getProcessCpuTime()
           
 rice.p2p.commonapi.IdRange getRange(rice.p2p.commonapi.NodeHandle handle, int rank, rice.p2p.commonapi.Id lkey)
           
 java.util.Collection<rice.p2p.commonapi.NodeHandle> getReplicaSet(rice.p2p.commonapi.Id id, int num)
           
 double getSystemLoadAverage()
           
 long getTotalMem()
           
 long getTotalSpace()
           
 void invokationArrive(AspectInvokation ai)
           
 java.lang.Object invoke(Abstractions abstraction, AspectInvokation ai)
           
 java.lang.Object invoke(Abstractions abstraction, rice.p2p.commonapi.NodeHandle nh, AspectInvokation ai)
           
 java.lang.Object invoke(rice.p2p.commonapi.NodeHandle nh, AspectInvokation ai)
           
 boolean isAlive(rice.p2p.commonapi.NodeHandle nh)
           
 boolean isGroupRoot(java.lang.String url)
           
 boolean isRegistered(java.lang.String url)
           
 void passivate(Abstractions abstraction, AspectActivation activation)
           
 void passivate(rice.p2p.commonapi.NodeHandle nh, AspectActivation activation)
           
 void passivateLocally(java.lang.String url, java.lang.String aspectName)
           
 void register(java.lang.String url)
           
 void removeFilter(java.lang.String url, java.lang.String name, easypastry.cast.CastFilter filter)
           
 void unregister(java.lang.String url)
           
 void useProxies(java.lang.String cl, AspectRemoting ar)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AspectContainer

public AspectContainer(easypastry.core.PastryConnection conn,
                       easypastry.cast.CastHandler cast,
                       AspectStorage storage,
                       AspectHotDeployer deployer)
Method Detail

close

public void close()

isRegistered

public boolean isRegistered(java.lang.String url)

register

public void register(java.lang.String url)

unregister

public void unregister(java.lang.String url)

addFilter

public void addFilter(java.lang.String url,
                      java.lang.String name,
                      easypastry.cast.CastFilter filter)

removeFilter

public void removeFilter(java.lang.String url,
                         java.lang.String name,
                         easypastry.cast.CastFilter filter)

activate

public void activate(rice.p2p.commonapi.NodeHandle nh,
                     AspectActivation activation)
Specified by:
activate in interface AspectActivator

activate

public void activate(Abstractions abstraction,
                     AspectActivation activation)
              throws RegistryException,
                     easypastry.dht.DHTException
Specified by:
activate in interface AspectActivator
Throws:
RegistryException
easypastry.dht.DHTException

activateLocally

public void activateLocally(java.lang.String aspectName,
                            boolean isXML,
                            MetaData md)
                     throws java.lang.Exception
Specified by:
activateLocally in interface AspectActivator
Throws:
java.lang.Exception

passivate

public void passivate(rice.p2p.commonapi.NodeHandle nh,
                      AspectActivation activation)
Specified by:
passivate in interface AspectActivator

passivate

public void passivate(Abstractions abstraction,
                      AspectActivation activation)
               throws RegistryException,
                      easypastry.dht.DHTException
Specified by:
passivate in interface AspectActivator
Throws:
RegistryException
easypastry.dht.DHTException

passivateLocally

public void passivateLocally(java.lang.String url,
                             java.lang.String aspectName)
Specified by:
passivateLocally in interface AspectActivator

activationArrive

public void activationArrive(AspectActivation activation)
Specified by:
activationArrive in interface AspectActivator

invoke

public java.lang.Object invoke(rice.p2p.commonapi.NodeHandle nh,
                               AspectInvokation ai)
                        throws RegistryException,
                               easypastry.dht.DHTException
Specified by:
invoke in interface AspectInvoker
Throws:
RegistryException
easypastry.dht.DHTException

invoke

public java.lang.Object invoke(Abstractions abstraction,
                               AspectInvokation ai)
                        throws RegistryException,
                               easypastry.dht.DHTException
Specified by:
invoke in interface AspectInvoker
Throws:
RegistryException
easypastry.dht.DHTException

invoke

public java.lang.Object invoke(Abstractions abstraction,
                               rice.p2p.commonapi.NodeHandle nh,
                               AspectInvokation ai)
                        throws RegistryException,
                               easypastry.dht.DHTException
Throws:
RegistryException
easypastry.dht.DHTException

invokationArrive

public void invokationArrive(AspectInvokation ai)
Specified by:
invokationArrive in interface AspectInvoker

allowPublisher

public void allowPublisher(int port)
                    throws java.net.UnknownHostException,
                           java.io.IOException
Throws:
java.net.UnknownHostException
java.io.IOException

allowProxy

public void allowProxy(java.lang.String cl,
                       java.lang.String url,
                       int port)
                throws java.net.UnknownHostException,
                       java.io.IOException
Throws:
java.net.UnknownHostException
java.io.IOException

closeProxies

public void closeProxies(java.lang.String cl)
                  throws java.net.UnknownHostException,
                         java.io.IOException
Throws:
java.net.UnknownHostException
java.io.IOException

useProxies

public void useProxies(java.lang.String cl,
                       AspectRemoting ar)

getInstanceId

public java.lang.String getInstanceId(java.lang.String aspectName)

getAspects

public java.util.Set<java.lang.String> getAspects()

getHostName

public java.lang.String getHostName()
                             throws java.net.UnknownHostException
Specified by:
getHostName in interface ReflectionHandler
Throws:
java.net.UnknownHostException

getNodeHandle

public rice.p2p.commonapi.NodeHandle getNodeHandle()
Specified by:
getNodeHandle in interface ReflectionHandler

isAlive

public boolean isAlive(rice.p2p.commonapi.NodeHandle nh)
Specified by:
isAlive in interface ReflectionHandler

getRange

public rice.p2p.commonapi.IdRange getRange(rice.p2p.commonapi.NodeHandle handle,
                                           int rank,
                                           rice.p2p.commonapi.Id lkey)
Specified by:
getRange in interface ReflectionHandler

getNeighbours

public java.util.Collection<rice.p2p.commonapi.NodeHandle> getNeighbours(boolean ordered)
Specified by:
getNeighbours in interface ReflectionHandler

getReplicaSet

public java.util.Collection<rice.p2p.commonapi.NodeHandle> getReplicaSet(rice.p2p.commonapi.Id id,
                                                                         int num)
Specified by:
getReplicaSet in interface ReflectionHandler

getGroupMembers

public java.util.Collection<rice.p2p.commonapi.NodeHandle> getGroupMembers(java.lang.String url)
                                                                    throws RegistryException,
                                                                           easypastry.dht.DHTException
Specified by:
getGroupMembers in interface ReflectionHandler
Throws:
RegistryException
easypastry.dht.DHTException

isGroupRoot

public boolean isGroupRoot(java.lang.String url)
Specified by:
isGroupRoot in interface ReflectionHandler

getGroupParent

public rice.p2p.commonapi.NodeHandle getGroupParent(java.lang.String url)
Specified by:
getGroupParent in interface ReflectionHandler

getGroupChildren

public java.util.Collection<rice.p2p.commonapi.NodeHandle> getGroupChildren(java.lang.String url)
Specified by:
getGroupChildren in interface ReflectionHandler

getAverageLatency

public long getAverageLatency(rice.p2p.commonapi.NodeHandle neighbour)
Specified by:
getAverageLatency in interface ReflectionHandler

getFreeMem

public long getFreeMem()
Specified by:
getFreeMem in interface ReflectionHandler

getTotalMem

public long getTotalMem()
Specified by:
getTotalMem in interface ReflectionHandler

getFreeSpace

public long getFreeSpace()
Specified by:
getFreeSpace in interface ReflectionHandler

getTotalSpace

public long getTotalSpace()
Specified by:
getTotalSpace in interface ReflectionHandler

getSystemLoadAverage

public double getSystemLoadAverage()
Specified by:
getSystemLoadAverage in interface ReflectionHandler

getAvailableProcessors

public int getAvailableProcessors()
Specified by:
getAvailableProcessors in interface ReflectionHandler

getProcessCpuTime

public long getProcessCpuTime()
Specified by:
getProcessCpuTime in interface ReflectionHandler

getNumOfThreads

public int getNumOfThreads()
Specified by:
getNumOfThreads in interface ReflectionHandler