クラス AbstractInboundFileSynchronizingMessageSource<F>
java.lang.ObjectSE
org.springframework.integration.util.AbstractExpressionEvaluator
org.springframework.integration.endpoint.AbstractMessageSource<FileSE>
org.springframework.integration.endpoint.AbstractFetchLimitingMessageSource<FileSE>
org.springframework.integration.file.remote.synchronizer.AbstractInboundFileSynchronizingMessageSource<F>
- 型パラメーター:
F
- ターゲットシステムのファイル型。
- 実装されたすべてのインターフェース:
Aware
、BeanFactoryAware
、BeanNameAware
、DisposableBean
、InitializingBean
、Lifecycle
、MessageSource<FileSE>
、IntegrationPattern
、NamedComponent
、IntegrationInboundManagement
、IntegrationManagement
、ManageableLifecycle
、MessageSourceManagement
- 既知の直属サブクラス
FtpInboundFileSynchronizingMessageSource
、SftpInboundFileSynchronizingMessageSource
、SmbInboundFileSynchronizingMessageSource
public abstract class AbstractInboundFileSynchronizingMessageSource<F>
extends AbstractFetchLimitingMessageSource<FileSE>
implements ManageableLifecycle
FTP アダプターと SFTP アダプター間の共通ロジックを分解します。リモートファイルシステムをローカルファイルシステムと同期するタスクのアダプターを処理するように拡張できるように設計されています(注: これは、ローカルファイルシステムに一意に存在するリモートファイルシステムへのプッシュファイルを処理しません。リモートファイルシステムからのプル -「受信」アダプターから予想されるとおり)。
基本クラスは、リモートファイルシステムとローカルファイルシステムのディレクトリを起動時に作成するかどうかの構成をサポートします(特定のアダプターに対して「ディレクトリを作成する」とは、当然実装固有です)。
このクラスは、AbstractInboundFileSynchronizer
の実装とペアで使用されます。シンクロナイザは、リモートファイルシステムに実際に接続し、新しい File
SE を配信する作業を処理する必要があります。
- 作成者:
- Josh Long, Oleg Zhurakousky, Gary Russell, Artem Bilan, Venil Noronha
ネストされたクラスのサマリー
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたネストクラス / インターフェース
IntegrationManagement.ManagementOverrides
フィールドのサマリー
クラス org.springframework.integration.util.AbstractExpressionEvaluator から継承されたフィールド
EXPRESSION_PARSER, logger
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたフィールド
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
コンストラクターの概要
コンストラクターコンストラクター説明AbstractInboundFileSynchronizingMessageSource
(AbstractInboundFileSynchronizer<F> synchronizer, ComparatorSE<FileSE> comparator) メソッドのサマリー
修飾子と型メソッド説明doReceive
(int maxFetchSize) ファイルソースからポーリングします。基になるシンクロナイザを返します。boolean
protected void
onInit()
void
setAutoCreateLocalDirectory
(boolean autoCreateLocalDirectory) void
setLocalDirectory
(FileSE localDirectory) void
setLocalFilter
(FileListFilter<FileSE> localFileListFilter) 同期後にメッセージを生成するファイルを決定するために使用されるFileListFilter
。void
setScanner
(DirectoryScanner scanner) ローカルFileReadingMessageSource
を切り替えて、カスタムDirectoryScanner
を使用します。void
setUseWatchService
(boolean useWatchService) ローカルFileReadingMessageSource
を内部FileReadingMessageSource.WatchServiceDirectoryScanner
を使用するように切り替えます。void
start()
void
stop()
クラス org.springframework.integration.endpoint.AbstractFetchLimitingMessageSource から継承されたメソッド
doReceive, getMaxFetchSize, setMaxFetchSize
クラス org.springframework.integration.endpoint.AbstractMessageSource から継承されたメソッド
buildMessage, destroy, getBeanName, getComponentName, getManagedName, getManagedType, getOverrides, isLoggingEnabled, receive, registerMetricsCaptor, setBeanName, setHeaderExpressions, setLoggingEnabled, setManagedName, setManagedType
クラス org.springframework.integration.util.AbstractExpressionEvaluator から継承されたメソッド
afterPropertiesSet, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, setBeanFactory, setConversionService, setSimpleEvaluationContext
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたメソッド
getThisAs, isObserved, registerObservationRegistry
インターフェース org.springframework.integration.core.MessageSource から継承されたメソッド
getIntegrationPatternType
インターフェース org.springframework.integration.support.context.NamedComponent から継承されたメソッド
getComponentType
コンストラクターの詳細
AbstractInboundFileSynchronizingMessageSource
public AbstractInboundFileSynchronizingMessageSource(AbstractInboundFileSynchronizer<F> synchronizer) AbstractInboundFileSynchronizingMessageSource
public AbstractInboundFileSynchronizingMessageSource(AbstractInboundFileSynchronizer<F> synchronizer, ComparatorSE<FileSE> comparator)
メソッドの詳細
setAutoCreateLocalDirectory
public void setAutoCreateLocalDirectory(boolean autoCreateLocalDirectory) setLocalDirectory
setLocalFilter
同期後にメッセージを生成するファイルを決定するために使用されるFileListFilter
。これは、同期処理中のファイル(AbstractInboundFileSynchronizer.getTemporaryFileSuffix()
を持つファイル)へのアクセスを防止するフィルターと組み合わされます。デフォルトは、
FileSystemPersistentAcceptOnceFileListFilter
で、重複したファイル名(現在の実行中に処理される)をフィルタリングします。- パラメーター:
localFileListFilter
- ローカルファイルリストフィルター。
setUseWatchService
public void setUseWatchService(boolean useWatchService) ローカルFileReadingMessageSource
を内部FileReadingMessageSource.WatchServiceDirectoryScanner
を使用するように切り替えます。- パラメーター:
useWatchService
-true
でFileReadingMessageSource.WatchServiceDirectoryScanner
に切り替えるboolean
フラグ。- 導入:
- 5.0
setScanner
ローカルFileReadingMessageSource
を切り替えて、カスタムDirectoryScanner
を使用します。- パラメーター:
scanner
- 使用するDirectoryScanner
。- 導入:
- 5.0
getSynchronizer
基になるシンクロナイザを返します。- 戻り値:
- シンクロナイザー。
- 導入:
- 5.0.7
onInit
protected void onInit()- オーバーライド:
- クラス
AbstractExpressionEvaluator
のonInit
start
public void start()- 次で指定:
- インターフェース
Lifecycle
のstart
- 次で指定:
- インターフェース
ManageableLifecycle
のstart
stop
public void stop()- 次で指定:
- インターフェース
Lifecycle
のstop
- 次で指定:
- インターフェース
ManageableLifecycle
のstop
isRunning
public boolean isRunning()- 次で指定:
- インターフェース
Lifecycle
のisRunning
- 次で指定:
- インターフェース
ManageableLifecycle
のisRunning
doReceive
ファイルソースからポーリングします。結果が null でない場合は、それが返されます。結果が null の場合は、リモートディレクトリと同期してファイルソースにデータを取り込みます。最大で、maxFetchSize ファイルが取得されます。次に、ファイルソースを再度ポーリングし、null かどうかに関係なく結果を返します。- 次で指定:
- クラス
AbstractFetchLimitingMessageSource<FileSE>
のdoReceive
- パラメーター:
maxFetchSize
- 取得するファイルの最大数- 戻り値:
- 返された値。