J-Sim v1.2.1-p7 API

drcl.net.traffic
Class TrafficShaperComponent

java.lang.Object
  extended bydrcl.DrclObj
      extended bydrcl.comp.Component
          extended bydrcl.net.traffic.TrafficComponent
              extended bydrcl.net.traffic.TrafficShaperComponent
All Implemented Interfaces:
java.lang.Cloneable, ObjectDuplicable, java.io.Serializable

public class TrafficShaperComponent
extends TrafficComponent

This component is the base class for regulating incoming packets and outputing the packets according to the associated traffic model.

A TrafficShaperComponent expects input data in Packet and outputs either the incoming packet or an enclosing packet that encapsulates the incoming packet.

A TrafficShaperComponent holds a TrafficShaper object that does the real job. One may plug in a different TrafficShaper object to create a different traffic shaper component.

See Also:
TrafficShaper, Serialized Form

Nested Class Summary
 
Nested classes inherited from class drcl.comp.Component
Component.Locks
 
Field Summary
 
Fields inherited from class drcl.net.traffic.TrafficComponent
downPort, timerPort
 
Fields inherited from class drcl.comp.Component
FLAG_COMPONENT_NOTIFICATION, FLAG_DEBUG_ENABLED, FLAG_DIRECT_OUTPUT_ENABLED, FLAG_ENABLED, FLAG_ERROR_ENABLED, FLAG_EVENT_ENABLED, FLAG_EXPOSED, FLAG_GARBAGE_DISPLAY_ENABLED, FLAG_GARBAGE_ENABLED, FLAG_HAS_EXPOSED_CHILD, FLAG_PORT_NOTIFICATION, FLAG_STARTED, FLAG_STOPPED, FLAG_TRACE_ENABLED, FLAG_UNDEFINED_START, id, infoPort, locks, name, parent, PortGroup_DEFAULT_GROUP, PortGroup_EVENT, PortGroup_SERVICE, Root, Trace_DATA, Trace_SEND
 
Constructor Summary
TrafficShaperComponent()
           
TrafficShaperComponent(java.lang.String id_)
           
TrafficShaperComponent(TrafficShaper shaper_)
           
 
Method Summary
 void duplicate(java.lang.Object source_)
          Duplicates the content of source_, including ID, name, child components and connections among them, to this component.
 int getBufferSize()
          Returns the (maximum) buffer size of this traffic shaper (byte).
 TrafficShaper getShaper()
          Returns the associated TrafficShaper instance.
 TrafficModel getTrafficModel()
          Returns the associated traffic model.
 java.lang.String info(java.lang.String prefix_)
           
protected  void process(java.lang.Object data_, Port inPort_)
          The main callback method of a component.
 void reset()
          Resets the component for being used anew.
 void setBufferSize(int size_)
          Sets the (maximum) buffer size of this traffic shaper (byte).
 void setShaper(TrafficShaper shaper_)
          Installs the TrafficShaper instance.
 void setTrafficModel(TrafficModel traffic_)
          Sets the associated traffic model.
 
Methods inherited from class drcl.net.traffic.TrafficComponent
getPacketWrapper, info, setPacketWrapper
 
