概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## ts.util.table
クラス AbstractTable<C,V>

    java.lang.Object
      ts.util.table.AbstractTable<C,V>

型パラメータ:
  `C` - このテーブルのカラム・キーのタイプ。
  `V` - このテーブルのカラム値のタイプ。

すべての実装されたインタフェース:
  java.io.Serializable, java.lang.Cloneable, MapAppender<C,V>, Table<C,V>

直系の既知のサブクラス:
  ArrayListTable, MapListTable

    public abstract class AbstractTable<C,V>

extends java.lang.Object
implements Table<C,V>, java.lang.Cloneable

`Table`インターフェイスをインプリメントするクラス のベースとなる抽象クラス。
テーブルを、`Header`オブジェクトと、レコードを 表すマップのコレクションによって構成されるものとして、それに基づいた 各メソッドの実装を提供する。

バージョン:
  $Revision: 1.3 $, $Date: 2011-08-01 15:29:32 $
作成者:
  佐藤隆之.
関連項目:
  直列化された形式

入れ子のクラスの概要
`protected class` | `AbstractTable.AbstractTableIndex` `AbstractTable`クラス用の インデックス・クラス。

コンストラクタの概要
`AbstractTable()` デフォルトコンストラクタ。
`AbstractTable(Header<C> header)` ヘッダを引数にとるコンストラクタ。
`AbstractTable(int initRecCapacity, int initColCapacity)` 初期レコード容量と初期カラム容量を引数にとるコンストラクタ。

メソッドの概要
`void` | `addTrigger(Trigger<C,V> trigger)` このテーブルにトリガを追加する。
`java.util.Map<C,V>` | `appendNew()` マップを作成して、このオブジェクト自身に追加する。
`java.util.Map<C,V>` | `appendNew(int initColCapacity)` マップを作成して、このオブジェクト自身に追加する。
`int` | `columnCount()` テーブルを構成するカラムの数を取得する。
`java.util.Enumeration<C>` | `columns()` このテーブルを構成するカラム・キーを列挙する。
`protected abstract Header<C>` | `createHeader(int initColCapacity)` カラム・キーを格納する`Header`オブジェクトを 作成する。
`protected abstract Record<C,V>` | `createRecord(int initColCapacity)` レコード・オブジェクトを作成する。
`protected abstract java.util.Collection<Record<C,V>>` | `createRecordCollection(int initRecCapacity)` レコードを表すマップを格納するコレクション・オブジェクトを作成する。
`java.util.List<java.util.Map<C,V>>` | `delete(java.util.Map<C,V> condition)` 条件に該当するレコードを、このテーブル・オブジェクトから削除する。
`void` | `deleteAll()` このテーブルに格納されているレコードを全て削除する。
`protected java.util.List<java.util.Map<C,V>>` | `deleteFromCollection(java.util.Collection<Record<C,V>> coll, java.util.Map<C,V> condition)` 指定されたコレクションの中から、条件に該当するレコードを削除する。
`boolean` | `exists(C column, V value)` 指定されたカラムの値が指定された値と一致するレコードが存在するかどうかを 確認する。
`boolean` | `exists(java.util.Map<C,V> condition)` 条件に該当するレコードが存在するかどうかを確認する。
`protected boolean` | `existsInCollection(java.util.Collection<Record<C,V>> coll, java.util.Map<C,V> condition)` 指定されたレコード・コレクションの要素に、条件に該当するレコードが存在する かどうかを確認する。
`Index<C,V>` | `getIndex(C... indexKeys)` 指定されたカラム・キーの配列をインデックス・キーとするインデックスを 取得する。
`protected Header<C>` | `header()` テーブルを構成するヘッダを取得する。
`int` | `recordCount()` テーブルに格納されているレコードの数を取得する。
`java.util.Map<C,V>` | `recordFirst()` このテーブルに格納されている最初のレコードを取得する。
`MapIterator<C,V>` | `records()` このテーブルに格納されているレコードを順に取り出すためのイテレータを取得 する。
`MapIterator<C,V>` | `records(MapComparator<C,V> comparator)` このテーブルに格納されているレコードをソートして、順に取り出すための イテレータを取得する。
`java.util.List<java.util.Map<C,V>>` | `select(C column, V value)` 指定されたカラムの値が指定された値と一致するレコードを格納したリストを を取得する。
`java.util.List<java.util.Map<C,V>>` | `select(java.util.Map<C,V> condition)` 条件に該当するレコードを格納したリストを取得する。
`java.util.Map<C,V>` | `selectFirst(C column, V value)` 指定されたカラムの値が指定された値と最初に一致したレコードを返す。
`java.util.Map<C,V>` | `selectFirst(java.util.Map<C,V> condition)` 条件に最初に該当したレコードを取得する。
`protected java.util.Map<C,V>` | `selectFirstFromCollection(java.util.Collection<Record<C,V>> coll, java.util.Map<C,V> condition)` 指定されたレコード・コレクションの要素の中から、条件に最初に該当した レコードを取得する。
`protected java.util.List<java.util.Map<C,V>>` | `selectFromCollection(java.util.Collection<Record<C,V>> coll, java.util.Map<C,V> condition)` 指定されたコレクションの要素の中から、条件に該当するレコードを取り出して リストに格納して返す。
`java.util.List<java.util.Map<C,V>>` | `update(java.util.Map<C,V> condition, java.util.Map<C,V> destination)` 条件に該当するレコードを、指定されたマップの内容で更新する。
`protected java.util.List<java.util.Map<C,V>>` | `updateInCollection(java.util.Collection<Record<C,V>> coll, java.util.Map<C,V> condition, java.util.Map<C,V> destination)` 指定されたコレクションの要素の中から、条件に該当するレコードを取り出して 内容を更新する。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

