org.apache.mahout.cf.taste.impl.model.file
Class FileIDMigrator

java.lang.Object
  extended by org.apache.mahout.cf.taste.impl.model.AbstractIDMigrator
      extended by org.apache.mahout.cf.taste.impl.model.file.FileIDMigrator
All Implemented Interfaces:
Refreshable, IDMigrator

public class FileIDMigrator
extends AbstractIDMigrator

An IDMigrator backed by a file. This class typically expects a file where each line contains a single stringID to be stored in this migrator.

This class will reload data from the data file when refresh(Collection) is called, unless the file has been reloaded very recently already.


Field Summary
static long DEFAULT_MIN_RELOAD_INTERVAL_MS
           
 
Constructor Summary
FileIDMigrator(File dataFile)
           
FileIDMigrator(File dataFile, long minReloadIntervalMS)
           
 
Method Summary
 void refresh(Collection<Refreshable> alreadyRefreshed)
           Triggers "refresh" -- whatever that means -- of the implementation.
 String toString()
           
 String toStringID(long longID)
           
 
Methods inherited from class org.apache.mahout.cf.taste.impl.model.AbstractIDMigrator
hash, toLongID
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_MIN_RELOAD_INTERVAL_MS

public static final long DEFAULT_MIN_RELOAD_INTERVAL_MS
See Also:
Constant Field Values
Constructor Detail

FileIDMigrator

public FileIDMigrator(File dataFile)
               throws FileNotFoundException
Throws:
FileNotFoundException

FileIDMigrator

public FileIDMigrator(File dataFile,
                      long minReloadIntervalMS)
               throws FileNotFoundException
Throws:
FileNotFoundException
Method Detail

toStringID

public String toStringID(long longID)
Returns:
the string ID most recently associated with the given long ID, or null if doesn't exist

refresh

public void refresh(Collection<Refreshable> alreadyRefreshed)
Description copied from interface: Refreshable

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.

Specified by:
refresh in interface Refreshable
Overrides:
refresh in class AbstractIDMigrator
Parameters:
alreadyRefreshed - Refreshables that are known to have already been refreshed as a result of an initial call to a Refreshable.refresh(Collection) method on some object. This ensure that objects in a refresh dependency graph aren't refreshed twice needlessly.

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2008–2014 The Apache Software Foundation. All rights reserved.