diff --git a/.travis.yml b/.travis.yml index 870dd56dc..cd0979ffa 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,14 +10,18 @@ before_install: jobs: include: + - stage: javaformat + script: ./mvnw clean spring-javaformat:apply - stage: test - script: ./mvnw clean test + script: ./mvnw test - stage: verify script: ./mvnw verify + - stage: sonar + script: ./mvnw verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar cache: directories: - $HOME/.m2 notifications: -# email: email@provider.com + email: pedsf.fullstack@gmail.com diff --git a/pom.xml b/pom.xml index 5cb46af2d..6d8de588a 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ 1.9.0 8.32 - 0.8.5 + 0.8.6 4.13 1.0.0 1.18.12 @@ -42,6 +42,26 @@ 0.0.4.RELEASE 0.0.25 2.2.4.RELEASE + + + + + + ${env.SONAR_PETCLINIC_PROJECTKEY} + ${env.SONAR_ORGANIZATION} + https://sonarcloud.io + ${env.SONAR_PETCLINIC_TOKEN} + java + jacoco + reuseReports + 3.7.0.1746 + target/site/jacoco/jacoco.xml,../target/site/jacoco-aggregate/jacoco.xml + + org/springframework/samples/petclinic/common/*.java, + org/springframework/samples/petclinic/dto/*.java, + org/springframework/samples/petclinic/model/*.java + org/springframework/samples/petclinic/repository/*.java + @@ -253,6 +273,21 @@ + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + + org.sonarsource.scanner.maven + sonar-maven-plugin + 3.6.0.1398 + + + + io.spring.javaformat @@ -322,10 +357,33 @@ + org.jacoco jacoco-maven-plugin ${jacoco.version} + + + prepare-and-report + + prepare-agent + report + + + + report-aggregate + verify + + report-aggregate + + + ${project.basedir}/../target/site/jacoco-aggregate + + + + + @@ -561,6 +619,7 @@ + diff --git a/readme.md b/readme.md index 4bcd71455..41c2d2f55 100644 --- a/readme.md +++ b/readme.md @@ -26,7 +26,6 @@ Or you can run it from Maven directly using the Spring Boot Maven plugin. If you ## In case you find a bug/suggested improvement for Spring Petclinic Our issue tracker is available here: https://github.com/spring-projects/spring-petclinic/issues - ## Database configuration In its default configuration, Petclinic uses an in-memory database (H2) which @@ -43,6 +42,50 @@ docker run -e MYSQL_USER=petclinic -e MYSQL_PASSWORD=petclinic -e MYSQL_ROOT_PAS Further documentation is provided [here](https://github.com/spring-projects/spring-petclinic/blob/main/src/main/resources/db/mysql/petclinic_db_setup_mysql.txt). +## Email configuration for Mailtrap +Open an account on https://mailtrap.io to see email exchanges. +Set environment variables for Mailtrap connection : +- SPRING_MAIL_USERNAME +- SPRING_MAIL_PASSWORD + +Theses values are used in application.properties. + +## Oauth2 configuration for login with Google, Facebook and Github +Open an API account on the provider you want to add. +Set the environment variable corresponding. +- OAUTH2_GOOGLE_CLIENT_ID +- OAUTH2_GOOGLE_CLIENT_SECRET +- OAUTH2_GITHUB_CLIENT_ID +- OAUTH2_GITHUB_CLIENT_SECRET +- OAUTH2_FACEBOOK_CLIENT_ID +- OAUTH2_FACEBOOK_CLIENT_SECRET + +Theses values are used in oauth2.properties. +Decomment corresponding lines in src/main/resources/oauth2.properties for using it on your project. + +## SonarQube configuration +Open an account on https://sonarcloud.io. +Link SonarQube to your repository on GitHub, GitLab... +Start a new project for spring-petclinic. +Setup manually the configuration for your project with Maven and set values in your environment for : +- SONAR_PETCLINIC_PROJECTKEY +- SONAR_ORGANIZATION +- SONAR_PETCLINIC_TOKEN + +Theses values are used in lines below from pom.xml. + +``` +${env.SONAR_PETCLINIC_PROJECTKEY} +${env.SONAR_ORGANIZATION} +https://sonarcloud.io +${env.SONAR_PETCLINIC_TOKEN} +``` + +## Travis-CI Configuration +Open an account on https://travis-ci.org +Link Travis-CI to your repository on GitHub, GitLab... +Set environment variable in your Travis-CI project for Mailtrap, Oauth2 and SonarQube. + ## Working with Petclinic in your IDE ### Prerequisites diff --git a/src/main/java/org/springframework/samples/petclinic/common/CommonAttribute.java b/src/main/java/org/springframework/samples/petclinic/common/CommonAttribute.java index 03a359e13..44097280c 100644 --- a/src/main/java/org/springframework/samples/petclinic/common/CommonAttribute.java +++ b/src/main/java/org/springframework/samples/petclinic/common/CommonAttribute.java @@ -37,14 +37,14 @@ public final class CommonAttribute { public static final String PET = "pet"; - public static final String SELECTIONS = "selections"; - public static final String PET_BIRTH_DATE = "birthDate"; public static final String PET_NAME = "name"; public static final String PET_TYPE = "type"; + public static final String SELECTIONS = "selections"; + public static final String TOKEN = "token"; public static final String URLS = "urls"; diff --git a/src/main/java/org/springframework/samples/petclinic/dto/business/OwnerDTO.java b/src/main/java/org/springframework/samples/petclinic/dto/business/OwnerDTO.java index cdb11a6ff..f8b76b776 100644 --- a/src/main/java/org/springframework/samples/petclinic/dto/business/OwnerDTO.java +++ b/src/main/java/org/springframework/samples/petclinic/dto/business/OwnerDTO.java @@ -15,6 +15,8 @@ */ package org.springframework.samples.petclinic.dto.business; +import lombok.Getter; +import lombok.Setter; import org.springframework.beans.support.MutableSortDefinition; import org.springframework.beans.support.PropertyComparator; import org.springframework.core.style.ToStringCreator; @@ -30,6 +32,8 @@ import java.util.*; * * @author Paul-Emmanuel DOS SANTOS FACAO */ +@Getter +@Setter public class OwnerDTO extends PersonDTO { @NotEmpty @@ -44,30 +48,6 @@ public class OwnerDTO extends PersonDTO { private Set pets; - public String getAddress() { - return this.address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getCity() { - return this.city; - } - - public void setCity(String city) { - this.city = city; - } - - public String getTelephone() { - return this.telephone; - } - - public void setTelephone(String telephone) { - this.telephone = telephone; - } - protected Set getPetsInternal() { if (this.pets == null) { this.pets = new HashSet<>(); diff --git a/src/main/java/org/springframework/samples/petclinic/dto/business/PetDTO.java b/src/main/java/org/springframework/samples/petclinic/dto/business/PetDTO.java index f9f76be70..4a0c13f5d 100644 --- a/src/main/java/org/springframework/samples/petclinic/dto/business/PetDTO.java +++ b/src/main/java/org/springframework/samples/petclinic/dto/business/PetDTO.java @@ -15,6 +15,8 @@ */ package org.springframework.samples.petclinic.dto.business; +import lombok.Getter; +import lombok.Setter; import org.springframework.beans.support.MutableSortDefinition; import org.springframework.beans.support.PropertyComparator; import org.springframework.format.annotation.DateTimeFormat; @@ -28,6 +30,8 @@ import java.util.*; * * @author Paul-Emmanuel DOS SANTOS FACAO */ +@Getter +@Setter public class PetDTO extends NamedDTO { @DateTimeFormat(pattern = "yyyy-MM-dd") @@ -39,30 +43,6 @@ public class PetDTO extends NamedDTO { private Set visits = new LinkedHashSet<>(); - public void setBirthDate(LocalDate birthDate) { - this.birthDate = birthDate; - } - - public LocalDate getBirthDate() { - return this.birthDate; - } - - public PetTypeDTO getType() { - return this.type; - } - - public void setType(PetTypeDTO type) { - this.type = type; - } - - public OwnerDTO getOwner() { - return owner; - } - - public void setOwner(OwnerDTO owner) { - this.owner = owner; - } - protected Set getVisitsInternal() { if (this.visits == null) { this.visits = new HashSet<>(); diff --git a/src/main/java/org/springframework/samples/petclinic/dto/business/VisitDTO.java b/src/main/java/org/springframework/samples/petclinic/dto/business/VisitDTO.java index 35a669177..5a7829ba3 100644 --- a/src/main/java/org/springframework/samples/petclinic/dto/business/VisitDTO.java +++ b/src/main/java/org/springframework/samples/petclinic/dto/business/VisitDTO.java @@ -15,6 +15,8 @@ */ package org.springframework.samples.petclinic.dto.business; +import lombok.Getter; +import lombok.Setter; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.samples.petclinic.dto.common.BaseDTO; import org.springframework.samples.petclinic.model.business.Visit; @@ -27,6 +29,8 @@ import java.time.LocalDate; * * @author Paul-Emmanuel DOS SANTOS FACAO */ +@Getter +@Setter public class VisitDTO extends BaseDTO { @DateTimeFormat(pattern = "yyyy-MM-dd") @@ -44,30 +48,6 @@ public class VisitDTO extends BaseDTO { this.date = LocalDate.now(); } - public LocalDate getDate() { - return this.date; - } - - public void setDate(LocalDate date) { - this.date = date; - } - - public String getDescription() { - return this.description; - } - - public void setDescription(String description) { - this.description = description; - } - - public Integer getPetId() { - return this.petId; - } - - public void setPetId(Integer petId) { - this.petId = petId; - } - @Override public boolean equals(Object o) { if (this == o) diff --git a/src/main/java/org/springframework/samples/petclinic/dto/common/BaseDTO.java b/src/main/java/org/springframework/samples/petclinic/dto/common/BaseDTO.java index 7ea6032b9..b9edb47c8 100644 --- a/src/main/java/org/springframework/samples/petclinic/dto/common/BaseDTO.java +++ b/src/main/java/org/springframework/samples/petclinic/dto/common/BaseDTO.java @@ -15,6 +15,9 @@ */ package org.springframework.samples.petclinic.dto.common; +import lombok.Getter; +import lombok.Setter; + import java.io.Serializable; /** @@ -23,30 +26,14 @@ import java.io.Serializable; * * @author Paul-Emmanuel DOS SANTOS FACAO */ +@Getter +@Setter public class BaseDTO implements Serializable { private Integer id; - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - public boolean isNew() { return this.id == null; } - /* - * @Override public boolean equals(Object o) { if (this == o) return true; - * - * if (!(o instanceof BaseDTO)) return false; - * - * BaseDTO baseDTO = (BaseDTO) o; - * - * return new EqualsBuilder().append(getId(), baseDTO.getId()).isEquals(); } - */ - } diff --git a/src/main/java/org/springframework/samples/petclinic/dto/common/PersonDTO.java b/src/main/java/org/springframework/samples/petclinic/dto/common/PersonDTO.java index 3282bb495..cb6261cc2 100644 --- a/src/main/java/org/springframework/samples/petclinic/dto/common/PersonDTO.java +++ b/src/main/java/org/springframework/samples/petclinic/dto/common/PersonDTO.java @@ -15,8 +15,8 @@ */ package org.springframework.samples.petclinic.dto.common; -import org.apache.commons.lang3.builder.EqualsBuilder; -import org.apache.commons.lang3.builder.HashCodeBuilder; +import lombok.Getter; +import lombok.Setter; import javax.validation.constraints.NotEmpty; @@ -25,6 +25,8 @@ import javax.validation.constraints.NotEmpty; * * @author Paul-Emmanuel DOS SANTOS FACAO */ +@Getter +@Setter public class PersonDTO extends BaseDTO { @NotEmpty @@ -33,22 +35,6 @@ public class PersonDTO extends BaseDTO { @NotEmpty private String lastName; - public String getFirstName() { - return this.firstName; - } - - public void setFirstName(String firstName) { - this.firstName = firstName; - } - - public String getLastName() { - return this.lastName; - } - - public void setLastName(String lastName) { - this.lastName = lastName; - } - @Override public boolean equals(Object o) { if (this == o) diff --git a/src/main/java/org/springframework/samples/petclinic/dto/common/UserDTO.java b/src/main/java/org/springframework/samples/petclinic/dto/common/UserDTO.java index c1d08bd8b..a0b83f798 100644 --- a/src/main/java/org/springframework/samples/petclinic/dto/common/UserDTO.java +++ b/src/main/java/org/springframework/samples/petclinic/dto/common/UserDTO.java @@ -3,10 +3,8 @@ package org.springframework.samples.petclinic.dto.common; import lombok.Getter; import lombok.Setter; import org.apache.commons.lang3.builder.EqualsBuilder; -import org.apache.commons.lang3.builder.HashCodeBuilder; import org.springframework.samples.petclinic.common.CommonError; import org.springframework.samples.petclinic.common.CommonParameter; -import org.springframework.samples.petclinic.model.common.Role; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.security.core.userdetails.UserDetails; diff --git a/src/main/java/org/springframework/samples/petclinic/model/business/Owner.java b/src/main/java/org/springframework/samples/petclinic/model/business/Owner.java index 8a2b344f9..645568990 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/business/Owner.java +++ b/src/main/java/org/springframework/samples/petclinic/model/business/Owner.java @@ -29,6 +29,8 @@ import javax.persistence.Table; import javax.validation.constraints.Digits; import javax.validation.constraints.NotEmpty; +import lombok.Getter; +import lombok.Setter; import org.springframework.beans.support.MutableSortDefinition; import org.springframework.beans.support.PropertyComparator; import org.springframework.core.style.ToStringCreator; @@ -43,7 +45,9 @@ import org.springframework.samples.petclinic.model.common.Person; * @author Sam Brannen * @author Michael Isvy */ -@Entity +@Getter +@Setter +@Entity(name = "Owner") @Table(name = "owners") public class Owner extends Person { @@ -63,30 +67,6 @@ public class Owner extends Person { @OneToMany(cascade = CascadeType.ALL, mappedBy = "owner") private Set pets; - public String getAddress() { - return this.address; - } - - public void setAddress(String address) { - this.address = address; - } - - public String getCity() { - return this.city; - } - - public void setCity(String city) { - this.city = city; - } - - public String getTelephone() { - return this.telephone; - } - - public void setTelephone(String telephone) { - this.telephone = telephone; - } - protected Set getPetsInternal() { if (this.pets == null) { this.pets = new HashSet<>(); diff --git a/src/main/java/org/springframework/samples/petclinic/model/business/Pet.java b/src/main/java/org/springframework/samples/petclinic/model/business/Pet.java index 0b612264c..4fe6fd206 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/business/Pet.java +++ b/src/main/java/org/springframework/samples/petclinic/model/business/Pet.java @@ -31,6 +31,8 @@ import javax.persistence.ManyToOne; import javax.persistence.Table; import javax.persistence.Transient; +import lombok.Getter; +import lombok.Setter; import org.springframework.beans.support.MutableSortDefinition; import org.springframework.beans.support.PropertyComparator; import org.springframework.format.annotation.DateTimeFormat; @@ -43,7 +45,9 @@ import org.springframework.samples.petclinic.model.common.NamedEntity; * @author Juergen Hoeller * @author Sam Brannen */ -@Entity +@Getter +@Setter +@Entity(name = "Pet") @Table(name = "pets") public class Pet extends NamedEntity { @@ -62,30 +66,6 @@ public class Pet extends NamedEntity { @Transient private Set visits = new LinkedHashSet<>(); - public void setBirthDate(LocalDate birthDate) { - this.birthDate = birthDate; - } - - public LocalDate getBirthDate() { - return this.birthDate; - } - - public PetType getType() { - return this.type; - } - - public void setType(PetType type) { - this.type = type; - } - - public Owner getOwner() { - return this.owner; - } - - public void setOwner(Owner owner) { - this.owner = owner; - } - protected Set getVisitsInternal() { if (this.visits == null) { this.visits = new HashSet<>(); diff --git a/src/main/java/org/springframework/samples/petclinic/model/business/Vet.java b/src/main/java/org/springframework/samples/petclinic/model/business/Vet.java index 4ab2169e8..b6a354af1 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/business/Vet.java +++ b/src/main/java/org/springframework/samples/petclinic/model/business/Vet.java @@ -41,7 +41,7 @@ import org.springframework.samples.petclinic.model.common.Person; * @author Sam Brannen * @author Arjen Poutsma */ -@Entity +@Entity(name = "Vet") @Table(name = "vets") public class Vet extends Person { diff --git a/src/main/java/org/springframework/samples/petclinic/model/common/AuthProvider.java b/src/main/java/org/springframework/samples/petclinic/model/common/AuthProvider.java index 7f20acc6f..94f7630dc 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/common/AuthProvider.java +++ b/src/main/java/org/springframework/samples/petclinic/model/common/AuthProvider.java @@ -12,11 +12,11 @@ import javax.persistence.Table; * * @author Paul-Emmanuel DOS SANTOS FACAO */ -@Entity(name = "AuthProvider") -@Table(name = "auth_providers") -@NoArgsConstructor @Getter @Setter +@NoArgsConstructor +@Entity(name = "AuthProvider") +@Table(name = "auth_providers") public class AuthProvider extends NamedEntity { public AuthProvider(Integer id, String name) { diff --git a/src/main/java/org/springframework/samples/petclinic/model/common/Credential.java b/src/main/java/org/springframework/samples/petclinic/model/common/Credential.java index 8b754741a..4168bf679 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/common/Credential.java +++ b/src/main/java/org/springframework/samples/petclinic/model/common/Credential.java @@ -21,12 +21,12 @@ import java.util.UUID; * * @author Paul-Emmanuel DOS SANTOS FACAO */ -@Entity(name = "Credential") -@Table(name = "credentials") @Getter @Setter @NoArgsConstructor @AllArgsConstructor +@Entity(name = "Credential") +@Table(name = "credentials") public class Credential extends BaseEntity { private static final int TOKEN_EXPIRATION = 60 * 24; diff --git a/src/main/java/org/springframework/samples/petclinic/model/common/Privilege.java b/src/main/java/org/springframework/samples/petclinic/model/common/Privilege.java index bdeda4668..5f4fc6537 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/common/Privilege.java +++ b/src/main/java/org/springframework/samples/petclinic/model/common/Privilege.java @@ -11,12 +11,12 @@ import java.io.Serializable; import java.util.Collection; import java.util.HashSet; -@Entity -@Table(name = "privileges") @Getter @Setter @NoArgsConstructor @AllArgsConstructor +@Entity(name = "Privilege") +@Table(name = "privileges") public class Privilege implements Serializable { @Id diff --git a/src/main/java/org/springframework/samples/petclinic/model/common/Role.java b/src/main/java/org/springframework/samples/petclinic/model/common/Role.java index b5add48f1..db49b9803 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/common/Role.java +++ b/src/main/java/org/springframework/samples/petclinic/model/common/Role.java @@ -18,12 +18,12 @@ import java.util.HashSet; * * @author Paul-Emmanuel DOS SANTOS FACAO */ -@Entity -@Table(name = "roles") @Getter @Setter @NoArgsConstructor @AllArgsConstructor +@Entity(name = "Role") +@Table(name = "roles") public class Role implements Serializable { @Id diff --git a/src/main/java/org/springframework/samples/petclinic/model/common/User.java b/src/main/java/org/springframework/samples/petclinic/model/common/User.java index 6132e9c7c..35bf1860a 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/common/User.java +++ b/src/main/java/org/springframework/samples/petclinic/model/common/User.java @@ -2,8 +2,6 @@ package org.springframework.samples.petclinic.model.common; import lombok.Getter; import lombok.Setter; -import org.apache.commons.lang3.builder.EqualsBuilder; -import org.apache.commons.lang3.builder.HashCodeBuilder; import org.springframework.samples.petclinic.common.CommonError; import org.springframework.samples.petclinic.common.CommonParameter; import org.springframework.security.core.GrantedAuthority; @@ -22,10 +20,10 @@ import java.util.*; * * @author Paul-Emmanuel DOS SANTOS FACAO */ -@Entity -@Table(name = "users") @Getter @Setter +@Entity(name = "User") +@Table(name = "users") public class User extends Person implements Serializable, UserDetails { @NotNull diff --git a/src/main/java/org/springframework/samples/petclinic/model/common/WebSocketMessage.java b/src/main/java/org/springframework/samples/petclinic/model/common/WebSocketMessage.java index 4449f0aab..d3f64ec16 100644 --- a/src/main/java/org/springframework/samples/petclinic/model/common/WebSocketMessage.java +++ b/src/main/java/org/springframework/samples/petclinic/model/common/WebSocketMessage.java @@ -1,5 +1,8 @@ package org.springframework.samples.petclinic.model.common; +import lombok.Getter; +import lombok.Setter; + import java.time.LocalDate; /** @@ -7,6 +10,8 @@ import java.time.LocalDate; * * @author Paul-Emmanuel DOS SANTOS FACAO */ +@Getter +@Setter public class WebSocketMessage { public static final String ALERT = "alert"; @@ -39,36 +44,4 @@ public class WebSocketMessage { this.type = type; } - public String getSender() { - return sender; - } - - public void setSender(String sender) { - this.sender = sender; - } - - public String getTime() { - return time; - } - - public void setTime(String time) { - this.time = time; - } - - public String getContent() { - return content; - } - - public void setContent(String content) { - this.content = content; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - } diff --git a/src/main/java/org/springframework/samples/petclinic/repository/CredentialRepository.java b/src/main/java/org/springframework/samples/petclinic/repository/CredentialRepository.java index d99dddbce..d6ace6730 100644 --- a/src/main/java/org/springframework/samples/petclinic/repository/CredentialRepository.java +++ b/src/main/java/org/springframework/samples/petclinic/repository/CredentialRepository.java @@ -4,7 +4,6 @@ import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.Repository; import org.springframework.data.repository.query.Param; import org.springframework.samples.petclinic.model.common.Credential; -import org.springframework.samples.petclinic.model.common.User; import org.springframework.transaction.annotation.Transactional; import java.util.List; diff --git a/src/main/java/org/springframework/samples/petclinic/service/common/CredentialService.java b/src/main/java/org/springframework/samples/petclinic/service/common/CredentialService.java index dbca25462..49825fa32 100644 --- a/src/main/java/org/springframework/samples/petclinic/service/common/CredentialService.java +++ b/src/main/java/org/springframework/samples/petclinic/service/common/CredentialService.java @@ -8,7 +8,6 @@ import org.springframework.samples.petclinic.model.common.AuthProvider; import org.springframework.samples.petclinic.model.common.Credential; import org.springframework.samples.petclinic.repository.AuthProviderRepository; import org.springframework.samples.petclinic.repository.CredentialRepository; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.oauth2.client.authentication.OAuth2AuthenticationToken; import org.springframework.stereotype.Service; @@ -22,16 +21,12 @@ public class CredentialService { private final CredentialRepository credentialRepository; - private final BCryptPasswordEncoder bCryptPasswordEncoder; - private final AuthProviderRepository authProviderRepository; private final ModelMapper modelMapper = new ModelMapper(); - public CredentialService(CredentialRepository credentialRepository, BCryptPasswordEncoder bCryptPasswordEncoder, - AuthProviderRepository authProviderRepository) { + public CredentialService(CredentialRepository credentialRepository, AuthProviderRepository authProviderRepository) { this.credentialRepository = credentialRepository; - this.bCryptPasswordEncoder = bCryptPasswordEncoder; this.authProviderRepository = authProviderRepository; } diff --git a/src/main/java/org/springframework/samples/petclinic/service/common/EmailService.java b/src/main/java/org/springframework/samples/petclinic/service/common/EmailService.java index b4e4f49e4..7482a6019 100644 --- a/src/main/java/org/springframework/samples/petclinic/service/common/EmailService.java +++ b/src/main/java/org/springframework/samples/petclinic/service/common/EmailService.java @@ -17,6 +17,11 @@ import javax.mail.internet.MimeMessage; import java.util.Date; import java.util.Locale; +/** + * Simple Service to send email from PetClinic to users. + * + * @author Paul-Emmanuel DOS SANTOS FACAO + */ @Slf4j @Service("EmailService") public class EmailService { diff --git a/src/main/java/org/springframework/samples/petclinic/service/common/PrivilegeService.java b/src/main/java/org/springframework/samples/petclinic/service/common/PrivilegeService.java index dae5c7f64..cb24add14 100644 --- a/src/main/java/org/springframework/samples/petclinic/service/common/PrivilegeService.java +++ b/src/main/java/org/springframework/samples/petclinic/service/common/PrivilegeService.java @@ -73,9 +73,7 @@ public class PrivilegeService implements BaseService { Collection privileges = privilegeRepository.findAll(); List privilegeDTOS = new ArrayList<>(); - privileges.forEach(privilege -> { - privilegeDTOS.add(entityToDTO(privilege)); - }); + privileges.forEach(privilege -> privilegeDTOS.add(entityToDTO(privilege))); return privilegeDTOS; } diff --git a/src/main/java/org/springframework/samples/petclinic/service/common/SecurityServiceImpl.java b/src/main/java/org/springframework/samples/petclinic/service/common/SecurityServiceImpl.java index 639e9675d..84d8e834e 100644 --- a/src/main/java/org/springframework/samples/petclinic/service/common/SecurityServiceImpl.java +++ b/src/main/java/org/springframework/samples/petclinic/service/common/SecurityServiceImpl.java @@ -1,6 +1,5 @@ package org.springframework.samples.petclinic.service.common; -import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; @@ -8,7 +7,12 @@ import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Service; -@Slf4j +/** + * Simple Service between AuthProvider entity and AuthProviderDTO Data Transfert Object. + * + * @author Paul-Emmanuel DOS SANTOS FACAO + */ + @Service("SecurityService") public class SecurityServiceImpl implements SecurityService { diff --git a/src/main/java/org/springframework/samples/petclinic/service/common/UserDetailsServiceImpl.java b/src/main/java/org/springframework/samples/petclinic/service/common/UserDetailsServiceImpl.java index 1858299f8..0ee1d56c0 100644 --- a/src/main/java/org/springframework/samples/petclinic/service/common/UserDetailsServiceImpl.java +++ b/src/main/java/org/springframework/samples/petclinic/service/common/UserDetailsServiceImpl.java @@ -1,6 +1,5 @@ package org.springframework.samples.petclinic.service.common; -import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.samples.petclinic.dto.common.UserDTO; import org.springframework.security.core.userdetails.UserDetails; @@ -9,7 +8,11 @@ import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; -@Slf4j +/** + * Simple Service to get UserDetails for authentification from UserService. + * + * @author Paul-Emmanuel DOS SANTOS FACAO + */ @Service("UserDetailsService") public class UserDetailsServiceImpl implements UserDetailsService { diff --git a/src/main/java/org/springframework/samples/petclinic/service/common/UserService.java b/src/main/java/org/springframework/samples/petclinic/service/common/UserService.java index 87c5731aa..71a20cd1e 100644 --- a/src/main/java/org/springframework/samples/petclinic/service/common/UserService.java +++ b/src/main/java/org/springframework/samples/petclinic/service/common/UserService.java @@ -81,9 +81,7 @@ public class UserService implements BaseService { Collection users = userRepository.findAll(); List userDTOS = new ArrayList<>(); - users.forEach(user -> { - userDTOS.add(entityToDTO(user)); - }); + users.forEach(user -> userDTOS.add(entityToDTO(user))); return userDTOS; } diff --git a/src/main/resources/oauth2.properties b/src/main/resources/oauth2.properties index 11a92be04..3d4adbfc4 100644 --- a/src/main/resources/oauth2.properties +++ b/src/main/resources/oauth2.properties @@ -2,17 +2,10 @@ spring.security.oauth2.client.registration.google.client-id=${OAUTH2_GOOGLE_CLIENT_ID} spring.security.oauth2.client.registration.google.client-secret=${OAUTH2_GOOGLE_CLIENT_SECRET} -#spring.security.oauth2.client.registration.github.client-id=${OAUTH2_GITHUB_CLIENT_ID} -#spring.security.oauth2.client.registration.github.client-secret=${OAUTH2_GITHUB_CLIENT_SECRET} -spring.security.oauth2.client.registration.github.client-id=d3e47fc2ddd966fa4352 -spring.security.oauth2.client.registration.github.client-secret=3bc0f6b8332f93076354c2a5bada2f5a05aea60d +spring.security.oauth2.client.registration.github.client-id=${OAUTH2_GITHUB_CLIENT_ID} +spring.security.oauth2.client.registration.github.client-secret=${OAUTH2_GITHUB_CLIENT_SECRET} +#spring.security.oauth2.client.registration.facebook.client-id=${OAUTH2_FACEBOOK_CLIENT_ID} +#spring.security.oauth2.client.registration.facebook.client-secret=${OAUTH2_FACEBOOK_CLIENT_SECRET} spring.security.oauth2.client.registration.facebook.client-id=121189305185277 spring.security.oauth2.client.registration.facebook.client-secret=42ffe5aa7379e8326387e0fe16f34132 - -#spring.security.oauth2.client.registration.twitter.client-id=YrtJmnJJjpxEH3289eVyFxCNt -#spring.security.oauth2.client.registration.twitter.client-secret=aMMFcgJlGpSKvAuiwBgWSXCzjzcOezLgGZtkdmGISUPk7CIzcB - -#spring.security.oauth2.client.registration.linkedin.client-id=121189305185277 -#spring.security.oauth2.client.registration.linkedin.client-secret=42ffe5aa7379e8326387e0fe16f34132 - diff --git a/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceIntegrationTest.java b/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceIntegrationTest.java index 881228c20..1581cef2f 100644 --- a/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceIntegrationTest.java +++ b/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceIntegrationTest.java @@ -62,7 +62,7 @@ class CredentialServiceIntegrationTest { void beforeEach() { allCredentials = credentialRepository.findAll(); - credentialService = new CredentialService(credentialRepository, bCryptPasswordEncoder, authProviderRepository); + credentialService = new CredentialService(credentialRepository, authProviderRepository); authProvider = new AuthProvider(PROVIDER_TEST_ID, PROVIDER_TEST_NAME); credential = new Credential(PROVIDER_TEST_ID, EMAIL_TEST, PASSWORD_TEST, true); credential.setToken(TOKEN_TEST); diff --git a/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceTest.java b/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceTest.java index b10456cc8..de05f2eab 100644 --- a/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceTest.java +++ b/src/test/java/org/springframework/samples/petclinic/service/common/CredentialServiceTest.java @@ -59,7 +59,7 @@ class CredentialServiceTest { @BeforeEach void beforeEach() { - credentialService = new CredentialService(credentialRepository, bCryptPasswordEncoder, authProviderRepository); + credentialService = new CredentialService(credentialRepository, authProviderRepository); authProvider = new AuthProvider(PROVIDER_TEST_ID, PROVIDER_TEST_NAME); credential = new Credential(PROVIDER_TEST_ID, EMAIL_TEST, PASSWORD_TEST, true); credential.setToken(TOKEN_TEST);