gitextract_15q1n21c/ ├── .github/ │ └── ISSUE_TEMPLATE/ │ └── bug-report-or-feature-request.md ├── .gitignore ├── .travis.yml ├── LICENCE ├── README.md ├── account-service/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── piggymetrics/ │ │ │ └── account/ │ │ │ ├── AccountApplication.java │ │ │ ├── client/ │ │ │ │ ├── AuthServiceClient.java │ │ │ │ ├── StatisticsServiceClient.java │ │ │ │ └── StatisticsServiceClientFallback.java │ │ │ ├── config/ │ │ │ │ └── ResourceServerConfig.java │ │ │ ├── controller/ │ │ │ │ ├── AccountController.java │ │ │ │ └── ErrorHandler.java │ │ │ ├── domain/ │ │ │ │ ├── Account.java │ │ │ │ ├── Currency.java │ │ │ │ ├── Item.java │ │ │ │ ├── Saving.java │ │ │ │ ├── TimePeriod.java │ │ │ │ └── User.java │ │ │ ├── repository/ │ │ │ │ └── AccountRepository.java │ │ │ └── service/ │ │ │ ├── AccountService.java │ │ │ ├── AccountServiceImpl.java │ │ │ └── security/ │ │ │ └── CustomUserInfoTokenServices.java │ │ └── resources/ │ │ └── bootstrap.yml │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── account/ │ │ ├── AccountServiceApplicationTests.java │ │ ├── client/ │ │ │ └── StatisticsServiceClientFallbackTest.java │ │ ├── controller/ │ │ │ └── AccountControllerTest.java │ │ ├── repository/ │ │ │ └── AccountRepositoryTest.java │ │ └── service/ │ │ └── AccountServiceTest.java │ └── resources/ │ ├── application.yml │ └── bootstrap.yml ├── auth-service/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── piggymetrics/ │ │ │ └── auth/ │ │ │ ├── AuthApplication.java │ │ │ ├── config/ │ │ │ │ ├── OAuth2AuthorizationConfig.java │ │ │ │ └── WebSecurityConfig.java │ │ │ ├── controller/ │ │ │ │ └── UserController.java │ │ │ ├── domain/ │ │ │ │ └── User.java │ │ │ ├── repository/ │ │ │ │ └── UserRepository.java │ │ │ └── service/ │ │ │ ├── UserService.java │ │ │ ├── UserServiceImpl.java │ │ │ └── security/ │ │ │ └── MongoUserDetailsService.java │ │ └── resources/ │ │ └── bootstrap.yml │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── auth/ │ │ ├── AuthServiceApplicationTests.java │ │ ├── controller/ │ │ │ └── UserControllerTest.java │ │ ├── repository/ │ │ │ └── UserRepositoryTest.java │ │ └── service/ │ │ ├── UserServiceTest.java │ │ └── security/ │ │ └── MongoUserDetailsServiceTest.java │ └── resources/ │ ├── application.yml │ └── bootstrap.yml ├── config/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── config/ │ │ ├── ConfigApplication.java │ │ └── SecurityConfig.java │ └── resources/ │ ├── application.yml │ └── shared/ │ ├── account-service.yml │ ├── application.yml │ ├── auth-service.yml │ ├── gateway.yml │ ├── monitoring.yml │ ├── notification-service.yml │ ├── registry.yml │ ├── statistics-service.yml │ └── turbine-stream-service.yml ├── docker-compose.dev.yml ├── docker-compose.yml ├── gateway/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── piggymetrics/ │ │ │ └── gateway/ │ │ │ └── GatewayApplication.java │ │ └── resources/ │ │ ├── bootstrap.yml │ │ └── static/ │ │ ├── attribution.html │ │ ├── css/ │ │ │ ├── animation.css │ │ │ ├── launch.css │ │ │ └── style.css │ │ ├── index.html │ │ └── js/ │ │ ├── dashboard.js │ │ ├── launch.js │ │ ├── lib/ │ │ │ ├── extrascripts.js │ │ │ └── touchscreens.js │ │ ├── login.js │ │ └── main.js │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── gateway/ │ │ └── GatewayApplicationTests.java │ └── resources/ │ └── bootstrap.yml ├── mongodb/ │ ├── Dockerfile │ ├── dump/ │ │ └── account-service-dump.js │ └── init.sh ├── monitoring/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── piggymetrics/ │ │ │ └── monitoring/ │ │ │ └── MonitoringApplication.java │ │ └── resources/ │ │ └── bootstrap.yml │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── monitoring/ │ │ └── MonitoringApplicationTests.java │ └── resources/ │ └── bootstrap.yml ├── notification-service/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── piggymetrics/ │ │ │ └── notification/ │ │ │ ├── NotificationServiceApplication.java │ │ │ ├── client/ │ │ │ │ └── AccountServiceClient.java │ │ │ ├── config/ │ │ │ │ └── ResourceServerConfig.java │ │ │ ├── controller/ │ │ │ │ └── RecipientController.java │ │ │ ├── domain/ │ │ │ │ ├── Frequency.java │ │ │ │ ├── NotificationSettings.java │ │ │ │ ├── NotificationType.java │ │ │ │ └── Recipient.java │ │ │ ├── repository/ │ │ │ │ ├── RecipientRepository.java │ │ │ │ └── converter/ │ │ │ │ ├── FrequencyReaderConverter.java │ │ │ │ └── FrequencyWriterConverter.java │ │ │ └── service/ │ │ │ ├── EmailService.java │ │ │ ├── EmailServiceImpl.java │ │ │ ├── NotificationService.java │ │ │ ├── NotificationServiceImpl.java │ │ │ ├── RecipientService.java │ │ │ └── RecipientServiceImpl.java │ │ └── resources/ │ │ └── bootstrap.yml │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── notification/ │ │ ├── NotificationServiceApplicationTests.java │ │ ├── controller/ │ │ │ └── RecipientControllerTest.java │ │ ├── repository/ │ │ │ └── RecipientRepositoryTest.java │ │ └── service/ │ │ ├── EmailServiceImplTest.java │ │ ├── NotificationServiceImplTest.java │ │ └── RecipientServiceImplTest.java │ └── resources/ │ ├── application.yml │ └── bootstrap.yml ├── pom.xml ├── registry/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ └── main/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── registry/ │ │ └── RegistryApplication.java │ └── resources/ │ └── bootstrap.yml ├── statistics-service/ │ ├── Dockerfile │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── piggymetrics/ │ │ │ └── statistics/ │ │ │ ├── StatisticsApplication.java │ │ │ ├── client/ │ │ │ │ ├── ExchangeRatesClient.java │ │ │ │ └── ExchangeRatesClientFallback.java │ │ │ ├── config/ │ │ │ │ └── ResourceServerConfig.java │ │ │ ├── controller/ │ │ │ │ └── StatisticsController.java │ │ │ ├── domain/ │ │ │ │ ├── Account.java │ │ │ │ ├── Currency.java │ │ │ │ ├── ExchangeRatesContainer.java │ │ │ │ ├── Item.java │ │ │ │ ├── Saving.java │ │ │ │ ├── TimePeriod.java │ │ │ │ └── timeseries/ │ │ │ │ ├── DataPoint.java │ │ │ │ ├── DataPointId.java │ │ │ │ ├── ItemMetric.java │ │ │ │ └── StatisticMetric.java │ │ │ ├── repository/ │ │ │ │ ├── DataPointRepository.java │ │ │ │ └── converter/ │ │ │ │ ├── DataPointIdReaderConverter.java │ │ │ │ └── DataPointIdWriterConverter.java │ │ │ └── service/ │ │ │ ├── ExchangeRatesService.java │ │ │ ├── ExchangeRatesServiceImpl.java │ │ │ ├── StatisticsService.java │ │ │ ├── StatisticsServiceImpl.java │ │ │ └── security/ │ │ │ └── CustomUserInfoTokenServices.java │ │ └── resources/ │ │ └── bootstrap.yml │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── statistics/ │ │ ├── StatisticsServiceApplicationTests.java │ │ ├── client/ │ │ │ └── ExchangeRatesClientTest.java │ │ ├── controller/ │ │ │ └── StatisticsControllerTest.java │ │ ├── repository/ │ │ │ └── DataPointRepositoryTest.java │ │ └── service/ │ │ ├── ExchangeRatesServiceImplTest.java │ │ └── StatisticsServiceImplTest.java │ └── resources/ │ ├── application.yml │ └── bootstrap.yml └── turbine-stream-service/ ├── Dockerfile ├── pom.xml └── src/ ├── main/ │ ├── java/ │ │ └── com/ │ │ └── piggymetrics/ │ │ └── turbine/ │ │ └── TurbineStreamServiceApplication.java │ └── resources/ │ └── bootstrap.yml └── test/ ├── java/ │ └── com/ │ └── piggymetrics/ │ └── turbine/ │ └── TurbineStreamServiceApplicationTests.java └── resources/ └── bootstrap.yml