From 3a2dd2ee7a347dbdc6c4956d151d5ddc5bb3714f Mon Sep 17 00:00:00 2001 From: hongwei Date: Fri, 13 Jun 2025 17:12:17 +0200 Subject: [PATCH] refactor/update error message for missing connector property --- .../main/scala/bootstrap/liftweb/Boot.scala | 3 +- .../scala/code/api/v1_2_1/APIMethods121.scala | 2 +- .../code/api/v1_2_1/JSONFactory1.2.1.scala | 3 +- .../scala/code/api/v1_3_0/APIMethods130.scala | 6 ++-- .../scala/code/api/v1_4_0/APIMethods140.scala | 6 +--- .../scala/code/api/v2_0_0/APIMethods200.scala | 25 +++++--------- .../scala/code/api/v2_1_0/APIMethods210.scala | 2 +- .../scala/code/api/v2_2_0/APIMethods220.scala | 25 +++++++------- .../scala/code/api/v3_0_0/APIMethods300.scala | 33 ++++++++----------- .../scala/code/api/v3_1_0/APIMethods310.scala | 4 +-- .../scala/code/api/v4_0_0/APIMethods400.scala | 4 +-- .../code/api/v4_0_0/JSONFactory4.0.0.scala | 3 +- .../scala/code/api/v5_0_0/APIMethods500.scala | 4 +-- .../code/api/v5_0_0/JSONFactory5.0.0.scala | 3 +- .../scala/code/api/v5_1_0/APIMethods510.scala | 4 +-- .../code/api/v5_1_0/JSONFactory5.1.0.scala | 3 +- .../scala/code/bankconnectors/Connector.scala | 2 +- .../code/model/dataAccess/AuthUser.scala | 4 +-- .../code/api/v3_1_0/ObpApiLoopbackTest.scala | 4 +-- 19 files changed, 61 insertions(+), 79 deletions(-) diff --git a/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala b/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala index 6539daf66..5690b0f50 100644 --- a/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala +++ b/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala @@ -42,6 +42,7 @@ import code.api.attributedefinition.AttributeDefinition import code.api.cache.Redis import code.api.util.APIUtil.{enableVersionIfAllowed, errorJsonResponse, getPropsValue} import code.api.util.ApiRole.CanCreateEntitlementAtAnyBank +import code.api.util.ErrorMessages.MandatoryPropertyIsNotSet import code.api.util._ import code.api.util.migration.Migration import code.api.util.migration.Migration.DbFunction @@ -405,7 +406,7 @@ class Boot extends MdcLoggable { } // ensure our relational database's tables are created/fit the schema - val connector = code.api.Constant.Connector.openOrThrowException("no connector set") + val connector = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet. The missing prop is `connector` ") val runningMode = Props.mode match { case Props.RunModes.Production => "Production mode" diff --git a/obp-api/src/main/scala/code/api/v1_2_1/APIMethods121.scala b/obp-api/src/main/scala/code/api/v1_2_1/APIMethods121.scala index f9bd3a174..4fa5bd0c4 100644 --- a/obp-api/src/main/scala/code/api/v1_2_1/APIMethods121.scala +++ b/obp-api/src/main/scala/code/api/v1_2_1/APIMethods121.scala @@ -125,7 +125,7 @@ trait APIMethods121 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v1_2_1/JSONFactory1.2.1.scala b/obp-api/src/main/scala/code/api/v1_2_1/JSONFactory1.2.1.scala index b1e914cf9..84db9b773 100644 --- a/obp-api/src/main/scala/code/api/v1_2_1/JSONFactory1.2.1.scala +++ b/obp-api/src/main/scala/code/api/v1_2_1/JSONFactory1.2.1.scala @@ -28,6 +28,7 @@ package code.api.v1_2_1 import code.api.util.APIUtil import code.api.util.APIUtil._ +import code.api.util.ErrorMessages.MandatoryPropertyIsNotSet import code.model._ import com.openbankproject.commons.model._ import com.openbankproject.commons.util.ApiVersion @@ -371,7 +372,7 @@ object JSONFactory{ val phone = APIUtil.getPropsValue("hosted_by.phone", "+49 (0)30 8145 3994") val organisationWebsite = APIUtil.getPropsValue("organisation_website", "https://www.tesobe.com") - val connector = code.api.Constant.Connector.openOrThrowException("no connector set") + val connector = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet. The missing prop is `connector` ") val hostedBy = new HostedBy(organisation, email, phone, organisationWebsite) val apiInfoJSON = new APIInfoJSON(apiVersion.vDottedApiVersion, apiVersionStatus, gitCommit, connector, hostedBy) diff --git a/obp-api/src/main/scala/code/api/v1_3_0/APIMethods130.scala b/obp-api/src/main/scala/code/api/v1_3_0/APIMethods130.scala index 0940e86ac..8c60dfb4b 100644 --- a/obp-api/src/main/scala/code/api/v1_3_0/APIMethods130.scala +++ b/obp-api/src/main/scala/code/api/v1_3_0/APIMethods130.scala @@ -8,14 +8,12 @@ import code.api.util.FutureUtil.EndpointContext import code.api.util.NewStyle.HttpCode import code.api.util.{ApiRole, NewStyle} import code.api.v1_2_1.JSONFactory +import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model.BankId import com.openbankproject.commons.util.ApiVersion -import com.openbankproject.commons.ExecutionContext.Implicits.global import net.liftweb.common.Full import net.liftweb.http.rest.RestHelper -import net.liftweb.json.Extraction -import scala.collection.immutable.Nil import scala.collection.mutable.ArrayBuffer import scala.concurrent.Future @@ -43,7 +41,7 @@ trait APIMethods130 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala b/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala index 50867371b..3955b276b 100644 --- a/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala +++ b/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala @@ -6,7 +6,6 @@ import code.api.util.FutureUtil.EndpointContext import code.api.util.NewStyle.HttpCode import code.api.util._ import code.api.v1_2_1.JSONFactory -import code.api.v1_3_0.OBPAPI1_3_0 import code.api.v1_4_0.JSONFactory1_4_0._ import code.api.v2_0_0.CreateCustomerJson import code.atms.Atms @@ -15,7 +14,6 @@ import code.branches.Branches import code.customer.CustomerX import code.usercustomerlinks.UserCustomerLink import code.util.Helper -import code.views.Views import code.views.system.ViewDefinition import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.model._ @@ -44,12 +42,10 @@ import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON._ import code.api.util.APIUtil._ import code.api.util.ErrorMessages import code.api.util.ErrorMessages._ -import code.crm.CrmEvent import code.customer.CustomerMessages import code.model._ import code.products.Products import code.util.Helper._ - import com.openbankproject.commons.ExecutionContext.Implicits.global trait APIMethods140 extends MdcLoggable with APIMethods130 with APIMethods121{ @@ -78,7 +74,7 @@ trait APIMethods140 extends MdcLoggable with APIMethods130 with APIMethods121{ |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v2_0_0/APIMethods200.scala b/obp-api/src/main/scala/code/api/v2_0_0/APIMethods200.scala index 2859c1f6d..9c3247e75 100644 --- a/obp-api/src/main/scala/code/api/v2_0_0/APIMethods200.scala +++ b/obp-api/src/main/scala/code/api/v2_0_0/APIMethods200.scala @@ -1,10 +1,7 @@ package code.api.v2_0_0 -import java.util.{Calendar, Date} -import code.api.Constant._ import code.TransactionTypes.TransactionType -import code.api.{APIFailure, APIFailureNewStyle} -import code.api.Constant._ +import code.api.APIFailureNewStyle import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON._ import code.api.util.APIUtil._ import code.api.util.ApiTag._ @@ -14,15 +11,11 @@ import code.api.util.NewStyle.HttpCode import code.api.util._ import code.api.v1_2_1.OBPAPI1_2_1._ import code.api.v1_2_1.{JSONFactory => JSONFactory121} -import code.api.v1_3_0.OBPAPI1_3_0 import code.api.v1_4_0.JSONFactory1_4_0 -import code.api.v1_4_0.JSONFactory1_4_0.ChallengeAnswerJSON import code.api.v2_0_0.JSONFactory200.{privateBankAccountsListToJson, _} -import code.bankconnectors.Connector import code.customer.CustomerX import code.entitlement.Entitlement import code.fx.fx -import code.meetings.Meetings import code.model._ import code.model.dataAccess.{AuthUser, BankAccountCreation} import code.search.{elasticsearchMetrics, elasticsearchWarehouse} @@ -34,25 +27,23 @@ import code.util.Helper.{booleanToBox, booleanToFuture} import code.views.Views import code.views.system.ViewDefinition import com.github.dwickern.macros.NameOf.nameOf +import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model._ -import net.liftweb.common.{Full, _} +import com.openbankproject.commons.util.ApiVersion +import net.liftweb.common._ import net.liftweb.http.CurrentReq import net.liftweb.http.rest.RestHelper -import net.liftweb.json.JsonAST.{JValue, prettyRender} +import net.liftweb.json.JsonAST.JValue import net.liftweb.mapper.By import net.liftweb.util.Helpers.tryo - -import scala.collection.immutable.Nil -import scala.collection.mutable.ArrayBuffer -import com.openbankproject.commons.ExecutionContext.Implicits.global -import com.openbankproject.commons.util.ApiVersion import net.liftweb.util.StringHelpers +import java.util.Date +import scala.collection.mutable.ArrayBuffer import scala.concurrent.Future // Makes JValue assignment to Nil work import code.api.util.ApiRole._ import code.api.util.ErrorMessages._ -import code.api.v2_0_0.AccountsHelper._ import com.openbankproject.commons.model.{AmountOfMoneyJsonV121 => AmountOfMoneyJSON121} import net.liftweb.json.Extraction @@ -149,7 +140,7 @@ trait APIMethods200 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala b/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala index b8d8803e1..bb3e0d058 100644 --- a/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala +++ b/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala @@ -84,7 +84,7 @@ trait APIMethods210 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v2_2_0/APIMethods220.scala b/obp-api/src/main/scala/code/api/v2_2_0/APIMethods220.scala index 99f19d601..5d7edbcab 100644 --- a/obp-api/src/main/scala/code/api/v2_2_0/APIMethods220.scala +++ b/obp-api/src/main/scala/code/api/v2_2_0/APIMethods220.scala @@ -1,24 +1,21 @@ package code.api.v2_2_0 -import java.util.Date import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON._ import code.api.util.APIUtil._ -import code.api.util.ApiRole.{canCreateBranch, _} +import code.api.util.ApiRole._ import code.api.util.ApiTag._ import code.api.util.ErrorMessages.{BankAccountNotFound, _} import code.api.util.FutureUtil.EndpointContext import code.api.util.NewStyle.HttpCode -import code.api.util.{ErrorMessages, _} +import code.api.util._ import code.api.v1_2_1.{CreateViewJsonV121, JSONFactory, UpdateViewJsonV121} -import code.api.v2_0_0.OBPAPI2_0_0 import code.api.v2_1_0._ import code.api.v2_2_0.JSONFactory220.transformV220ToBranch -import code.api.v3_1_0.{JSONFactory310, PostPutProductJsonV310} -import code.api.v4_0_0.{AtmJsonV400, JSONFactory400} +import code.api.v3_1_0.PostPutProductJsonV310 +import code.api.v4_0_0.AtmJsonV400 import code.bankconnectors._ import code.consumer.Consumers import code.entitlement.Entitlement -import code.fx.{MappedFXRate, fx} import code.metadata.counterparties.{Counterparties, MappedCounterparty} import code.metrics.ConnectorMetricsProvider import code.model._ @@ -28,18 +25,18 @@ import code.util.Helper._ import code.views.Views import code.views.system.ViewDefinition import com.github.dwickern.macros.NameOf.nameOf +import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model._ -import net.liftweb.common.{Empty, Full} +import com.openbankproject.commons.util.ApiVersion +import net.liftweb.common.Full import net.liftweb.http.rest.RestHelper import net.liftweb.json.Extraction import net.liftweb.util.Helpers.tryo - -import scala.collection.immutable.{List, Nil} -import scala.collection.mutable.ArrayBuffer -import com.openbankproject.commons.ExecutionContext.Implicits.global -import com.openbankproject.commons.util.ApiVersion import net.liftweb.util.StringHelpers +import java.util.Date +import scala.collection.immutable.{List, Nil} +import scala.collection.mutable.ArrayBuffer import scala.concurrent.Future @@ -73,7 +70,7 @@ trait APIMethods220 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v3_0_0/APIMethods300.scala b/obp-api/src/main/scala/code/api/v3_0_0/APIMethods300.scala index d01a885da..d774b2f93 100644 --- a/obp-api/src/main/scala/code/api/v3_0_0/APIMethods300.scala +++ b/obp-api/src/main/scala/code/api/v3_0_0/APIMethods300.scala @@ -1,12 +1,9 @@ package code.api.v3_0_0 -import java.util.regex.Pattern import code.accountattribute.AccountAttributeX -import code.accountholders.AccountHolders -import code.api.{APIFailureNewStyle, Constant} import code.api.Constant.{PARAM_LOCALE, PARAM_TIMESTAMP} import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON -import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON.{bankJSON, banksJSON, branchJsonV300, _} +import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON.{banksJSON, branchJsonV300, _} import code.api.util.APIUtil.{getGlossaryItems, _} import code.api.util.ApiRole._ import code.api.util.ApiTag._ @@ -15,8 +12,11 @@ import code.api.util.FutureUtil.EndpointContext import code.api.util.NewStyle.HttpCode import code.api.util._ import code.api.v1_2_1.JSONFactory -import code.api.v2_0_0.{JSONFactory200, OBPAPI2_0_0} +import code.api.v2_0_0.AccountsHelper._ +import code.api.v2_0_0.JSONFactory200 import code.api.v3_0_0.JSONFactory300._ +import code.api.v4_0_0.{AtmJsonV400, JSONFactory400} +import code.api.{APIFailureNewStyle, Constant} import code.bankconnectors._ import code.consumer.Consumers import code.entitlementrequest.EntitlementRequest @@ -26,32 +26,27 @@ import code.scope.Scope import code.search.elasticsearchWarehouse import code.users.Users import code.util.Helper -import code.util.Helper.{ObpS, booleanToBox, booleanToFuture} +import code.util.Helper.{ObpS, booleanToFuture} import code.views.Views import code.views.system.ViewDefinition import com.github.dwickern.macros.NameOf.nameOf import com.grum.geocalc.{Coordinate, EarthCalc, Point} +import com.openbankproject.commons.ExecutionContext.Implicits.global +import com.openbankproject.commons.dto.CustomerAndAttribute import com.openbankproject.commons.model._ +import com.openbankproject.commons.util.ApiVersion import net.liftweb.common._ -import net.liftweb.http.S import net.liftweb.http.js.JE.JsRaw import net.liftweb.http.rest.RestHelper -import net.liftweb.json.{Extraction, compactRender} +import net.liftweb.json.JsonAST.JField +import net.liftweb.json.compactRender import net.liftweb.util.Helpers.tryo +import net.liftweb.util.StringHelpers +import java.util.regex.Pattern import scala.collection.immutable.{List, Nil} import scala.collection.mutable.ArrayBuffer -import com.openbankproject.commons.ExecutionContext.Implicits.global - import scala.concurrent.Future -import code.api.v2_0_0.AccountsHelper._ -import code.api.v2_2_0.{AtmJsonV220, JSONFactory220} -import code.api.v4_0_0.{AtmJsonV400, JSONFactory400} -import code.model -import com.openbankproject.commons.dto.CustomerAndAttribute -import com.openbankproject.commons.util.ApiVersion -import net.liftweb.json.JsonAST.JField -import net.liftweb.util.StringHelpers trait APIMethods300 { @@ -82,7 +77,7 @@ trait APIMethods300 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v3_1_0/APIMethods310.scala b/obp-api/src/main/scala/code/api/v3_1_0/APIMethods310.scala index 08b86a7a5..80692cf30 100644 --- a/obp-api/src/main/scala/code/api/v3_1_0/APIMethods310.scala +++ b/obp-api/src/main/scala/code/api/v3_1_0/APIMethods310.scala @@ -93,7 +93,7 @@ trait APIMethods310 { |* Git Commit""", EmptyBody, apiInfoJSON, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root : OBPEndpoint = { @@ -1870,7 +1870,7 @@ trait APIMethods310 { cc => implicit val ec = EndpointContext(Some(cc)) for { (_, callContext) <- anonymousAccess(cc) - connectorVersion = code.api.Constant.Connector.openOrThrowException("connector props field `connector` not set") + connectorVersion = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet The missing props is 'connector'") starConnectorProps = APIUtil.getPropsValue("starConnector_supported_types").openOr("notfound") //TODO we need to decide what kind of connector should we use. obpApiLoopback = ObpApiLoopback( diff --git a/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala b/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala index a10ac2177..d14433bd5 100644 --- a/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala +++ b/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala @@ -2218,7 +2218,7 @@ trait APIMethods400 extends MdcLoggable { |* Git Commit""", EmptyBody, apiInfoJson400, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root: OBPEndpoint = { @@ -3817,7 +3817,7 @@ trait APIMethods400 extends MdcLoggable { BigDecimal(postJson.amount.amount) } _ <- Helper.booleanToFuture(s"${InvalidISOCurrencyCode} Current input is: '${postJson.amount.currency}'", cc=callContext) { - isValidCurrencyISOCode(postJson.amount.currency) + code.api.util.APIUtil.isValidCurrencyISOCode(postJson.amount.currency) } (_, callContext) <- NewStyle.function.getCustomerByCustomerId(postJson.customer_id, callContext) _ <- Users.users.vend.getUserByUserIdFuture(postJson.user_id) map { diff --git a/obp-api/src/main/scala/code/api/v4_0_0/JSONFactory4.0.0.scala b/obp-api/src/main/scala/code/api/v4_0_0/JSONFactory4.0.0.scala index be44a7a59..24217ff5e 100644 --- a/obp-api/src/main/scala/code/api/v4_0_0/JSONFactory4.0.0.scala +++ b/obp-api/src/main/scala/code/api/v4_0_0/JSONFactory4.0.0.scala @@ -29,6 +29,7 @@ package code.api.v4_0_0 import code.api.Constant import code.api.attributedefinition.AttributeDefinition import code.api.util.APIUtil.{DateWithDay, DateWithSeconds, gitCommit, stringOptionOrNull, stringOrNull} +import code.api.util.ErrorMessages.MandatoryPropertyIsNotSet import code.api.util.{APIUtil, CallContext, NewStyle} import code.api.v1_2_1.JSONFactory.{createAmountOfMoneyJSON, createOwnersJSON} import code.api.v1_2_1.{BankRoutingJsonV121, JSONFactory, UserJSONV121, ViewJSONV121} @@ -1107,7 +1108,7 @@ object JSONFactory400 { val organisationWebsiteEnergySource = APIUtil.getPropsValue("energy_source.organisation_website", "") val energySource = new EnergySource400(organisationEnergySource, organisationWebsiteEnergySource) - val connector = code.api.Constant.Connector.openOrThrowException("no connector set") + val connector = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet. The missing prop is `connector` ") val resourceDocsRequiresRole = APIUtil.getPropsAsBoolValue("resource_docs_requires_role", false) APIInfoJson400( diff --git a/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala b/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala index 700963671..50e593848 100644 --- a/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala +++ b/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala @@ -38,9 +38,9 @@ import net.liftweb.http.Req import net.liftweb.http.rest.RestHelper import net.liftweb.json import net.liftweb.json.{Extraction, compactRender, prettyRender} +import net.liftweb.mapper.By import net.liftweb.util.Helpers.tryo import net.liftweb.util.{Helpers, Props, StringHelpers} -import net.liftweb.mapper.By import java.util.UUID import java.util.concurrent.ThreadLocalRandom @@ -95,7 +95,7 @@ trait APIMethods500 { |* Git Commit""", EmptyBody, apiInfoJson400, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root: OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v5_0_0/JSONFactory5.0.0.scala b/obp-api/src/main/scala/code/api/v5_0_0/JSONFactory5.0.0.scala index ea82d185a..7be0bf05c 100644 --- a/obp-api/src/main/scala/code/api/v5_0_0/JSONFactory5.0.0.scala +++ b/obp-api/src/main/scala/code/api/v5_0_0/JSONFactory5.0.0.scala @@ -29,6 +29,7 @@ package code.api.v5_0_0 import code.api.Constant import code.api.util.APIUtil import code.api.util.APIUtil.{gitCommit, nullToString, stringOptionOrNull, stringOrNull} +import code.api.util.ErrorMessages.MandatoryPropertyIsNotSet import code.api.v1_2_1.BankRoutingJsonV121 import code.api.v1_3_0.JSONFactory1_3_0.{cardActionsToString, createAccountJson, createPinResetJson, createReplacementJson} import code.api.v1_3_0.{PinResetJSON, ReplacementJSON} @@ -558,7 +559,7 @@ object JSONFactory500 { val organisationWebsiteEnergySource = APIUtil.getPropsValue("energy_source.organisation_website", "") val energySource = new EnergySource400(organisationEnergySource, organisationWebsiteEnergySource) - val connector = code.api.Constant.Connector.openOrThrowException("no connector set") + val connector = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet. The missing prop is `connector` ") val resourceDocsRequiresRole = APIUtil.getPropsAsBoolValue("resource_docs_requires_role", false) APIInfoJson400( diff --git a/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala b/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala index 405b7e097..0f71fcdb8 100644 --- a/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala +++ b/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala @@ -95,7 +95,7 @@ trait APIMethods510 { |* Git Commit""", EmptyBody, apiInfoJson400, - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val root: OBPEndpoint = { @@ -296,7 +296,7 @@ trait APIMethods510 { |""".stripMargin, EmptyBody, WaitingForGodotJsonV510(sleep_in_milliseconds = 50), - List(UnknownError, "no connector set"), + List(UnknownError, MandatoryPropertyIsNotSet), apiTagApi :: Nil) lazy val waitingForGodot: OBPEndpoint = { diff --git a/obp-api/src/main/scala/code/api/v5_1_0/JSONFactory5.1.0.scala b/obp-api/src/main/scala/code/api/v5_1_0/JSONFactory5.1.0.scala index cbda6263b..c3e8207f1 100644 --- a/obp-api/src/main/scala/code/api/v5_1_0/JSONFactory5.1.0.scala +++ b/obp-api/src/main/scala/code/api/v5_1_0/JSONFactory5.1.0.scala @@ -30,6 +30,7 @@ import code.api.Constant import code.api.berlin.group.ConstantsBG import code.api.berlin.group.v1_3.JSONFactory_BERLIN_GROUP_1_3.ConsentAccessJson import code.api.util.APIUtil.{DateWithDay, DateWithSeconds, gitCommit, stringOrNull} +import code.api.util.ErrorMessages.MandatoryPropertyIsNotSet import code.api.util._ import code.api.v1_2_1.BankRoutingJsonV121 import code.api.v1_4_0.JSONFactory1_4_0.{ChallengeJsonV140, LocationJsonV140, MetaJsonV140, TransactionRequestAccountJsonV140, transformToLocationFromV140, transformToMetaFromV140} @@ -968,7 +969,7 @@ object JSONFactory510 extends CustomJsonFormats { val organisationWebsiteEnergySource = APIUtil.getPropsValue("energy_source.organisation_website", "") val energySource = EnergySource400(organisationEnergySource, organisationWebsiteEnergySource) - val connector = code.api.Constant.Connector.openOrThrowException("no connector set") + val connector = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet. The missing prop is `connector` ") val resourceDocsRequiresRole = APIUtil.getPropsAsBoolValue("resource_docs_requires_role", false) APIInfoJsonV510( diff --git a/obp-api/src/main/scala/code/bankconnectors/Connector.scala b/obp-api/src/main/scala/code/bankconnectors/Connector.scala index 2852497d0..cc09b1ca7 100644 --- a/obp-api/src/main/scala/code/bankconnectors/Connector.scala +++ b/obp-api/src/main/scala/code/bankconnectors/Connector.scala @@ -80,7 +80,7 @@ object Connector extends SimpleInjector { val connector = new Inject(buildOne _) {} def buildOne: Connector = { - val connectorProps = code.api.Constant.Connector.openOrThrowException("connector props field not set") + val connectorProps = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet The missing props is 'connector'") getConnectorInstance(connectorProps) } diff --git a/obp-api/src/main/scala/code/model/dataAccess/AuthUser.scala b/obp-api/src/main/scala/code/model/dataAccess/AuthUser.scala index 1bebf607e..cb056b0f7 100644 --- a/obp-api/src/main/scala/code/model/dataAccess/AuthUser.scala +++ b/obp-api/src/main/scala/code/model/dataAccess/AuthUser.scala @@ -28,13 +28,13 @@ package code.model.dataAccess import code.UserRefreshes.UserRefreshes import code.accountholders.AccountHolders +import code.api._ import code.api.cache.Caching import code.api.dynamic.endpoint.helper.DynamicEndpointHelper import code.api.util.APIUtil._ import code.api.util.CommonFunctions.validUri import code.api.util.ErrorMessages._ import code.api.util._ -import code.api._ import code.bankconnectors.Connector import code.context.UserAuthContextProvider import code.entitlement.Entitlement @@ -419,7 +419,7 @@ import net.liftweb.util.Helpers._ /**Marking the locked state to show different error message */ val usernameLockedStateCode = Long.MaxValue - val connector = code.api.Constant.Connector.openOrThrowException("no connector set") + val connector = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet. The missing prop is `connector` ") val starConnectorSupportedTypes = APIUtil.getPropsValue("starConnector_supported_types","") override def dbIndexes: List[BaseIndex[AuthUser]] = UniqueIndex(username, provider) ::super.dbIndexes diff --git a/obp-api/src/test/scala/code/api/v3_1_0/ObpApiLoopbackTest.scala b/obp-api/src/test/scala/code/api/v3_1_0/ObpApiLoopbackTest.scala index b892879de..482254d7c 100644 --- a/obp-api/src/test/scala/code/api/v3_1_0/ObpApiLoopbackTest.scala +++ b/obp-api/src/test/scala/code/api/v3_1_0/ObpApiLoopbackTest.scala @@ -25,7 +25,7 @@ TESOBE (http://www.tesobe.com/) */ package code.api.v3_1_0 -import code.api.util.ErrorMessages.NotImplemented +import code.api.util.ErrorMessages.{MandatoryPropertyIsNotSet, NotImplemented} import code.api.v3_1_0.OBPAPI3_1_0.Implementations3_1_0 import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.model.ErrorMessage @@ -51,7 +51,7 @@ class ObpApiLoopbackTest extends V310ServerSetup { val response310 = makeGetRequest(request310) Then("We should get a 400") response310.code should equal(400) - val connectorVersion = code.api.Constant.Connector.openOrThrowException("connector props filed `connector` not set") + val connectorVersion = code.api.Constant.Connector.openOrThrowException(s"$MandatoryPropertyIsNotSet The missing props is 'connector'") val errorMessage = s"${NotImplemented}" And("error should be " + errorMessage) response310.body.extract[ErrorMessage].message should equal (errorMessage)