package org.dcache.pool.migration; import diskCacheV111.util.RetentionPolicy; import org.dcache.namespace.FileAttribute; import org.dcache.pool.repository.CacheEntry; import org.dcache.vehicles.FileAttributes; /** * Repository entry filter which only accepts files with a certain * retention policy. */ public class RetentionPolicyFilter implements CacheEntryFilter { private final RetentionPolicy _retentionPolicy; public RetentionPolicyFilter(RetentionPolicy retentionPolicy) { _retentionPolicy = retentionPolicy; } @Override public boolean accept(CacheEntry entry) { FileAttributes fileAttributes = entry.getFileAttributes(); return fileAttributes.isDefined(FileAttribute.RETENTION_POLICY) && _retentionPolicy.equals(fileAttributes.getRetentionPolicy()); } }