diff --git a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala index e61f10875..ecb267444 100644 --- a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala +++ b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala @@ -3626,10 +3626,12 @@ object LocalMappedConnector extends Connector with MdcLoggable { override def createUserAuthContext(userId: String, key: String, value: String, - callContext: Option[CallContext]): OBPReturnType[Box[UserAuthContext]] = - UserAuthContextProvider.userAuthContextProvider.vend.createUserAuthContext(userId, key, value) map { + callContext: Option[CallContext]): OBPReturnType[Box[UserAuthContext]] = { + val consumerId = callContext.map(_.consumer.map(_.consumerId.get).getOrElse("")).getOrElse("") + UserAuthContextProvider.userAuthContextProvider.vend.createUserAuthContext(userId, key, value, consumerId) map { (_, callContext) } + } override def createUserAuthContextUpdate(userId: String, key: String, diff --git a/obp-api/src/main/scala/code/bankconnectors/akka/AkkaConnector_vDec2018.scala b/obp-api/src/main/scala/code/bankconnectors/akka/AkkaConnector_vDec2018.scala index 0230c8fa9..6f289538d 100644 --- a/obp-api/src/main/scala/code/bankconnectors/akka/AkkaConnector_vDec2018.scala +++ b/obp-api/src/main/scala/code/bankconnectors/akka/AkkaConnector_vDec2018.scala @@ -4480,7 +4480,9 @@ object AkkaConnector_vDec2018 extends Connector with AkkaConnectorActorInit { userId=userIdExample.value, key=keyExample.value, value=valueExample.value, - timeStamp=toDate(timeStampExample))) + timeStamp=toDate(timeStampExample), + consumerId=consumerIdExample.value + )) ), adapterImplementation = Some(AdapterImplementation("- Core", 1)) ) @@ -4595,7 +4597,8 @@ object AkkaConnector_vDec2018 extends Connector with AkkaConnectorActorInit { userId=userIdExample.value, key=keyExample.value, value=valueExample.value, - timeStamp=toDate(timeStampExample)))) + timeStamp=toDate(timeStampExample), + consumerId=consumerIdExample.value))) ), adapterImplementation = Some(AdapterImplementation("- Core", 1)) ) diff --git a/obp-api/src/main/scala/code/bankconnectors/rest/RestConnector_vMar2019.scala b/obp-api/src/main/scala/code/bankconnectors/rest/RestConnector_vMar2019.scala index c51185ec6..d69d3f16e 100644 --- a/obp-api/src/main/scala/code/bankconnectors/rest/RestConnector_vMar2019.scala +++ b/obp-api/src/main/scala/code/bankconnectors/rest/RestConnector_vMar2019.scala @@ -4669,7 +4669,8 @@ trait RestConnector_vMar2019 extends Connector with KafkaHelper with MdcLoggable userId=userIdExample.value, key=keyExample.value, value=valueExample.value, - timeStamp=toDate(timeStampExample))) + timeStamp=toDate(timeStampExample), + consumerId=consumerIdExample.value)) ), adapterImplementation = Some(AdapterImplementation("- Core", 1)) ) @@ -4784,7 +4785,8 @@ trait RestConnector_vMar2019 extends Connector with KafkaHelper with MdcLoggable userId=userIdExample.value, key=keyExample.value, value=valueExample.value, - timeStamp=toDate(timeStampExample)))) + timeStamp=toDate(timeStampExample), + consumerId=consumerIdExample.value))) ), adapterImplementation = Some(AdapterImplementation("- Core", 1)) ) diff --git a/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala b/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala index ca5daec50..1a9fab1ce 100644 --- a/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala +++ b/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala @@ -4647,7 +4647,8 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable { userId=userIdExample.value, key=keyExample.value, value=valueExample.value, - timeStamp=toDate(timeStampExample))) + timeStamp=toDate(timeStampExample), + consumerId=consumerIdExample.value)) ), adapterImplementation = Some(AdapterImplementation("- Core", 1)) ) @@ -4762,7 +4763,8 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable { userId=userIdExample.value, key=keyExample.value, value=valueExample.value, - timeStamp=toDate(timeStampExample)))) + timeStamp=toDate(timeStampExample), + consumerId=consumerIdExample.value))) ), adapterImplementation = Some(AdapterImplementation("- Core", 1)) ) diff --git a/obp-api/src/main/scala/code/context/MappedUserAuthContext.scala b/obp-api/src/main/scala/code/context/MappedUserAuthContext.scala index abe74ef1d..4e2257609 100644 --- a/obp-api/src/main/scala/code/context/MappedUserAuthContext.scala +++ b/obp-api/src/main/scala/code/context/MappedUserAuthContext.scala @@ -12,13 +12,15 @@ class MappedUserAuthContext extends UserAuthContext with LongKeyedMapper[MappedU object mUserId extends UUIDString(this) object mKey extends MappedString(this, 255) object mValue extends MappedString(this, 255) + object mConsumerId extends MappedString(this, 255) override def userId = mUserId.get override def key = mKey.get override def value = mValue.get override def userAuthContextId = mUserAuthContextId.get override def timeStamp = createdAt.get - + override def consumerId = mConsumerId.get + } object MappedUserAuthContext extends MappedUserAuthContext with LongKeyedMetaMapper[MappedUserAuthContext] { diff --git a/obp-api/src/main/scala/code/context/MappedUserAuthContextProvider.scala b/obp-api/src/main/scala/code/context/MappedUserAuthContextProvider.scala index 217dad757..3878bf4cf 100644 --- a/obp-api/src/main/scala/code/context/MappedUserAuthContextProvider.scala +++ b/obp-api/src/main/scala/code/context/MappedUserAuthContextProvider.scala @@ -13,13 +13,13 @@ import scala.concurrent.Future object MappedUserAuthContextProvider extends UserAuthContextProvider with MdcLoggable { - override def createUserAuthContext(userId: String, key: String, value: String): Future[Box[MappedUserAuthContext]] = + override def createUserAuthContext(userId: String, key: String, value: String, consumerId: String): Future[Box[MappedUserAuthContext]] = Future { - createUserAuthContextAkka(userId, key, value) + createUserAuthContextAkka(userId, key, value, consumerId) } - def createUserAuthContextAkka(userId: String, key: String, value: String): Box[MappedUserAuthContext] = + def createUserAuthContextAkka(userId: String, key: String, value: String, consumerId: String): Box[MappedUserAuthContext] = tryo { - MappedUserAuthContext.create.mUserId(userId).mKey(key).mValue(value).saveMe() + MappedUserAuthContext.create.mUserId(userId).mKey(key).mValue(value).mConsumerId(consumerId).saveMe() } override def getUserAuthContexts(userId: String): Future[Box[List[MappedUserAuthContext]]] = Future { diff --git a/obp-api/src/main/scala/code/context/UserAuthContextProvider.scala b/obp-api/src/main/scala/code/context/UserAuthContextProvider.scala index 0256acd09..d9fc4edd9 100644 --- a/obp-api/src/main/scala/code/context/UserAuthContextProvider.scala +++ b/obp-api/src/main/scala/code/context/UserAuthContextProvider.scala @@ -22,7 +22,7 @@ object UserAuthContextProvider extends SimpleInjector { } trait UserAuthContextProvider { - def createUserAuthContext(userId: String, key: String, value: String): Future[Box[UserAuthContext]] + def createUserAuthContext(userId: String, key: String, value: String, consumerId: String): Future[Box[UserAuthContext]] def getUserAuthContexts(userId: String): Future[Box[List[UserAuthContext]]] def getUserAuthContextsBox(userId: String): Box[List[UserAuthContext]] def createOrUpdateUserAuthContexts(userId: String, userAuthContexts: List[BasicUserAuthContext]): Box[List[UserAuthContext]] @@ -31,7 +31,7 @@ trait UserAuthContextProvider { } class RemotedataUserAuthContextCaseClasses { - case class createUserAuthContext(userId: String, key: String, value: String) + case class createUserAuthContext(userId: String, key: String, value: String, consumerId: String) case class getUserAuthContexts(userId: String) case class getUserAuthContextsBox(userId: String) case class createOrUpdateUserAuthContexts(userId: String, userAuthContext: List[BasicUserAuthContext]) diff --git a/obp-api/src/main/scala/code/remotedata/RemotedataUseAuthContext.scala b/obp-api/src/main/scala/code/remotedata/RemotedataUseAuthContext.scala index 5d1a268f1..9f9319b89 100644 --- a/obp-api/src/main/scala/code/remotedata/RemotedataUseAuthContext.scala +++ b/obp-api/src/main/scala/code/remotedata/RemotedataUseAuthContext.scala @@ -24,8 +24,8 @@ object RemotedataUserAuthContext extends ObpActorInit with UserAuthContextProvid (actor ? cc.createOrUpdateUserAuthContexts(userId, userAuthContexts)).mapTo[Box[List[UserAuthContext]]] ) - def createUserAuthContext(userId: String, key: String, value: String): Future[Box[UserAuthContext]] = - (actor ? cc.createUserAuthContext(userId, key, value)).mapTo[Box[UserAuthContext]] + def createUserAuthContext(userId: String, key: String, value: String, consumerId: String): Future[Box[UserAuthContext]] = + (actor ? cc.createUserAuthContext(userId, key, value, consumerId)).mapTo[Box[UserAuthContext]] override def deleteUserAuthContexts(userId: String): Future[Box[Boolean]] = (actor ? cc.deleteUserAuthContexts(userId)).mapTo[Box[Boolean]] diff --git a/obp-api/src/main/scala/code/remotedata/RemotedataUserAuthContextActor.scala b/obp-api/src/main/scala/code/remotedata/RemotedataUserAuthContextActor.scala index aff36e342..61ab952ab 100644 --- a/obp-api/src/main/scala/code/remotedata/RemotedataUserAuthContextActor.scala +++ b/obp-api/src/main/scala/code/remotedata/RemotedataUserAuthContextActor.scala @@ -15,9 +15,9 @@ class RemotedataUserAuthContextActor extends Actor with ObpActorHelper with MdcL def receive = { - case cc.createUserAuthContext(userId: String, key: String, value: String) => - logger.debug(s"createUserAuthContext($userId, $key, $value)") - sender ! (mapper.createUserAuthContextAkka(userId, key, value)) + case cc.createUserAuthContext(userId: String, key: String, value: String, consumerId: String) => + logger.debug(s"createUserAuthContext($userId, $key, $value, $consumerId)") + sender ! (mapper.createUserAuthContextAkka(userId, key, value, consumerId)) case cc.getUserAuthContexts(userId: String) => logger.debug(s"getUserAuthContexts($userId)") diff --git a/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModel.scala b/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModel.scala index 711418838..4dcc113dc 100644 --- a/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModel.scala +++ b/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModel.scala @@ -112,7 +112,8 @@ case class UserAuthContextCommons( userId :String, key :String, value :String, - timeStamp :Date) extends UserAuthContext + timeStamp :Date, + consumerId :String) extends UserAuthContext object UserAuthContextCommons extends Converter[UserAuthContext, UserAuthContextCommons] diff --git a/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModelTrait.scala b/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModelTrait.scala index 20be67722..3628d7ccf 100644 --- a/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModelTrait.scala +++ b/obp-commons/src/main/scala/com/openbankproject/commons/model/CommonModelTrait.scala @@ -308,6 +308,7 @@ trait UserAuthContext { def key : String def value : String def timeStamp : Date + def consumerId : String } trait ConsentAuthContext {