com.planetj.taste.common
Interface Refreshable

All Known Subinterfaces:
ClusteringRecommender, ClusterSimilarity, CorrelationTransform<T>, DataModel, DiffStorage, ItemBasedRecommender, ItemCorrelation, JDBCDataModel, PreferenceInferrer, PreferenceTransform2, Recommender, UserBasedRecommender, UserCorrelation, UserNeighborhood
All Known Implementing Classes:
AbstractJDBCDataModel, AbstractJDBCDiffStorage, AbstractRecommender, AveragingPreferenceInferrer, CachingRecommender, CaseAmplification, FarthestNeighborClusterSimilarity, FileDataModel, GenericDataModel, GenericItemBasedRecommender, GenericItemCorrelation, GenericJDBCDataModel, GenericUserBasedRecommender, InverseUserFrequency, ItemAverageRecommender, ItemUserAverageRecommender, MemoryDiffStorage, MySQLJDBCDataModel, MySQLJDBCDiffStorage, NearestNeighborClusterSimilarity, NearestNUserNeighborhood, NetflixDataModel, PearsonCorrelation, SlopeOneRecommender, SpearmanCorrelation, ThresholdUserNeighborhood, TreeClusteringRecommender, TreeClusteringRecommender2, 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() method triggers such a refresh.

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

Author:
Sean Owen

Method Summary
 void refresh()
          Triggers "refresh" -- whatever that means -- of the implementation.
 

Method Detail

refresh

void refresh()

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