fr.dyade.aaa.agent
Class NGNetwork

java.lang.Object
  extended by fr.dyade.aaa.agent.Network
      extended by fr.dyade.aaa.agent.StreamNetwork
          extended by fr.dyade.aaa.agent.NGNetwork
All Implemented Interfaces:
MessageConsumer, NetworkMBean

public class NGNetwork
extends StreamNetwork

NGNetwork is a new implementation of Network class using nio package.


Nested Class Summary
(package private)  class NGNetwork.CnxHandler
           
(package private)  class NGNetwork.Dispatcher
           
(package private)  class NGNetwork.MessageVector
           
(package private)  class NGNetwork.NetServer
           
 
Nested classes/interfaces inherited from class fr.dyade.aaa.agent.Network
Network.NetworkAverageLoadTask
 
Field Summary
(package private)  NGNetwork.Dispatcher dispatcher
           
(package private)  NGNetwork.NetServer[] dmon
           
(package private)  NGNetwork.CnxHandler[] handlers
           
(package private) static int Kb
           
(package private)  java.nio.channels.ServerSocketChannel listen
           
(package private) static int Mb
           
(package private) static int NbNetServer
           
(package private)  java.nio.channels.Selector selector
           
(package private) static int SO_BUFSIZE
           
 
Fields inherited from class fr.dyade.aaa.agent.StreamNetwork
backlog, CnxRetry, ConnectTimeout, inLocalAddr, outLocalAddr, outLocalPort, serverSocketFactory, socketFactory, SoLinger, SoTimeout, TcpNoDelay
 
Fields inherited from class fr.dyade.aaa.agent.Network
ALREADY_DELIVERED, averageLoadTask, bootTSFN, DELIVER, domain, idxLS, logmon, name, nbMessageIn, nbMessageOut, port, qout, servers, serversFN, sid, WDActivationPeriod, WDNbRetryLevel1, WDNbRetryLevel2, WDRetryPeriod1, WDRetryPeriod2, WDRetryPeriod3
 
Constructor Summary
NGNetwork()
          Creates a new network component.
 
Method Summary
(package private)  void close()
           
(package private)  void cnxStart(java.nio.channels.SocketChannel channel)
           
(package private)  NGNetwork.CnxHandler getHandler(short sid)
           
 void init(java.lang.String name, int port, short[] servers)
          Initializes a new network component.
 boolean isRunning()
          Tests if the network component is alive.
(package private)  void open()
           
 void start()
          Causes this network component to begin execution.
 void stop()
          Forces the network component to stop executing.
 java.lang.String toString()
          Returns a string representation of this consumer, including the daemon's name and status.
 void wakeup()
          Wakes up the watch-dog thread.
 
Methods inherited from class fr.dyade.aaa.agent.StreamNetwork
createServerSocket, createServerSocket, createSocket, createSocket, createSocket, setProperties, setSocketOption
 
Methods inherited from class fr.dyade.aaa.agent.Network
addServer, delete, deliver, delServer, getAverageLoad1, getAverageLoad15, getAverageLoad5, getBootTS, getDomainName, getName, getNbMessageReceived, getNbMessageSent, getNbWaitingMessages, getPort, getQueue, getStamp, getWDActivationPeriod, getWDNbRetryLevel1, getWDNbRetryLevel2, getWDRetryPeriod1, getWDRetryPeriod2, getWDRetryPeriod3, index, insert, post, resetServer, restore, save, setPort, setStamp, setWDActivationPeriod, setWDNbRetryLevel1, setWDNbRetryLevel2, setWDRetryPeriod1, setWDRetryPeriod2, setWDRetryPeriod3, testBootTS, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

Kb

static final int Kb
See Also:
Constant Field Values

Mb

static final int Mb
See Also:
Constant Field Values

SO_BUFSIZE

static final int SO_BUFSIZE
See Also:
Constant Field Values

selector

java.nio.channels.Selector selector

dispatcher

NGNetwork.Dispatcher dispatcher

dmon

NGNetwork.NetServer[] dmon

NbNetServer

static final int NbNetServer
See Also:
Constant Field Values

handlers

NGNetwork.CnxHandler[] handlers

listen

java.nio.channels.ServerSocketChannel listen
Constructor Detail

NGNetwork

public NGNetwork()
Creates a new network component.

Method Detail

init

public void init(java.lang.String name,
                 int port,
                 short[] servers)
          throws java.lang.Exception
Initializes a new network component. This method is used in order to easily creates and configure a Network component from a class name. So we can use the Class.newInstance() method for create (whitout any parameter) the component, then we can initialize it with this method.
This method initializes the logical clock for the domain.

Overrides:
init in class StreamNetwork
Parameters:
name - The domain name.
port - The listen port.
servers - The list of servers directly accessible from this network interface.
Throws:
java.lang.Exception
See Also:
Network

open

void open()
    throws java.io.IOException
Throws:
java.io.IOException

close

void close()

start

public void start()
           throws java.lang.Exception
Causes this network component to begin execution.

Throws:
java.lang.Exception
See Also:
stop

getHandler

final NGNetwork.CnxHandler getHandler(short sid)

wakeup

public void wakeup()
Wakes up the watch-dog thread.


stop

public void stop()
Forces the network component to stop executing.

See Also:
start

isRunning

public boolean isRunning()
Tests if the network component is alive.

Returns:
true if this MessageConsumer is alive; false otherwise.

toString

public java.lang.String toString()
Returns a string representation of this consumer, including the daemon's name and status.

Specified by:
toString in interface NetworkMBean
Overrides:
toString in class Network
Returns:
A string representation of this consumer.

cnxStart

void cnxStart(java.nio.channels.SocketChannel channel)
        throws java.io.IOException
Throws:
java.io.IOException


Copyright © 2010 ScalAgent D.T.. All Rights Reserved.