Skip to content

Commit

Permalink
update mangopay api to get rid of jdbc schema provider
Browse files Browse the repository at this point in the history
  • Loading branch information
fupelaqu committed May 11, 2023
1 parent 33fa9cd commit a8cbf21
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ import app.softnetwork.payment.persistence.query.{
import app.softnetwork.payment.persistence.typed.{GenericPaymentBehavior, MangoPayPaymentBehavior}
import app.softnetwork.payment.service.{GenericPaymentService, MangoPayPaymentService}
import app.softnetwork.persistence.jdbc.query.{JdbcJournalProvider, JdbcOffsetProvider}
import app.softnetwork.persistence.jdbc.schema.JdbcSchemaProvider
import app.softnetwork.persistence.schema.SchemaProvider
import app.softnetwork.scheduler.config.SchedulerSettings
import com.typesafe.config.Config

import scala.concurrent.Future

trait MangoPayApi extends PaymentApplication with JdbcSchemaProvider {
trait MangoPayApi extends PaymentApplication { _: SchemaProvider =>

override def paymentAccountBehavior: ActorSystem[_] => GenericPaymentBehavior = _ =>
MangoPayPaymentBehavior
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,20 @@
package app.softnetwork.payment.api

import app.softnetwork.persistence.jdbc.schema.JdbcSchemaTypes
import app.softnetwork.persistence.schema.SchemaType
import akka.actor
import akka.actor.typed.ActorSystem
import app.softnetwork.persistence.jdbc.schema.{JdbcSchema, JdbcSchemaTypes}
import app.softnetwork.persistence.schema.{Schema, SchemaProvider, SchemaType}
import app.softnetwork.persistence.typed._
import com.typesafe.config.Config
import org.slf4j.{Logger, LoggerFactory}

object MangoPayPostgresLauncher extends MangoPayApi {
object MangoPayPostgresLauncher extends MangoPayApi with SchemaProvider {
lazy val log: Logger = LoggerFactory getLogger getClass.getName

override val schemaType: SchemaType = JdbcSchemaTypes.Postgres
override def schema: ActorSystem[_] => Schema = sys =>
new JdbcSchema {
override def schemaType: SchemaType = JdbcSchemaTypes.Postgres
override implicit def classicSystem: actor.ActorSystem = sys
override def config: Config = MangoPayPostgresLauncher.this.config
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,15 @@ import akka.http.scaladsl.model.{HttpRequest, HttpResponse}
import app.softnetwork.persistence.jdbc.query.{JdbcJournalProvider, JdbcOffsetProvider}
import app.softnetwork.persistence.launch.PersistentEntity
import app.softnetwork.persistence.query.EventProcessorStream
import app.softnetwork.persistence.schema.SchemaProvider
import app.softnetwork.scheduler.api.{SchedulerApi, SchedulerServiceApiHandler}
import app.softnetwork.scheduler.handlers.SchedulerHandler
import app.softnetwork.scheduler.persistence.query.Entity2SchedulerProcessorStream
import com.typesafe.config.Config

import scala.concurrent.Future

trait MangoPayWithSchedulerApi extends MangoPayApi with SchedulerApi {
trait MangoPayWithSchedulerApi extends MangoPayApi with SchedulerApi { _: SchemaProvider =>

override def entity2SchedulerProcessorStream: ActorSystem[_] => Entity2SchedulerProcessorStream =
sys =>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,20 @@
package app.softnetwork.payment.api

import app.softnetwork.persistence.jdbc.schema.JdbcSchemaTypes
import app.softnetwork.persistence.schema.SchemaType
import akka.actor
import akka.actor.typed.ActorSystem
import app.softnetwork.persistence.jdbc.schema.{JdbcSchema, JdbcSchemaTypes}
import app.softnetwork.persistence.schema.{Schema, SchemaProvider, SchemaType}
import app.softnetwork.persistence.typed._
import com.typesafe.config.Config
import org.slf4j.{Logger, LoggerFactory}

object MangoPayWithSchedulerPostgresLauncher extends MangoPayWithSchedulerApi {
object MangoPayWithSchedulerPostgresLauncher extends MangoPayWithSchedulerApi with SchemaProvider {
lazy val log: Logger = LoggerFactory getLogger getClass.getName
override val schemaType: SchemaType = JdbcSchemaTypes.Postgres

override def schema: ActorSystem[_] => Schema = sys =>
new JdbcSchema {
override def schemaType: SchemaType = JdbcSchemaTypes.Postgres
override implicit def classicSystem: actor.ActorSystem = sys
override def config: Config = MangoPayWithSchedulerPostgresLauncher.this.config
}
}

0 comments on commit a8cbf21

Please sign in to comment.