Methods inherited from class drcl.comp.Component
_resume, _start, _stop, addComponent, addComponent, addEventPort, addEventPort, addForkPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addPort, addServerPort, addServerPort, cancelFork, componentAdded, componentRemoved, connect, containsComponent, containsComponent, containsPort, debug, disconnectAll, disconnectAllPeers, disconnectAllPorts, drop, drop, error, error, expose, exposeEventPorts, exposePort, exposePort, exposePort, exposePort, exposePort, findAvailable, findAvailable, findAvailable, finishing, fork, forkAt, getAllComponents, getAllPorts, getAllPorts, getAllWiresInside, getAllWiresInsideOut, getAllWiresOut, getComponent, getComponentFlag, getComponentFlag, getContract, getContractHT, getContractHT, getDebugFlagsInBinary, getDebugLevelNames, getForkManager, getID, getName, getParent, getPort, getPort, getRoot, getRuntime, getTime, iduplicate, isAncestorOf, isComponentNotificationEnabled, isContainer, isDebugEnabled, isDebugEnabledAt, isDirectlyRelatedTo, isDirectOutputEnabled, isEnabled, isErrorNoticeEnabled, isEventExportEnabled, isGarbageDisplayEnabled, isGarbageEnabled, isPortNotificationEnabled, isPortRemovable, isStarted, isStopped, isTraceEnabled, lock, notify, notifyAll, operate, portAdded, portRemoved, reboot, removeAll, removeAllComponents, removeAllPorts, removeAllPorts, removeComponent, removeComponent, removePort, removePort, removePort, resume, run, sduplicate, send, sendAt, setComponentFlag, setComponentFlag, setComponentNotificationEnabled, setContract, setDebugEnabled, setDebugEnabled, setDebugEnabledAt, setDebugEnabledAt, setDebugEnabledAt, setDirectOutputEnabled, setDirectOutputEnabled, setEnabled, setErrorNoticeEnabled, setErrorNoticeEnabled, setEventExportEnabled, setEventExportEnabled, setExecutionBoundary, setGarbageDisplayEnabled, setGarbageDisplayEnabled, setGarbageEnabled, setGarbageEnabled, setID, setID, setName, setPort, setPort, setPortNotificationEnabled, setPortRemovable, setRuntime, setTraceEnabled, setTraceEnabled, sleepFor, sleepUntil, stop, toString, unexpose, unlock, useLocalForkManager, useLocalForkManager, wait, yield
 
Methods inherited from class drcl.DrclObj
clone
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TrafficShaperComponent

public TrafficShaperComponent()

TrafficShaperComponent

public TrafficShaperComponent(TrafficShaper shaper_)

TrafficShaperComponent

public TrafficShaperComponent(java.lang.String id_)
Method Detail

reset

public void reset()
Description copied from class: Component
Resets the component for being used anew. All the internal variables must be set to the initial state. All the ports and child components are reset as well.

Overrides:
reset in class Component

duplicate

public void duplicate(java.lang.Object source_)
Description copied from class: Component
Duplicates the content of source_, including ID, name, child components and connections among them, to this component. Subclasses need to override this method to copy its own variables.

Specified by:
duplicate in interface ObjectDuplicable
Overrides:
duplicate in class TrafficComponent

info

public java.lang.String info(java.lang.String prefix_)
Overrides:
info in class TrafficComponent

process

protected void process(java.lang.Object data_,
                       Port inPort_)
Description copied from class: Component
The main callback method of a component. Being invoked when data arrives at a port of its.

Overrides:
process in class Component
Parameters:
data_ - the arrival data.
inPort_ - the port where the data arrives.

setShaper

public void setShaper(TrafficShaper shaper_)
Installs the TrafficShaper instance.


getShaper

public TrafficShaper getShaper()
Returns the associated TrafficShaper instance.


getTrafficModel

public TrafficModel getTrafficModel()
Description copied from class: TrafficComponent
Returns the associated traffic model.

Specified by:
getTrafficModel in class TrafficComponent

setTrafficModel

public void setTrafficModel(TrafficModel traffic_)
Description copied from class: TrafficComponent
Sets the associated traffic model.

Specified by:
setTrafficModel in class TrafficComponent

setBufferSize

public void setBufferSize(int size_)
Sets the (maximum) buffer size of this traffic shaper (byte).


getBufferSize

public int getBufferSize()
Returns the (maximum) buffer size of this traffic shaper (byte).


J-Sim v1.2.1-p7 API

Copyright © 1998-2003 Distributed Real-time Computing Lab (DRCL). All Rights Reserved.     ~ To J-Sim Home ~