Skip to content

Commit cae571a

Browse files
fixed #240
1 parent 5bf53ac commit cae571a

11 files changed

+46
-18
lines changed

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/common/TwitterwallMessageBuilder.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,5 @@ public interface TwitterwallMessageBuilder {
3131

3232
Message<UserMessage> buildUserMessage(Message<TaskMessage> mqMessageIn, User imprintUser);
3333

34+
void waitForApi();
3435
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/common/impl/TwitterwallMessageBuilderImpl.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
package org.woehlke.twitterwall.scheduled.mq.endpoint.common.impl;
22

3+
import org.slf4j.Logger;
4+
import org.slf4j.LoggerFactory;
5+
import org.springframework.beans.factory.annotation.Autowired;
36
import org.springframework.integration.support.MessageBuilder;
47
import org.springframework.messaging.Message;
58
import org.springframework.social.twitter.api.Tweet;
69
import org.springframework.social.twitter.api.TwitterProfile;
710
import org.springframework.stereotype.Component;
11+
import org.woehlke.twitterwall.conf.properties.TwitterProperties;
812
import org.woehlke.twitterwall.oodm.entities.Task;
913
import org.woehlke.twitterwall.oodm.entities.User;
1014
import org.woehlke.twitterwall.scheduled.mq.endpoint.common.TwitterwallMessageBuilder;
@@ -15,6 +19,7 @@
1519
@Component
1620
public class TwitterwallMessageBuilderImpl implements TwitterwallMessageBuilder {
1721

22+
1823
@Override
1924
public Message<TweetMessage> buildTweetMessage(Message<TaskMessage> incomingTaskMessage, org.woehlke.twitterwall.oodm.entities.Tweet tweet, int loopId, int loopAll){
2025
TweetMessage outputPayload = new TweetMessage(incomingTaskMessage.getPayload(),tweet);
@@ -133,5 +138,22 @@ public Message<UserMessage> buildUserMessage(Message<TaskMessage> incomingMessag
133138
return mqMessageOut;
134139
}
135140

141+
@Override
142+
public void waitForApi() {
143+
int millisToWaitBetweenTwoApiCalls = twitterProperties.getMillisToWaitBetweenTwoApiCalls();
144+
log.debug("### waiting now for (ms): "+millisToWaitBetweenTwoApiCalls);
145+
try {
146+
Thread.sleep(millisToWaitBetweenTwoApiCalls);
147+
} catch (InterruptedException e) {
148+
}
149+
}
150+
151+
@Autowired
152+
public TwitterwallMessageBuilderImpl(TwitterProperties twitterProperties) {
153+
this.twitterProperties = twitterProperties;
154+
}
155+
156+
private final TwitterProperties twitterProperties;
136157

158+
private static final Logger log = LoggerFactory.getLogger(TwitterwallMessageBuilderImpl.class);
137159
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/CreateImprintUserImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ private Message<UserMessage> getMessageOut(Message<TaskMessage> mqMessageIn){
5757
String screenName = frontendProperties.getImprintScreenName();
5858
TwitterProfile twitterProfile = twitterApiService.getUserProfileForScreenName(screenName);
5959
Message<UserMessage> mqMessageOut = twitterwallMessageBuilder.buildUserMessage(mqMessageIn,twitterProfile);
60+
twitterwallMessageBuilder.waitForApi();
6061
return mqMessageOut;
6162
}
6263
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/CreateTestDataTweetsSplitterImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public List<Message<TweetMessage>> splitTweetMessage(Message<TaskMessage> incomi
7070
if(fetchTweetFromApi) {
7171
Tweet tweet = twitterApiService.findOneTweetById(idTwitter);
7272
outgoingMessage = twitterwallMessageBuilder.buildTweetMessage(incomingTaskMessage, tweet, loopId, loopAll);
73-
73+
twitterwallMessageBuilder.waitForApi();
7474
} else {
7575
outgoingMessage = twitterwallMessageBuilder.buildTweetMessage(incomingTaskMessage,tweetPers,loopId,loopAll);
7676
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/CreateTestDataUsersSplitterImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ public List<Message<UserMessage>> splitUserMessage(Message<TaskMessage> incoming
6969
if(fetchFromTwitterApi){
7070
TwitterProfile userProfile = twitterApiService.getUserProfileForScreenName(screenName);
7171
outgoingMessage = twitterwallMessageBuilder.buildUserMessage(incomingTaskMessage,userProfile,loopId,loopAll);
72+
twitterwallMessageBuilder.waitForApi();
7273
} else {
7374
outgoingMessage = twitterwallMessageBuilder.buildUserMessage(incomingTaskMessage,userPers,loopId,loopAll);
7475
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/FetchFollowerSplitterImpl.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package org.woehlke.twitterwall.scheduled.mq.endpoint.impl;
22

3+
import org.slf4j.Logger;
4+
import org.slf4j.LoggerFactory;
35
import org.springframework.beans.factory.annotation.Autowired;
46
import org.springframework.messaging.Message;
57
import org.springframework.social.twitter.api.CursoredList;
@@ -52,6 +54,7 @@ public List<Message<UserMessage>> splitUserMessage(Message<TaskMessage> incoming
5254
Message<UserMessage> mqMessageOut = twitterwallMessageBuilder.buildUserMessage(incomingTaskMessage,twitterProfileId,loopId,loopAll);
5355
userProfileList.add(mqMessageOut);
5456
}
57+
twitterwallMessageBuilder.waitForApi();
5558
return userProfileList;
5659
}
5760
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/FetchFriendsSplitterImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import org.springframework.messaging.Message;
55
import org.springframework.social.twitter.api.CursoredList;
66
import org.springframework.stereotype.Component;
7+
import org.woehlke.twitterwall.conf.properties.TwitterProperties;
78
import org.woehlke.twitterwall.oodm.entities.Task;
89
import org.woehlke.twitterwall.oodm.entities.parts.CountedEntities;
910
import org.woehlke.twitterwall.oodm.service.CountedEntitiesService;

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/UpdateTweetsSplitterImpl.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -86,11 +86,7 @@ public List<Message<TweetMessage>> splitTweetMessage(Message<TaskMessage> incomi
8686
TweetMessage result = new TweetMessage(msgIn,foundTweetFromTwitter);
8787
Message<TweetMessage> mqMessageOut = twitterwallMessageBuilder.buildTweetMessage(incomingTaskMessage,foundTweetFromTwitter,lfdNr,all);
8888
tweets.add(mqMessageOut);
89-
log.debug("### waiting now for (ms): "+millisToWaitBetweenTwoApiCalls);
90-
try {
91-
Thread.sleep(millisToWaitBetweenTwoApiCalls);
92-
} catch (InterruptedException e) {
93-
}
89+
twitterwallMessageBuilder.waitForApi();
9490
}
9591
return tweets;
9692
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/UpdateUsersFromMentionsSplitterImpl.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,7 @@ public List<Message<UserMessage>> splitUserMessage(Message<TaskMessage> incoming
104104
Message<UserMessage> mqMessageOut = twitterwallMessageBuilder.buildUserMessage(incomingTaskMessage,userProfile,lfdNr,all);
105105
userProfileList.add(mqMessageOut);
106106
}
107-
log.debug(msg+"### waiting now for (ms): "+millisToWaitBetweenTwoApiCalls);
108-
try {
109-
Thread.sleep(millisToWaitBetweenTwoApiCalls);
110-
} catch (InterruptedException e) {
111-
}
107+
twitterwallMessageBuilder.waitForApi();
112108
}
113109
return userProfileList;
114110
}

src/main/java/org/woehlke/twitterwall/scheduled/mq/endpoint/impl/UpdateUsersSplitterImpl.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,6 @@ public List<Message<UserMessage>> splitUserMessage(Message<TaskMessage> incoming
8888
}
8989
long number = worklistProfileTwitterIds.size();
9090
loopId = 0;
91-
int millisToWaitBetweenTwoApiCalls = twitterProperties.getMillisToWaitBetweenTwoApiCalls();
9291
List<Message<UserMessage>> userProfileList = new ArrayList<>();
9392
for(Long userProfileTwitterId:worklistProfileTwitterIds){
9493
String counter = " ( " + loopId + " from " + number + " ) ";
@@ -105,11 +104,7 @@ public List<Message<UserMessage>> splitUserMessage(Message<TaskMessage> incoming
105104
Message<UserMessage> mqMessageOut = twitterwallMessageBuilder.buildUserMessage(incomingTaskMessage,userProfile,loopId,loopAll);
106105
userProfileList.add(mqMessageOut);
107106
}
108-
log.debug(msg + "### waiting now for (ms): "+millisToWaitBetweenTwoApiCalls);
109-
try {
110-
Thread.sleep(millisToWaitBetweenTwoApiCalls);
111-
} catch (InterruptedException e) {
112-
}
107+
twitterwallMessageBuilder.waitForApi();
113108
}
114109
log.debug(msg+ " DONE");
115110
return userProfileList;

0 commit comments

Comments
 (0)