View Javadoc
1   package com.github.mygreen.cellformatter;
2   
3   import java.util.Locale;
4   
5   
6   /**
7    * セルのフォーマッタの共通インタフェース
8    *
9    * @version 0.10
10   * @author T.TSUCHIE
11   *
12   */
13  public abstract class CellFormatter {
14  
15      /**
16       * セルの値をフォーマットする
17       * @param cell フォーマット対象のセル。
18       * @return フォーマットした結果。
19       * @throws IllegalArgumentException {@literal cell == null.}
20       */
21      public CellFormatResult format(final CommonCell cell) {
22          return format(cell, Locale.getDefault());
23      }
24  
25      /**
26       * セルの値をロケールを指定してフォーマットする
27       * @param cell フォーマット対象のセル。
28       * @param locale ロケール。指定しない場合は、実行環境のロケールが設定される。
29       * @return フォーマットした結果。
30       * @throws IllegalArgumentException {@literal cell == null.}
31       */
32      public abstract CellFormatResult format(final CommonCell cell, final Locale locale);
33  
34      /**
35       * 書式を取得する
36       * @since 0.10
37       * @return フォーマッタの書式
38       */
39      public String getPattern() {
40          return getPattern(Locale.getDefault());
41      }
42  
43      /**
44       * ロケールを指定して書式を取得する
45       * @since 0.10
46       * @param locale ロケール。指定しない場合は、実行環境のロケールが設定される。
47       * @return フォーマッタの書式
48       */
49      public abstract String getPattern(final Locale locale);
50  
51  
52  }