クラス 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 の実装とペアで使用されます。シンクロナイザは、リモートファイルシステムに実際に接続し、新しい FileSE を配信する作業を処理する必要があります。
- 作成者:
- 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) ファイルソースからポーリングします。基になるシンクロナイザを返します。booleanprotected voidonInit()voidsetAutoCreateLocalDirectory(boolean autoCreateLocalDirectory) voidsetLocalDirectory(FileSE localDirectory) voidsetLocalFilter(FileListFilter<FileSE> localFileListFilter) 同期後にメッセージを生成するファイルを決定するために使用されるFileListFilter。voidsetScanner(DirectoryScanner scanner) ローカルFileReadingMessageSourceを切り替えて、カスタムDirectoryScannerを使用します。voidsetUseWatchService(boolean useWatchService) ローカルFileReadingMessageSourceを内部FileReadingMessageSource.WatchServiceDirectoryScannerを使用するように切り替えます。voidstart()voidstop()クラス 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- 取得するファイルの最大数- 戻り値:
- 返された値。