diff --git a/src/main/java/eu/dnetlib/developers/entities/RegisteredService.java b/src/main/java/eu/dnetlib/developers/entities/RegisteredService.java index c458c1e..69a658b 100644 --- a/src/main/java/eu/dnetlib/developers/entities/RegisteredService.java +++ b/src/main/java/eu/dnetlib/developers/entities/RegisteredService.java @@ -1,5 +1,8 @@ package eu.dnetlib.developers.entities; +import eu.dnetlib.developers.dto.ServiceForm; +import eu.dnetlib.developers.dto.ServiceRequest; +import eu.dnetlib.developers.dto.ServiceResponse; import eu.dnetlib.developers.utils.StringListConverter; import javax.persistence.*; @@ -30,15 +33,21 @@ public class RegisteredService { this.creationDate = new Date(); } - public RegisteredService(String owner, String name, String url, String keyType, String description, String frequency, List target, String issuer) { + public RegisteredService(String owner, String issuer) { this.owner = owner; - this.name = name; - this.keyType = keyType; - this.description = description; - this.frequency = frequency; - this.target = target; - this.creationDate = new Date(); this.issuer = issuer; + this.creationDate = new Date(); + } + + public void setService(ServiceForm form, ServiceResponse response) { + this.clientId = response.getClientId(); + this.name = form.getName(); + this.registrationAccessToken = response.getRegistrationAccessToken(); + this.keyType = form.getKeyType(); + this.url = form.getUrl(); + this.description = form.getDescription(); + this.frequency = form.getFrequency(); + this.target = form.getTarget(); } public Long getId() { diff --git a/src/main/java/eu/dnetlib/developers/services/APIService.java b/src/main/java/eu/dnetlib/developers/services/APIService.java index 8d11ae5..4d7d496 100644 --- a/src/main/java/eu/dnetlib/developers/services/APIService.java +++ b/src/main/java/eu/dnetlib/developers/services/APIService.java @@ -80,7 +80,7 @@ public class APIService { api.setService(service); api.setDetails(readService(service.getClientId(), service.getRegistrationAccessToken())); } else { - api.setService(new RegisteredService(authentication.getSub(), form.getName(), form.getUrl(), form.getKeyType(), form.getDescription(), form.getFrequency(), form.getTarget(), issuer)); + api.setService(new RegisteredService(authentication.getSub(), issuer)); } String keyType = form.getKeyType(); if(keyType != null && keyType.equals("uri")) { @@ -109,14 +109,7 @@ public class APIService { throw new ForbiddenException("You are not allowed to own more than 5 services."); } } - api.getService().setKeyType(form.getKeyType()); - api.getService().setUrl(form.getUrl()); - api.getService().setDescription(form.getDescription()); - api.getService().setFrequency(form.getFrequency()); - api.getService().setTarget(form.getTarget()); - api.getService().setName(request.getClientName()); - api.getService().setClientId(response.getClientId()); - api.getService().setRegistrationAccessToken(response.getRegistrationAccessToken()); + api.getService().setService(form, response); api.setService(this.dao.save(api.getService())); api.setDetails(response); return api;