クラス AbstractPersistentAcceptOnceFileListFilter<F>

型パラメーター:
F - ファイル型。
実装されたすべてのインターフェース:
CloseableSEAutoCloseableSEFileListFilter<F>ResettableFileListFilter<F>ReversibleFileListFilter<F>
既知の直属サブクラス
FileSystemPersistentAcceptOnceFileListFilterFtpPersistentAcceptOnceFileListFilterSftpPersistentAcceptOnceFileListFilterSmbPersistentAcceptOnceFileListFilter

public abstract class AbstractPersistentAcceptOnceFileListFilter<F> extends AbstractDirectoryAwareFileListFilter<F> implements ReversibleFileListFilter<F>, ResettableFileListFilter<F>, CloseableSE
アプリケーションの再起動後も「見た」ファイルを MetadataStore に保存します。デフォルトのキーは "prefix" と絶対ファイル名です。value はファイルのタイムスタンプです。ファイルがストアに存在し、現在のファイルと同じ修正時刻を持つ場合、ファイルはすでに「見られた」と見なされます。
導入:
3.0
作成者:
Gary Russell, Artem Bilan
  • フィールドの詳細

  • コンストラクターの詳細

  • メソッドの詳細

    • setFlushOnUpdate

      public void setFlushOnUpdate(boolean flushOnUpdate)
      更新ごとに metadataStore をフラッシュするかどうかを決定します(FlushableSE の場合)。
      パラメーター:
      flushOnUpdate - フラッシュする場合は true。
      導入:
      4.1.5
    • accept

      public boolean accept(F file)
      クラスからコピーされた説明: AbstractFileListFilter
      サブクラスはこのメソッドを実装する必要があります。
      次で指定:
      インターフェース FileListFilter<F>accept 
      次で指定:
      クラス AbstractFileListFilter<F>accept 
      パラメーター:
      file - ファイル。
      戻り値:
      ファイルがフィルターを通過する場合は true。
      関連事項:
    • fileStillExists

      protected boolean fileStillExists(F file)
      ファイルがまだ存在するかどうかを確認します。デフォルトの実装は true を返します。
      パラメーター:
      file - ファイル。
      戻り値:
      フィルターが true を返す場合は true。
      導入:
      4.3.19
    • rollback

      public void rollback(F file, ListSE<F> files)
      このフィルターによって以前に渡されたすべてのファイル(FileListFilter.filterFiles(Object[]) で処理されたものではありません。ファイルはファイルのリストに含まれている必要があります。それ以降のすべてのファイルは処理されなかったと見なされ、次回考慮されます。
      次で指定:
      インターフェース ReversibleFileListFilter<F>rollback 
      パラメーター:
      file - 失敗したファイル。
      files - FileListFilter.filterFiles(Object[]) によって返されたファイルのリスト。
      導入:
      4.0.4
    • remove

      public boolean remove(F fileToRemove)
      インターフェースからコピーされた説明: ResettableFileListFilter
      指定されたファイルをフィルターから削除して、次の試行で渡されるようにします。
      次で指定:
      インターフェース ResettableFileListFilter<F>remove 
      パラメーター:
      fileToRemove - 削除する要素。
      戻り値:
      この呼び出しの結果としてファイルが削除された場合は true。
    • close

      public void close() throws IOExceptionSE
      次で指定:
      インターフェース AutoCloseableSEclose 
      次で指定:
      インターフェース CloseableSEclose 
      例外:
      IOExceptionSE
    • isEqual

      protected boolean isEqual(F file, StringSE value)
      変更されたタイムスタンプ以外を使用して同等性を判断する場合は、このメソッドをオーバーライドします。
      パラメーター:
      file - ファイル。
      value - ストア内のキーの現在の値。
      戻り値:
      等しい場合は true。
    • buildKey

      protected StringSE buildKey(F file)
      デフォルトのキーは、prefix と完全なファイル名です。
      パラメーター:
      file - ファイル。
      戻り値:
      キー。
    • flushIfNeeded

      protected void flushIfNeeded()
      FlushableSE であり、flushOnUpdate が真である場合、ストアをフラッシュします。
      導入:
      1.4.5
    • isDirectory

      protected boolean isDirectory(F file)
      クラスからコピーされた説明: AbstractDirectoryAwareFileListFilter
      サブクラスは、ファイルがディレクトリであるかどうかを示すために、このメソッドを実装する必要があります。
      次で指定:
      クラス AbstractDirectoryAwareFileListFilter<F>isDirectory 
      パラメーター:
      file - ファイル。
      戻り値:
      ディレクトリの場合は true。
    • modified

      protected abstract long modified(F file)
    • fileName

      protected abstract StringSE fileName(F file)