mirror of
https://github.com/OpenBankProject/OBP-API.git
synced 2026-02-06 15:56:57 +00:00
refactor/removed getTransactionRequestsImpl210
This commit is contained in:
parent
b0edcdbd66
commit
8dc0b10d3c
@ -1,19 +1,13 @@
|
||||
package code.bankconnectors
|
||||
|
||||
import java.util.Date
|
||||
import java.util.UUID.randomUUID
|
||||
import _root_.akka.http.scaladsl.model.HttpMethod
|
||||
import code.accountholders.{AccountHolders, MapperAccountHolders}
|
||||
import code.api.Constant.{SYSTEM_ACCOUNTANT_VIEW_ID, SYSTEM_AUDITOR_VIEW_ID, SYSTEM_OWNER_VIEW_ID, localIdentityProvider}
|
||||
import code.accountholders.MapperAccountHolders
|
||||
import code.api.Constant.{SYSTEM_ACCOUNTANT_VIEW_ID, SYSTEM_AUDITOR_VIEW_ID, SYSTEM_OWNER_VIEW_ID}
|
||||
import code.api.attributedefinition.AttributeDefinition
|
||||
import code.api.cache.Caching
|
||||
import code.api.util.APIUtil.{OBPReturnType, _}
|
||||
import code.api.util.ApiRole._
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v1_4_0.JSONFactory1_4_0.TransactionRequestAccountJsonV140
|
||||
import code.api.v2_1_0._
|
||||
import code.api.v4_0_0.ModeratedFirehoseAccountsJsonV400
|
||||
import code.api.{APIFailure, APIFailureNewStyle}
|
||||
import code.atmattribute.AtmAttribute
|
||||
import code.bankattribute.BankAttribute
|
||||
@ -23,20 +17,14 @@ import code.bankconnectors.rest.RestConnector_vMar2019
|
||||
import code.bankconnectors.storedprocedure.StoredProcedureConnector_vDec2019
|
||||
import code.bankconnectors.vMay2019.KafkaMappedConnector_vMay2019
|
||||
import code.bankconnectors.vSept2018.KafkaMappedConnector_vSept2018
|
||||
import code.counterpartylimit.{CounterpartyLimit, CounterpartyLimitTrait}
|
||||
import code.counterpartylimit.CounterpartyLimitTrait
|
||||
import code.customeraccountlinks.CustomerAccountLinkTrait
|
||||
import code.endpointTag.EndpointTagT
|
||||
import code.fx.fx.TTL
|
||||
|
||||
import code.model.dataAccess.{BankAccountRouting, ResourceUser}
|
||||
import code.model.toUserExtended
|
||||
import code.productfee.ProductFeeX
|
||||
import code.standingorders.StandingOrderTrait
|
||||
import code.transactionrequests.TransactionRequests
|
||||
import com.openbankproject.commons.model.enums.TransactionRequestTypes._
|
||||
import com.openbankproject.commons.model.enums.PaymentServiceTypes._
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
import code.users.{UserAttribute, Users}
|
||||
import code.users.UserAttribute
|
||||
import code.util.Helper._
|
||||
import code.views.Views
|
||||
import com.github.dwickern.macros.NameOf.nameOf
|
||||
@ -44,27 +32,26 @@ import com.openbankproject.commons.ExecutionContext.Implicits.global
|
||||
import com.openbankproject.commons.dto.{CustomerAndAttribute, GetProductsParam, InBoundTrait, ProductCollectionItemsTree}
|
||||
import com.openbankproject.commons.model.enums.StrongCustomerAuthentication.SCA
|
||||
import com.openbankproject.commons.model.enums.StrongCustomerAuthenticationStatus.SCAStatus
|
||||
import com.openbankproject.commons.model.enums.SuppliedAnswerType
|
||||
import com.openbankproject.commons.model.enums.TransactionRequestTypes._
|
||||
import com.openbankproject.commons.model.enums._
|
||||
import com.openbankproject.commons.model.{AccountApplication, Bank, CounterpartyTrait, CustomerAddress, DirectDebitTrait, FXRate, Product, ProductCollection, ProductCollectionItem, TaxResidence, TransactionRequestStatus, TransactionRequestTypeCharge, UserAuthContext, UserAuthContextUpdate, _}
|
||||
import com.openbankproject.commons.util.Functions.lazyValue
|
||||
import com.openbankproject.commons.model.{TransactionRequestStatus, _}
|
||||
import com.openbankproject.commons.util.{JsonUtils, ReflectUtils}
|
||||
import com.tesobe.CacheKeyFromArguments
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.http.provider.HTTPParam
|
||||
import net.liftweb.json
|
||||
import net.liftweb.json.{Formats, JObject, JValue}
|
||||
import net.liftweb.mapper.By
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
import java.util.Date
|
||||
import java.util.UUID.randomUUID
|
||||
import scala.collection.immutable.{List, Nil}
|
||||
import scala.collection.mutable.ArrayBuffer
|
||||
import scala.concurrent.duration._
|
||||
import scala.concurrent.{Await, Future}
|
||||
import scala.math.{BigDecimal, BigInt}
|
||||
import scala.math.BigDecimal
|
||||
import scala.reflect.runtime.universe.{MethodSymbol, typeOf}
|
||||
import scala.util.Random
|
||||
|
||||
/*
|
||||
So we can switch between different sources of resources e.g.
|
||||
@ -939,29 +926,7 @@ trait Connector extends MdcLoggable {
|
||||
def getTransactionRequests(initiator : User, fromAccount : BankAccount, callContext: Option[CallContext]) : Box[List[TransactionRequest]] =
|
||||
LocalMappedConnector.getTransactionRequests(initiator : User, fromAccount : BankAccount, callContext: Option[CallContext])
|
||||
|
||||
def getTransactionRequests210(initiator : User, fromAccount : BankAccount, callContext: Option[CallContext]) : Box[(List[TransactionRequest], Option[CallContext])] = {
|
||||
val transactionRequests =
|
||||
for {
|
||||
transactionRequests <- getTransactionRequestsImpl210(fromAccount)
|
||||
} yield transactionRequests
|
||||
|
||||
//make sure we return null if no challenge was saved (instead of empty fields)
|
||||
val transactionRequestsNew = if (!transactionRequests.isEmpty) {
|
||||
for {
|
||||
treq <- transactionRequests
|
||||
} yield {
|
||||
treq.map(tr => if (tr.challenge.id == "") {
|
||||
tr.copy(challenge = null)
|
||||
} else {
|
||||
tr
|
||||
})
|
||||
}
|
||||
} else {
|
||||
transactionRequests
|
||||
}
|
||||
|
||||
transactionRequestsNew.map(transactionRequests =>(transactionRequests, callContext))
|
||||
}
|
||||
def getTransactionRequests210(initiator : User, fromAccount : BankAccount, callContext: Option[CallContext]) : Box[(List[TransactionRequest], Option[CallContext])] = Failure(setUnimplementedError(nameOf(getTransactionRequestStatusesImpl _)))
|
||||
|
||||
def getTransactionRequestStatuses() : Box[TransactionRequestStatus] = {
|
||||
for {
|
||||
@ -974,8 +939,6 @@ trait Connector extends MdcLoggable {
|
||||
|
||||
protected def getTransactionRequestsImpl(fromAccount : BankAccount) : Box[List[TransactionRequest]] = TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId)
|
||||
|
||||
protected def getTransactionRequestsImpl210(fromAccount : BankAccount) : Box[List[TransactionRequest]] = TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId)
|
||||
|
||||
def getTransactionRequestImpl(transactionRequestId: TransactionRequestId, callContext: Option[CallContext]): Box[(TransactionRequest, Option[CallContext])] = TransactionRequests.transactionRequestProvider.vend.getTransactionRequest(transactionRequestId).map(transactionRequest =>(transactionRequest, callContext))
|
||||
|
||||
def getTransactionRequestTypes(initiator : User, fromAccount : BankAccount, callContext: Option[CallContext]) : Box[List[TransactionRequestType]] =
|
||||
|
||||
@ -424,7 +424,6 @@ object ConnectorBuilderUtil {
|
||||
"saveTransactionRequestStatusImpl",
|
||||
"getTransactionRequestStatusesImpl",
|
||||
"getTransactionRequestsImpl",
|
||||
"getTransactionRequestsImpl210",
|
||||
"getTransactionRequestTypesImpl"
|
||||
).distinct
|
||||
|
||||
|
||||
@ -2212,10 +2212,6 @@ object LocalMappedConnector extends Connector with MdcLoggable {
|
||||
override def getTransactionRequestsImpl(fromAccount: BankAccount): Box[List[TransactionRequest]] = {
|
||||
TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId)
|
||||
}
|
||||
|
||||
override def getTransactionRequestsImpl210(fromAccount: BankAccount): Box[List[TransactionRequest]] = {
|
||||
TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId)
|
||||
}
|
||||
|
||||
override def updateBankAccount(
|
||||
bankId: BankId,
|
||||
@ -5052,7 +5048,7 @@ object LocalMappedConnector extends Connector with MdcLoggable {
|
||||
override def getTransactionRequests210(initiator: User, fromAccount: BankAccount, callContext: Option[CallContext] = None): Box[(List[TransactionRequest], Option[CallContext])] = {
|
||||
val transactionRequests =
|
||||
for {
|
||||
transactionRequests <- getTransactionRequestsImpl210(fromAccount)
|
||||
transactionRequests <- TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId)
|
||||
} yield transactionRequests
|
||||
|
||||
//make sure we return null if no challenge was saved (instead of empty fields)
|
||||
|
||||
@ -24,10 +24,10 @@ Berlin 13359, Germany
|
||||
*/
|
||||
|
||||
import code.api.Constant
|
||||
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Date
|
||||
import java.util.UUID.randomUUID
|
||||
|
||||
import code.api.APIFailure
|
||||
import code.api.Constant._
|
||||
import code.api.JSONFactoryGateway.PayloadOfJwtJSON
|
||||
@ -45,6 +45,7 @@ import code.customer._
|
||||
import code.kafka.{KafkaHelper, Topics}
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.transactionrequests.TransactionRequests
|
||||
import code.users.Users
|
||||
import code.util.Helper.MdcLoggable
|
||||
import code.views.Views
|
||||
@ -1152,7 +1153,8 @@ trait KafkaMappedConnector_vSept2018 extends Connector with KafkaHelper with Mdc
|
||||
val transactionRequest = for{
|
||||
adapterTransactionRequests <- Full(data)
|
||||
//TODO, this will cause performance issue, we need limit the number of transaction requests.
|
||||
obpTransactionRequests <- LocalMappedConnector.getTransactionRequestsImpl210(fromAccount) ?~! s"$InvalidConnectorResponse, error on LocalMappedConnector.getTransactionRequestsImpl210"
|
||||
obpTransactionRequests <- TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId) ?~! s"$InvalidConnectorResponse, error on TransactionRequests.transactionRequestProvider.vend.getTransactionRequests"
|
||||
obpTransactionRequests <- TransactionRequests.transactionRequestProvider.vend.getTransactionRequests(fromAccount.bankId, fromAccount.accountId) ?~! s"$InvalidConnectorResponse, error on TransactionRequests.transactionRequestProvider.vend.getTransactionRequests"
|
||||
} yield {
|
||||
adapterTransactionRequests ::: obpTransactionRequests
|
||||
}
|
||||
|
||||
@ -80,5 +80,16 @@ class ConnectorTest extends V510ServerSetup {
|
||||
noCallcontextMethodsNames.size should be(0)
|
||||
}
|
||||
|
||||
scenario("all connector methods should return Future ", ConnectorTestTag){
|
||||
val mappedConnectorObject = Connector.nameToConnector.get("mapped")
|
||||
|
||||
val allConnectorMethods = mappedConnectorObject.map(_.callableMethods)
|
||||
val wrongReturnTypeMethods= allConnectorMethods.map(_.map(_._2.returnType.toString)).toList.flatten
|
||||
.filterNot(_.contains("OBPReturnType"))
|
||||
.filterNot(_.contains("Future"))
|
||||
println(wrongReturnTypeMethods.mkString("\n"))
|
||||
wrongReturnTypeMethods.size should be(0)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -1173,11 +1173,6 @@ case class InBoundGetTransactionRequestsImpl(status: Status, data: List[Transact
|
||||
override val inboundAdapterCallContext: InboundAdapterCallContext = InboundAdapterCallContext()
|
||||
}
|
||||
|
||||
case class OutBoundGetTransactionRequestsImpl210(fromAccount: BankAccount) extends TopicTrait
|
||||
case class InBoundGetTransactionRequestsImpl210(status: Status, data: List[TransactionRequest]) extends InBoundTrait[List[TransactionRequest]] {
|
||||
override val inboundAdapterCallContext: InboundAdapterCallContext = InboundAdapterCallContext()
|
||||
}
|
||||
|
||||
case class OutBoundGetTransactionRequestTypes(outboundAdapterCallContext: OutboundAdapterCallContext, initiator: User, fromAccount: BankAccount) extends TopicTrait
|
||||
case class InBoundGetTransactionRequestTypes(status: Status, data: List[TransactionRequestType]) extends InBoundTrait[List[TransactionRequestType]] {
|
||||
override val inboundAdapterCallContext: InboundAdapterCallContext = InboundAdapterCallContext()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user