Skip to content

Commit

Permalink
Removed authentication and core module separation
Browse files Browse the repository at this point in the history
* done for simplification. Previous approach could be confusing for newcomers
  • Loading branch information
Dasiu committed Jul 14, 2018
1 parent 3c51724 commit 5ba3622
Show file tree
Hide file tree
Showing 131 changed files with 320 additions and 320 deletions.
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -34,7 +34,7 @@ Compile time dependency injection is used.
# Security

Pack4j is used to simplify JWT authentication implementation. Generally authentication is implemented as external module implementing
core's API's (`core.authentication.api`). The idea behind it was to allow replacing module's implementation without touching core's code.
core's API's (`authentication.api`). The idea behind it was to allow replacing module's implementation without touching core's code.

# Database

Expand Down
@@ -1,15 +1,15 @@
package core.articles
package articles

import com.softwaremill.macwire.wire
import commons.CommonsComponents
import commons.config.{WithControllerComponents, WithExecutionContextComponents}
import commons.models._
import core.articles.controllers.{ArticleController, CommentController, TagController}
import core.articles.models.{ArticleMetaModel, CommentId, MainFeedPageRequest, UserFeedPageRequest}
import core.articles.repositories._
import core.articles.services._
import core.authentication.api.AuthenticatedActionBuilder
import core.users.UserComponents
import articles.controllers.{ArticleController, CommentController, TagController}
import articles.models.{ArticleMetaModel, CommentId, MainFeedPageRequest, UserFeedPageRequest}
import articles.repositories._
import articles.services._
import authentication.api.AuthenticatedActionBuilder
import commons.CommonsComponents
import users.UserComponents
import play.api.routing.Router
import play.api.routing.sird._

Expand Down
@@ -1,12 +1,12 @@
package core.articles.controllers
package articles.controllers

import commons.exceptions.MissingModelException
import commons.services.ActionRunner
import core.articles.exceptions.AuthorMismatchException
import core.articles.models._
import core.articles.services.{ArticleReadService, ArticleWriteService}
import core.authentication.api.{AuthenticatedActionBuilder, OptionallyAuthenticatedActionBuilder}
import core.commons.controllers.RealWorldAbstractController
import articles.exceptions.AuthorMismatchException
import articles.models._
import articles.services.{ArticleReadService, ArticleWriteService}
import authentication.api.{AuthenticatedActionBuilder, OptionallyAuthenticatedActionBuilder}
import commons.controllers.RealWorldAbstractController
import org.apache.commons.lang3.StringUtils
import play.api.libs.json._
import play.api.mvc.{Action, AnyContent, ControllerComponents}
Expand Down
@@ -1,12 +1,12 @@
package core.articles.controllers
package articles.controllers

import commons.exceptions.MissingModelException
import commons.services.ActionRunner
import core.articles.exceptions.AuthorMismatchException
import core.articles.models._
import core.articles.services.CommentService
import core.authentication.api.{AuthenticatedActionBuilder, OptionallyAuthenticatedActionBuilder}
import core.commons.controllers.RealWorldAbstractController
import articles.exceptions.AuthorMismatchException
import articles.models._
import articles.services.CommentService
import authentication.api.{AuthenticatedActionBuilder, OptionallyAuthenticatedActionBuilder}
import commons.controllers.RealWorldAbstractController
import org.apache.commons.lang3.StringUtils
import play.api.libs.json._
import play.api.mvc.{Action, AnyContent, ControllerComponents}
Expand Down
@@ -1,9 +1,9 @@
package core.articles.controllers
package articles.controllers

import commons.services.ActionRunner
import core.articles.models._
import core.articles.services.TagService
import core.commons.controllers.RealWorldAbstractController
import articles.models._
import articles.services.TagService
import commons.controllers.RealWorldAbstractController
import play.api.libs.json._
import play.api.mvc.{Action, AnyContent, ControllerComponents}

Expand Down
@@ -1,7 +1,7 @@
package core.articles.exceptions
package articles.exceptions

import commons.models.BaseId
import core.users.models.UserId
import users.models.UserId

class AuthorMismatchException(notAuthorId: UserId, modelId: BaseId[_])
extends RuntimeException(s"user $notAuthorId is not author of $modelId")
@@ -1,9 +1,9 @@
package core.articles.models
package articles.models

import java.time.Instant

import commons.models.{BaseId, IdMetaModel, Property, WithId}
import core.users.models.UserId
import users.models.UserId
import play.api.libs.json._
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}

Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,5 +1,5 @@

package core.articles.models
package articles.models

import commons.models.{BaseId, IdMetaModel, Property, WithId}
import play.api.libs.json._
Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,8 +1,8 @@
package core.articles.models
package articles.models

import java.time.Instant

import core.users.models.Profile
import users.models.Profile
import play.api.libs.json.{Format, Json}

case class ArticleWithTags(id: ArticleId,
Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,10 +1,10 @@

package core.articles.models
package articles.models

import java.time.Instant

import commons.models.{BaseId, IdMetaModel, Property, WithId}
import core.users.models.UserId
import users.models.UserId
import play.api.libs.json._
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}

Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,9 +1,9 @@

package core.articles.models
package articles.models

import java.time.Instant

import core.users.models.Profile
import users.models.Profile
import play.api.libs.json._

case class CommentWithAuthor(id: CommentId,
Expand Down
@@ -1,5 +1,5 @@

package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,8 +1,8 @@

package core.articles.models
package articles.models

import commons.models.{BaseId, IdMetaModel, Property, WithId}
import core.users.models.UserId
import users.models.UserId
import slick.jdbc.MySQLProfile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}

case class FavoriteAssociation(id: FavoriteAssociationId, userId: UserId, favoritedId: ArticleId)
Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import commons.models.{Ordering, Username}

