com.JRcServer.space
クラス Space

java.lang.Object
  上位を拡張 com.JRcServer.space.Space

public class Space
extends java.lang.Object

空間ファイル定義.

空間ファイル定義をサポートします.

導入されたバージョン:
JDK 1.3
バージョン:
1.0.0 2004/11/11
作成者:
masahito suzuki

フィールドの概要
static int ONE_SECTOR_LENGTH
          1セクタ有効データ長格納領域.
static int SECTOR_DATA_LENGTH
          1セクターデータ長.
 
コンストラクタの概要
Space()
          コンストラクタ.
 
メソッドの概要
 int addSpace(java.lang.String spaceName, java.lang.String indexName, int maxSector)
          スペースファイルを追加.
 void close()
          オブジェクトをクローズ.
static int convertByteBySector(int size)
          バイト値からセクター値へ変換.
 int createSector(int length)
          空間を予約.
 int createSector(int id, int length)
          空間を追加/予約.
 java.lang.String getIndexName(int fileNo)
          対象ファイルNoのインデックスファイルに対するファイル名を取得.
 java.io.InputStream getInputStream(int id, int seek)
          読み込み用オブジェクトを取得.
 int getMaxSector()
          最大セクター数を取得.
 int getMaxSpaceSector(int fileNo)
          管理スペースファイルに対する最大セクター数を取得.
 java.lang.String getName()
          管理スペースファイルに対するファイル名を取得.
 java.io.OutputStream getOutputStream(int id, int seek)
          書き込み用オブジェクトを取得.
 int[] getSectorID()
          セクターID一覧を取得.
 long getSectorIDByByte(int id)
          セクターIDに対するバイト数を取得.
 int getSectorIDBySector(int id)
          セクターIDに対するセクター数を取得.
 long getSectorIDByUseByte(int id)
          セクターIDに対する利用バイト数を取得.
 int getSectorIDLength()
          セクターID数を取得.
 int getSpaceLength()
          管理スペースファイル数を取得.
 java.lang.String getSpaceName(int fileNo)
          対象ファイルNoのスペースファイルに対するファイル名を取得.
 int[] getSpaceNo()
          管理スペースファイルNo一覧を取得.
 Synchronized getSynchronized()
          同期オブジェクトを取得.
 int getUseSector()
          利用可能セクター数を取得.
 int getUseSpaceSector(int fileNo)
          管理スペースファイルに対する利用可能セクター数を取得.
 boolean isOpen()
          オープンチェック.
 void open(java.lang.String name)
          オープン処理.
 void open(java.lang.String name, int cacheCd, int indexCd, int idCd)
          オープン処理.
 int read(byte[] bin, int id, long seek, int offset, int length)
          データを読み込み.
 void removeSector(int id)
          予約空間を破棄.
 void removeSpace(int fileNo)
          スペースファイルを削除.
 void setSectorIDByUseByte(int id, long length)
          セクターIDに対する利用バイト数を設定.
 int write(byte[] bin, int id, long seek, int offset, int length)
          データを書き込み.
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

SECTOR_DATA_LENGTH

public static final int SECTOR_DATA_LENGTH
1セクターデータ長.

関連項目:
定数フィールド値

ONE_SECTOR_LENGTH

public static final int ONE_SECTOR_LENGTH
1セクタ有効データ長格納領域.

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

Space

public Space()
コンストラクタ.

メソッドの詳細

open

public final void open(java.lang.String name)
                throws InputException,
                       AccessException
オープン処理.

オープン処理を行います.

パラメータ:
name - スペースIOファイル名を設定します.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

open

public final void open(java.lang.String name,
                       int cacheCd,
                       int indexCd,
                       int idCd)
                throws InputException,
                       AccessException
オープン処理.

オープン処理を行います.

パラメータ:
name - スペースIOファイル名を設定します.
cacheCd - 対象のIDキャッシュ係数を設定します.
設定可能な最小値は[0]です.
設定可能な最大値は[7]です.
またこの値を大きくした場合、情報取得時の速度は あがりますが、メモリ使用量は増大します.
indexCd - インデックス係数を設定します.
設定可能な最小値は[0]です.
設定可能な最大値は[7]です.
またこの値を大きくした場合、情報取得時の速度は あがりますが、メモリ使用量は増大します.
idCd - インデックスID係数を設定します.
設定可能な最小値は[0]です.
設定可能な最大値は[7]です.
またこの値を大きくした場合、情報取得時の速度は あがりますが、メモリ使用量は増大します.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

