woolpack.typeconvert
クラス TypeConvertUtils

java.lang.Object
  上位を拡張 woolpack.typeconvert.TypeConvertUtils

public final class TypeConvertUtils
extends Object

型変換のユーティリティです。 型推論で表記を簡略するためのスタティックメソッドと変数を含みます。


フィールドの概要
static Fn<ConvertContext,Void,RuntimeException> COLLECTION_CONVERTER
          デフォルトの一覧型変換の関数です。
static Fn<ConvertContext,Void,RuntimeException> DATE_FORMATTER
          デフォルトの日付フォーマッタです。
static Fn<ConvertContext,Void,RuntimeException> DATE_PARSER
          デフォルトの日付パーサです。
static Fn<ConvertContext,Class,RuntimeException> GET_FROM_TYPE
          ConvertContext.getValue()Object.getClass()を返す関数です。
static Fn<ConvertContext,String,RuntimeException> GET_PROPERTY_NAME
          ConvertContext.getPropertyName()を返す関数です。
static Fn<ConvertContext,Class,RuntimeException> GET_TO_TYPE
          ConvertContext.getToType()を返す関数です。
static Fn<ConvertContext,Void,RuntimeException> NUMBER_FORMATTER
          デフォルトの数値フォーマッタです。
static Fn<ConvertContext,Void,RuntimeException> NUMBER_PARSER
          デフォルトの数値パーサです。
static Fn<ConvertContext,Void,RuntimeException> SIMPLE_CONVERTER
          デフォルト単純型変換の関数です。
 
メソッドの概要
static Fn<ConvertContext,Void,RuntimeException> getCollectionConverter(Fn<ConvertContext,Void,RuntimeException> dateFormatter, Fn<ConvertContext,Void,RuntimeException> dateParser, Fn<ConvertContext,Void,RuntimeException> numberFormatter, Fn<ConvertContext,Void,RuntimeException> numberParser, Fn<Object,Boolean,RuntimeException> booleanConverter)
          一覧型変換の関数を生成します。
static Fn<ConvertContext,Void,RuntimeException> getSimpleConverter(Fn<ConvertContext,Void,RuntimeException> dateFormatter, Fn<ConvertContext,Void,RuntimeException> dateParser, Fn<ConvertContext,Void,RuntimeException> numberFormatter, Fn<ConvertContext,Void,RuntimeException> numberParser, Fn<Object,Boolean,RuntimeException> booleanConverter, Fn<ConvertContext,Void,RuntimeException> successorFn)
          単純型変換の関数を生成します。
static Fn<Object,BeanMap,RuntimeException> toMap()
          BeanをMapに変換する関数を生成します。
static Fn<Object,BeanMap,RuntimeException> toMap(Fn<ConvertContext,Void,RuntimeException> fn)
          BeanをMapに変換する関数を生成します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

GET_TO_TYPE

public static final Fn<ConvertContext,Class,RuntimeException> GET_TO_TYPE
ConvertContext.getToType()を返す関数です。


GET_FROM_TYPE

public static final Fn<ConvertContext,Class,RuntimeException> GET_FROM_TYPE
ConvertContext.getValue()Object.getClass()を返す関数です。


GET_PROPERTY_NAME

public static final Fn<ConvertContext,String,RuntimeException> GET_PROPERTY_NAME
ConvertContext.getPropertyName()を返す関数です。


DATE_FORMATTER

public static final Fn<ConvertContext,Void,RuntimeException> DATE_FORMATTER
デフォルトの日付フォーマッタです。 以下のパターンを成功するまで順に試行します。
  1. プロパティ名が正規表現「^.*date_?time$」に合致する場合はyyyyMMddHHmmss
  2. プロパティ名が正規表現「^.*time$」に合致する場合はHHmmss
  3. 上記以外の場合はyyyyMMdd

適用しているデザインパターン:FnのCompositeを生成するBuilder。


DATE_PARSER

