1 package at.aic18.g6t4.servicetwitter.configuration;
3 import org.springframework.boot.context.properties.EnableConfigurationProperties;
4 import org.springframework.context.annotation.Bean;
5 import org.springframework.context.annotation.Configuration;
6 import twitter4j.Twitter;
7 import twitter4j.TwitterFactory;
8 import twitter4j.conf.ConfigurationBuilder;
11 @EnableConfigurationProperties(Twitter4jProperties.class)
12 public class Twitter4jConfiguration {
14 private final Twitter4jProperties properties;
16 public Twitter4jConfiguration(Twitter4jProperties properties) {
17 this.properties = properties;
21 public TwitterFactory twitterFactory() {
22 ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
23 configurationBuilder.setDebugEnabled(properties.isDebug())
24 .setOAuthConsumerKey(properties.getOauth().getConsumerKey())
25 .setOAuthConsumerSecret(properties.getOauth().getConsumerSecret())
26 .setOAuthAccessToken(properties.getOauth().getAccessToken())
27 .setOAuthAccessTokenSecret(properties.getOauth().getAccessTokenSecret());
28 return new TwitterFactory(configurationBuilder.build());
32 public Twitter twitter(TwitterFactory twitterFactory) {
33 return twitterFactory.getInstance();