com.JRcServer.commons.resource.cache
クラス SectorIO

java.lang.Object
  上位を拡張 com.JRcServer.commons.resource.cache.SectorIO

public class SectorIO
extends java.lang.Object

セクターI/O.

導入されたバージョン:
JRcCommons 1.00
バージョン:
2006/08/04
作成者:
masahito suzuki

フィールドの概要
static long SECTOR_LENGTH
          1セクタに対するバイト数.
 
コンストラクタの概要
SectorIO(java.lang.String name, int size)
          コンストラクタ.
 
メソッドの概要
static long createUniqueID(java.lang.String fileName, int size)
          ユニークIDを生成.
 void destroy()
          /** オブジェクト破棄.
 java.lang.String getFileName()
          ファイル名を取得.
 int getIDLength()
          現在利用されている利用ID数を取得.
 int getMaxSector()
          最大セクタ数を取得.
 int getReservationSectorPoint(int id, int no)
          利用IDに対する指定予約セクタ位置を取得.
 int getReservationSectorSize(int id)
          利用IDに対する予約セクタ数を取得.
 long getUniqueID()
          ユニークIDを取得.
 int getUseIDByDataSize(int id)
          利用IDに対するデータ長を取得.
 int getUseSector()
          利用セクタ数を取得.
 boolean isUseId(int id)
          利用IDが有効であるかチェック.
 boolean isUseObject()
          このオブジェクトが有効であるかチェック.
 int readData(byte[] out, int id, int no, int sectorOffset, int offset, int length)
          利用IDに対する予約セクタ内容に情報読み込み.
 void releaseID(int id)
          利用IDを解放.
 int reservationID()
          利用IDを予約.
 int reservationSector(int id, int size)
          利用IDに対する予約セクタを設定.
 void setUniqueID(long id)
          ユニークIDを設定.
 void setUseIDByDataSize(int id, int size)
          利用IDに対してデータ長を設定.
 int writeData(byte[] in, int id, int no, int sectorOffset, int offset, int length)
          利用IDに対する予約セクタ内容に情報書き込み.
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

SECTOR_LENGTH

public static final long SECTOR_LENGTH
1セクタに対するバイト数.

関連項目:
定数フィールド値
コンストラクタの詳細

SectorIO

public SectorIO(java.lang.String name,
                int size)
         throws InputException,
                AccessException
コンストラクタ.

オープンファイル名とセクタ数を設定して、セクタI/Oを生成します.

パラメータ:
name - セクタデータを保持するファイル名を設定します.
size - セクタサイズを設定します.
設定可能な最小値は[CacheDef.MIN_SECTOR]です.
設定可能な最大値は[CacheDef.MAX_SECTOR]です.
例外:
InputException - 入力例外.
AccessException - アクセス例外.
メソッドの詳細

destroy

public void destroy()
/** オブジェクト破棄.

オブジェクトを破棄します.


reservationID

public int reservationID()
利用IDを予約.

新しい利用IDを予約します.
また利用IDを破棄したい場合、メソッド[releaseID()]を利用します.

戻り値:
int 新しい予約IDが返されます.
[-1]が返された場合、利用できる利用IDは存在しません.

reservationSector

public int reservationSector(int id,
                             int size)
                      throws InputException
利用IDに対する予約セクタを設定.

利用IDに対する予約セクタを設定します.

パラメータ:
id - 予約対象の利用IDを設定します.
size - 予約セクタ数を設定します.
戻り値:
int 予約されたセクタ数が返されます.
[0]が返された場合、空きセクタは存在しません.
例外:
InputException - 入力例外.

releaseID

public void releaseID(int id)
利用IDを解放.

利用IDを解放します.
メソッド[reservationID()]で予約した利用IDは、使い終わった場合 このメソッドで解放する必要があります.

パラメータ:
id - 解放対象の利用IDを設定します.

readData

public int readData(byte[] out,
                    int id,
                    int no,
                    int sectorOffset,
                    int offset,
                    int length)
             throws AccessException
利用IDに対する予約セクタ内容に情報読み込み.

利用IDに対する予約セクタ内容に対して情報を読み込みます.

パラメータ:
out - 読み込み対象のバイナリを設定します.
id - 利用IDを設定します.
no - 利用IDに対する予約セクタ項番を設定します.
sectorOffset - セクタ位置からの開始位置を設定します.
offset - 予約セクタ項番から読み込むオフセット値を設定します.
length - 読み込みデータ長が返されます.
戻り値:
int 読み込まれたデータ長が返されます.
[-1]が返された場合、情報は存在しません.
例外:
AccessException - アクセス例外.

writeData

public int writeData(byte[] in,
                     int id,
                     int no,
                     int sectorOffset,
                     int offset,
                     int length)
              throws AccessException
利用IDに対する予約セクタ内容に情報書き込み.

利用IDに対する予約セクタ内容に対して情報を書き込みます.

パラメータ:
in - 書き込み対象のバイナリを設定します.
id - 利用IDを設定します.
no - 利用IDに対する予約セクタ項番を設定します.
sectorOffset - セクタ位置からの開始位置を設定します.
offset - 予約セクタ項番から書き込むオフセット値を設定します.
length - 書き込みデータ長が返されます.
戻り値:
int 書き込まれた情報長が返されます.
例外:
AccessException - アクセス例外.

getReservationSectorPoint

public int getReservationSectorPoint(int id,
                                     int no)
利用IDに対する指定予約セクタ位置を取得.

利用IDに対する指定予約セクタ位置を取得します.

パラメータ:
id - 利用IDを設定します.
no - 利用IDに対する予約セクタ項番を設定します.
戻り値:
int 予約セクタ位置が返されます.
[-1]が返された場合、情報は無効です.

getReservationSectorSize

public int getReservationSectorSize(int id)
利用IDに対する予約セクタ数を取得.

利用IDに対する予約セクタ数を取得します.

パラメータ:
id - 対象の利用IDを設定します.
戻り値:
int 予約セクタ数が返されます.
[-1]が返された場合、利用IDでは予約されていません.

setUseIDByDataSize

public void setUseIDByDataSize(int id,
                               int size)
利用IDに対してデータ長を設定.

利用IDに対してデータ長を設定します.

パラメータ:
id - 対象の利用IDを設定します.
size - 対象のデータ長を設定します.

getUseIDByDataSize

public int getUseIDByDataSize(int id)
利用IDに対するデータ長を取得.

利用IDに対するデータ長を取得します.

パラメータ:
useID - 対象の利用IDを設定します.
戻り値:
int データ長が返されます.

getIDLength

public int getIDLength()
現在利用されている利用ID数を取得.

現在利用されている利用ID数を取得します.

戻り値:
int 現在利用されている利用IDが返されます.

getFileName

public java.lang.String getFileName()
ファイル名を取得.

現在オープンされているファイル名を取得します.

戻り値:
String オープンされているファイル名が返されます.

getMaxSector

public int getMaxSector()
最大セクタ数を取得.

最大セクタ数を取得します.

戻り値:
int 最大セクタ数が返されます.
[-1]が返された場合、オブジェクトは無効です.

getUseSector

public int getUseSector()
利用セクタ数を取得.

現在利用されているセクタ数を取得します.

戻り値:
int 現在利用されているセクタ数が返されます.

setUniqueID

public void setUniqueID(long id)
ユニークIDを設定.

ユニークIDを再設定します.

パラメータ:
id - 再設定対象のユニークIDを設定します.

getUniqueID

public long getUniqueID()
ユニークIDを取得.

設定されているユニークIDを取得します.

戻り値:
int ユニークIDが返されます.

createUniqueID

public static final long createUniqueID(java.lang.String fileName,
                                        int size)
ユニークIDを生成.

ユニークIDを生成します.

パラメータ:
fileName - 対象のファイル名を設定します.
size - 対象のキャッシュサイズを設定します.
戻り値:
long ユニークIDが返されます.

isUseId

public boolean isUseId(int id)
利用IDが有効であるかチェック.

指定された利用IDが有効であるかチェックします.

パラメータ:
id - チェック対象の利用IDを設定します.
戻り値:
boolean チェック結果が返されます.
[true]が返された場合、指定した利用IDは存在します.
[false]が返された場合、指定した利用IDは存在しません.

isUseObject

public boolean isUseObject()
このオブジェクトが有効であるかチェック.

このオブジェクトが有効であるかチェックします.

戻り値:
boolean チェック結果が返されます.
[true]が返された場合、オブジェクトは有効です.
[false]が返された場合、オブジェクトは無効です.