Revision 59807
Added by Konstantinos Triantafyllou over 3 years ago
modules/dnet-openaire-users/trunk/src/main/java/eu/dnetlib/openaire/usermanagement/RegisterServiceServlet.java | ||
---|---|---|
151 | 151 |
String serviceId = request.getParameter("id"); |
152 | 152 |
|
153 | 153 |
String name = request.getParameter("first_name").trim(); |
154 |
if (name == null || name.isEmpty()) {
|
|
154 |
if (name.isEmpty()) { |
|
155 | 155 |
request.getSession().setAttribute("first_name_error", true); |
156 | 156 |
canProceed = false; |
157 | 157 |
} |
... | ... | |
192 | 192 |
} |
193 | 193 |
String userid = authentication.getSub(); |
194 | 194 |
String email = authentication.getUserInfo().getEmail(); |
195 |
String serverRequestJSON; |
|
196 |
if (keyType.equals("uri")){ |
|
197 |
serverRequestJSON = createServiceJson(name, email, jwksUri); |
|
198 |
} else { |
|
199 |
serverRequestJSON = createServiceJson(name, email, jwks); |
|
200 |
} |
|
201 |
|
|
202 |
System.out.println("SERVER JSON " + serverRequestJSON); |
|
203 |
|
|
204 | 195 |
ServiceResponse serviceResponse = null; |
205 | 196 |
|
206 | 197 |
if (nameIsValid(name) && userInfoIsValid(userid, email) && keyIsValid(keyType, jwksUri, jwksString) && canProceed) { |
... | ... | |
210 | 201 |
if(mode.equals("create")) { |
211 | 202 |
//Careful! Redirects in method |
212 | 203 |
checkNumberOfRegisteredServices(request, response, authentication); |
204 |
String serverRequestJSON; |
|
205 |
if (keyType.equals("uri")){ |
|
206 |
serverRequestJSON = createServiceJson(null, name, email, jwksUri); |
|
207 |
} else { |
|
208 |
serverRequestJSON = createServiceJson(null, name, email, jwks); |
|
209 |
} |
|
213 | 210 |
|
211 |
System.out.println("SERVER JSON " + serverRequestJSON); |
|
214 | 212 |
|
215 | 213 |
serverMessage = tokenUtils.registerService(serverRequestJSON); |
216 | 214 |
logger.debug(serverMessage); |
... | ... | |
237 | 235 |
return; |
238 | 236 |
} |
239 | 237 |
} else { |
240 |
int serviceIdInt = 0; |
|
241 |
|
|
238 |
int serviceIdInt = 0; |
|
242 | 239 |
if (serviceId == null || serviceId.isEmpty()) { //TODO WRONG MESSAGE |
243 | 240 |
request.getSession().setAttribute("message", "Service with id " + serviceId + " does not exist."); |
244 | 241 |
response.sendRedirect("./registeredServices"); |
... | ... | |
252 | 249 |
response.sendRedirect("./registeredServices"); |
253 | 250 |
} |
254 | 251 |
|
255 |
RegisteredService registeredService = null; |
|
256 |
registeredService = registeredServicesUtils.getRegisteredServiceDao().fetchRegisteredServiceById(serviceIdInt); |
|
257 |
|
|
252 |
RegisteredService registeredService = registeredServicesUtils.getRegisteredServiceDao().fetchRegisteredServiceById(serviceIdInt); |
|
258 | 253 |
if (registeredService != null && registeredService.getClientId() != null) { |
259 |
serviceResponse = tokenUtils.getRegisteredService(registeredService.getClientId(), registeredService.getRegistrationAccessToken()); |
|
254 |
String serverRequestJSON; |
|
255 |
if (keyType.equals("uri")){ |
|
256 |
serverRequestJSON = createServiceJson(registeredService.getClientId(), name, email, jwksUri); |
|
257 |
} else { |
|
258 |
serverRequestJSON = createServiceJson(registeredService.getClientId(), name, email, jwks); |
|
259 |
} |
|
260 |
System.out.println("SERVER JSON " + serverRequestJSON); |
|
260 | 261 |
HttpResponse resp = tokenUtils.updateService(registeredService.getClientId(), serverRequestJSON, registeredService.getRegistrationAccessToken()); |
261 |
|
|
262 | 262 |
if (resp.getStatusLine().getStatusCode()==200) { |
263 | 263 |
System.out.println("NAME >>>>" + name); |
264 | 264 |
registeredService.setName(name); |
... | ... | |
275 | 275 |
} |
276 | 276 |
|
277 | 277 |
request.getSession().setAttribute("success", "Your service with name " + name + " was successfully updated.The id of your service " + |
278 |
"is " + serviceResponse.getClientId());
|
|
278 |
"is " + registeredService.getClientId());
|
|
279 | 279 |
} |
280 | 280 |
|
281 | 281 |
} else { |
... | ... | |
358 | 358 |
} |
359 | 359 |
} |
360 | 360 |
|
361 |
private static String createServiceJson(String name, String email, String jwksURI) { |
|
361 |
private static String createServiceJson(String clientId, String name, String email, String jwksURI) {
|
|
362 | 362 |
ServiceRequest serviceJSON = new ServiceRequest(); |
363 |
serviceJSON.setClientId(clientId); |
|
363 | 364 |
serviceJSON.setClientName(name); |
364 | 365 |
serviceJSON.setContacts(new String[]{email}); |
365 | 366 |
serviceJSON.setJwksUri(jwksURI); |
... | ... | |
371 | 372 |
return gson.toJson(serviceJSON); |
372 | 373 |
} |
373 | 374 |
|
374 |
private static String createServiceJson(String name, String email, Jwks jwks) { |
|
375 |
private static String createServiceJson(String clientId, String name, String email, Jwks jwks) {
|
|
375 | 376 |
ServiceRequest serviceJSON = new ServiceRequest(); |
377 |
serviceJSON.setClientId(clientId); |
|
376 | 378 |
serviceJSON.setClientName(name); |
377 | 379 |
serviceJSON.setContacts(new String[]{email}); |
378 | 380 |
serviceJSON.setJwks(jwks); |
Also available in: Unified diff
[Users]: Fix update service