コンストラクタの詳細

### AbstractTable

    public AbstractTable()

  デフォルトコンストラクタ。

### AbstractTable

    public AbstractTable(int initRecCapacity,
                         int initColCapacity)

  初期レコード容量と初期カラム容量を引数にとるコンストラクタ。

  パラメータ:
    `initRecCapacity` - 初期レコード容量。
    `initColCapacity` - 初期カラム容量。
  例外:
    `java.lang.AssertionError` - 引数が負の値の場合（デバッグ・モードのみ）。

### AbstractTable

    public AbstractTable(Header<C> header)

  ヘッダを引数にとるコンストラクタ。

  パラメータ:
    `header` - ヘッダ・オブジェクト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

メソッドの詳細

### header

    protected Header<C> header()

  テーブルを構成するヘッダを取得する。

  戻り値:
    ヘッダ・オブジェクト。

### columnCount

    public int columnCount()

  テーブルを構成するカラムの数を取得する。

  定義:
    インタフェース `Table<C,V>` 内の `columnCount`
  戻り値:
    カラム数。

### recordCount

    public int recordCount()

  テーブルに格納されているレコードの数を取得する。

  定義:
    インタフェース `Table<C,V>` 内の `recordCount`
  戻り値:
    レコード数。

### columns

    public java.util.Enumeration<C> columns()

  このテーブルを構成するカラム・キーを列挙する。

  定義:
    インタフェース `Table<C,V>` 内の `columns`
  戻り値:
    カラム・キーの列挙オブジェクト。

### records

    public MapIterator<C,V> records()

  このテーブルに格納されているレコードを順に取り出すためのイテレータを取得 する。

  定義:
    インタフェース `Table<C,V>` 内の `records`
  戻り値:
    レコードのイテレータ。

### records

    public MapIterator<C,V> records(MapComparator<C,V> comparator)

  このテーブルに格納されているレコードをソートして、順に取り出すための イテレータを取得する。

  定義:
    インタフェース `Table<C,V>` 内の `records`
  パラメータ:
    `comparator` - ソートに使用するレコード比較オブジェクト。
  戻り値:
    レコードのイテレータ。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### recordFirst

    public java.util.Map<C,V> recordFirst()

  このテーブルに格納されている最初のレコードを取得する。

  定義:
    インタフェース `Table<C,V>` 内の `recordFirst`
  戻り値:
    このテーブルの最初のレコード。

