|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.batch.springsupport.init.JobExecutor
public class JobExecutor
ジョブ起動用メインクラス。
本クラスのexecute()
メソッドで同期型ジョブの実行を、
work()
メソッドで非同期型ジョブの実行を行う。
また、ジョブ起動前のJobBeanFactory
の生成や、
ジョブ起動後の破棄処理を行う。
ジョブBean定義ファイルにてuseCache
をTRUE
に設定した
場合、非同期実行の際に生成されたJobBeanFactory
はキャッシュされ、
同じジョブが実行された場合はキャッシュしたJobBeanFactory
を
再利用する。
フィールドの概要 | |
---|---|
private JobContext.START_TYPE |
async
非同期起動有無フラグ。 |
protected static java.lang.String |
DATA_ACCESS_CONTEXT_DEFINITION_NAME
データアクセス用Bean定義ファイル名。 |
private static java.lang.String |
ENDFILECHECKER_NAME
ジョブ終了監視用Bean名。 |
private static java.lang.String |
EXITCODE_MAP
デフォルト終了コード。 |
private static java.lang.String |
FRAMEWORK_BEAN_DEFINITION_NAME
フレームワークBean定義ファイル名。 |
private ConfigurableApplicationContext |
frameworkFactory
フレームワークBeanFactory。 |
private static java.lang.String |
JOBCONTEXT_NAME
ジョブコンテキストBean名。 |
private java.util.Map<java.lang.String,java.lang.String> |
jobExitCodeMap
デフォルトのジョブ終了コードのマップ。 |
private java.util.Map<java.lang.String,ConfigurableApplicationContext> |
jobFactoryMap
ジョブBeanFactoryのキャッシュ用Map。 |
private static java.lang.String |
JOBMANAGER_NAME
ジョブマネージャBean名。 |
private java.lang.String |
jobParametersSplitStr
ジョブパラメータの区切り文字。 |
protected static java.lang.String |
JOBSTATUS_NAME
ジョブ状況用Bean名。 |
protected static java.lang.String |
JOBSTATUS_SUMMARIZER
処理状態のサマライザ。 |
private static Log |
log
ログインスタンス。 |
protected static java.lang.String |
MONITORABLE_JOBSTATUS_NAME
モニター用ジョブ状況用Bean名。 |
private SupportProcessor |
postJobProcessor
ジョブ後処理用インスタンス。 |
private SupportProcessor |
preJobProcessor
ジョブ前処理用インスタンス。 |
private static java.lang.String |
THREAD_POOL_DEFINITION_NAME
スレッドプール用Bean定義ファイル名。 |
private ThrowableHandler |
throwableHandler
Throwableハンドラ。 |
private static java.lang.String |
THROWABLEHANDLER_NAME
Throwableハンドラ用Bean名。 |
protected static java.lang.String |
USE_MONITORABLE
ジョブ監視用Bean名。 |
protected static java.lang.String |
USECACHE_NAME
キャッシュ有無用Bean名。 |
protected static java.lang.String |
VALIDATE_DEFINITION_NAME
スレッドプール用Bean定義ファイル名。 |
コンストラクタの概要 | |
---|---|
protected |
JobExecutor()
コンストラクタ。 |
protected |
JobExecutor(java.lang.String[] beanFileName)
コンストラクタ。 |
メソッドの概要 | |
---|---|
private void |
checkJobInfo(JobInfo jobInfo)
英数字文字列であるかをチェックする。 |
void |
destroy()
作成した BeanFactory の破棄処理を行う。 |
protected JobStatus |
execute(JobInfo jobInfo)
ジョブを実行する。 |
protected ConfigurableApplicationContext |
getFrameworkFactory()
フレームワークBeanFactoryの取得 |
protected ConfigurableApplicationContext |
getJobBeanFactory(JobInfo jobInfo)
ジョブ毎の BeanFactory を取得するメソッド。 |
protected JobContext |
getJobContext(ConfigurableApplicationContext jobFactory,
JobInfo jobInfo)
ジョブコンテキストの取得。 |
protected Workable<WorkUnit> |
getJobManager(ConfigurableApplicationContext jobFactory)
ジョブマネージャを取得する。 |
protected JobStatus |
getJobStatus(ConfigurableApplicationContext jobFactory,
JobInfo jobInfo)
ジョブ処理状態格納用 JobStatus を取得する。 |
protected WorkUnit |
getWorkUnit(JobContext jobContext)
WorkUnit を生成し、ジョブコンテキストを設定する。 |
private void |
initDefaultJobExitCodeMap()
ジョブ終了コードのマップを初期化する。 |
protected void |
initEndFileChecker(JobStatus jobStatus,
JobContext jobContext)
終了ファイル監視スレッドの初期化を行う。 |
protected boolean |
isAsync()
非同期ジョブ起動であるかを評価する。 |
protected void |
printEndLog(JobStatus jobStatus)
ジョブの開始ログを出力する。 |
protected void |
printStartLog(JobInfo jobInfo)
ジョブの開始ログを出力する。 |
protected void |
removeJobStatusFromEndFileChecker(JobStatus jobStatus,
JobContext jobContext)
終了ファイル監視スレッドに登録されたジョブの処理状態を削除する。 |
void |
setAsync(boolean async)
非同期起動有無フラグを設定する。 |
protected void |
setDefaultJobExitCode(JobStatus jobStatus)
ジョブ終了コードを設定する。 |
void |
setJobParametersSplitStr(java.lang.String jobParametersSplitStr)
ジョブパラメータの区切り文字を設定する。 |
void |
setPostJobProcessor(SupportProcessor postJobProcessor)
ジョブ起動前処理を設定する。 |
void |
setPreJobProcessor(SupportProcessor preJobProcessor)
ジョブ起動後処理を設定する。 |
void |
setThrowableHandler(ThrowableHandler throwableHandler)
Throwableハンドラを設定する。 |
void |
work(AbstractJobControlInfo jobInfo,
JobStatus jobStatus)
非同期型ジョブ起動時のワーカメソッド。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
private static final Log log
private static final java.lang.String FRAMEWORK_BEAN_DEFINITION_NAME
protected static final java.lang.String DATA_ACCESS_CONTEXT_DEFINITION_NAME
private static final java.lang.String THREAD_POOL_DEFINITION_NAME
protected static final java.lang.String VALIDATE_DEFINITION_NAME
protected static final java.lang.String USECACHE_NAME
private static final java.lang.String JOBCONTEXT_NAME
private static final java.lang.String JOBMANAGER_NAME
protected static final java.lang.String JOBSTATUS_NAME
protected static final java.lang.String MONITORABLE_JOBSTATUS_NAME
private static final java.lang.String ENDFILECHECKER_NAME
protected static final java.lang.String USE_MONITORABLE
protected static final java.lang.String JOBSTATUS_SUMMARIZER
private static final java.lang.String EXITCODE_MAP
private static final java.lang.String THROWABLEHANDLER_NAME
private ConfigurableApplicationContext frameworkFactory
private java.util.Map<java.lang.String,ConfigurableApplicationContext> jobFactoryMap
private JobContext.START_TYPE async
private SupportProcessor preJobProcessor
private SupportProcessor postJobProcessor
private java.util.Map<java.lang.String,java.lang.String> jobExitCodeMap
private java.lang.String jobParametersSplitStr
private ThrowableHandler throwableHandler
コンストラクタの詳細 |
---|
protected JobExecutor()
FrameworkFactory
初期化処理を行い、
ジョブ終了コードのマップを初期化する。
protected JobExecutor(java.lang.String[] beanFileName)
FrameworkFactory
初期化処理を行い、
ジョブ終了コードのマップを初期化する。
beanFileName
- Bean定義ファイルメソッドの詳細 |
---|
protected ConfigurableApplicationContext getJobBeanFactory(JobInfo jobInfo)
BeanFactory
を取得するメソッド。useCache
を
TRUE
に設定した場合、
生成されたBeanFactory
はキャッシュし再利用される。
jobInfo
- ジョブ依頼情報
BeanFactory
protected boolean isAsync()
true
を返す。protected Workable<WorkUnit> getJobManager(ConfigurableApplicationContext jobFactory)
jobFactory
- ジョブ毎のBeanFactory
protected JobContext getJobContext(ConfigurableApplicationContext jobFactory, JobInfo jobInfo)
jobFactory
- ジョブ毎のBeanFactory
jobInfo
- ジョブ依頼情報
protected JobStatus getJobStatus(ConfigurableApplicationContext jobFactory, JobInfo jobInfo)
JobStatus
を取得する。JobStatus
を取得し、初期値を設定する。
ジョブの監視設定がされている場合は、監視用のJobStates
を
取得する。
jobFactory
- ジョブ毎のBeanFactory
jobInfo
- ジョブ依頼情報
JobStatus
protected WorkUnit getWorkUnit(JobContext jobContext)
WorkUnit
を生成し、ジョブコンテキストを設定する。
jobContext
- ジョブコンテキスト
WorkUnit
protected void initEndFileChecker(JobStatus jobStatus, JobContext jobContext)
jobStatus
- ジョブの処理状態jobContext
- ジョブコンテキストprotected void removeJobStatusFromEndFileChecker(JobStatus jobStatus, JobContext jobContext)
jobStatus
- ジョブの処理状態jobContext
- ジョブコンテキストprotected JobStatus execute(JobInfo jobInfo)
jobInfo
- ジョブ依頼情報
protected void printStartLog(JobInfo jobInfo)
jobInfo
- ジョブ依頼情報protected void printEndLog(JobStatus jobStatus)
jobStatus
- ジョブの処理状態private void checkJobInfo(JobInfo jobInfo)
JobException
を
throw
する。
jobInfo
- チェック対象の文字例
ジョブ例外
protected void setDefaultJobExitCode(JobStatus jobStatus)
jobStatus
- 処理対象の処理状況private void initDefaultJobExitCodeMap()
public void work(AbstractJobControlInfo jobInfo, JobStatus jobStatus)
Workable<AbstractJobControlInfo>
内の work
jobInfo
- ジョブ依頼情報jobStatus
- ジョブステータスpublic void destroy()
BeanFactory
の破棄処理を行う。JobBeanFactory
及びFrameworkBeanFactory
を破棄する。
public void setAsync(boolean async)
async
- 非同期起動有無フラグpublic void setPreJobProcessor(SupportProcessor preJobProcessor)
preJobProcessor
- ジョブ起動前処理public void setPostJobProcessor(SupportProcessor postJobProcessor)
postJobProcessor
- ジョブ起動前処理public void setJobParametersSplitStr(java.lang.String jobParametersSplitStr)
jobParametersSplitStr
- ジョブパラメータの区切り文字protected ConfigurableApplicationContext getFrameworkFactory()
public void setThrowableHandler(ThrowableHandler throwableHandler)
throwableHandler
- Throwableハンドラ
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |