es.ants.felixgm.trmsim_wsn.trm.lftm
Class LFTM_Network

java.lang.Object
  extended by es.ants.felixgm.trmsim_wsn.network.Network
      extended by es.ants.felixgm.trmsim_wsn.trm.lftm.LFTM_Network

public class LFTM_Network
extends Network

This class models a network composed by sensors implementing LFTM

Since:
0.4
Version:
0.4
Author:
Félix Gómez Mármol, Gregorio Martínez Pérez

Field Summary
 
Fields inherited from class es.ants.felixgm.trmsim_wsn.network.Network
clients, maxDistance, sensors, servers, services
 
Constructor Summary
LFTM_Network(int numSensors, double probClients, double rangeFactor, java.util.Collection<java.lang.Double> probServices, java.util.Collection<java.lang.Double> probGoodness, java.util.Collection<Service> services)
          This constructor creates a new random LFTM Network using the given parameters
LFTM_Network(java.lang.String xmlFilePath)
          This method loads a network from a XML file and creates the specific corresponding LFTM Network
 
Method Summary
 Sensor newSensor()
          This method creates a new sensor.
 Sensor newSensor(int id, double x, double y)
          This method creates a new sensor.
 void reset()
          This method resets this network to its initial state
 
Methods inherited from class es.ants.felixgm.trmsim_wsn.network.Network
get_clients, get_maxDistance, get_numClients, get_numSensors, get_numServers, get_sensors, get_sensorsTransmittedDistance, get_servers, get_services, getSensor, oscillate, reachesQualifiedService, set_collusion, set_dynamic, setNewNeighbors, toString, writeToXMLFile
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LFTM_Network

public LFTM_Network(int numSensors,
                    double probClients,
                    double rangeFactor,
                    java.util.Collection<java.lang.Double> probServices,
                    java.util.Collection<java.lang.Double> probGoodness,
                    java.util.Collection<Service> services)
This constructor creates a new random LFTM Network using the given parameters

Parameters:
numSensors - Number of sensors composing the network
probClients - Probability of a sensor to act as a client requesting services
rangeFactor - Maximum wireless range of every sensor. It determines the neighborhood of every sensor
probServices - A collection of probabilities of offering a certain service, one per service
probGoodness - A collection of goodnesses about offering a certain service, one per service
services - All the services offered by the generated Network

LFTM_Network

public LFTM_Network(java.lang.String xmlFilePath)
             throws java.lang.Exception
This method loads a network from a XML file and creates the specific corresponding LFTM Network

Parameters:
xmlFilePath - Path of the XML to load the network from
Throws:
java.lang.Exception - If the XML file given does not have the appropriate structure, or if a sensor links to an undefined sensor, or if a sensor links to itself
Method Detail

reset

public void reset()
Description copied from class: Network
This method resets this network to its initial state

Overrides:
reset in class Network

newSensor

public Sensor newSensor()
Description copied from class: Network
This method creates a new sensor. It must be redefined in each subclass according to the requirements of each particular trust and reputation model

Specified by:
newSensor in class Network
Returns:
New created sensor

newSensor

public Sensor newSensor(int id,
                        double x,
                        double y)
Description copied from class: Network
This method creates a new sensor. It must be redefined in each subclass according to the requirements of each particular trust and reputation model

Specified by:
newSensor in class Network
Parameters:
id - Sensor's identifier
x - X coordinate of the new sensor
y - Y coordinate of the new sensor
Returns:
New created sensor