This commit is contained in:
2021-01-17 00:10:51 +01:00
parent d87b433398
commit 299495a03c
23 changed files with 48 additions and 52 deletions

View File

@@ -12,23 +12,23 @@ import fr.dcproject.component.article.routes.findArticleVersions
import fr.dcproject.component.article.routes.findArticles import fr.dcproject.component.article.routes.findArticles
import fr.dcproject.component.article.routes.getOneArticle import fr.dcproject.component.article.routes.getOneArticle
import fr.dcproject.component.article.routes.upsertArticle import fr.dcproject.component.article.routes.upsertArticle
import fr.dcproject.component.citizen.routes.changeMyPassword
import fr.dcproject.component.citizen.routes.findCitizen
import fr.dcproject.component.citizen.routes.getCurrentCitizen
import fr.dcproject.component.citizen.routes.getOneCitizen
import fr.dcproject.component.comment.generic.routes.createCommentChildren
import fr.dcproject.component.comment.generic.routes.editComment
import fr.dcproject.component.comment.generic.routes.getChildrenComments
import fr.dcproject.component.comment.generic.routes.getOneComment
import fr.dcproject.elasticsearch.configElasticIndexes
import fr.dcproject.component.auth.User import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserRepository import fr.dcproject.component.auth.UserRepository
import fr.dcproject.component.auth.routes.authLogin import fr.dcproject.component.auth.routes.authLogin
import fr.dcproject.component.auth.routes.authRegister import fr.dcproject.component.auth.routes.authRegister
import fr.dcproject.component.auth.routes.authSso import fr.dcproject.component.auth.routes.authSso
import fr.dcproject.component.citizen.routes.changeMyPassword
import fr.dcproject.component.citizen.routes.findCitizen
import fr.dcproject.component.citizen.routes.getCurrentCitizen
import fr.dcproject.component.citizen.routes.getOneCitizen
import fr.dcproject.component.comment.article.routes.createCommentArticle import fr.dcproject.component.comment.article.routes.createCommentArticle
import fr.dcproject.component.comment.article.routes.getArticleComments import fr.dcproject.component.comment.article.routes.getArticleComments
import fr.dcproject.component.comment.article.routes.getCitizenArticleComments import fr.dcproject.component.comment.article.routes.getCitizenArticleComments
import fr.dcproject.component.comment.generic.routes.createCommentChildren
import fr.dcproject.component.comment.generic.routes.editComment
import fr.dcproject.component.comment.generic.routes.getChildrenComments
import fr.dcproject.component.comment.generic.routes.getOneComment
import fr.dcproject.elasticsearch.configElasticIndexes
import fr.dcproject.event.EventNotification import fr.dcproject.event.EventNotification
import fr.dcproject.event.EventSubscriber import fr.dcproject.event.EventSubscriber
import fr.dcproject.routes.* import fr.dcproject.routes.*

View File

@@ -1,8 +1,8 @@
package fr.dcproject package fr.dcproject
import fr.dcproject.component.citizen.CitizenRepository
import fr.dcproject.component.auth.User import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.CitizenRepository
import io.ktor.application.* import io.ktor.application.*
import io.ktor.auth.* import io.ktor.auth.*
import io.ktor.util.* import io.ktor.util.*

View File

