├── .gitignore ├── .scalafmt.conf ├── README.md ├── project ├── CompilerSettings.scala ├── Dependencies.scala ├── build.properties └── plugins.sbt └── src ├── main ├── resources │ ├── application.conf │ ├── db │ │ └── migration │ │ │ └── V20220831_1__init.sql │ └── logback.xml └── scala │ └── funcprog │ ├── App.scala │ ├── ElectionService.scala │ ├── HttpServerSettings.scala │ ├── Main.scala │ ├── config │ └── config.scala │ ├── database │ ├── Database.scala │ ├── UniqueConstraintViolation.scala │ └── VoteRecord.scala │ ├── model │ ├── Party.scala │ ├── Person.scala │ ├── Vote.scala │ ├── VoteResult.scala │ └── package.scala │ ├── routes │ └── ElectionServer.scala │ └── validation │ ├── ValidationError.scala │ ├── ValidationResponse.scala │ └── ValidationService.scala └── test ├── resources └── logback-test.xml └── scala └── funcprog ├── Generators.scala └── database └── DatabaseSpec.scala /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/.gitignore -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/.scalafmt.conf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/README.md -------------------------------------------------------------------------------- /project/CompilerSettings.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/project/CompilerSettings.scala -------------------------------------------------------------------------------- /project/Dependencies.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/project/Dependencies.scala -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.7.1 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/resources/application.conf -------------------------------------------------------------------------------- /src/main/resources/db/migration/V20220831_1__init.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/resources/db/migration/V20220831_1__init.sql -------------------------------------------------------------------------------- /src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/resources/logback.xml -------------------------------------------------------------------------------- /src/main/scala/funcprog/App.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/App.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/ElectionService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/ElectionService.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/HttpServerSettings.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/HttpServerSettings.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/Main.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/Main.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/config/config.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/config/config.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/database/Database.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/database/Database.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/database/UniqueConstraintViolation.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/database/UniqueConstraintViolation.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/database/VoteRecord.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/database/VoteRecord.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/model/Party.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/model/Party.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/model/Person.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/model/Person.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/model/Vote.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/model/Vote.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/model/VoteResult.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/model/VoteResult.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/model/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/model/package.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/routes/ElectionServer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/routes/ElectionServer.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/validation/ValidationError.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/validation/ValidationError.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/validation/ValidationResponse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/validation/ValidationResponse.scala -------------------------------------------------------------------------------- /src/main/scala/funcprog/validation/ValidationService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/main/scala/funcprog/validation/ValidationService.scala -------------------------------------------------------------------------------- /src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/test/resources/logback-test.xml -------------------------------------------------------------------------------- /src/test/scala/funcprog/Generators.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/test/scala/funcprog/Generators.scala -------------------------------------------------------------------------------- /src/test/scala/funcprog/database/DatabaseSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghidei/funcprog2022/HEAD/src/test/scala/funcprog/database/DatabaseSpec.scala --------------------------------------------------------------------------------