public static final Fn<ConvertContext,Void,RuntimeException> DATE_PARSER
デフォルトの日付パーサです。以下のパターンを成功するまで順に試行します。
  1. yyyy-MM-dd
  2. yyyy-MM-dd HH:mm:ss
  3. yyyy-MM-dd HH:mm:ss z
  4. yyyyMMddHHmmss
  5. yyyyMMdd
  6. yy/MM/dd(DateFormat.getDateInstance(SHORT))
  7. yyyy/MM/dd(DateFormat.getDateInstance(MEDIUM))
  8. yyyy/MM/dd HH:mm:ss(DateFormat.getDateTimeInstance(MEDIUM, MEDIUM))
  9. HH:mm:ss(DateFormat.getTimeInstance(MEDIUM))
  10. yyyy/MM/dd(DateFormat.getDateInstance(LONG))
  11. yyyy/MM/dd HH:mm:ss z(DateFormat.getDateTimeInstance(LONG, LONG))
  12. HH:mm:ss z(DateFormat.getTimeInstance(LONG))
  13. yy/MM/dd HH:mm(DateFormat.getDateTimeInstance(SHORT, SHORT))
  14. HH:mm(DateFormat.getTimeInstance(SHORT))
  15. yyyy年MM月dd日(DateFormat.getDateInstance(FULL))
  16. yyyy年MM月dd日 HH時mm分ss秒 z(DateFormat.getDateTimeInstance(FULL, FULL))
  17. HH時mm分ss秒 z(DateFormat.getTimeInstance(FULL))

適用しているデザインパターン:FnのCompositeを生成するBuilder。


NUMBER_FORMATTER

public static final Fn<ConvertContext,Void,RuntimeException> NUMBER_FORMATTER
デフォルトの数値フォーマッタです。DecimalFormatを引数なしコンストラクタで使用します。


NUMBER_PARSER

public static final Fn<ConvertContext,Void,RuntimeException> NUMBER_PARSER
デフォルトの数値パーサです。DecimalFormatを引数なしコンストラクタで使用します。


SIMPLE_CONVERTER

public static final Fn<ConvertContext,Void,RuntimeException> SIMPLE_CONVERTER
デフォルト単純型変換の関数です。


COLLECTION_CONVERTER

public static final Fn<ConvertContext,Void,RuntimeException> COLLECTION_CONVERTER
デフォルトの一覧型変換の関数です。

メソッドの詳細

getSimpleConverter

public static Fn<ConvertContext,Void,RuntimeException> getSimpleConverter(Fn<ConvertContext,Void,RuntimeException> dateFormatter,
                                                                          Fn<ConvertContext,Void,RuntimeException> dateParser,
                                                                          Fn<ConvertContext,Void,RuntimeException> numberFormatter,
                                                                          Fn<ConvertContext,Void,RuntimeException> numberParser,
                                                                          Fn<Object,Boolean,RuntimeException> booleanConverter,
                                                                          Fn<ConvertContext,Void,RuntimeException> successorFn)
単純型変換の関数を生成します。
適用しているデザインパターン:FnのCompositeを生成するBuilder。

パラメータ:
dateFormatter - 日付フォーマッタ。
dateParser - 日付パーサ。
numberFormatter - 数値フォーマッタ。
numberParser - 数値パーサ。
booleanConverter - 真偽値へのコンバータ。
successorFn - この変換器で変換できない場合の委譲先。
戻り値:
関数。

getCollectionConverter

public static Fn<ConvertContext,Void,RuntimeException> getCollectionConverter(Fn<ConvertContext,Void,RuntimeException> dateFormatter,
                                                                              Fn<ConvertContext,Void,RuntimeException> dateParser,
                                                                              Fn<ConvertContext,Void,RuntimeException> numberFormatter,
                                                                              Fn<ConvertContext,Void,RuntimeException> numberParser,
                                                                              Fn<Object,Boolean,RuntimeException> booleanConverter)
一覧型変換の関数を生成します。
適用しているデザインパターン:FnのCompositeを生成するBuilder。

パラメータ:
dateFormatter - 日付フォーマッタ。
dateParser - 日付パーサ。
numberFormatter - 数値フォーマッタ。
numberParser - 数値パーサ。
booleanConverter - 真偽値へのコンバータ。
戻り値:
関数。

toMap

public static Fn<Object,BeanMap,RuntimeException> toMap()
BeanをMapに変換する関数を生成します。

戻り値:
関数。

toMap

public static Fn<Object,BeanMap,RuntimeException> toMap(Fn<ConvertContext,Void,RuntimeException> fn)
BeanをMapに変換する関数を生成します。

パラメータ:
fn - 型を変換する関数。
戻り値:
関数。


Copyright (C) 2006-2007 Takahiro Nakamura. All rights reserved.