[{"title":"( 61 个子文件 98KB ) desafio-java-concrete-源码","children":[{"title":"desafio-java-concrete-master","children":[{"title":"gradlew.bat <span style='color:#111;'> 2.21KB </span>","children":null,"spread":false},{"title":"gradlew <span style='color:#111;'> 5.17KB </span>","children":null,"spread":false},{"title":"WEB-INF","children":[{"title":"web.xml <span style='color:#111;'> 636B </span>","children":null,"spread":false}],"spread":true},{"title":"gradle","children":[{"title":"wrapper","children":[{"title":"gradle-wrapper.jar <span style='color:#111;'> 53.43KB </span>","children":null,"spread":false},{"title":"gradle-wrapper.properties <span style='color:#111;'> 232B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"src","children":[{"title":"test","children":[{"title":"java","children":[{"title":"com","children":[{"title":"concrete","children":[{"title":"desafiojava","children":[{"title":"api","children":[{"title":"v1","children":[{"title":"UsersRestServiceTest.java <span style='color:#111;'> 2.85KB </span>","children":null,"spread":false},{"title":"UserServiceTest.java <span style='color:#111;'> 6.71KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"service","children":[{"title":"token","children":[{"title":"TokenServiceImplTest.java <span style='color:#111;'> 2.11KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"main","children":[{"title":"resources","children":[{"title":"application.properties <span style='color:#111;'> 388B </span>","children":null,"spread":false},{"title":"messages.properties <span style='color:#111;'> 598B </span>","children":null,"spread":false}],"spread":true},{"title":"java","children":[{"title":"com","children":[{"title":"concrete","children":[{"title":"desafiojava","children":[{"title":"exception","children":[{"title":"SessionException.java <span style='color:#111;'> 627B </span>","children":null,"spread":false},{"title":"MessageErrorResponse.java <span style='color:#111;'> 293B </span>","children":null,"spread":false},{"title":"RestResponseEntityExceptionHandler.java <span style='color:#111;'> 3.77KB </span>","children":null,"spread":false},{"title":"EmailFoundException.java <span style='color:#111;'> 658B </span>","children":null,"spread":false},{"title":"ErrorObject.java <span style='color:#111;'> 309B </span>","children":null,"spread":false},{"title":"UserNotFoundException.java <span style='color:#111;'> 658B </span>","children":null,"spread":false},{"title":"AuthenticationException.java <span style='color:#111;'> 669B </span>","children":null,"spread":false},{"title":"InvalidPasswordEmailException.java <span style='color:#111;'> 705B </span>","children":null,"spread":false},{"title":"FieldErrorResponse.java <span style='color:#111;'> 405B </span>","children":null,"spread":false}],"spread":true},{"title":"domain","children":[{"title":"repository","children":[{"title":"ApplicationUserRepository.java <span style='color:#111;'> 481B </span>","children":null,"spread":false},{"title":"PhoneRepository.java <span style='color:#111;'> 448B </span>","children":null,"spread":false}],"spread":false},{"title":"orm","children":[{"title":"ApplicationUser.java <span style='color:#111;'> 776B </span>","children":null,"spread":false},{"title":"Phone.java <span style='color:#111;'> 695B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"api","children":[{"title":"v1","children":[{"title":"user","children":[{"title":"UserRequest.java <span style='color:#111;'> 783B </span>","children":null,"spread":false},{"title":"UserInput.java <span style='color:#111;'> 373B </span>","children":null,"spread":false},{"title":"UserResponse.java <span style='color:#111;'> 545B </span>","children":null,"spread":false},{"title":"PhoneInput.java <span style='color:#111;'> 291B </span>","children":null,"spread":false},{"title":"PhoneRequest.java <span style='color:#111;'> 646B </span>","children":null,"spread":false},{"title":"UsersRestService.java <span style='color:#111;'> 2.17KB </span>","children":null,"spread":false},{"title":"PhoneResponse.java <span style='color:#111;'> 311B </span>","children":null,"spread":false}],"spread":false},{"title":"security","children":[{"title":"SecurityConstants.java <span style='color:#111;'> 522B </span>","children":null,"spread":false}],"spread":false},{"title":"login","children":[{"title":"LoginInput.java <span style='color:#111;'> 295B </span>","children":null,"spread":false},{"title":"LoginRequest.java <span style='color:#111;'> 313B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false},{"title":"components","children":[{"title":"Messages.java <span style='color:#111;'> 597B </span>","children":null,"spread":false}],"spread":false},{"title":"security","children":[{"title":"WebSecurity.java <span style='color:#111;'> 2.64KB </span>","children":null,"spread":false},{"title":"JWTAuthenticationFilter.java <span style='color:#111;'> 2.16KB </span>","children":null,"spread":false},{"title":"JWTAuthorizationFilter.java <span style='color:#111;'> 2.01KB </span>","children":null,"spread":false}],"spread":false},{"title":"configuration","children":[{"title":"CryptConfiguration.java <span style='color:#111;'> 406B </span>","children":null,"spread":false},{"title":"UserConfiguration.java <span style='color:#111;'> 367B </span>","children":null,"spread":false},{"title":"ValidatorConfiguration.java <span style='color:#111;'> 641B </span>","children":null,"spread":false}],"spread":false},{"title":"service","children":[{"title":"phone","children":[{"title":"IPhoneService.java <span style='color:#111;'> 355B </span>","children":null,"spread":false},{"title":"PhoneServiceImpl.java <span style='color:#111;'> 737B </span>","children":null,"spread":false}],"spread":false},{"title":"uuid","children":[{"title":"UuidService.java <span style='color:#111;'> 680B </span>","children":null,"spread":false},{"title":"IUuidService.java <span style='color:#111;'> 120B </span>","children":null,"spread":false},{"title":"UuidServiceImpl.java <span style='color:#111;'> 716B </span>","children":null,"spread":false}],"spread":false},{"title":"validation","children":[{"title":"IValidationService.java <span style='color:#111;'> 972B </span>","children":null,"spread":false},{"title":"ValidationServiceImpl.java <span style='color:#111;'> 2.53KB </span>","children":null,"spread":false}],"spread":false},{"title":"user","children":[{"title":"UserDetailsServiceImpl.java <span style='color:#111;'> 1.16KB </span>","children":null,"spread":false},{"title":"UserServiceImpl.java <span style='color:#111;'> 4.74KB </span>","children":null,"spread":false},{"title":"RequestServiceImpl.java <span style='color:#111;'> 1.46KB </span>","children":null,"spread":false},{"title":"IUserService.java <span style='color:#111;'> 969B </span>","children":null,"spread":false},{"title":"IInputService.java <span style='color:#111;'> 332B </span>","children":null,"spread":false},{"title":"InputServiceImpl.java <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"IRequestService.java <span style='color:#111;'> 350B </span>","children":null,"spread":false}],"spread":false},{"title":"token","children":[{"title":"ITokenService.java <span style='color:#111;'> 353B </span>","children":null,"spread":false},{"title":"TokenServiceImpl.java <span style='color:#111;'> 1.52KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"ConcreteJavaChallengeApplication.java <span style='color:#111;'> 702B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 276B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 2.83KB </span>","children":null,"spread":false},{"title":"settings.gradle <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"build.gradle <span style='color:#111;'> 1.70KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]