## org.apache.mahout.cf.taste.common
Interface Refreshable

All Known Subinterfaces:
  ClusteringRecommender, ClusterSimilarity, DataModel, DiffStorage, IDMigrator, ItemBasedRecommender, ItemSimilarity, JDBCDataModel, PreferenceInferrer, PreferenceTransform, Recommender, SimilarityTransform, UpdatableIDMigrator, UserBasedRecommender, UserNeighborhood, UserSimilarity

All Known Implementing Classes:
  AbstractBooleanPrefJDBCDataModel, AbstractDataModel, AbstractIDMigrator, AbstractJDBCDataModel, AbstractJDBCDiffStorage, AbstractJDBCIDMigrator, AbstractJDBCItemSimilarity, AbstractRecommender, AveragingPreferenceInferrer, CachingItemSimilarity, CachingRecommender, CachingUserNeighborhood, CachingUserSimilarity, CaseAmplification, EuclideanDistanceSimilarity, FarthestNeighborClusterSimilarity, FileDataModel, FileDiffStorage, FileIDMigrator, FileItemSimilarity, GenericBooleanPrefDataModel, GenericBooleanPrefUserBasedRecommender, GenericDataModel, GenericItemBasedRecommender, GenericItemSimilarity, GenericJDBCDataModel, GenericUserBasedRecommender, GenericUserSimilarity, InverseUserFrequency, ItemAverageRecommender, ItemUserAverageRecommender, KnnItemBasedRecommender, LogLikelihoodSimilarity, MemoryDiffStorage, MemoryIDMigrator, MySQLBooleanPrefJDBCDataModel, MySQLJDBCDataModel, MySQLJDBCDiffStorage, MySQLJDBCIDMigrator, MySQLJDBCItemSimilarity, NearestNeighborClusterSimilarity, NearestNUserNeighborhood, PearsonCorrelationSimilarity, PlusAnonymousUserDataModel, RandomRecommender, RefreshHelper, SlopeOneRecommender, SpearmanCorrelationSimilarity, SVDRecommender, TanimotoCoefficientSimilarity, ThresholdUserNeighborhood, TreeClusteringRecommender, TreeClusteringRecommender2, UncenteredCosineSimilarity, ZScore

    public interface Refreshable

Implementations of this interface have state that can be periodically refreshed. For example, an implementation instance might contain some pre-computed information that should be periodically refreshed. The `refresh(Collection)` method triggers such a refresh.

All Taste components implement this. In particular, `Recommender`s do. Callers may want to call `refresh(Collection)` periodically to re-compute information throughout the system and bring it up to date, though this operation may be expensive.

Method Summary
`void` `refresh(java.util.Collection<Refreshable> alreadyRefreshed)` Triggers "refresh" -- whatever that means -- of the implementation.

Method Detail

### refresh

    void refresh(java.util.Collection<Refreshable> alreadyRefreshed)

  Triggers "refresh" -- whatever that means -- of the implementation. The general contract is that any should always leave itself in a consistent, operational state, and that the refresh atomically updates internal state from old to new.

  Parameters:
    `alreadyRefreshed` - s that are known to have already been refreshed as a result of an initial call to a method on some object. This ensure that objects in a refresh dependency graph aren't refreshed twice needlessly.

Copyright © 2008-2010 The Apache Software Foundation. All Rights Reserved.