jp.ac.naka.ec
クラス EntityCollaborator

java.lang.Object
  上位を拡張 jp.ac.naka.ec.EntityCollaborator

public class EntityCollaborator
extends java.lang.Object

EntityCollaboratorの機能を利用する際のフロントエンド。 Entityの追加、探索などを行う。 また、SipCoreおよびChordの初期化を代行する。

作成者:
Takashi Kasuya

フィールドの概要
static java.lang.String base
           
static java.lang.String config
           
static FindPeer fp
           
static int PORT
           
 
メソッドの概要
 boolean addEntity(Entity entity)
          ローカルに保持するEntityの追加
 void findPeer()
          ローカルエリア内のピアを自動発見し、接続する。
 Entity[] getEntities()
           
 Entity getEntity(java.lang.String uri)
          URIで示されたEntityを取得。
static EntityCollaborator getInstance()
          インスタンスを取得
static EntityCollaborator getInstance(java.lang.String ni)
          ネットワークインタフェースを指定した場合のインスタンス取得。
 void initEntities()
           
 void initiateDHT()
          デフォルトのポート番号でChordを初期化。
 void initiateDHT(int port)
           
 void initiateDHT(java.lang.String bootstrapURI)
          ブートストラップノードのIPアドレスを指定してChordを初期化する。
 void initiateDHT(java.lang.String bootstrapURI, int port)
          ブートストラップノードのトランスポートアドレスを指定して、P2Pネットワークに参加する。
 void initiateSipCore()
          SipCoreを初期化し、SipCore.PORTで指定されたポートでSIPリクエストの受け付けを開始できる。
 void initiateSipCore(int port)
           
 boolean removeEntity(Entity entity)
           
 Entity[] searchEntities(java.lang.String keyword)
          Chordを使用し、ネットワークからEntityを探索する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

PORT

public static int PORT

base

public static java.lang.String base

fp

public static FindPeer fp

config

public static java.lang.String config
メソッドの詳細

getEntities

public Entity[] getEntities()
戻り値:
entities 保持しているEntityの数

getInstance

public static EntityCollaborator getInstance()
インスタンスを取得

戻り値:
例外:
java.lang.Exception

getInstance

public static EntityCollaborator getInstance(java.lang.String ni)
                                      throws java.io.IOException,
                                             java.text.ParseException
ネットワークインタフェースを指定した場合のインスタンス取得。 eth0, eth1などを引数とする。

パラメータ:
ni(Network - Interface)
戻り値:
例外:
java.text.ParseException
java.io.IOException

addEntity

public boolean addEntity(Entity entity)
ローカルに保持するEntityの追加

パラメータ:
entity -
戻り値:

removeEntity

public boolean removeEntity(Entity entity)

searchEntities

public Entity[] searchEntities(java.lang.String keyword)
Chordを使用し、ネットワークからEntityを探索する。 結果は配列として得られる。

パラメータ:
keyword -
戻り値:

initiateDHT

public void initiateDHT()
                 throws java.lang.Exception
デフォルトのポート番号でChordを初期化。 DHTによるP2Pネットワークを形成する。

例外:
java.lang.Exception

initiateDHT

public void initiateDHT(int port)
                 throws java.lang.Exception
例外:
java.lang.Exception

initiateDHT

public void initiateDHT(java.lang.String bootstrapURI)
                 throws java.lang.Exception
ブートストラップノードのIPアドレスを指定してChordを初期化する。 ブートストラップノードが形成しているP2Pネットワークに参加さする。

パラメータ:
bootstrapURI -
例外:
java.lang.Exception

initiateDHT

public void initiateDHT(java.lang.String bootstrapURI,
                        int port)
                 throws java.lang.Exception
ブートストラップノードのトランスポートアドレスを指定して、P2Pネットワークに参加する。

パラメータ:
bootstrapURI -
port -
例外:
java.lang.Exception

getEntity

public Entity getEntity(java.lang.String uri)
URIで示されたEntityを取得。 ただし、ローカルに保持するEntityのみ

パラメータ:
uri -
戻り値:

initiateSipCore

public void initiateSipCore()
                     throws java.io.IOException,
                            javax.sip.SipException,
                            java.text.ParseException,
                            javax.sip.InvalidArgumentException,
                            java.util.TooManyListenersException
SipCoreを初期化し、SipCore.PORTで指定されたポートでSIPリクエストの受け付けを開始できる。

例外:
java.io.IOException
javax.sip.SipException
java.text.ParseException
javax.sip.InvalidArgumentException
java.util.TooManyListenersException

initiateSipCore

public void initiateSipCore(int port)
                     throws java.io.IOException,
                            javax.sip.SipException,
                            java.text.ParseException,
                            javax.sip.InvalidArgumentException,
                            java.util.TooManyListenersException
例外:
java.io.IOException
javax.sip.SipException
java.text.ParseException
javax.sip.InvalidArgumentException
java.util.TooManyListenersException

findPeer

public void findPeer()
              throws java.io.IOException
ローカルエリア内のピアを自動発見し、接続する。

例外:
java.io.IOException

initEntities

public void initEntities()