package edu.umd.rhsmith.diads.meater.modules.tweater.storage.legacy;
import edu.umd.rhsmith.diads.meater.core.app.MEaterConfigurationException;
import edu.umd.rhsmith.diads.meater.core.app.components.Component;
import edu.umd.rhsmith.diads.meater.core.config.props.StringProperty;
public class CsvStatusEaterConfig extends StatusEaterConfig implements
CsvStatusEaterInitializer {
public static final String TNAME = "CSVStatusEater-legacy";
public static final String TDESC = "A (legacy) component which persists UserStatusData objects (information about both statuses and the users that posted them) to a local csv file.";
public CsvStatusEaterConfig() {
super();
this.registerConfigProperty(filename);
}
@Override
public Component instantiateComponent() throws IllegalStateException,
MEaterConfigurationException {
return new CsvStatusEater(this);
}
/*
* --------------------------------
* Config properties
* --------------------------------
*/
private static final String CKEY_FILENAME = "filename";
private static final String DEFAULT_FILENAME = "results.csv";
private static final String UINAME_FILENAME = "output filename";
private static final String UIDESC_FILENAME = "";
private final StringProperty filename = new StringProperty(CKEY_FILENAME,
DEFAULT_FILENAME, UINAME_FILENAME, UIDESC_FILENAME);
@Override
public String getFilename() {
return this.filename.getVal();
}
/*
* --------------------------------
* UI
* --------------------------------
*/
@Override
public String getUiDescription() {
return TDESC;
}
/*
* --------------------------------
* Config operations
* --------------------------------
*/
}