Class SyncInfoFilter.ContentComparisonSyncInfoFilter

  • Enclosing class:
    SyncInfoFilter

    public static class SyncInfoFilter.ContentComparisonSyncInfoFilter
    extends SyncInfoFilter
    Selects SyncInfo whose local and remote contents match. This filter makes use of the IStorage provided by an IResourceVariant to obtain the remote contents. This means that the comparison may contact the server unless the contents were cached locally by a previous operation. The caching of remote contents is subscriber specific.

    For folders, the comparison always returns true.

    • Constructor Detail

      • ContentComparisonSyncInfoFilter

        public ContentComparisonSyncInfoFilter()
        Create a filter that does not ignore whitespace.
      • ContentComparisonSyncInfoFilter

        public ContentComparisonSyncInfoFilter​(boolean ignoreWhitespace)
        Create a filter and configure how whitespace is handled.
        Parameters:
        ignoreWhitespace - whether whitespace should be ignored
    • Method Detail

      • select

        public boolean select​(SyncInfo info,
                              IProgressMonitor monitor)
        Description copied from class: SyncInfoFilter
        Return true if the provided SyncInfo matches the filter.
        Specified by:
        select in class SyncInfoFilter
        Parameters:
        info - the SyncInfo to be tested
        monitor - a progress monitor
        Returns:
        true if the SyncInfo matches the filter
      • compareContents

        public boolean compareContents​(IFile local,
                                       IResourceVariant remote,
                                       IProgressMonitor monitor)
        Compare the contents of the local file and its variant. This is used by the select method to compare the contents of two non-null files.
        Parameters:
        local - a local file
        remote - a resource variant of the file
        monitor - a progress monitor
        Returns:
        whether the contents of the two files are equal