### appendNew

    public java.util.Map<C,V> appendNew()

  マップを作成して、このオブジェクト自身に追加する。

  定義:
    インタフェース `MapAppender<C,V>` 内の `appendNew`
  戻り値:
    追加されたマップ。

### appendNew

    public java.util.Map<C,V> appendNew(int initColCapacity)

  マップを作成して、このオブジェクト自身に追加する。

  定義:
    インタフェース `MapAppender<C,V>` 内の `appendNew`
  パラメータ:
    `initColCapacity` - マップ要素の初期容量。
  戻り値:
    追加されたマップ。
  例外:
    `java.lang.AssertionError` - 引数が負の値の場合（デバッグ・モードのみ）。

### deleteAll

    public void deleteAll()

  このテーブルに格納されているレコードを全て削除する。

  定義:
    インタフェース `Table<C,V>` 内の `deleteAll`

### exists

    public boolean exists(C column,
                          V value)

  指定されたカラムの値が指定された値と一致するレコードが存在するかどうかを 確認する。

  定義:
    インタフェース `Table<C,V>` 内の `exists`
  パラメータ:
    `column` - 条件とするカラム・キー。
    `value` - 条件とするカラムの値。
  戻り値:
    該当するレコードが存在する場合は`true`を返す。

### exists

    public boolean exists(java.util.Map<C,V> condition)

  条件に該当するレコードが存在するかどうかを確認する。
  引数のマップに格納されているキーと値の組み合わせと同じ組み合わせを持つ レコードを検索し、1件でも存在した場合は`true`を返す。
  引数のマップのキーの中に、このテーブルのカラム・キーに存在しないものが あった場合は、常に`false`を返す。
  反対に、このテーブルのカラム・キーの中に、引数のマップに存在しないキーを 持っていても、それらは無視される。それ以外のカラム・キーの値が等しい レコードがあれば`true`を返す。
  引数のマップが空だった場合は条件なしとして、このテーブルにレコードが1件 でもあった場合は`true`を返す。

  定義:
    インタフェース `Table<C,V>` 内の `exists`
  パラメータ:
    `condition` - 条件のカラムとその値を格納したマップ・オブジェクト。
  戻り値:
    該当するレコードが存在する場合は`true`を返す。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### existsInCollection

    protected boolean existsInCollection(java.util.Collection<Record<C,V>> coll,
                                         java.util.Map<C,V> condition)

  指定されたレコード・コレクションの要素に、条件に該当するレコードが存在する かどうかを確認する。

  パラメータ:
    `coll` - レコード・コレクション。
    `condition` - 条件のカラム・キーとその値を格納したマップ・オブジェクト。
  戻り値:
    該当するレコードが存在する場合は`true`を返す。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### selectFirst

    public java.util.Map<C,V> selectFirst(C column,
                                          V value)

  指定されたカラムの値が指定された値と最初に一致したレコードを返す。

  定義:
    インタフェース `Table<C,V>` 内の `selectFirst`
  パラメータ:
    `column` - 条件とするカラム・キー。
    `value` - 条件とするカラムの値。
  戻り値:
    指定されたカラムの値と最初に一致したレコード。

