11package org .woehlke .twitterwall .frontend .controller ;
22
3+ import org .slf4j .Logger ;
4+ import org .slf4j .LoggerFactory ;
35import org .springframework .beans .factory .annotation .Autowired ;
46import org .springframework .data .domain .Page ;
57import org .springframework .data .domain .PageRequest ;
1113import org .springframework .web .bind .annotation .RequestMapping ;
1214import org .springframework .web .bind .annotation .RequestParam ;
1315import org .woehlke .twitterwall .conf .properties .FrontendProperties ;
16+ import org .woehlke .twitterwall .conf .properties .TwitterProperties ;
1417import org .woehlke .twitterwall .frontend .controller .common .Symbols ;
1518import org .woehlke .twitterwall .frontend .controller .common .ControllerHelper ;
1619import org .woehlke .twitterwall .oodm .entities .Task ;
1720import org .woehlke .twitterwall .oodm .entities .TaskHistory ;
21+ import org .woehlke .twitterwall .oodm .entities .User ;
1822import org .woehlke .twitterwall .oodm .service .TaskHistoryService ;
1923import org .woehlke .twitterwall .oodm .service .TaskService ;
24+ import org .woehlke .twitterwall .oodm .service .UserService ;
2025import org .woehlke .twitterwall .scheduled .mq .endoint .AsyncStartTask ;
26+ import org .woehlke .twitterwall .scheduled .mq .endoint .StartTask ;
2127
2228/**
2329 * Created by tw on 11.07.17.
@@ -62,63 +68,105 @@ public String getTaskById(
6268 return PATH +"/id" ;
6369 }
6470
65- @ RequestMapping (path ="/scheduled/tweets/fetch" )
71+ @ RequestMapping ("/start/createTestData" )
72+ public String getTestData (Model model ) {
73+ model = controllerHelper .setupPage (
74+ model ,"Test Data Tweets" ,
75+ twitterProperties .getSearchQuery (),
76+ Symbols .GET_TEST_DATA .toString ()
77+ );
78+ String msg = PATH +"/start/createTestData: " ;
79+ if (frontendProperties .getContextTest ()){
80+ model .addAttribute ("latestTweets" , mqStartTask .createTestDataForTweets ());
81+ model .addAttribute ("users" , mqStartTask .createTestDataForUser ());
82+ } else {
83+ model .addAttribute ("latestTweets" ,null );
84+ model .addAttribute ("users" ,null );
85+ }
86+ return PATH +"/start/createTestData" ;
87+ }
88+
89+ @ RequestMapping ("/start/user/onlist/renew" )
90+ public String getOnListRenew (
91+ @ RequestParam (name = "page" ,defaultValue ="" + ControllerHelper .FIRST_PAGE_NUMBER ) int page ,
92+ Model model
93+ ) {
94+ Pageable pageRequest = new PageRequest (page , frontendProperties .getPageSize ());
95+ String msg = "getOnListRenew: " ;
96+ log .info (msg +"START startTask.fetchUsersFromDefinedUserList: " );
97+ mqAsyncStartTask .fetchUsersFromDefinedUserList ();
98+ log .info (msg +"DONE startTask.fetchUsersFromDefinedUserList: " );
99+ log .info (msg +"START userService.findOnList(): " );
100+ Page <User > usersOnList = userService .getOnList (pageRequest );
101+ log .info (msg +"DONE userService.findOnList(): " );
102+ model .addAttribute ("users" , usersOnList );
103+ String symbol = Symbols .LEAF .toString ();
104+ String title = "Renew List of Users On List" ;
105+ model = controllerHelper .setupPage (model , title , "Users" , symbol );
106+ return PATH +"/start/renew" ;
107+ }
108+
109+ @ RequestMapping (path ="/start/tweets/search" )
66110 public String fetchTweetsFromTwitterSearchStartTask (Model model ) {
67- String msg = "/scheduled /tweets/fetch " ;
111+ String msg = "/start /tweets/search " ;
68112 String title = "Scheduled Task started" ;
69- String subtitle = "/scheduled /tweets/fetch " ;
113+ String subtitle = "/start /tweets/search " ;
70114 String symbol = Symbols .TASK .toString ();
71115 model = controllerHelper .setupPage (model ,title ,subtitle ,symbol );
72116 mqAsyncStartTask .fetchTweetsFromTwitterSearch ();
73- return PATH +"scheduled /taskStarted" ;
117+ return PATH +"/start /taskStarted" ;
74118 }
75119
76- @ RequestMapping (path ="/scheduled /tweets/update" )
120+ @ RequestMapping (path ="/start /tweets/update" )
77121 public String updateTweetsStartTask (Model model ) {
78- String msg = "/scheduled /tweets/fetch" ;
122+ String msg = "/start /tweets/fetch" ;
79123 String title = "Scheduled Task started" ;
80- String subtitle = "/scheduled /tweets/fetch " ;
124+ String subtitle = "/start /tweets/update " ;
81125 String symbol = Symbols .TASK .toString ();
82126 model = controllerHelper .setupPage (model ,title ,subtitle ,symbol );
83127 mqAsyncStartTask .updateTweets ();
84- return PATH +"scheduled /taskStarted" ;
128+ return PATH +"/start /taskStarted" ;
85129 }
86130
87- @ RequestMapping (path ="/scheduled /users/list/fetch" )
131+ @ RequestMapping (path ="/start /users/list/fetch" )
88132 public String fetchUsersFromDefinedUserListStartTask (Model model ){
89- String msg = "/scheduled /users/list/fetch" ;
133+ String msg = "/start /users/list/fetch" ;
90134 String title = "Scheduled Task started" ;
91- String subtitle = "/scheduled /users/list/fetch" ;
135+ String subtitle = "/start /users/list/fetch" ;
92136 String symbol = Symbols .TASK .toString ();
93137 model = controllerHelper .setupPage (model ,title ,subtitle ,symbol );
94138 mqAsyncStartTask .fetchUsersFromDefinedUserList ();
95- return PATH +"scheduled /taskStarted" ;
139+ return PATH +"/start /taskStarted" ;
96140 }
97141
98- @ RequestMapping (path ="/scheduled /users/mentions/update" )
142+ @ RequestMapping (path ="/start /users/mentions/update" )
99143 public String updateUserProfilesFromMentionsStartTask (Model model ){
100- String msg = "/scheduled /users/mentions/update" ;
144+ String msg = "/start /users/mentions/update" ;
101145 String title = "Scheduled Task started" ;
102- String subtitle = "/scheduled /users/mentions/update" ;
146+ String subtitle = "/start /users/mentions/update" ;
103147 String symbol = Symbols .TASK .toString ();
104148 model = controllerHelper .setupPage (model ,title ,subtitle ,symbol );
105149 mqAsyncStartTask .updateUserProfilesFromMentions ();
106- return PATH +"scheduled /taskStarted" ;
150+ return PATH +"/start /taskStarted" ;
107151 }
108152
109- @ RequestMapping (path ="/scheduled /users/update" )
153+ @ RequestMapping (path ="/start /users/update" )
110154 public String updateUserProfilesStartTask (Model model ) {
111- String msg = "/scheduled /users/update" ;
155+ String msg = "/start /users/update" ;
112156 String title = "Scheduled Task started" ;
113- String subtitle = "/scheduled /users/update" ;
157+ String subtitle = "/start /users/update" ;
114158 String symbol = Symbols .TASK .toString ();
115159 model = controllerHelper .setupPage (model ,title ,subtitle ,symbol );
116160 mqAsyncStartTask .updateUserProfiles ();
117- return PATH +"scheduled /taskStarted" ;
161+ return PATH +"/start /taskStarted" ;
118162 }
119163
164+ private static final Logger log = LoggerFactory .getLogger (TaskController .class );
165+
120166 private final String PATH = "/task" ;
121167
168+ private final UserService userService ;
169+
122170 private final TaskService taskService ;
123171
124172 private final TaskHistoryService taskHistoryService ;
@@ -129,19 +177,27 @@ public String updateUserProfilesStartTask(Model model) {
129177
130178 private final AsyncStartTask mqAsyncStartTask ;
131179
180+ private final TwitterProperties twitterProperties ;
181+
182+ private final StartTask mqStartTask ;
183+
184+
132185 @ Autowired
133186 public TaskController (
134- TaskService taskService ,
187+ UserService userService , TaskService taskService ,
135188 TaskHistoryService taskHistoryService ,
136189 FrontendProperties frontendProperties ,
137190 ControllerHelper controllerHelper ,
138- AsyncStartTask mqAsyncStartTask
139- ) {
191+ AsyncStartTask mqAsyncStartTask ,
192+ TwitterProperties twitterProperties , StartTask mqStartTask ) {
193+ this .userService = userService ;
140194 this .taskService = taskService ;
141195 this .taskHistoryService = taskHistoryService ;
142196 this .frontendProperties = frontendProperties ;
143197 this .controllerHelper = controllerHelper ;
144198 this .mqAsyncStartTask = mqAsyncStartTask ;
199+ this .twitterProperties = twitterProperties ;
200+ this .mqStartTask = mqStartTask ;
145201 }
146202
147203}
0 commit comments