Skip to content

Commit 797c83f

Browse files
working on #157
1 parent b521f1b commit 797c83f

14 files changed

+365
-317
lines changed

src/main/java/org/woehlke/twitterwall/scheduled/service/backend/impl/TwitterApiServiceImpl.java

Lines changed: 22 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,12 @@ public List<Tweet> findTweetsForSearchQuery() {
3535
fetchedTweets = getTwitterProxy().searchOperations().search(twitterProperties.getSearchQuery(), twitterProperties.getPageSize()).getTweets();
3636
} catch (Exception e) {
3737
fetchedTweets = new ArrayList<>();
38-
log.debug(msg + e.getMessage());
38+
log.error(msg + e.getMessage());
3939
e.printStackTrace();
4040
}
4141
msg += " result: ";
4242
if(fetchedTweets.size()==0){
43-
log.debug(msg+" result.size: 0");
43+
log.error(msg+" result.size: 0");
4444
return new ArrayList<>();
4545
} else {
4646
log.debug(msg+" result.size: "+fetchedTweets.size());
@@ -55,49 +55,50 @@ public Tweet findOneTweetById(long id) {
5555
Tweet result;
5656
try {
5757
result = getTwitterProxy().timelineOperations().getStatus(id);
58+
log.debug(msg+" Id: "+result.getId());
59+
msg += " result: ";
60+
log.debug(msg+result);
5861
} catch (Exception e){
5962
result = null;
60-
log.debug(msg + e.getMessage());
63+
log.error(msg + e.getMessage());
6164
e.printStackTrace();
6265
}
63-
msg += " result: ";
64-
log.debug(msg+" Id: "+result.getId());
6566
return result;
6667
}
6768

6869
@Override
6970
public List<TwitterProfile> getUserProfilesForTwitterIds(long... userProfileTwitterIds) {
70-
String msg = MSG+"getUserProfileForTwitterId: "+userProfileTwitterIds;
71+
String msg = MSG+"getUserProfileForTwitterId: "+userProfileTwitterIds+" : ";
7172
log.debug(msg);
7273
List<TwitterProfile> result;
7374
try {
7475
result = getTwitterProxy().userOperations().getUsers(userProfileTwitterIds);
76+
msg += " result: ";
77+
log.debug(msg+" size: "+result.size());
7578
} catch (Exception e){
7679
result = null;
77-
log.debug(msg + e.getMessage());
80+
log.error(msg + e.getMessage());
7881
e.printStackTrace();
7982
}
80-
msg += " result: ";
81-
log.debug(msg+" size: "+result.size());
8283
return result;
8384
}
8485

8586
@Override
8687
public TwitterProfile getUserProfileForTwitterId(long userProfileTwitterId) {
87-
String msg = MSG+"getUserProfileForTwitterId: "+userProfileTwitterId;
88+
String msg = MSG+"getUserProfileForTwitterId: "+userProfileTwitterId+" : ";
8889
log.debug(msg);
8990
TwitterProfile result;
9091
try {
9192
result = getTwitterProxy().userOperations().getUserProfile(userProfileTwitterId);
93+
msg += " result: ";
94+
log.debug(msg+" Id: "+result.getId());
95+
log.debug(msg+" ScreenName: "+result.getScreenName());
96+
log.debug(msg+" Name: "+result.getName());
9297
} catch (Exception e) {
9398
result = null;
94-
log.debug(msg + e.getMessage());
99+
log.error(msg + e.getMessage());
95100
e.printStackTrace();
96101
}
97-
msg += " result: ";
98-
log.debug(msg+" Id: "+result.getId());
99-
log.debug(msg+" ScreenName: "+result.getScreenName());
100-
log.debug(msg+" Name: "+result.getName());
101102
return result;
102103
}
103104

@@ -108,14 +109,14 @@ public TwitterProfile getUserProfileForScreenName(String screenName) {
108109
TwitterProfile result;
109110
try {
110111
result= getTwitterProxy().userOperations().getUserProfile(screenName);
112+
msg += " result: ";
113+
log.debug(msg+" ScreenName: "+result.getScreenName());
114+
log.debug(msg+" Name: "+result.getName());
111115
} catch (Exception e) {
112116
result = null;
113117
log.debug(msg + e.getMessage());
114118
e.printStackTrace();
115119
}
116-
msg += " result: ";
117-
log.debug(msg+" ScreenName: "+result.getScreenName());
118-
log.debug(msg+" Name: "+result.getName());
119120
return result;
120121
}
121122

@@ -126,12 +127,12 @@ public List<TwitterProfile> findUsersFromDefinedList(String screenName,String fe
126127
List<TwitterProfile> result;
127128
try {
128129
result = getTwitterProxy().listOperations().getListMembers(screenName, fetchUserListName);
130+
log.debug(msg+" result.size: "+result.size());
129131
} catch (Exception e) {
130132
result = new ArrayList<>();
131133
log.debug(msg + e.getMessage());
132134
e.printStackTrace();
133135
}
134-
log.debug(msg+" result.size: "+result.size());
135136
return result;
136137
}
137138

@@ -150,20 +151,8 @@ private Twitter getTwitterProxy() {
150151
String accessToken = environment.getProperty("TWITTER_ACCESS_TOKEN");
151152
String accessTokenSecret = environment.getProperty("TWITTER_ACCESS_TOKEN_SECRET");
152153

153-
/*
154-
String consumerKey = twitterProperties.getConsumerSecret();
155-
String consumerSecret = twitterProperties.getConsumerSecret();
156-
String accessToken = twitterProperties.getAccessToken();
157-
String accessTokenSecret =twitterProperties.getConsumerSecret());
158-
159-
String consumerKey = twitterwallBackendProperties.getTwitter().getConsumerSecret();
160-
String consumerSecret = twitterwallBackendProperties.getTwitter().getConsumerSecret();
161-
String accessToken = twitterwallBackendProperties.getTwitter().getAccessToken();
162-
String accessTokenSecret = twitterwallBackendProperties.getTwitter().getConsumerSecret();
163-
*/
164-
165-
Twitter twitter = new TwitterTemplate(consumerKey, consumerSecret, accessToken, accessTokenSecret);
166-
return twitter;
154+
Twitter twitterTemplate = new TwitterTemplate(consumerKey, consumerSecret, accessToken, accessTokenSecret);
155+
return twitterTemplate;
167156
}
168157

169158
private String MSG = "Remote API Call ";

src/main/java/org/woehlke/twitterwall/scheduled/service/persist/impl/CountedEntitiesServiceImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ public class CountedEntitiesServiceImpl implements CountedEntitiesService {
2121

2222
@Override
2323
public CountedEntities countAll() {
24+
String msg = "countAll: ";
2425
CountedEntities c = new CountedEntities();
2526

2627
long countUser = userRepository.count();
@@ -57,7 +58,7 @@ public CountedEntities countAll() {
5758
c.setUserprofile2tickersymbol(userRepository.countAllUser2TickerSymbol());
5859
c.setUserprofile2url(userRepository.countAllUser2Url());
5960

60-
log.debug("countAll: "+c.toString());
61+
log.debug(msg+c.toString());
6162
return c;
6263
}
6364

src/main/java/org/woehlke/twitterwall/scheduled/service/persist/impl/CreatePersistentMentionImpl.java

Lines changed: 31 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -44,35 +44,40 @@ public class CreatePersistentMentionImpl implements CreatePersistentMention {
4444
*/
4545
@Override
4646
public Mention getPersistentMentionAndUserFor(Mention mention, Task task) {
47-
String msg = "getPersistentMentionAndUserFor:";
48-
String screenName = mention.getScreenName();
49-
User foundUser = storeTwitterProfileForProxyMentionForUser.storeTwitterProfileForProxyMentionForUser(mention,task);
50-
if(foundUser != null){
51-
if(foundUser.getScreenName().compareTo(mention.getScreenName())!=0){
52-
String eventMsg = msg + "KNOWN_BUG - ScreenName user: "+foundUser.getScreenName()+" mention: "+mention.getScreenName();
53-
log.warn(eventMsg);
54-
mention.setScreenName(foundUser.getScreenName());
55-
screenName = foundUser.getScreenName();
56-
}
57-
Mention persMention = null;
58-
Mention myFoundMention = mentionService.findByScreenName(screenName);
59-
if(myFoundMention!=null){
60-
myFoundMention.setUser(foundUser);
61-
myFoundMention.setIdTwitterOfUser(foundUser.getIdTwitter());
62-
persMention = mentionService.update(myFoundMention,task);
63-
log.debug(msg+" updated: "+persMention.toString());
47+
String msg = "getPersistentMentionAndUserFor: "+mention.getUniqueId()+" : "+task.getUniqueId() +" : ";
48+
try {
49+
String screenName = mention.getScreenName();
50+
User foundUser = storeTwitterProfileForProxyMentionForUser.storeTwitterProfileForProxyMentionForUser(mention, task);
51+
if (foundUser != null) {
52+
if (foundUser.getScreenName().compareTo(mention.getScreenName()) != 0) {
53+
String eventMsg = msg + "KNOWN_BUG - ScreenName user: " + foundUser.getScreenName() + " mention: " + mention.getScreenName();
54+
log.warn(eventMsg);
55+
mention.setScreenName(foundUser.getScreenName());
56+
screenName = foundUser.getScreenName();
57+
}
58+
Mention persMention = null;
59+
Mention myFoundMention = mentionService.findByScreenName(screenName);
60+
if (myFoundMention != null) {
61+
myFoundMention.setUser(foundUser);
62+
myFoundMention.setIdTwitterOfUser(foundUser.getIdTwitter());
63+
persMention = mentionService.update(myFoundMention, task);
64+
log.debug(msg + " updated: " + persMention.toString());
65+
} else {
66+
mention.setUser(foundUser);
67+
mention.setIdTwitterOfUser(foundUser.getIdTwitter());
68+
persMention = mentionService.createProxyMention(mention, task);
69+
log.debug(msg + " persisted: " + persMention.toString());
70+
}
71+
return persMention;
6472
} else {
65-
mention.setUser(foundUser);
66-
mention.setIdTwitterOfUser(foundUser.getIdTwitter());
67-
persMention = mentionService.createProxyMention(mention,task);
68-
log.debug(msg+" persisted: "+persMention.toString());
73+
String eventMsg = msg + "ERROR: useful Persistent Mention expectet, but there is none!";
74+
log.error(eventMsg);
75+
return null;
6976
}
70-
return persMention;
71-
} else {
72-
String eventMsg = msg+"ERROR: useful Persistent Mention expectet, but there is none!";
73-
log.error(eventMsg);
74-
return null;
77+
} catch (Exception e){
78+
log.error(msg+e.getMessage());
7579
}
80+
return null;
7681
}
7782

7883
private static final Logger log = LoggerFactory.getLogger(CreatePersistentMentionImpl.class);

src/main/java/org/woehlke/twitterwall/scheduled/service/persist/impl/CreatePersistentUrlImpl.java

Lines changed: 74 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -26,90 +26,95 @@ public class CreatePersistentUrlImpl implements CreatePersistentUrl {
2626

2727
@Override
2828
public Url createPersistentUrlFor(String url, Task task) {
29-
String msg = "Url.createPersistentUrlFor url="+url+" ";
30-
if (url == null) {
31-
return null;
32-
} else {
33-
log.debug(msg + " try to find ");
34-
Url urlPers = urlRepository.findByUrl(url);
35-
if (urlPers != null) {
36-
log.debug(msg + " found: " + urlPers);
37-
if (urlPers.isUrlAndExpandedTheSame()) {
38-
log.debug(msg + " urlPers.isUrlAndExpandedTheSame " + urlPers.toString());
39-
Url myTransientUrl = twitterUrlService.fetchTransientUrl(url,task);
40-
if (myTransientUrl == null) {
41-
log.debug(msg + "nothing found by fetchTransientUrl");
42-
return null;
43-
} else {
44-
urlPers.setExpanded(myTransientUrl.getExpanded());
45-
String displayUrl = myTransientUrl.getExpanded();
46-
try {
47-
URL newURL = new URL(myTransientUrl.getExpanded());
48-
displayUrl = newURL.getHost();
49-
} catch (MalformedURLException exe) {
50-
log.warn(exe.getMessage());
51-
}
52-
urlPers.setDisplay(displayUrl);
53-
}
54-
}
55-
urlPers.setUpdatedBy(task);
56-
urlPers = urlRepository.save(urlPers);
57-
return urlPers;
29+
String msg = "Url.createPersistentUrlFor url="+url+" "+task.getUniqueId()+" : ";
30+
try {
31+
if (url == null) {
32+
return null;
5833
} else {
59-
log.debug(msg + " not found ");
60-
log.debug(msg + " try to find UrlCache");
61-
UrlCache urlCache = urlCacheRepository.findByUrl(url);
62-
if (urlCache != null) {
63-
log.debug(msg + " found: " + urlCache);
64-
String displayUrl = urlCache.getExpanded();
65-
try {
66-
URL myURL = new URL(urlCache.getExpanded());
67-
displayUrl = myURL.getHost();
68-
} catch (MalformedURLException exe) {
69-
log.warn(exe.getMessage());
70-
}
71-
Url newUrl = new Url(task, null, displayUrl, urlCache.getExpanded(), urlCache.getUrl());
72-
log.debug(msg + " try to persist: " + newUrl.toString());
73-
newUrl = urlRepository.save(newUrl);
74-
//TODO: delete ?
75-
if((!newUrl.isRawUrlsFromDescription())&&(!newUrl.isUrlAndExpandedTheSame())){
76-
urlCacheRepository.delete(urlCache);
77-
}
78-
log.debug(msg + " persisted: " + newUrl.toString());
79-
return newUrl;
80-
} else {
81-
urlCache = new UrlCache(task,null,url);
82-
log.debug(msg + " try to fetchTransientUrl");
83-
Url myTransientUrl = twitterUrlService.fetchTransientUrl(url,task);
84-
if (myTransientUrl == null) {
85-
log.debug(msg + "nothing found by fetchTransientUrl");
86-
return null;
87-
} else {
88-
log.debug(msg + " found by fetchTransientUrl: " + myTransientUrl);
89-
urlCache.setExpanded(myTransientUrl.getExpanded());
90-
log.debug(msg + " try to persist: " + urlCache.toString());
91-
if (urlCache.isUrlAndExpandedTheSame()) {
92-
log.debug(msg + " not persisted: " + urlCache.toString());
34+
log.debug(msg + " try to find ");
35+
Url urlPers = urlRepository.findByUrl(url);
36+
if (urlPers != null) {
37+
log.debug(msg + " found: " + urlPers);
38+
if (urlPers.isUrlAndExpandedTheSame()) {
39+
log.debug(msg + " urlPers.isUrlAndExpandedTheSame " + urlPers.toString());
40+
Url myTransientUrl = twitterUrlService.fetchTransientUrl(url, task);
41+
if (myTransientUrl == null) {
42+
log.debug(msg + "nothing found by fetchTransientUrl");
43+
return null;
9344
} else {
94-
urlCache = urlCacheRepository.save(urlCache);
95-
log.debug(msg + " persisted: " + urlCache.toString());
45+
urlPers.setExpanded(myTransientUrl.getExpanded());
46+
String displayUrl = myTransientUrl.getExpanded();
47+
try {
48+
URL newURL = new URL(myTransientUrl.getExpanded());
49+
displayUrl = newURL.getHost();
50+
} catch (MalformedURLException exe) {
51+
log.warn(exe.getMessage());
52+
}
53+
urlPers.setDisplay(displayUrl);
9654
}
97-
String displayUrl = myTransientUrl.getExpanded();
55+
}
56+
urlPers.setUpdatedBy(task);
57+
urlPers = urlRepository.save(urlPers);
58+
return urlPers;
59+
} else {
60+
log.debug(msg + " not found ");
61+
log.debug(msg + " try to find UrlCache");
62+
UrlCache urlCache = urlCacheRepository.findByUrl(url);
63+
if (urlCache != null) {
64+
log.debug(msg + " found: " + urlCache);
65+
String displayUrl = urlCache.getExpanded();
9866
try {
99-
URL newURL = new URL(myTransientUrl.getExpanded());
100-
displayUrl = newURL.getHost();
67+
URL myURL = new URL(urlCache.getExpanded());
68+
displayUrl = myURL.getHost();
10169
} catch (MalformedURLException exe) {
10270
log.warn(exe.getMessage());
10371
}
104-
Url newUrl = new Url(task,null,displayUrl, myTransientUrl.getExpanded(), myTransientUrl.getUrl());
72+
Url newUrl = new Url(task, null, displayUrl, urlCache.getExpanded(), urlCache.getUrl());
10573
log.debug(msg + " try to persist: " + newUrl.toString());
10674
newUrl = urlRepository.save(newUrl);
75+
//TODO: delete ?
76+
if ((!newUrl.isRawUrlsFromDescription()) && (!newUrl.isUrlAndExpandedTheSame())) {
77+
urlCacheRepository.delete(urlCache);
78+
}
10779
log.debug(msg + " persisted: " + newUrl.toString());
10880
return newUrl;
81+
} else {
82+
urlCache = new UrlCache(task, null, url);
83+
log.debug(msg + " try to fetchTransientUrl");
84+
Url myTransientUrl = twitterUrlService.fetchTransientUrl(url, task);
85+
if (myTransientUrl == null) {
86+
log.debug(msg + "nothing found by fetchTransientUrl");
87+
return null;
88+
} else {
89+
log.debug(msg + " found by fetchTransientUrl: " + myTransientUrl);
90+
urlCache.setExpanded(myTransientUrl.getExpanded());
91+
log.debug(msg + " try to persist: " + urlCache.toString());
92+
if (urlCache.isUrlAndExpandedTheSame()) {
93+
log.debug(msg + " not persisted: " + urlCache.toString());
94+
} else {
95+
urlCache = urlCacheRepository.save(urlCache);
96+
log.debug(msg + " persisted: " + urlCache.toString());
97+
}
98+
String displayUrl = myTransientUrl.getExpanded();
99+
try {
100+
URL newURL = new URL(myTransientUrl.getExpanded());
101+
displayUrl = newURL.getHost();
102+
} catch (MalformedURLException exe) {
103+
log.warn(exe.getMessage());
104+
}
105+
Url newUrl = new Url(task, null, displayUrl, myTransientUrl.getExpanded(), myTransientUrl.getUrl());
106+
log.debug(msg + " try to persist: " + newUrl.toString());
107+
newUrl = urlRepository.save(newUrl);
108+
log.debug(msg + " persisted: " + newUrl.toString());
109+
return newUrl;
110+
}
109111
}
110112
}
111113
}
114+
} catch (Exception e){
115+
log.error(msg,e.getMessage());
112116
}
117+
return null;
113118
}
114119

115120
private static final Logger log = LoggerFactory.getLogger(CreatePersistentUrlImpl.class);

0 commit comments

Comments
 (0)