Expand Down
@@ -1,7 +1,7 @@
package core.articles.models
package articles.models

import commons.repositories.DateTimeProvider
import core.users.models.UserId
import users.models.UserId
import play.api.libs.json.{Format, Json}

case class NewArticle(title: String, description: String, body: String, tagList: Seq[String]) {
Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,5 +1,5 @@

package core.articles.models
package articles.models

import play.api.libs.json._

Expand Down
@@ -1,5 +1,5 @@

package core.articles.models
package articles.models

import play.api.libs.json._

Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

case class NewTag(name: String) {
def toTag: Tag = {
Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import commons.models.{BaseId, IdMetaModel, Property, WithId}
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}
Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import play.api.libs.json.{Format, Json}

Expand Down
@@ -1,4 +1,4 @@
package core.articles.models
package articles.models

import commons.models.Ordering

Expand Down
@@ -1,4 +1,4 @@
package core.articles.repositories
package articles.repositories

import java.time.Instant

Expand All @@ -7,9 +7,9 @@ import commons.models._
import commons.repositories._
import commons.repositories.mappings.JavaTimeDbMappings
import commons.utils.DbioUtils
import core.articles.models.{Tag => _, _}
import core.users.models.{User, UserId}
import core.users.repositories.{FollowAssociationRepo, UserRepo, UserTable}
import articles.models.{Tag => _, _}
import users.models.{User, UserId}
import users.repositories.{FollowAssociationRepo, UserRepo, UserTable}
import org.apache.commons.lang3.StringUtils
import slick.dbio.DBIO
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}
Expand Down
@@ -1,10 +1,10 @@

package core.articles.repositories
package articles.repositories

import commons.models.{IdMetaModel, Property}
import commons.repositories._
import core.articles.models
import core.articles.models.{Tag => _, _}
import articles.models
import articles.models.{Tag => _, _}
import slick.dbio.DBIO
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}
import slick.lifted.{ProvenShape, _}
Expand Down
@@ -1,9 +1,9 @@
package core.articles.repositories
package articles.repositories

import commons.models.{Email, Page}
import core.articles.models._
import core.users.models.{Profile, User, UserId}
import core.users.repositories.{ProfileRepo, UserRepo}
import articles.models._
import users.models.{Profile, User, UserId}
import users.repositories.{ProfileRepo, UserRepo}
import slick.dbio.DBIO

import scala.concurrent.ExecutionContext
Expand Down
@@ -1,14 +1,14 @@

package core.articles.repositories
package articles.repositories

import java.time.Instant

import commons.models._
import commons.repositories._
import commons.repositories.mappings.JavaTimeDbMappings
import core.articles.models.{Tag => _, _}
import core.users.models.{User, UserId}
import core.users.repositories.UserRepo
import articles.models.{Tag => _, _}
import users.models.{User, UserId}
import users.repositories.UserRepo
import slick.dbio.DBIO
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}
import slick.lifted.{ProvenShape, _}
Expand Down
@@ -1,10 +1,10 @@

package core.articles.repositories
package articles.repositories

import commons.models._
import core.articles.models._
import core.users.models.{Profile, UserId}
import core.users.repositories.ProfileRepo
import articles.models._
import users.models.{Profile, UserId}
import users.repositories.ProfileRepo
import slick.dbio.DBIO

import scala.concurrent.ExecutionContext
Expand Down
@@ -1,10 +1,10 @@

package core.articles.repositories
package articles.repositories

import commons.models.{IdMetaModel, Property}
import commons.repositories._
import core.articles.models.{ArticleId, FavoriteAssociation, FavoriteAssociationId, FavoriteAssociationMetaModel}
import core.users.models.UserId
import articles.models.{ArticleId, FavoriteAssociation, FavoriteAssociationId, FavoriteAssociationMetaModel}
import users.models.UserId
import slick.dbio.DBIO
import slick.jdbc.MySQLProfile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}
import slick.lifted.{ProvenShape, _}
Expand Down
@@ -1,9 +1,9 @@
package core.articles.repositories
package articles.repositories

import commons.models.{IdMetaModel, Property}
import commons.repositories._
import commons.repositories.mappings.JavaTimeDbMappings
import core.articles.models.{Tag, TagId, TagMetaModel}
import articles.models.{Tag, TagId, TagMetaModel}
import slick.dbio.{DBIO, Effect}
import slick.jdbc.H2Profile.api.{DBIO => _, MappedTo => _, Rep => _, TableQuery => _, _}
import slick.lifted.{ProvenShape, _}
Expand Down
@@ -1,12 +1,12 @@
package core.articles.services
package articles.services

import commons.exceptions.ValidationException
import commons.models.Email
import commons.repositories.DateTimeProvider
import commons.utils.DbioUtils
import core.articles.models._
import core.articles.repositories.{ArticleRepo, ArticleTagAssociationRepo, ArticleWithTagsRepo, TagRepo}
import core.users.repositories.UserRepo
import articles.models._
import articles.repositories.{ArticleRepo, ArticleTagAssociationRepo, ArticleWithTagsRepo, TagRepo}
import users.repositories.UserRepo
import slick.dbio.DBIO

import scala.concurrent.ExecutionContext
Expand Down
@@ -1,10 +1,10 @@
package core.articles.services
package articles.services

import commons.models.Email
import core.articles.exceptions.AuthorMismatchException
import core.articles.models.Article
import core.articles.repositories._
import core.users.repositories.UserRepo
import articles.exceptions.AuthorMismatchException
import articles.models.Article
import articles.repositories._
import users.repositories.UserRepo
import slick.dbio.DBIO

import scala.concurrent.ExecutionContext
Expand Down

0 comments on commit 5ba3622

Please sign in to comment.