package edu.umd.rhsmith.diads.meater.modules.tweater; import edu.umd.rhsmith.diads.meater.core.app.MEaterConfigurationException; import edu.umd.rhsmith.diads.meater.core.app.MEaterMain; import edu.umd.rhsmith.diads.meater.core.config.ConfigModule; import edu.umd.rhsmith.diads.meater.modules.tweater.media.StatusData; import edu.umd.rhsmith.diads.meater.modules.tweater.media.UserData; import edu.umd.rhsmith.diads.meater.modules.tweater.media.UserStatusData; import edu.umd.rhsmith.diads.meater.modules.tweater.oauth.EditOAuthOperation; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.QueryFollow; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.QueryItem; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.QueryLocation; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.QueryPhrase; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.QueryTrack; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.UserToFollowQueryConfig; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.legacy.CsvQuerySourceConfig; import edu.umd.rhsmith.diads.meater.modules.tweater.queries.legacy.MySqlQuerySourceConfig; import edu.umd.rhsmith.diads.meater.modules.tweater.storage.legacy.CsvStatusEaterConfig; import edu.umd.rhsmith.diads.meater.modules.tweater.storage.legacy.MySqlStatusEaterConfig; import edu.umd.rhsmith.diads.meater.modules.tweater.streaming.StreamQuerierConfig; import edu.umd.rhsmith.diads.meater.modules.tweater.tlc.TimelineCollectorConfig; public class TwEater extends ConfigModule { public TwEater() { super("TwEater"); this.registerSetupConsoleOperation(new EditOAuthOperation()); this.registerSetupConsoleOperation(new SetupLegacyDbOperation()); this.registerMediaType(StatusData.class); this.registerMediaType(UserStatusData.class); this.registerMediaType(UserData.class); this.registerMediaType(QueryItem.class); this.registerMediaType(QueryFollow.class); this.registerMediaType(QueryLocation.class); this.registerMediaType(QueryTrack.class); this.registerMediaType(QueryPhrase.class); this.registerConfigType(StreamQuerierConfig.class); this.registerConfigType(TimelineCollectorConfig.class); this.registerConfigType(UserToFollowQueryConfig.class); this.registerConfigType(CsvQuerySourceConfig.class); this.registerConfigType(MySqlQuerySourceConfig.class); this.registerConfigType(CsvStatusEaterConfig.class); this.registerConfigType(MySqlStatusEaterConfig.class); } @Override public void addTo(MEaterMain main) throws MEaterConfigurationException { super.addTo(main); main.addRuntimeModule(new TwitterManager()); } @Override public String getUiName() { return "TwEater"; } @Override public String getUiDescription() { return "A module providing Twitter-oriented functionality, largely ported from the original TwEater project"; } }