Twitter Bot 制作下準備(Twitterオブジェクトの取得)

サンプルコードはこちら

public class GetTwitterObject {

	private static String CONSUMERKEY;
	private static String CONSUMERSECRET;
	private static String ACCESSTOKEN;
	private static String ACCESSSECRET;


	/**
	 * Twitterオブジェクトの取得
	 * @return
	 */
	public static Twitter getTwitter(){
		return GetTwitterObject.getTwitter("./src/main/resources/twitter.properties");
	}

	/**
	 * 設定ファイルを読み込み、Twitterオブジェクトを返す
	 * @param prop_filename
	 * @return
	 */
	public static Twitter getTwitter(String prop_filename){
		Twitter twitter = null;
		try {
			//Propertiesオブジェクトを生成
			Properties prop = new Properties();
			prop.load(new FileInputStream(prop_filename));
			twitter = initializer(prop);
		} catch (FileNotFoundException e) {
			System.err.println(e);
		} catch (IOException e) {
			System.err.println(e);
		}
		return twitter;
	}

	/**
	 * Twitterオブジェクトのイニシャライザ
	 * @param prop
	 * @return
	 */
	private static Twitter initializer(Properties prop) {
		Twitter twitter = null;

		GetTwitterObject.CONSUMERKEY = prop.getProperty("consumer.key");
		GetTwitterObject.CONSUMERSECRET = prop.getProperty("consumer.secret");
		GetTwitterObject.ACCESSTOKEN = prop.getProperty("access.token");
		GetTwitterObject.ACCESSSECRET = prop.getProperty("access.token.secret");

		ConfigurationBuilder confbuilder = new ConfigurationBuilder();
		confbuilder.setOAuthConsumerKey(CONSUMERKEY);
		confbuilder.setOAuthConsumerSecret(CONSUMERSECRET);
		confbuilder.setOAuthAccessToken(ACCESSTOKEN);
		confbuilder.setOAuthAccessTokenSecret(ACCESSSECRET);

		TwitterFactory twitterfactory = new TwitterFactory(confbuilder.build());
		twitter = twitterfactory.getInstance();

		return twitter;
	}

}