### selectFirst

    public java.util.Map<C,V> selectFirst(java.util.Map<C,V> condition)

  条件に最初に該当したレコードを取得する。
  引数のマップに格納されているキーと値の組み合わせと同じ組み合わせを持つ レコードを検索し、その最初のレコードを返す。
  該当するレコードが1件も存在しない場合はヌルを返す。
  引数のマップのキーの中に、このテーブルのカラム・キーに存在しないものが あった場合は、全てのレコードが該当しなくなり、ヌルが返される。
  反対に、このテーブルのカラム・キーの中に、引数のマップに存在しないキーを 持っていても、それらは無視される。それ以外のカラム・キーの値が等しい レコードがあれば、その最初のレコードを返す。
  引数のマップが空だった場合は条件なしとして、このテーブルに格納されている 最初のレコードを返す。

  定義:
    インタフェース `Table<C,V>` 内の `selectFirst`
  パラメータ:
    `condition` - 条件のカラムとその値を格納したマップ・オブジェクト。
  戻り値:
    指定されたカラムの値と一致するレコード。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### selectFirstFromCollection

    protected java.util.Map<C,V> selectFirstFromCollection(java.util.Collection<Record<C,V>> coll,
                                                           java.util.Map<C,V> condition)

  指定されたレコード・コレクションの要素の中から、条件に最初に該当した レコードを取得する。

  パラメータ:
    `coll` - レコード・コレクション。
    `condition` - 条件のカラム・キーとその値を格納したマップ・オブジェクト。
  戻り値:
    引数のマップに格納された条件に最初に該当したレコード。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### select

    public java.util.List<java.util.Map<C,V>> select(C column,
                                                     V value)

  指定されたカラムの値が指定された値と一致するレコードを格納したリストを を取得する。

  定義:
    インタフェース `Table<C,V>` 内の `select`
  パラメータ:
    `column` - 条件とするカラム・キー。
    `value` - 条件とするカラムの値。
  戻り値:
    指定されたカラムの値と一致するレコードを格納したリスト。

### select

    public java.util.List<java.util.Map<C,V>> select(java.util.Map<C,V> condition)

  条件に該当するレコードを格納したリストを取得する。
  引数のマップに格納されているキーと値の組み合わせと同じ組み合わせを持つ レコードを検索し、そのレコードを格納したリストを返す。
  該当するレコードが1件も存在しない場合は空のリストを返す。
  引数のマップのキーの中に、このテーブルのカラム・キーに存在しないものが あった場合は、全てのレコードが該当しなくなり、空のリストを返す。
  反対に、このテーブルのカラム・キーの中に、引数のマップに存在しないキーを 持っていても、それらは無視される。それ以外のカラム・キーの値が等しい レコードがあれば、それらをリストに格納して返す。
  引数のマップが空だった場合は条件なしとして、このテーブルに格納されている 全てのレコードを格納したリストを返す。

  定義:
    インタフェース `Table<C,V>` 内の `select`
  パラメータ:
    `condition` - 条件のカラムとその値を格納したマップ・オブジェクト。
  戻り値:
    指定されたカラムの値と一致するレコードを格納したリスト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### selectFromCollection

    protected java.util.List<java.util.Map<C,V>> selectFromCollection(java.util.Collection<Record<C,V>> coll,
                                                                      java.util.Map<C,V> condition)

  指定されたコレクションの要素の中から、条件に該当するレコードを取り出して リストに格納して返す。

  パラメータ:
    `coll` - レコード・コレクション。
    `condition` - 条件のカラム・キーとその値を格納したマップ・オブジェクト。
  戻り値:
    引数のマップに格納された条件に該当するレコードを格納したリスト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### delete

    public java.util.List<java.util.Map<C,V>> delete(java.util.Map<C,V> condition)

  条件に該当するレコードを、このテーブル・オブジェクトから削除する。
  引数のマップに格納されているキーと値の組み合わせと同じ組み合わせを持つ レコードを検索して、このテーブルから削除する。
  削除されたレコードは、リストに格納されて戻り値として返される。
  引数のマップのキーの中に、このテーブルのカラム・キーに存在しないものが あった場合は、全てのレコードが条件に該当しなくなり、1件も削除されない。
  反対に、このテーブルのカラム・キーの中に、引数のマップに存在しないキーを 持っていても、それらは無視される。それ以外のカラム・キーの値が等しい レコードがあれば、それらをこのテーブルから削除し、リストに格納して返す。
  引数のマップが空だった場合は条件なしとして、このテーブルに格納されている 全てのレコードを削除し、リストに格納して返す。

  定義:
    インタフェース `Table<C,V>` 内の `delete`
  パラメータ:
    `condition` - 条件とするカラムとその値を格納したマップ・オブジェクト。
  戻り値:
    削除されたレコードを格納したリスト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### deleteFromCollection

    protected java.util.List<java.util.Map<C,V>> deleteFromCollection(java.util.Collection<Record<C,V>> coll,
                                                                      java.util.Map<C,V> condition)

  指定されたコレクションの中から、条件に該当するレコードを削除する。

  パラメータ:
    `coll` - レコード・コレクション。
    `condition` - 条件のカラム・キーとその値を格納したマップ・オブジェクト。
  戻り値:
    削除されたレコードを格納したリスト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### update

    public java.util.List<java.util.Map<C,V>> update(java.util.Map<C,V> condition,
                                                     java.util.Map<C,V> destination)

  条件に該当するレコードを、指定されたマップの内容で更新する。
  第1引数のマップに格納されているキーと値の組み合わせと同じ組み合わせを持つ レコードを検索して、その中の内容を第2引数のマップの内容で更新する。
  更新されたレコードは、新たに作成されたテーブル・オブジェクトに格納されて 戻り値として返される。
  引数のマップのキーの中に、このテーブルのカラム・キーに存在しないものが あった場合は、全てのレコードが条件に該当しなくなり、1件も更新されない。
  反対に、このテーブルのカラム・キーの中に、引数のマップに存在しないキーを 持っていても、それらは無視される。それ以外のカラム・キーの値が等しい レコードがあれば、それらの内容を更新し、リストに格納して返す。
  引数のマップが空だった場合は条件なしとして、このテーブルに格納されている 全てのレコードの内容を更新し、リストに格納して返す。

  定義:
    インタフェース `Table<C,V>` 内の `update`
  パラメータ:
    `condition` - 条件とするカラムとその値を格納したマップ・オブジェクト。
    `destination` - 更新するカラムとその値を格納したマップ・オブジェクト。
  戻り値:
    更新されたレコードを格納したリスト。

