TableEntity インターフェイス

public interface TableEntity

テーブルのエンティティ型に必要なインターフェイスです。 インターフェイスは TableEntity 、共通エンティティ プロパティの getter メソッドと setter メソッド、およびプロパティ マップを使用してすべてのエンティティ プロパティのシリアル化と逆シリアル化を行うメソッドを宣言します。 プロパティの格納、取得、シリアル化、逆シリアル化をカスタマイズし、テーブル エンティティに追加のカスタム ロジックを提供するための を実装 TableEntity するクラスを作成します。

Storage クライアント ライブラリには、 の 2 つの実装が含まれており、 TableEntity 単純なプロパティ アクセスとシリアル化を提供します。

DynamicTableEntity は を TableEntity 実装し、プロパティを格納および取得するための単純なプロパティ マップを提供します。 DynamicTableEntityプロパティのサブセットのみが返される場合 (クエリ内の select 句など)、またはクエリが異なるプロパティを持つ複数のエンティティ型を返すことができる場合は、 を使用してエンティティ プロパティに簡単にアクセスします。 また、この型を使用すると、異種エンティティのテーブルに対して、プロパティ情報を損なうことなく一括更新を実行できます。

TableServiceEntity は、 および メソッドでリフレクション ベースのシリアル化と逆シリアル化の動作を使用する の実装 TableEntity です。 TableServiceEntity型と名前付けの規則に従うメソッドを持つ派生クラスは、自動的にシリアル化および逆シリアル化されます。

を実装 TableEntity するクラスは、 と の静的メソッドを呼び出すことによって、 の TableServiceEntity 自動リフレクション ベースのシリアル化と逆シリアル化の動作を利用できます。 クラスは、自動的にシリアル化および逆シリアル化される型と名前付け規則に従うメソッドを提供する必要があります。 特定のプロパティ名とデータ型に対して getter メソッドと setter メソッドの両方が見つかった場合、適切なメソッドが自動的に呼び出され、データがシリアル化または逆シリアル化されます。 リフレクション コードは、フォームのペアで getter メソッドと setter メソッドを検索します

および

ここで 、PropertyName はテーブル エンティティのプロパティ名であり、 は プロパティの EDM データ型と互換性のある Java 型です。 Java と同等のプロパティ型のマップについては、クラスの説明 TableServiceEntity の表を参照してください。 注釈を StoreAs 属性と共に適用して、プロパティ名規則に従わない getter メソッドと setter メソッドでリフレクションのプロパティ名を指定できます。 メソッド名と注釈の StoreAs 属性は、プロパティ名とリフレクションを照合する場合、大文字と小文字が区別されます。 注釈を Ignore 使用して、自動シリアル化と逆シリアル化のためにリフレクションによってメソッドが使用されないようにします。 "PartitionKey"、"RowKey"、"Timestamp"、および "Etag" という名前は予約されており、リフレクション メソッドを使用するサブクラスで注釈と共 StoreAs に設定すると無視されることに注意してください。

メソッドの概要

修飾子と型 メソッドと説明
String getEtag()

エンティティを確認する ETag 値を取得します。 この値は、テーブル エンティティが Microsoft Azure ストレージから最後に読み取られた後に変更されたかどうかを判断するために使用されます。 クライアントは、サービスでこの値を更新できません。

String getPartitionKey()

エンティティの PartitionKey 値を取得します。

String getRowKey()

エンティティの RowKey 値を取得します。

Date getTimestamp()

エンティティのタイムスタンプを取得します。 一方、サーバーは Timestamp の値を管理します。この値は変更できません。

void readEntity(HashMap<String, EntityProperty> properties, OperationContext opContext)

指定した properties パラメーターを使用して を実装する TableEntity オブジェクトのインスタンスを設定します。これは、プロパティ名とデータ型指定された値のマップを EntityProperty 表します。

void setEtag(String etag)

エンティティに対して確認する ETag 値を設定します。 この値は、テーブル エンティティが Microsoft Azure ストレージから最後に読み取られた後に変更されたかどうかを判断するために使用されます。 クライアントは、サービスでこの値を更新できません。

void setPartitionKey(String partitionKey)

エンティティの PartitionKey 値を設定します。

void setRowKey(String rowKey)

エンティティの RowKey 値を設定します。

void setTimestamp(Date timeStamp)

エンティティの Timestamp 値を設定します。 timestamp はサービスの読み取り専用プロパティであり、ユーザーが設定することはできません。

HashMap<String, EntityProperty> writeEntity(OperationContext opContext)

テーブル エンティティ インスタンスのシリアル化されたコンテンツを表すデータ型指定された値への EntityProperty プロパティ名のマップを返します。

メソッドの詳細

getEtag

public String getEtag()

エンティティを確認する ETag 値を取得します。 この値は、テーブル エンティティが Microsoft Azure ストレージから最後に読み取られた後に変更されたかどうかを判断するために使用されます。 クライアントは、サービスでこの値を更新できません。

Returns:

Stringエンティティの ETag を表す 。

getPartitionKey

public String getPartitionKey()

エンティティの PartitionKey 値を取得します。

Returns:

Stringエンティティの PartitionKey 値を表す 。

getRowKey

public String getRowKey()

エンティティの RowKey 値を取得します。

Returns:

Stringエンティティの RowKey 値を表す 。

getTimestamp

public Date getTimestamp()

エンティティのタイムスタンプを取得します。 一方、サーバーは Timestamp の値を管理します。この値は変更できません。

Returns:

エンティティの java.util.Date Timestamp 値を表す オブジェクト。

readEntity

public void readEntity(HashMap properties, OperationContext opContext)

指定した properties パラメーターを使用して を実装する TableEntity オブジェクトのインスタンスを設定します。これは、プロパティ名とデータ型指定された値のマップを EntityProperty 表します。

Parameters:

properties - java.util.HashMapテーブル エンティティ インスタンスのStringEntityProperty設定に使用する、 から データ型指定された値の 。
opContext - 操作の OperationContext 実行を追跡するために使用される オブジェクト。

Throws:

StorageException - 操作中にエラーが発生した場合。

setEtag

public void setEtag(String etag)

エンティティに対して確認する ETag 値を設定します。 この値は、テーブル エンティティが Microsoft Azure ストレージから最後に読み取られた後に変更されたかどうかを判断するために使用されます。 クライアントは、サービスでこの値を更新できません。

Parameters:

etag - Stringエンティティに設定する ETag を指定する 。

setPartitionKey

public void setPartitionKey(String partitionKey)

エンティティの PartitionKey 値を設定します。

Parameters:

partitionKey - Stringエンティティに設定する PartitionKey 値を指定する 。

setRowKey

public void setRowKey(String rowKey)

エンティティの RowKey 値を設定します。

Parameters:

rowKey - Stringエンティティに設定する RowKey 値を指定する 。

setTimestamp

public void setTimestamp(Date timeStamp)

エンティティの Timestamp 値を設定します。 timestamp はサービスの読み取り専用プロパティであり、ユーザーが設定することはできません。

Parameters:

timeStamp - java.util.Dateエンティティに設定する Timestamp 値を指定する 。

writeEntity

public HashMap writeEntity(OperationContext opContext)

テーブル エンティティ インスタンスのシリアル化されたコンテンツを表すデータ型指定された値への EntityProperty プロパティ名のマップを返します。

Parameters:

opContext - 操作の OperationContext 実行を追跡するために使用される オブジェクト。

Returns:

java.util.HashMapテーブル エンティティのStringプロパティをEntityProperty表す、データ型指定された値のプロパティ名の 。

Throws:

StorageException - 操作中にエラーが発生した場合。

適用対象