@@ -5,8 +5,8 @@ import com.auth0.jwt.JWTVerifier
import com.auth0.jwt.algorithms.Algorithm import com.auth0.jwt.algorithms.Algorithm
import com.typesafe.config.ConfigFactory import com.typesafe.config.ConfigFactory
import fr.dcproject.component.auth.UserI import fr.dcproject.component.auth.UserI
import java.util.*
import java.net.URI import java.net.URI
import java.util.*
object Config { object Config {
private var config = ConfigFactory.load() private var config = ConfigFactory.load()

View File

@@ -11,6 +11,8 @@ import com.rabbitmq.client.ConnectionFactory
import fr.dcproject.component.article.ArticleRepository import fr.dcproject.component.article.ArticleRepository
import fr.dcproject.component.article.ArticleViewManager import fr.dcproject.component.article.ArticleViewManager
import fr.dcproject.component.article.ArticleVoter import fr.dcproject.component.article.ArticleVoter
import fr.dcproject.component.auth.SsoManager
import fr.dcproject.component.auth.UserRepository
import fr.dcproject.component.citizen.CitizenRepository import fr.dcproject.component.citizen.CitizenRepository
import fr.dcproject.component.citizen.CitizenVoter import fr.dcproject.component.citizen.CitizenVoter
import fr.dcproject.component.comment.article.CommentArticleRepository import fr.dcproject.component.comment.article.CommentArticleRepository
@@ -18,8 +20,6 @@ import fr.dcproject.component.comment.generic.CommentVoter
import fr.dcproject.event.publisher.Publisher import fr.dcproject.event.publisher.Publisher
import fr.dcproject.messages.Mailer import fr.dcproject.messages.Mailer
import fr.dcproject.messages.NotificationEmailSender import fr.dcproject.messages.NotificationEmailSender
import fr.dcproject.component.auth.SsoManager
import fr.dcproject.component.auth.UserRepository
import fr.dcproject.repository.CommentConstitutionRepository import fr.dcproject.repository.CommentConstitutionRepository
import fr.postgresjson.connexion.Connection import fr.postgresjson.connexion.Connection
import fr.postgresjson.connexion.Requester import fr.postgresjson.connexion.Requester

View File

@@ -4,7 +4,6 @@ import com.sendgrid.helpers.mail.Mail
import com.sendgrid.helpers.mail.objects.Content import com.sendgrid.helpers.mail.objects.Content
import com.sendgrid.helpers.mail.objects.Email import com.sendgrid.helpers.mail.objects.Email
import fr.dcproject.JwtConfig import fr.dcproject.JwtConfig
import fr.dcproject.component.citizen.CitizenBasicI
import fr.dcproject.component.citizen.CitizenRepository import fr.dcproject.component.citizen.CitizenRepository
import fr.dcproject.component.citizen.CitizenWithEmail import fr.dcproject.component.citizen.CitizenWithEmail
import fr.dcproject.component.citizen.CitizenWithUserI import fr.dcproject.component.citizen.CitizenWithUserI

View File

@@ -2,7 +2,7 @@ package fr.dcproject.component.auth
import fr.postgresjson.connexion.Requester import fr.postgresjson.connexion.Requester
import fr.postgresjson.repository.RepositoryI import fr.postgresjson.repository.RepositoryI
import io.ktor.auth.UserPasswordCredential import io.ktor.auth.*
import java.util.* import java.util.*
import fr.dcproject.component.auth.User as UserEntity import fr.dcproject.component.auth.User as UserEntity

View File

@@ -2,12 +2,12 @@ package fr.dcproject.component.auth.routes
import com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException import com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException
import fr.dcproject.JwtConfig import fr.dcproject.JwtConfig
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.auth.routes.RegisterRequest.Input import fr.dcproject.component.auth.routes.RegisterRequest.Input
import fr.dcproject.component.citizen.Citizen import fr.dcproject.component.citizen.Citizen
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.citizen.CitizenRepository import fr.dcproject.component.citizen.CitizenRepository
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import io.ktor.application.* import io.ktor.application.*
import io.ktor.features.* import io.ktor.features.*
import io.ktor.http.* import io.ktor.http.*

View File

@@ -1,7 +1,7 @@
package fr.dcproject.component.auth.routes package fr.dcproject.component.auth.routes
import fr.dcproject.component.auth.routes.SsoRequest.Input
import fr.dcproject.component.auth.SsoManager import fr.dcproject.component.auth.SsoManager
import fr.dcproject.component.auth.routes.SsoRequest.Input
import io.ktor.application.* import io.ktor.application.*
import io.ktor.http.* import io.ktor.http.*
import io.ktor.locations.* import io.ktor.locations.*

View File

@@ -1,9 +1,9 @@
package fr.dcproject.component.citizen package fr.dcproject.component.citizen
import fr.dcproject.component.citizen.CitizenI.Name
import fr.dcproject.component.auth.User import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI import fr.dcproject.component.auth.UserI
import fr.dcproject.component.auth.UserRef import fr.dcproject.component.auth.UserRef
import fr.dcproject.component.citizen.CitizenI.Name
import fr.dcproject.entity.WorkgroupSimple import fr.dcproject.entity.WorkgroupSimple
import fr.postgresjson.entity.* import fr.postgresjson.entity.*
import org.joda.time.DateTime import org.joda.time.DateTime

View File

@@ -3,9 +3,9 @@ package fr.dcproject.component.citizen.routes
import com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException import com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException
import fr.dcproject.citizen import fr.dcproject.citizen
import fr.dcproject.citizenOrNull import fr.dcproject.citizenOrNull
import fr.dcproject.component.auth.UserRepository
import fr.dcproject.component.citizen.Citizen import fr.dcproject.component.citizen.Citizen
import fr.dcproject.component.citizen.CitizenVoter import fr.dcproject.component.citizen.CitizenVoter
import fr.dcproject.component.auth.UserRepository
import fr.dcproject.voter.assert import fr.dcproject.voter.assert
import io.ktor.application.* import io.ktor.application.*
import io.ktor.auth.* import io.ktor.auth.*

View File

@@ -10,7 +10,6 @@ import io.ktor.locations.*
import io.ktor.response.* import io.ktor.response.*
import io.ktor.routing.* import io.ktor.routing.*
@KtorExperimentalLocationsAPI @KtorExperimentalLocationsAPI
@Location("/citizens/{citizen}/comments/articles") @Location("/citizens/{citizen}/comments/articles")
class CitizenCommentArticleRequest(val citizen: Citizen) class CitizenCommentArticleRequest(val citizen: Citizen)

View File

@@ -3,12 +3,11 @@ package fr.dcproject.routes
import fr.dcproject.citizen import fr.dcproject.citizen
import fr.dcproject.event.Event import fr.dcproject.event.Event
import fr.postgresjson.serializer.deserialize import fr.postgresjson.serializer.deserialize
import io.ktor.client.HttpClient import io.ktor.client.*
import io.ktor.http.cio.websocket.Frame import io.ktor.http.cio.websocket.*
import io.ktor.http.cio.websocket.readText import io.ktor.locations.*
import io.ktor.locations.KtorExperimentalLocationsAPI import io.ktor.routing.*
import io.ktor.routing.Route import io.ktor.websocket.*
import io.ktor.websocket.webSocket
import io.lettuce.core.Range import io.lettuce.core.Range
import io.lettuce.core.api.async.RedisAsyncCommands import io.lettuce.core.api.async.RedisAsyncCommands
import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.ExperimentalCoroutinesApi

View File

@@ -1,13 +1,12 @@
package fr.dcproject.routes package fr.dcproject.routes
import fr.dcproject.utils.readResource import fr.dcproject.utils.readResource
import io.ktor.application.call import io.ktor.application.*
import io.ktor.http.ContentType import io.ktor.http.*
import io.ktor.locations.KtorExperimentalLocationsAPI import io.ktor.locations.*
import io.ktor.response.respondText import io.ktor.response.*
import io.ktor.routing.Route import io.ktor.routing.*
import io.ktor.routing.get import io.ktor.util.*
import io.ktor.util.KtorExperimentalAPI
@KtorExperimentalLocationsAPI @KtorExperimentalLocationsAPI
@KtorExperimentalAPI @KtorExperimentalAPI

View File

@@ -1,8 +1,8 @@
package fr.dcproject.security.voter package fr.dcproject.security.voter
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.comment.generic.CommentForView import fr.dcproject.component.comment.generic.CommentForView
import fr.dcproject.entity.ConstitutionSimple import fr.dcproject.entity.ConstitutionSimple
import fr.dcproject.component.auth.UserI
import fr.dcproject.user import fr.dcproject.user
import fr.dcproject.voter.NoRuleDefinedException import fr.dcproject.voter.NoRuleDefinedException
import fr.dcproject.voter.NoSubjectDefinedException import fr.dcproject.voter.NoSubjectDefinedException

View File

@@ -1,9 +1,9 @@
package steps package steps
import fr.dcproject.component.auth.User
import fr.dcproject.component.citizen.Citizen import fr.dcproject.component.citizen.Citizen
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.citizen.CitizenRepository import fr.dcproject.component.citizen.CitizenRepository
import fr.dcproject.component.auth.User
import io.cucumber.datatable.DataTable import io.cucumber.datatable.DataTable
import io.cucumber.java8.En import io.cucumber.java8.En
import org.joda.time.DateTime import org.joda.time.DateTime

View File

@@ -2,10 +2,10 @@ package unit.voter
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.article.ArticleVoter import fr.dcproject.component.article.ArticleVoter
import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.auth.User import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.voter.Vote.DENIED import fr.dcproject.voter.Vote.DENIED
import fr.dcproject.voter.Vote.GRANTED import fr.dcproject.voter.Vote.GRANTED
import fr.postgresjson.connexion.Paginated import fr.postgresjson.connexion.Paginated

View File

@@ -1,10 +1,10 @@
package unit.voter package unit.voter
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.CitizenBasic import fr.dcproject.component.citizen.CitizenBasic
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.citizen.CitizenVoter import fr.dcproject.component.citizen.CitizenVoter
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.voter.Vote.DENIED import fr.dcproject.voter.Vote.DENIED
import fr.dcproject.voter.Vote.GRANTED import fr.dcproject.voter.Vote.GRANTED
import io.mockk.mockkStatic import io.mockk.mockkStatic

View File

@@ -2,14 +2,14 @@ package unit.voter
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.article.ArticleRef import fr.dcproject.component.article.ArticleRef
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.Citizen import fr.dcproject.component.citizen.Citizen
import fr.dcproject.component.citizen.CitizenCart import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.comment.generic.CommentForUpdate import fr.dcproject.component.comment.generic.CommentForUpdate
import fr.dcproject.component.comment.generic.CommentForView import fr.dcproject.component.comment.generic.CommentForView
import fr.dcproject.component.comment.generic.CommentVoter import fr.dcproject.component.comment.generic.CommentVoter
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.voter.Vote.DENIED import fr.dcproject.voter.Vote.DENIED
import fr.dcproject.voter.Vote.GRANTED import fr.dcproject.voter.Vote.GRANTED
import fr.postgresjson.connexion.Paginated import fr.postgresjson.connexion.Paginated

View File

@@ -2,13 +2,13 @@ package unit.voter
import fr.dcproject.citizenOrNull import fr.dcproject.citizenOrNull
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.Citizen import fr.dcproject.component.citizen.Citizen
import fr.dcproject.component.citizen.CitizenBasic import fr.dcproject.component.citizen.CitizenBasic
import fr.dcproject.component.citizen.CitizenCart import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.entity.Follow import fr.dcproject.entity.Follow
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.security.voter.FollowVoter import fr.dcproject.security.voter.FollowVoter
import fr.dcproject.voter.NoSubjectDefinedException import fr.dcproject.voter.NoSubjectDefinedException
import fr.ktorVoter.ActionI import fr.ktorVoter.ActionI

View File

@@ -1,12 +1,12 @@
package unit.voter package unit.voter
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.CitizenBasic import fr.dcproject.component.citizen.CitizenBasic
import fr.dcproject.component.citizen.CitizenCart import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.entity.OpinionChoice import fr.dcproject.entity.OpinionChoice
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.security.voter.OpinionChoiceVoter import fr.dcproject.security.voter.OpinionChoiceVoter
import fr.dcproject.user import fr.dcproject.user
import fr.ktorVoter.ActionI import fr.ktorVoter.ActionI

View File

@@ -1,13 +1,13 @@
package unit.voter package unit.voter
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.CitizenBasic import fr.dcproject.component.citizen.CitizenBasic
import fr.dcproject.component.citizen.CitizenCart import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.entity.Opinion import fr.dcproject.entity.Opinion
import fr.dcproject.entity.OpinionChoice import fr.dcproject.entity.OpinionChoice
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.security.voter.OpinionVoter import fr.dcproject.security.voter.OpinionVoter
import fr.dcproject.user import fr.dcproject.user
import fr.dcproject.voter.NoSubjectDefinedException import fr.dcproject.voter.NoSubjectDefinedException

View File

@@ -3,12 +3,12 @@ package unit.voter
import fr.dcproject.citizenOrNull import fr.dcproject.citizenOrNull
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.article.ArticleRef import fr.dcproject.component.article.ArticleRef
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.Citizen import fr.dcproject.component.citizen.Citizen
import fr.dcproject.component.citizen.CitizenBasic import fr.dcproject.component.citizen.CitizenBasic
import fr.dcproject.component.citizen.CitizenCart import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.entity.VoteForUpdate import fr.dcproject.entity.VoteForUpdate
import fr.dcproject.security.voter.VoteVoter import fr.dcproject.security.voter.VoteVoter
import fr.dcproject.voter.NoSubjectDefinedException import fr.dcproject.voter.NoSubjectDefinedException

View File

@@ -1,11 +1,11 @@
package unit.voter package unit.voter
import fr.dcproject.component.article.ArticleForView import fr.dcproject.component.article.ArticleForView
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.component.citizen.CitizenBasic import fr.dcproject.component.citizen.CitizenBasic
import fr.dcproject.component.citizen.CitizenCart import fr.dcproject.component.citizen.CitizenCart
import fr.dcproject.component.citizen.CitizenI import fr.dcproject.component.citizen.CitizenI
import fr.dcproject.component.auth.User
import fr.dcproject.component.auth.UserI
import fr.dcproject.entity.WorkgroupRef import fr.dcproject.entity.WorkgroupRef
import fr.dcproject.entity.WorkgroupWithMembersI import fr.dcproject.entity.WorkgroupWithMembersI
import fr.dcproject.security.voter.WorkgroupVoter import fr.dcproject.security.voter.WorkgroupVoter