### updateInCollection

    protected java.util.List<java.util.Map<C,V>> updateInCollection(java.util.Collection<Record<C,V>> coll,
                                                                    java.util.Map<C,V> condition,
                                                                    java.util.Map<C,V> destination)

  指定されたコレクションの要素の中から、条件に該当するレコードを取り出して 内容を更新する。
  更新したレコードは、リストに格納して返す。

  パラメータ:
    `coll` - レコード・コレクション。
    `condition` - 条件のカラム・キーとその値を格納したマップ・オブジェクト。
    `destination` - 更新するカラム・キーとその値を格納した マップ・オブジェクト。
  戻り値:
    削除されたレコードを格納したリスト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### getIndex

    public Index<C,V> getIndex(C... indexKeys)

  指定されたカラム・キーの配列をインデックス・キーとするインデックスを 取得する。
  該当するインデックスが存在しない場合は、新しくインデックスを作成して 返す。

  定義:
    インタフェース `Table<C,V>` 内の `getIndex`
  パラメータ:
    `indexKeys` - インデックス・キーの配列。
  戻り値:
    指定されたインデックス・キーを持つインデックス・オブジェクト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。
    `java.lang.IllegalArgumentException` - 引数の配列が空の場合。

### addTrigger

    public void addTrigger(Trigger<C,V> trigger)

  このテーブルにトリガを追加する。

  定義:
    インタフェース `Table<C,V>` 内の `addTrigger`
  パラメータ:
    `trigger` - トリガ・オブジェクト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグ・モードのみ）。

### createHeader

    protected abstract Header<C> createHeader(int initColCapacity)

  カラム・キーを格納する`Header`オブジェクトを 作成する。

  パラメータ:
    `initColCapacity` - 初期カラム容量。
  戻り値:
    カラム・キーを格納する`Header` オブジェクト。

### createRecordCollection

    protected abstract java.util.Collection<Record<C,V>> createRecordCollection(int initRecCapacity)

  レコードを表すマップを格納するコレクション・オブジェクトを作成する。

  パラメータ:
    `initRecCapacity` - 初期レコード容量。
  戻り値:
    レコードを表すマップを格納するコレクション・オブジェクト。

### createRecord

    protected abstract Record<C,V> createRecord(int initColCapacity)

  レコード・オブジェクトを作成する。

  パラメータ:
    `initColCapacity` - 初期カラム容量。
  戻り値:
    レコード・オブジェクト。

概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Copyright (C) SATOH Takayuki All Rights Reserved.