モジュール jp.ecuacion.splib.web

クラス SplibGeneralService

java.lang.Object
jp.ecuacion.splib.web.service.SplibGeneralService
直系の既知のサブクラス:
SplibGeneral1FormService, SplibGeneral2FormsService, SplibGeneralDoNothingService, SplibGeneralJpaService

public abstract class SplibGeneralService extends Object
  • コンストラクタの詳細

    • SplibGeneralService

      public SplibGeneralService()
  • メソッドの詳細

    • throwWarning

      protected void throwWarning(Set<String> confirmedWarningMessageSet, Locale locale, String msgId) throws jp.ecuacion.lib.core.exception.checked.AppWarningException
      例外:
      jp.ecuacion.lib.core.exception.checked.AppWarningException
    • throwWarning

      protected void throwWarning(Set<String> confirmedWarningMessageSet, Locale locale, String buttonName, String msgId, String... params) throws jp.ecuacion.lib.core.exception.checked.AppWarningException
      例外:
      jp.ecuacion.lib.core.exception.checked.AppWarningException
    • getLockFileVersion

      protected String getLockFileVersion(File lockFile) throws IOException
      lock fileの最終更新時刻を取得。楽観的排他制御を行うために使用。
      戻り値:
      ファイルの更新時刻を文字列形式で保持。 yyyy-mm-dd-hh-mi-ss.SSSの形式とし、timezoneが違う場所での処理でも問題にならないよう、常にUTCでの時刻とする。
      例外:
      IOException
    • fileLock

      protected void fileLock(File lockFile, String version, SplibGeneralForm form) throws Exception
      lock fileによる悲観的排他制御を実施したい場合に使用できるutility method。

      lockFileとして使用するpathを指定したFileオブジェクトを渡せば、あとは諸々やってくれる。 exclusiveLockActivatedByLockFile() は、abstractにして実装必須にすると面倒(fileによるロックの頻度は高くない)なので、 本クラスにて処理なしの通常メソッドとして実装しておき、使用する場合はそれをoverride、とする。

      パラメータ:
      version - ファイルの更新時刻を文字列形式で保持。getLockFileVersion(File lockFile)の戻り値の形式。
      例外:
      Exception
    • exclusiveLockActivatedByLockFile

      protected void exclusiveLockActivatedByLockFile(File lockFile, SplibGeneralForm form) throws Exception
      ロックを獲得できた場合に実行したい内容を記載。 file lockを使用する場合は本メソッドをoverride。 子クラスで実装必須になると面倒(ファイルロック使用時以外は使用しないので)なことからabstractにはしない。
      例外:
      Exception
    • localDate

      protected LocalDate localDate(String date)
      record内のlocalDate項目(String)をLocalDate形式で取得。
    • getParams

      public jp.ecuacion.splib.core.container.DatetimeFormatParameters getParams()
      offsetはlogin画面でのonload時に呼ばれるため、login画面を開いた状態で放置した場合は値がnullでエラーになる。
    • prepareForm

      public void prepareForm(List<SplibGeneralForm> allFormList, org.springframework.security.core.userdetails.UserDetails loginUser)
      SplibGeneralServivceでは、メソッドは定義しておくものの中身は実装しない。