Revision 49852
Added by Panagiotis Kanakakis over 6 years ago
- Methods added on broker api
BrokerApiImpl.java | ||
---|---|---|
10 | 10 |
import eu.dnetlib.repo.manager.shared.broker.BrowseEntry; |
11 | 11 |
import eu.dnetlib.repo.manager.shared.broker.DatasourcesBroker; |
12 | 12 |
import eu.dnetlib.repo.manager.shared.broker.EventsPage; |
13 |
import org.apache.xpath.operations.Bool; |
|
13 | 14 |
import org.json.JSONException; |
14 | 15 |
import org.json.JSONObject; |
15 | 16 |
import org.springframework.beans.factory.annotation.Autowired; |
... | ... | |
44 | 45 |
DatasourcesBroker ret = new DatasourcesBroker(); |
45 | 46 |
|
46 | 47 |
String userEmail = json_params.getString("userEmail"); |
47 |
boolean includeShared = json_params.getBoolean("includeShared");
|
|
48 |
boolean includeByOthers = json_params.getBoolean("includeByOthers");
|
|
48 |
boolean includeShared = Boolean.parseBoolean( json_params.getString("includeShared") );
|
|
49 |
boolean includeByOthers = Boolean.parseBoolean( json_params.getString("includeByOthers") );
|
|
49 | 50 |
|
50 | 51 |
try { |
51 | 52 |
ret.setDatasourcesOfUser(getDatasourcesOfUserType(getRepositoriesOfUser(userEmail))); |
... | ... | |
93 | 94 |
public EventsPage advancedShowEvents(String params) throws BrokerException, JSONException { |
94 | 95 |
JSONObject json_params = new JSONObject(params); |
95 | 96 |
|
96 |
long page = json_params.getLong("page");
|
|
97 |
long pagesize = json_params.getLong("pagesize");
|
|
97 |
String page = json_params.getString("page");
|
|
98 |
String pagesize = json_params.getString("pagesize");
|
|
98 | 99 |
|
99 | 100 |
JSONObject json_advQueryObject = json_params.getJSONObject("advQueryObject"); |
100 | 101 |
ObjectMapper obj = new ObjectMapper(); |
... | ... | |
104 | 105 |
final String service = "/events/{page}/{pageSize}"; |
105 | 106 |
|
106 | 107 |
Map<String, Long> uriParams = new HashMap<>(); |
107 |
uriParams.put("page", page);
|
|
108 |
uriParams.put("pageSize", pagesize);
|
|
108 |
uriParams.put("page", Long.parseLong(page));
|
|
109 |
uriParams.put("pageSize", Long.parseLong(pagesize));
|
|
109 | 110 |
|
110 | 111 |
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(openairePath + service); |
111 | 112 |
|
112 | 113 |
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>(); |
113 | 114 |
headers.add("Content-Type", "application/json"); |
114 | 115 |
|
115 |
advQueryObject.setPage(page);
|
|
116 |
advQueryObject.setPage(Long.parseLong(page));
|
|
116 | 117 |
|
117 | 118 |
HttpEntity<AdvQueryObject> entity = new HttpEntity<>(advQueryObject, headers); |
118 | 119 |
|
... | ... | |
182 | 183 |
return null; |
183 | 184 |
} |
184 | 185 |
|
186 |
@Override |
|
187 |
public EventsPage showEvents(String params) throws BrokerException, JSONException { |
|
188 |
|
|
189 |
JSONObject json_params = new JSONObject(params); |
|
190 |
|
|
191 |
String datasourceName = json_params.getString("datasourceName"); |
|
192 |
String topic = json_params.getString("topic"); |
|
193 |
String page = json_params.getString("page"); |
|
194 |
|
|
195 |
final String service = "/showEvents"; |
|
196 |
|
|
197 |
//build the uri params |
|
198 |
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(openairePath + service) |
|
199 |
.queryParam("ds", datasourceName) |
|
200 |
.queryParam("topic", topic) |
|
201 |
.queryParam("page", page); |
|
202 |
|
|
203 |
//create new template engine |
|
204 |
RestTemplate template = new RestTemplate(); |
|
205 |
template.getMessageConverters().add(new MappingJackson2HttpMessageConverter()); |
|
206 |
ResponseEntity<EventsPage> resp; |
|
207 |
try { |
|
208 |
//communicate with endpoint |
|
209 |
resp = template.exchange( |
|
210 |
builder.build().encode().toUri(), |
|
211 |
HttpMethod.GET, |
|
212 |
null, |
|
213 |
new ParameterizedTypeReference<EventsPage>() { |
|
214 |
}); |
|
215 |
} catch (RestClientException e) { |
|
216 |
throw new BrokerException(e); |
|
217 |
} |
|
218 |
return resp.getBody(); |
|
219 |
} |
|
220 |
|
|
221 |
|
|
185 | 222 |
} |
Also available in: Unified diff