diff --git a/README.md b/README.md index 0dcac1581..ffb7f5410 100644 --- a/README.md +++ b/README.md @@ -58,6 +58,10 @@ To compile and run jetty, install Maven 3, create your configuration in obp-api/ mvn install -pl .,obp-commons && mvn jetty:run -pl obp-api +In case that the above command fails try next one: + + export MAVEN_OPTS="-Xss128m" && mvn install -pl .,obp-commons && mvn jetty:run -pl obp-api + [Note: How to run via IntelliJ IDEA](docs/glossary/Run_via_IntelliJ_IDEA.md) ## Run some tests. diff --git a/docs/glossary/Dynamic_Resource_Doc.md b/docs/glossary/Dynamic_Resource_Doc.md new file mode 100644 index 000000000..e4cee481f --- /dev/null +++ b/docs/glossary/Dynamic_Resource_Doc.md @@ -0,0 +1,14 @@ + +In OBP we largely define our endpoints using an internal case class or model called ResourceDoc + +Using this endpoint, developers can create their own Resource Docs at run time thus creating fully featured +Open Bank Project style endpoints dynamically. + +In order to do this you need to prepare your desired Resource Doc as JSON. +The business logic code can be written in the *method_body* field as encoded Scala code. + +This feature is somewhat work in progress (WIP). + +The following videos are available: +* [Introduction to Dynamic Resource Docs] (https://vimeo.com/623381607) + diff --git a/obp-api/pom.xml b/obp-api/pom.xml index b1a6a38b0..ab5fa1657 100644 --- a/obp-api/pom.xml +++ b/obp-api/pom.xml @@ -592,28 +592,6 @@ - - - net.alchim31.maven - yuicompressor-maven-plugin - 1.5.1 - - - - compress - - - - - true - ${project.build.sourceEncoding} - - - - **/*.min.* - - - org.mortbay.jetty maven-jetty-plugin diff --git a/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala b/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala index b013ba930..bb3013b67 100644 --- a/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala +++ b/obp-api/src/main/scala/bootstrap/liftweb/Boot.scala @@ -83,7 +83,7 @@ import code.kycchecks.MappedKycCheck import code.kycdocuments.MappedKycDocument import code.kycmedias.MappedKycMedia import code.kycstatuses.MappedKycStatus -import code.loginattempts.MappedBadLoginAttempt +import code.loginattempts.{LoginAttempt, MappedBadLoginAttempt} import code.management.ImporterAPI import code.meetings.{MappedMeeting, MappedMeetingInvitee} import code.metadata.comments.MappedComment @@ -685,7 +685,24 @@ class Boot extends MdcLoggable { case _ => // Do not start it } MetricsArchiveScheduler.start(intervalInSeconds = 86400) - + + + object UsernameLockedChecker { + def beginServicing(session: LiftSession, req: Req){ + AuthUser.currentUser match { + case Full(user) => + LoginAttempt.userIsLocked(localIdentityProvider, user.username.get) match { + case true => + AuthUser.logoutCurrentUser + logger.warn(s"User ${user.username.get} has been logged out due to it has been locked.") + case false => // Do nothing + } + case _ => // Do nothing + } + } + } + LiftSession.onBeginServicing = UsernameLockedChecker.beginServicing _ :: + LiftSession.onBeginServicing APIUtil.akkaSanityCheck() match { case Full(c) if c == true => logger.info(s"remotedata.secret matched = $c") diff --git a/obp-api/src/main/scala/code/api/util/Glossary.scala b/obp-api/src/main/scala/code/api/util/Glossary.scala index 840a786f7..04c348419 100644 --- a/obp-api/src/main/scala/code/api/util/Glossary.scala +++ b/obp-api/src/main/scala/code/api/util/Glossary.scala @@ -3064,28 +3064,6 @@ object Glossary extends MdcLoggable { | |""".stripMargin) - - - glossaryItems += GlossaryItem( - title = "Dynamic Resource Doc", - description = - s""" - | In OBP we largely define our endpoints using an internal case class or model called ResourceDoc -| -| Using this endpoint, developers can create their own Resource Docs at run time thus creating fully featured -| Open Bank Project style endpoints dynamically. -| -| - | In order to do this you need to prepare your desired Resource Doc as JSON. - | The business logic code can be written in the *method_body* field as encoded Scala code. - | - | This feature is somewhat work in progress (WIP). - | - |The following videos are available: - |* [Introduction to Dynamic Resource Docs] (https://vimeo.com/623381607) - | - |""".stripMargin) - glossaryItems += GlossaryItem( title = "Dynamic Message Doc", description =