close

public final void close()
オブジェクトをクローズ.

オブジェクトをクローズします.


addSpace

public final int addSpace(java.lang.String spaceName,
                          java.lang.String indexName,
                          int maxSector)
                   throws InputException,
                          AccessException
スペースファイルを追加.

スペースファイルを新規に追加します.

パラメータ:
spaceName - 対象のスペースファイル名を設定します.
indexName - 対象のインデックスファイル名を設定します.
maxSector - 作成対象の最大セクター長を設定します.
設定可能な最小値は[128]です.
設定可能な最大値は[511999]です.
戻り値:
int 追加されたファイルNoが返されます.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

removeSpace

public final void removeSpace(int fileNo)
                       throws InputException,
                              AccessException
スペースファイルを削除.

登録されているスペースファイルを削除します.
またこのとき削除対象のスペースファイル内の データIDの情報が管理されている全てのスペースファイルより 全て削除されます.

パラメータ:
fileNo - 削除対象のファイルNoを設定します.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

createSector

public final int createSector(int length)
                       throws InputException,
                              AccessException
空間を予約.

新しい空間を予約します.

パラメータ:
length - 予約対象のセクター数を設定します.
また1セクター数は4096byteです.
戻り値:
int 新しく予約されたセクターID情報が返されます.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

createSector

public final int createSector(int id,
                              int length)
                       throws InputException,
                              AccessException
空間を追加/予約.

セクターID情報を指定して空間を追加/予約します.
また指定ID情報が既に存在する場合は、そのセクターID情報に追加されます.

パラメータ:
id - 予約/追加対象のセクターID情報を設定します.
[-1]の場合、新規にIDを発行します.
length - 予約/追加対象のセクター数を設定します.
また1セクター数は4096byteです.
戻り値:
int 結果情報が返されます.
新規セクターID発行の場合、ID情報が返されます.
既に存在するIDの場合、割り当てられたデータ長が返されます.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

removeSector

public final void removeSector(int id)
                        throws InputException
予約空間を破棄.

セクターID情報を指定して予約されている空間を破棄します.

パラメータ:
id - 破棄対象のセクターID情報を設定します.
例外:
InputException - 入力例外.

read

public final int read(byte[] bin,
                      int id,
                      long seek,
                      int offset,
                      int length)
               throws InputException,
                      AccessException
データを読み込み.

データを読み込みます.

パラメータ:
bin - 取得されたデータが返されます.
id - 読み込み対象セクターIDを設定します.
設定可能なセクターIDは(1)からとなります.
seek - 読み込み対象の空間位置を設定します.
offset - 読み込み情報設定のオフセット値を設定します.
length - 読み込み情報長を設定します.
戻り値:
int 取得されたデータ長が返されます.
情報の読み込みに失敗した場合[0]が返されます.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

write

public final int write(byte[] bin,
                       int id,
                       long seek,
                       int offset,
                       int length)
                throws InputException,
                       AccessException
データを書き込み.

データを書き込みます.

パラメータ:
bin - 書き込み対象のデータを設定します.
id - 書き込み対象セクターIDを設定します.
設定可能なセクターIDは(1)からとなります.
seek - 書き込み対象のシークポイントを設定します.
offset - 書き込み情報設定のオフセット値を設定します.
length - 書き込み情報長を設定します.
戻り値:
int 書き込まれた利用空間位置が返されます.
情報の書き込みに失敗した場合[0]が返されます.
例外:
InputException - 入力例外.
AccessException - アクセス例外.

setSectorIDByUseByte

public final void setSectorIDByUseByte(int id,
                                       long length)
                                throws InputException
セクターIDに対する利用バイト数を設定.

セクターIDに対する利用されているバイト数を設定します.

パラメータ:
id - セクターIDを設定します.
length - セクターIDに対する利用バイト数を設定します.
例外:
InputException - 入力例外.

getSpaceLength

public final int getSpaceLength()
管理スペースファイル数を取得.

管理されているスペースファイル数を取得します.

戻り値:
int 管理されているスペースファイル数が返されます.

getSpaceNo

public final int[] getSpaceNo()
管理スペースファイルNo一覧を取得.

管理されているスペースファイルNo一覧を取得します.

戻り値:
int[] 管理されているスペースファイルNo一覧が返されます.

getMaxSector

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

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

