All Downloads are FREE. Search and download functionalities are using the official Maven repository.

nablarch.test.FixedBusinessDateProvider Maven / Gradle / Ivy

The newest version!
package nablarch.test;

import java.util.Map;

import nablarch.core.date.BusinessDateProvider;
import nablarch.core.repository.initialization.Initializable;
import nablarch.core.util.annotation.Published;

/**
 * 固定業務日付を提供するクラス。
* 固定業務日付は、{@link #setFixedDate(java.util.Map)}で設定する。
* デフォルト区分は、{@link #setDefaultSegment(String)}で設定する。 * @author Miki Habu */ @Published(tag = "architect") public class FixedBusinessDateProvider implements BusinessDateProvider, Initializable { /** * 固定日付 */ private Map fixedDate; /** * デフォルト区分 */ private String defaultSegment; /** * 固定日付を設定する。 * * @param fixedDate 区分をキー、日付を値としたマップ */ public void setFixedDate(Map fixedDate) { this.fixedDate = fixedDate; } /** * デフォルト区分を設定する。 * @param defaultSegment デフォルト区分 */ public void setDefaultSegment(String defaultSegment) { this.defaultSegment = defaultSegment; } /** * {@inheritDoc}
*/ public String getDate() { return getDate(defaultSegment); } /** * {@inheritDoc}
*/ public Map getAllDate() { // 固定日付が初期化されていなければ例外 if (fixedDate == null) { throw new IllegalStateException("fixed date was not initialized."); } return fixedDate; } /** * {@inheritDoc}
*/ public String getDate(String segment) { // 固定日付が初期化されていなければ例外 if (fixedDate == null) { throw new IllegalStateException("fixed date was not initialized."); } // 日付の取得 String ret = fixedDate.get(segment); // 日付が取得できなければ例外 if (ret == null || ret.length() == 0) { throw new IllegalStateException(String.format("segment was not found. segment:%s.", segment)); } return ret; } /** * 本クラスは固定の業務日付を提供するため、このメソッドを使用して業務日付を設定することはできない。
* 固定日付を設定する場合は、{@link #setFixedDate(java.util.Map)}を使用すること。
* * @param segment 区分値 * @param date 日付 */ public void setDate(String segment, String date) { throw new UnsupportedOperationException("fixed date can not change."); } /** * {@inheritDoc} * nablarch.core.date.BasicBusinessDateProviderと * コンポーネント設定ファイルの互換性を持たせるため実装。 */ public void initialize() { } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy