Class EachInstanceDataLocalizationStrategy

java.lang.Object
org.iplass.mtp.entity.definition.DataLocalizationStrategy
org.iplass.mtp.entity.definition.l10n.EachInstanceDataLocalizationStrategy
All Implemented Interfaces:
Serializable

public class EachInstanceDataLocalizationStrategy extends DataLocalizationStrategy

各言語毎の値を、別インスタンス(レコード)として保存するDataLocalizationStrategy。

この戦略を指定されたEntityは、言語判別用の文字列型プロパティが定義されている必要がある。 各言語毎の値は、その"言語判別用プロパティ"にそれぞれの言語名が設定された形で別インスタンス(レコード)として作成、検索される。 EQL実行時には、自動的にその"言語判別用プロパティ"が条件に設定される。 "言語判別用プロパティ"の値には、IETF BCP 47(RFC5646,RFC4647)形式での言語表現が格納される。 DataLocalizationStrategyのlanguagesに設定されてない言語の場合は、"言語判別用プロパティ" is nullが条件として設定される。
言語単位で、データの件数が異なる場合などに利用することを想定。
この戦略を利用する場合の注意点として、UniqueIndexが利用しづらくなる点。言語単位に複数のレコードが追加されるため。 また、AutoNumber型プロパティには言語単位で別のIDが付与される。

See Also:
  • Constructor Details

    • EachInstanceDataLocalizationStrategy

      public EachInstanceDataLocalizationStrategy()
  • Method Details

    • getLanguagePropertyName

      public String getLanguagePropertyName()
    • setLanguagePropertyName

      public void setLanguagePropertyName(String languagePropertyName)
      Entityに定義される"言語判別用プロパティ"(文字列型)のプロパティ名を設定。 
      Parameters:
      languagePropertyName -