戻り値:
int 最大セクター数が返されます.

getUseSector

public final int getUseSector()
利用可能セクター数を取得.

利用可能セクター数を取得します.

戻り値:
int 利用可能セクター数が返されます.

getMaxSpaceSector

public final int getMaxSpaceSector(int fileNo)
管理スペースファイルに対する最大セクター数を取得.

管理スペースファイルに対する最大セクター数を取得します.

パラメータ:
fileNo - 取得対象のファイルNoを設定します.
戻り値:
int ファイルNoに対する最大セクター数が返されます.

getUseSpaceSector

public final int getUseSpaceSector(int fileNo)
管理スペースファイルに対する利用可能セクター数を取得.

管理スペースファイルに対する利用可能セクター数を取得します.

パラメータ:
fileNo - 取得対象のファイルNoを設定します.
戻り値:
int ファイルNoに対する利用可能セクター数が返されます.

getName

public final java.lang.String getName()
管理スペースファイルに対するファイル名を取得.

管理スペースファイルに対するファイル名を取得します.

戻り値:
String 管理ファイル名が返されます.

getIndexName

public final java.lang.String getIndexName(int fileNo)
対象ファイルNoのインデックスファイルに対するファイル名を取得.

対象ファイルNoのインデックスファイルに対するファイル名を取得します.

パラメータ:
fileNo - 取得対象のファイルNoを設定します.
戻り値:
String ファイルNoに対するインデックスファイル名が返されます.

getSpaceName

public final java.lang.String getSpaceName(int fileNo)
対象ファイルNoのスペースファイルに対するファイル名を取得.

対象ファイルNoのスペースファイルに対するファイル名を取得します.

パラメータ:
fileNo - 取得対象のファイルNoを設定します.
戻り値:
String ファイルNoに対するスペースファイル名が返されます.

getSectorIDLength

public final int getSectorIDLength()
セクターID数を取得.

セクターID数を取得します.

戻り値:
int セクターID数が返されます.

getSectorID

public final int[] getSectorID()
セクターID一覧を取得.

セクターID一覧を取得します.

戻り値:
int[] セクターID一覧が返されます.

getSectorIDBySector

public final int getSectorIDBySector(int id)
セクターIDに対するセクター数を取得.

セクターIDに対するセクター数を取得します.

パラメータ:
id - セクターIDを設定します.
戻り値:
int セクターIDに対するセクター数が返されます.

getSectorIDByByte

public final long getSectorIDByByte(int id)
セクターIDに対するバイト数を取得.

セクターIDに対するバイト数を取得します.

パラメータ:
id - セクターIDを設定します.
戻り値:
long セクターIDに対するバイト数が返されます.

getSectorIDByUseByte

public final long getSectorIDByUseByte(int id)
セクターIDに対する利用バイト数を取得.

セクターIDに対する利用されているバイト数を取得します.

パラメータ:
id - セクターIDを設定します.
戻り値:
long セクターIDに対する利用バイト数が返されます.
情報が存在しない場合[0L]が返されます.

getInputStream

public final java.io.InputStream getInputStream(int id,
                                                int seek)
読み込み用オブジェクトを取得.

読み込み用オブジェクトを取得します.

パラメータ:
id - 読み込み対象のセクターIDを設定します.
seek - 読み込み開始位置を設定します.
戻り値:
InputStream 読み込み用オブジェクトが返されます.

getOutputStream

public final java.io.OutputStream getOutputStream(int id,
                                                  int seek)
書き込み用オブジェクトを取得.

書き込み用オブジェクトを取得します.

パラメータ:
id - 読み込み対象のセクターIDを設定します.
seek - 読み込み開始位置を設定します.
戻り値:
OutputStream 書き込み用オブジェクトが返されます.

getSynchronized

public final Synchronized getSynchronized()
同期オブジェクトを取得.

同期オブジェクトを取得します.

戻り値:
Synchronized 同期オブジェクトが返されます.

convertByteBySector

public static final int convertByteBySector(int size)
バイト値からセクター値へ変換.

バイト値からセクター値へ変換します.

パラメータ:
size - 変換対象のバイナリ値を設定します.
戻り値:
int セクター値へ変換されたサイズが返されます.

isOpen

public final boolean isOpen()
オープンチェック.

オープンされているかチェックします.

戻り値:
boolean オープンチェック結果が返されます.
[true]が返された場合、オープンされています.
[false]が返された場合、オープンされていません.