クラス FileReadingMessageSource
- 実装済みのインターフェース一覧:
Aware、BeanFactoryAware、BeanNameAware、DisposableBean、InitializingBean、Lifecycle、MessageSource<FileSE>、IntegrationPattern、NamedComponent、IntegrationInboundManagement、IntegrationManagement、ManageableLifecycle
MessageSource。特定のファイルのメッセージを防ぐために、FileListFilter を指定できます。デフォルトでは、XML または DSL で構成する場合、AcceptOnceFileListFilter が使用されます。これにより、ファイルがディレクトリから 1 回だけ取得されるようになります。 ファイルの読み取りに関する一般的な問題は、準備が整う前にファイルが検出される可能性があることです。デフォルトの AcceptOnceFileListFilter はこれを防ぎません。ほとんどの場合、ファイル書き込みプロセスが読み取りの準備ができたらすぐに各ファイルの名前を変更すると、これを防ぐことができます。デフォルトの AcceptOnceFileListFilter で構成された、準備ができている(たとえば、既知のサフィックスに基づく)ファイルのみを受け入れるパターンマッチングフィルターを使用すると、これが可能になります。
外部 DirectoryScanner を使用する場合は、FileReadingMessageSource のインスタンスではなく、FileLocker および FileListFilter オブジェクトを外部 DirectoryScanner に設定する必要があります。それ以外の場合は、IllegalStateExceptionSE が発生します。
ComparatorSE を使用して、PriorityBlockingQueueSE 内のファイルの内部順序を確認できます。これは ResequencingMessageGroupProcessor と同じ保証を提供しませんが、ファイルの書き込みとダウンストリームの失敗がまれな場合はそれで十分かもしれません。
FileReadingMessageSource は、receive() の同時呼び出しとメッセージ配信コールバックで完全にスレッドセーフです。
- 作成者:
- Iwein Fuld, Mark Fisher, Oleg Zhurakousky, Gary Russell, Artem Bilan, Steven Pearce, Patryk Ziobron
ネストされたクラスの概要
クラス org.springframework.integration.file.inbound.FileReadingMessageSource から継承されたネストクラス / インターフェース
FileReadingMessageSource.WatchEventTypeインターフェース 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コンストラクター概要
コンストラクターコンストラクター説明非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。無制限の容量の自然に順序付けられたキューを使用して FileReadingMessageSource を作成します。FileReadingMessageSource(int internalQueueCapacity) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定された容量の制限付きキューを使用して FileReadingMessageSource を作成します。FileReadingMessageSource(@Nullable ComparatorSE<FileSE> receptionOrderComparator) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。渡されたComparatorSE で順序付けされたPriorityBlockingQueueSE を使用して FileReadingMessageSource を作成します。方法の概要
クラス org.springframework.integration.file.inbound.FileReadingMessageSource から継承されたメソッド
doReceive, getComponentType, getScanner, isRunning, isUseWatchService, onFailure, onInit, setAutoCreateDirectory, setDirectory, setDirectoryExpression, setFilter, setLocker, setScanEachPoll, setScanner, setUseWatchService, setWatchDirPredicate, setWatchEvents, setWatchMaxDepth, start, stopクラス org.springframework.integration.endpoint.AbstractMessageSource から継承されたメソッド
buildMessage, destroy, 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 から継承されたメソッド
getBeanName
コンストラクターの詳細
FileReadingMessageSource
public FileReadingMessageSource()非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。無制限の容量の自然に順序付けられたキューを使用して FileReadingMessageSource を作成します。FileReadingMessageSource
public FileReadingMessageSource(int internalQueueCapacity) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定された容量の制限付きキューを使用して FileReadingMessageSource を作成します。これは、大きなディレクトリから読み取るときに、このコンポーネントのメモリフットプリントを削減するために使用できます。- パラメーター:
internalQueueCapacity- 内部的に受信するファイルをキャッシュするために使用されるキューのサイズ。このキューは、ディレクトリスキャンを最適化するために大きくすることができます。scanEachPoll を false に設定し、キューのサイズを大きくすると、新しいディレクトリリストが実行される前に、キューは一度いっぱいになり、その後完全に空になります。これは、ディレクトリ内の多数のファイルのスキャンを減らすのに特に役立ちます。
FileReadingMessageSource
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。渡されたComparatorSE で順序付けされたPriorityBlockingQueueSE を使用して FileReadingMessageSource を作成します。使用するキューのサイズは、すべてのファイルを並べ替えるために、入力ディレクトリ内のすべてのファイルを保持するのに十分な大きさである必要があります。キューのサイズを制限することは、順序付けと相互に排他的です。同時アクセスでは、ファイル配信のオーダーについて保証することはできません。
- パラメーター:
receptionOrderComparator- 内部キュー内のファイルを順序付けるために使用されるコンパレータ
FileReadingMessageSourceに有利であるため