From b331a5168197cf1656203e20e483d8a464f85ec6 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Feb 2024 17:53:43 +0530 Subject: [PATCH 01/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- course-mw/course-actors-common/pom.xml | 6 +- course-mw/course-actors/pom.xml | 6 +- course-mw/enrolment-actor/pom.xml | 4 +- course-mw/pom.xml | 5 +- .../sunbird-util/sunbird-cache-utils/pom.xml | 8 +- .../sunbird-cassandra-utils/pom.xml | 6 +- .../sunbird-util/sunbird-es-utils/pom.xml | 9 +- .../dependency-reduced-pom.xml | 138 ----------- .../sunbird-util/sunbird-notification/pom.xml | 4 +- .../sunbird-platform-core/actor-core/pom.xml | 2 +- .../auth-verifier/pom.xml | 6 +- .../sunbird-platform-core/common-util/pom.xml | 9 +- .../dependency-reduced-pom.xml | 54 ---- service/dependency-reduced-pom.xml | 233 ------------------ service/pom.xml | 18 +- 15 files changed, 35 insertions(+), 473 deletions(-) delete mode 100644 course-mw/sunbird-util/sunbird-notification/dependency-reduced-pom.xml delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/sunbird-commons/dependency-reduced-pom.xml delete mode 100644 service/dependency-reduced-pom.xml diff --git a/course-mw/course-actors-common/pom.xml b/course-mw/course-actors-common/pom.xml index 454c99884..7efc5396d 100644 --- a/course-mw/course-actors-common/pom.xml +++ b/course-mw/course-actors-common/pom.xml @@ -104,13 +104,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test @@ -176,7 +176,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 diff --git a/course-mw/course-actors/pom.xml b/course-mw/course-actors/pom.xml index f729c6f7b..f583f8eff 100644 --- a/course-mw/course-actors/pom.xml +++ b/course-mw/course-actors/pom.xml @@ -45,13 +45,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test @@ -80,7 +80,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 diff --git a/course-mw/enrolment-actor/pom.xml b/course-mw/enrolment-actor/pom.xml index c60502eff..9e814342c 100644 --- a/course-mw/enrolment-actor/pom.xml +++ b/course-mw/enrolment-actor/pom.xml @@ -48,9 +48,9 @@ test - it.ozimov + com.github.codemonstur embedded-redis - 0.7.1 + 1.1.0 test diff --git a/course-mw/pom.xml b/course-mw/pom.xml index 38568dd8b..f0a5057ab 100644 --- a/course-mw/pom.xml +++ b/course-mw/pom.xml @@ -10,8 +10,7 @@ 1.0.0-beta5 2.22.0 - 2.0.7 - 2.0.0-beta.5 + 2.0.9 sunbird-util @@ -93,7 +92,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index a2e59fabf..2f92d724e 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -38,7 +38,7 @@ org.powermock powermock-module-junit4 - 1.6.5 + ${powermock.version} test @@ -49,8 +49,8 @@ org.powermock - powermock-api-mockito - 1.6.5 + powermock-api-mockito2 + ${powermock.version} test @@ -81,7 +81,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 **/*Spec.java diff --git a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml index 23a2a0c80..88030c7da 100644 --- a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml @@ -81,13 +81,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test @@ -108,7 +108,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 --illegal-access=warn diff --git a/course-mw/sunbird-util/sunbird-es-utils/pom.xml b/course-mw/sunbird-util/sunbird-es-utils/pom.xml index 068b378ee..0f9de7c67 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-es-utils/pom.xml @@ -6,7 +6,6 @@ org.sunbird 1.0-SNAPSHOT - org.sunbird sunbird-es-utils 1.0-SNAPSHOT Sunbird ElasticSearch Utils @@ -69,7 +68,7 @@ org.powermock powermock-module-junit4 - 1.6.5 + ${powermock.version} test @@ -80,8 +79,8 @@ org.powermock - powermock-api-mockito - 1.6.5 + powermock-api-mockito2 + ${powermock.version} test @@ -102,7 +101,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 --illegal-access=warn diff --git a/course-mw/sunbird-util/sunbird-notification/dependency-reduced-pom.xml b/course-mw/sunbird-util/sunbird-notification/dependency-reduced-pom.xml deleted file mode 100644 index 98c1d9579..000000000 --- a/course-mw/sunbird-util/sunbird-notification/dependency-reduced-pom.xml +++ /dev/null @@ -1,138 +0,0 @@ - - - - sunbird-util - org.sunbird - 1.0-SNAPSHOT - - 4.0.0 - org.sunbird - sunbird-notification - 1.0-SNAPSHOT - - src/main/java - src/test/java - - - maven-compiler-plugin - 3.8.1 - - 11 - - - - maven-shade-plugin - 3.0.0 - - - package - - shade - - - - - classworlds:classworlds - junit:junit - jmock:* - *:xml-apis - org.apache.maven:lib:tests - - - - - - - - org.jacoco - jacoco-maven-plugin - 0.8.5 - - - jacoco-initialize - - prepare-agent - - - - jacoco-site - package - - report - - - - - ${basedir}/target/coverage-reports/jacoco-unit.exec - ${basedir}/target/coverage-reports/jacoco-unit.exec - - - - - - - junit - junit - 4.13.1 - test - - - hamcrest-core - org.hamcrest - - - - - org.mockito - mockito-core - 2.22.0 - test - - - byte-buddy - net.bytebuddy - - - byte-buddy-agent - net.bytebuddy - - - objenesis - org.objenesis - - - - - org.powermock - powermock-api-mockito2 - 2.0.7 - test - - - powermock-api-support - org.powermock - - - - - org.powermock - powermock-module-junit4 - 2.0.0-beta.5 - test - - - powermock-module-junit4-common - org.powermock - - - hamcrest-core - org.hamcrest - - - - - - UTF-8 - - - diff --git a/course-mw/sunbird-util/sunbird-notification/pom.xml b/course-mw/sunbird-util/sunbird-notification/pom.xml index c6c867a3c..1d7105042 100644 --- a/course-mw/sunbird-util/sunbird-notification/pom.xml +++ b/course-mw/sunbird-util/sunbird-notification/pom.xml @@ -105,13 +105,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml index a72618a67..e793bb75c 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml @@ -103,7 +103,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 diff --git a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml index f42d214e6..b03659a70 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml @@ -34,13 +34,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test @@ -71,7 +71,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 --illegal-access=warn diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 518e96ec7..a3a909559 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -14,8 +14,7 @@ 2.5.19 2.22.0 - 2.0.7 - 2.0.0-beta.5 + 2.0.9 org.sunbird cloud-store-sdk 1.4.6 @@ -181,13 +180,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test @@ -289,7 +288,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M4 + 3.0.0 --illegal-access=warn diff --git a/course-mw/sunbird-util/sunbird-platform-core/sunbird-commons/dependency-reduced-pom.xml b/course-mw/sunbird-util/sunbird-platform-core/sunbird-commons/dependency-reduced-pom.xml deleted file mode 100644 index 2a6d86668..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/sunbird-commons/dependency-reduced-pom.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - 4.0.0 - org.sunbird - sunbird-commons - Sunbird Commons - 1.0-SNAPSHOT - - - - maven-shade-plugin - 3.0.0 - - - package - - shade - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - com.google.guava:guava - - - - - reference.conf - - - org.sunbird.middleware.Application - - - - - - - - - - - UTF-8 - - - diff --git a/service/dependency-reduced-pom.xml b/service/dependency-reduced-pom.xml deleted file mode 100644 index fd4449d2e..000000000 --- a/service/dependency-reduced-pom.xml +++ /dev/null @@ -1,233 +0,0 @@ - - - 4.0.0 - org.sunbird - learning-service - play2 - learning-service - 1.0-SNAPSHOT - - ${basedir}/app - ${basedir}/test - - - ${basedir}/conf - - - - - maven-compiler-plugin - 3.8.1 - - 11 - - - - maven-shade-plugin - 3.0.0 - - - package - - shade - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - reference.conf - - - org.sunbird.middleware.Application - - - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.0.0 - - - generate-sources - - add-source - - - - actors - cassandra-dac - utils - cache - - - - - - - com.google.code.play2-maven-plugin - play2-maven-plugin - ${play2.plugin.version} - true - - - com.google.code.play2-maven-plugin - play2-provider-play24 - ${play2.plugin.version} - - - - - maven-surefire-plugin - 3.0.0-M4 - - - **/*Spec.java - **/*Test.java - - - - - org.jacoco - jacoco-maven-plugin - 0.7.5.201505241946 - - - jacoco-initialize - - prepare-agent - - - - jacoco-site - package - - report - - - - - ${basedir}/target/coverage-reports/jacoco-unit.exec - ${basedir}/target/coverage-reports/jacoco-unit.exec - - **/common/** - **/routes/** - **/Reverse*/** - **/*.javascript/** - - - - - - - - - false - - scalaz-bintray - Scalaz Bintray - releases - https://dl.bintray.com/scalaz/releases/ - - - - - - false - - typesafe-releases-plugins - https://repo.typesafe.com/typesafe/releases/ - - - - - com.typesafe.play - play-specs2_2.11 - 2.4.6 - test - - - gson - com.google.code.gson - - - play-test_2.11 - com.typesafe.play - - - specs2-core_2.11 - org.specs2 - - - specs2-junit_2.11 - org.specs2 - - - specs2-mock_2.11 - org.specs2 - - - - - com.typesafe.akka - akka-testkit_${scala.major.version} - 2.5.16 - test - - - org.powermock - powermock-module-junit4 - 1.6.5 - test - - - junit - junit - - - powermock-module-junit4-common - org.powermock - - - - - org.powermock - powermock-api-mockito - 1.6.5 - test - - - mockito-core - org.mockito - - - powermock-api-mockito-common - org.powermock - - - - - junit - junit - 4.13.1 - test - - - - 2.11.8 - 1.0.0-beta5 - 2.7.2 - - - diff --git a/service/pom.xml b/service/pom.xml index da9f1bd2f..187b05b21 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -30,12 +30,10 @@ 2.7.2 1.0.0-rc5 - 1.0.0 2.11 2.11.12 2.22.0 - 2.0.7 - 2.0.0-beta.5 + 2.0.9 @@ -195,13 +193,13 @@ org.powermock powermock-api-mockito2 - ${powermock.api.mockito2.version} + ${powermock.version} test org.powermock powermock-module-junit4 - ${powermock.module.junit4.version} + ${powermock.version} test @@ -254,18 +252,10 @@ ${play2.plugin.version} true - - com.google.code.sbt-compiler-maven-plugin - sbt-compiler-maven-plugin - ${sbt-compiler.plugin.version} - - -feature -deprecation -Xfatal-warnings - - org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M5 + 3.0.0 false From 2a7830c58b692cc207852e0606f1244353afbbc3 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Feb 2024 19:29:34 +0530 Subject: [PATCH 02/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- course-mw/course-actors-common/pom.xml | 18 +++++++------ course-mw/course-actors/pom.xml | 9 ++++--- course-mw/enrolment-actor/pom.xml | 7 ++--- .../CollectionSummaryAggregate.scala | 2 +- .../enrolments/ContentConsumptionActor.scala | 9 +++---- .../enrolments/CourseEnrolmentActor.scala | 26 +++++++++---------- .../sunbird/group/GroupAggregatesActor.scala | 7 +++-- course-mw/pom.xml | 2 +- course-mw/sunbird-util/cache-utils/pom.xml | 4 +-- .../sunbird-util/sunbird-cache-utils/pom.xml | 3 ++- .../sunbird-cassandra-utils/pom.xml | 3 ++- .../sunbird-util/sunbird-es-utils/pom.xml | 3 ++- .../sunbird-util/sunbird-notification/pom.xml | 3 ++- .../sunbird-platform-core/actor-core/pom.xml | 15 ++++++----- .../sunbird-platform-core/actor-util/pom.xml | 14 +++++----- .../auth-verifier/pom.xml | 3 ++- .../sunbird-platform-core/common-util/pom.xml | 19 +++++++------- pom.xml | 2 +- service/pom.xml | 10 ++++--- 19 files changed, 86 insertions(+), 73 deletions(-) diff --git a/course-mw/course-actors-common/pom.xml b/course-mw/course-actors-common/pom.xml index 7efc5396d..8f7e6d930 100644 --- a/course-mw/course-actors-common/pom.xml +++ b/course-mw/course-actors-common/pom.xml @@ -12,8 +12,10 @@ UTF-8 UTF-8 + 2.12 + 2.5.22 1.6.1 - 1.0.7 + 0.8.8 @@ -44,13 +46,13 @@ com.typesafe.akka - akka-actor_2.11 - 2.5.22 + akka-actor_${scala.major.version} + ${typesafe.akka.version} com.typesafe.akka - akka-slf4j_2.11 - 2.5.22 + akka-slf4j_${scala.major.version} + ${typesafe.akka.version} org.sunbird @@ -80,8 +82,8 @@ com.typesafe.akka - akka-testkit_2.11 - 2.5.22 + akka-testkit_${scala.major.version} + ${typesafe.akka.version} test @@ -163,7 +165,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} org.apache.maven.plugins diff --git a/course-mw/course-actors/pom.xml b/course-mw/course-actors/pom.xml index f583f8eff..92966c72d 100644 --- a/course-mw/course-actors/pom.xml +++ b/course-mw/course-actors/pom.xml @@ -13,6 +13,9 @@ Course UTF-8 + 2.12 + 2.5.22 + 0.8.8 @@ -32,8 +35,8 @@ com.typesafe.akka - akka-testkit_2.11 - 2.5.22 + akka-testkit_${scala.major.version} + ${typesafe.akka.version} test @@ -67,7 +70,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} org.apache.maven.plugins diff --git a/course-mw/enrolment-actor/pom.xml b/course-mw/enrolment-actor/pom.xml index 9e814342c..cb400d70b 100644 --- a/course-mw/enrolment-actor/pom.xml +++ b/course-mw/enrolment-actor/pom.xml @@ -4,8 +4,9 @@ enrolment-actor 1.0-SNAPSHOT - 2.11.12 - 2.11 + 2.12 + 2.12.11 + 2.5.22 1.4.1 @@ -75,7 +76,7 @@ com.typesafe.akka akka-testkit_${scala.major.version} - 2.5.22 + ${typesafe.akka.version} test diff --git a/course-mw/enrolment-actor/src/main/scala/org/sunbird/aggregate/CollectionSummaryAggregate.scala b/course-mw/enrolment-actor/src/main/scala/org/sunbird/aggregate/CollectionSummaryAggregate.scala index fb2bed644..509d5ffe7 100644 --- a/course-mw/enrolment-actor/src/main/scala/org/sunbird/aggregate/CollectionSummaryAggregate.scala +++ b/course-mw/enrolment-actor/src/main/scala/org/sunbird/aggregate/CollectionSummaryAggregate.scala @@ -74,7 +74,7 @@ class CollectionSummaryAggregate @Inject()(implicit val cacheUtil: RedisCacheUti def transform(druidResponse: String, groupByKeys: List[String]): util.HashMap[String, AnyRef] = { val transformedResult = new util.HashMap[String, AnyRef]() - import scala.collection.JavaConversions._ + import scala.collection.convert.ImplicitConversions._ val parsedResult: AnyRef = JsonUtil.deserialize(druidResponse, classOf[AnyRef]) if (isArray(druidResponse) && parsedResult.asInstanceOf[util.ArrayList[util.Map[String, AnyRef]]].nonEmpty) { val groupingObj = parsedResult.asInstanceOf[util.ArrayList[util.Map[String, AnyRef]]].map(x => { diff --git a/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/ContentConsumptionActor.scala b/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/ContentConsumptionActor.scala index 30e4586a3..adf5eeaaa 100644 --- a/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/ContentConsumptionActor.scala +++ b/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/ContentConsumptionActor.scala @@ -1,10 +1,6 @@ package org.sunbird.enrolments -import java.util -import java.util.{Date, TimeZone, UUID} - import com.fasterxml.jackson.databind.ObjectMapper -import javax.inject.Inject import org.apache.commons.collections4.{CollectionUtils, MapUtils} import org.apache.commons.lang3.StringUtils import org.sunbird.cassandra.CassandraOperation @@ -20,8 +16,11 @@ import org.sunbird.kafka.client.{InstructionEventGenerator, KafkaClient} import org.sunbird.learner.constants.{CourseJsonKey, InstructionEvent} import org.sunbird.learner.util.Util -import scala.collection.JavaConversions._ +import java.util +import java.util.{Date, TimeZone, UUID} +import javax.inject.Inject import scala.collection.JavaConverters._ +import scala.collection.convert.ImplicitConversions._ case class InternalContentConsumption(courseId: String, batchId: String, contentId: String) { def validConsumption() = StringUtils.isNotBlank(courseId) && StringUtils.isNotBlank(batchId) && StringUtils.isNotBlank(contentId) diff --git a/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/CourseEnrolmentActor.scala b/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/CourseEnrolmentActor.scala index efced7728..8b6502e05 100644 --- a/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/CourseEnrolmentActor.scala +++ b/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/CourseEnrolmentActor.scala @@ -1,17 +1,11 @@ package org.sunbird.enrolments -import java.sql.Timestamp -import java.text.{MessageFormat, SimpleDateFormat} -import java.time.format.DateTimeFormatter -import java.time.{LocalDate, LocalDateTime, LocalTime, ZoneId} -import java.util -import java.util.{Comparator, Date} import akka.actor.ActorRef import com.fasterxml.jackson.databind.ObjectMapper - -import javax.inject.{Inject, Named} -import org.apache.commons.collections4.{CollectionUtils, MapUtils} +import org.apache.commons.collections4.CollectionUtils import org.apache.commons.lang3.StringUtils +import org.sunbird.cache.util.RedisCacheUtil +import org.sunbird.common.CassandraUtil import org.sunbird.common.exception.ProjectCommonException import org.sunbird.common.models.response.Response import org.sunbird.common.models.util.ProjectUtil.EnrolmentType @@ -21,16 +15,20 @@ import org.sunbird.common.responsecode.ResponseCode import org.sunbird.learner.actors.coursebatch.dao.impl.{CourseBatchDaoImpl, UserCoursesDaoImpl} import org.sunbird.learner.actors.coursebatch.dao.{CourseBatchDao, UserCoursesDao} import org.sunbird.learner.actors.group.dao.impl.GroupDaoImpl -import org.sunbird.learner.util.{ContentSearchUtil, ContentUtil, CourseBatchSchedulerUtil, JsonUtil, Util} +import org.sunbird.learner.util._ import org.sunbird.models.course.batch.CourseBatch import org.sunbird.models.user.courses.UserCourses -import org.sunbird.cache.util.RedisCacheUtil -import org.sunbird.common.CassandraUtil -import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.telemetry.util.TelemetryUtil -import scala.collection.JavaConversions._ +import java.sql.Timestamp +import java.text.SimpleDateFormat +import java.time.format.DateTimeFormatter +import java.time.{LocalDate, LocalDateTime, LocalTime} +import java.util +import java.util.Date +import javax.inject.{Inject, Named} import scala.collection.JavaConverters._ +import scala.collection.convert.ImplicitConversions._ class CourseEnrolmentActor @Inject()(@Named("course-batch-notification-actor") courseBatchNotificationActorRef: ActorRef )(implicit val cacheUtil: RedisCacheUtil ) extends BaseEnrolmentActor { diff --git a/course-mw/enrolment-actor/src/main/scala/org/sunbird/group/GroupAggregatesActor.scala b/course-mw/enrolment-actor/src/main/scala/org/sunbird/group/GroupAggregatesActor.scala index e4bd0a90d..920053414 100644 --- a/course-mw/enrolment-actor/src/main/scala/org/sunbird/group/GroupAggregatesActor.scala +++ b/course-mw/enrolment-actor/src/main/scala/org/sunbird/group/GroupAggregatesActor.scala @@ -1,8 +1,5 @@ package org.sunbird.group -import java.text.MessageFormat - -import javax.inject.Inject import org.apache.commons.collections.CollectionUtils import org.apache.commons.lang3.StringUtils import org.sunbird.actor.base.BaseActor @@ -16,8 +13,10 @@ import org.sunbird.keys.SunbirdKey import org.sunbird.learner.actors.group.dao.impl.GroupDaoImpl import org.sunbird.learner.util.JsonUtil -import scala.collection.JavaConversions._ +import java.text.MessageFormat +import javax.inject.Inject import scala.collection.JavaConverters._ +import scala.collection.convert.ImplicitConversions._ class GroupAggregatesActor @Inject()(implicit val cacheUtil: RedisCacheUtil) extends BaseActor { diff --git a/course-mw/pom.xml b/course-mw/pom.xml index f0a5057ab..f5994149c 100644 --- a/course-mw/pom.xml +++ b/course-mw/pom.xml @@ -48,7 +48,7 @@ org.jacoco jacoco-maven-plugin - 0.8.4 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/cache-utils/pom.xml b/course-mw/sunbird-util/cache-utils/pom.xml index 5723ac2f6..fee608e14 100644 --- a/course-mw/sunbird-util/cache-utils/pom.xml +++ b/course-mw/sunbird-util/cache-utils/pom.xml @@ -13,8 +13,8 @@ Cache Utils UTF-8 - 2.11.12 - 2.11 + 2.12 + 2.12.11 1.4.1 diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 2f92d724e..a346da9f5 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -13,6 +13,7 @@ Sunbird Cache Utils UTF-8 + 0.8.8 @@ -95,7 +96,7 @@ org.jacoco jacoco-maven-plugin - 0.7.5.201505241946 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml index 88030c7da..f5205646b 100644 --- a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml @@ -15,6 +15,7 @@ UTF-8 UTF-8 3.7.0 + 0.8.8 @@ -123,7 +124,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/sunbird-es-utils/pom.xml b/course-mw/sunbird-util/sunbird-es-utils/pom.xml index 0f9de7c67..c1d912e1f 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-es-utils/pom.xml @@ -13,6 +13,7 @@ UTF-8 UTF-8 + 0.8.8 @@ -116,7 +117,7 @@ org.jacoco jacoco-maven-plugin - 0.7.5.201505241946 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/sunbird-notification/pom.xml b/course-mw/sunbird-util/sunbird-notification/pom.xml index 1d7105042..9b936e88f 100644 --- a/course-mw/sunbird-util/sunbird-notification/pom.xml +++ b/course-mw/sunbird-util/sunbird-notification/pom.xml @@ -14,6 +14,7 @@ UTF-8 + 0.8.8 @@ -55,7 +56,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml index e793bb75c..0c3bfb43c 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml @@ -7,11 +7,12 @@ 1.0-SNAPSHOT actor-core + 2.12 UTF-8 UTF-8 1.6.1 - 1.0.7 - 2.5.19 + 2.5.22 + 0.8.8 @@ -31,13 +32,13 @@ com.typesafe.akka - akka-actor_2.11 - ${learner.akka.version} + akka-actor_${scala.major.version} + ${typesafe.akka.version} com.typesafe.akka - akka-slf4j_2.11 - ${learner.akka.version} + akka-slf4j_${scala.major.version} + ${typesafe.akka.version} org.reflections @@ -70,7 +71,7 @@ org.jacoco jacoco-maven-plugin - 0.7.5.201505241946 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml index a1f684343..34d24fca4 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml @@ -11,26 +11,28 @@ http://maven.apache.org + 2.12 + 2.12.11 UTF-8 - 2.5.19 + 2.5.22 com.typesafe.akka - akka-actor_2.11 - ${learner.akka.version} + akka-actor_${scala.major.version} + ${typesafe.akka.version} com.typesafe.akka - akka-slf4j_2.11 - ${learner.akka.version} + akka-slf4j_${scala.major.version} + ${typesafe.akka.version} org.scala-lang scala-library - 2.11.11 + ${scala.version} diff --git a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml index b03659a70..ece8c53da 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml @@ -13,6 +13,7 @@ UTF-8 UTF-8 + 0.8.8 @@ -86,7 +87,7 @@ org.jacoco jacoco-maven-plugin - 0.7.5.201505241946 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index a3a909559..931010fb4 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -11,10 +11,11 @@ UTF-8 - - 2.5.19 + 2.12 + 2.5.22 2.22.0 2.0.9 + 0.8.8 org.sunbird cloud-store-sdk 1.4.6 @@ -29,13 +30,13 @@ com.typesafe.akka - akka-actor_2.11 - ${learner.akka.version} + akka-actor_${scala.major.version} + ${typesafe.akka.version} com.typesafe.akka - akka-slf4j_2.11 - ${learner.akka.version} + akka-slf4j_${scala.major.version} + ${typesafe.akka.version} ch.qos.logback @@ -227,7 +228,7 @@ com.fasterxml.jackson.module - jackson-module-scala_2.11 + jackson-module-scala_${scala.major.version} slf4j-log4j12 @@ -237,7 +238,7 @@ com.fasterxml.jackson.module - jackson-module-scala_2.11 + jackson-module-scala_${scala.major.version} 2.10.1 @@ -303,7 +304,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec diff --git a/pom.xml b/pom.xml index 65ebecce4..dc42f40ac 100644 --- a/pom.xml +++ b/pom.xml @@ -41,7 +41,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} merge-results diff --git a/service/pom.xml b/service/pom.xml index 187b05b21..a4f7c7caa 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -30,10 +30,12 @@ 2.7.2 1.0.0-rc5 - 2.11 - 2.11.12 + 2.12 + 2.12.11 + 2.5.22 2.22.0 2.0.9 + 0.8.8 @@ -181,7 +183,7 @@ com.typesafe.akka akka-testkit_${scala.major.version} - 2.5.22 + ${typesafe.akka.version} test @@ -271,7 +273,7 @@ org.jacoco jacoco-maven-plugin - 0.8.5 + ${jacoco-maven-plugin.version} ${basedir}/target/coverage-reports/jacoco-unit.exec ${basedir}/target/coverage-reports/jacoco-unit.exec From 72411d123ee009a6b3afd58faaa3203467853b76 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Feb 2024 20:34:05 +0530 Subject: [PATCH 03/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- Dockerfile.Build | 2 +- course-mw/course-actors-common/pom.xml | 15 ++------------- course-mw/course-actors/pom.xml | 12 ------------ course-mw/enrolment-actor/pom.xml | 3 ++- course-mw/pom.xml | 9 ++++++++- course-mw/sunbird-util/cache-utils/pom.xml | 6 ------ .../sunbird-util/sunbird-cache-utils/pom.xml | 4 ---- .../sunbird-cassandra-utils/pom.xml | 10 +--------- .../sunbird-util/sunbird-es-utils/pom.xml | 2 -- .../sunbird-util/sunbird-notification/pom.xml | 13 +------------ .../sunbird-platform-core/actor-core/pom.xml | 5 +++-- .../sunbird-platform-core/actor-util/pom.xml | 5 +++-- .../auth-verifier/pom.xml | 2 +- .../sunbird-platform-core/common-util/pom.xml | 19 ++++++------------- service/pom.xml | 15 ++------------- 15 files changed, 30 insertions(+), 92 deletions(-) diff --git a/Dockerfile.Build b/Dockerfile.Build index c46fe46d0..9157387c5 100644 --- a/Dockerfile.Build +++ b/Dockerfile.Build @@ -10,6 +10,6 @@ ENV M2_HOME /opt/apache-maven-3.3.9 ENV PATH ${M2_HOME}/bin:${PATH} COPY learner /opt/learner/ WORKDIR /opt/learner/services -RUN mvn clean install -DskipTests -DCLOUD_STORE_GROUP_ID=org.sunbird -DCLOUD_STORE_ARTIFACT_ID=cloud-store-sdk -DCLOUD_STORE_VERSION=1.4.6 +RUN mvn clean install -DskipTests -DCLOUD_STORE_GROUP_ID=org.sunbird -DCLOUD_STORE_ARTIFACT_ID=cloud-store-sdk_2.12 -DCLOUD_STORE_VERSION=1.4.6 WORKDIR /opt/learner/services/learning-service CMD ["mvn", "play2:dist"] \ No newline at end of file diff --git a/course-mw/course-actors-common/pom.xml b/course-mw/course-actors-common/pom.xml index 8f7e6d930..0400146e4 100644 --- a/course-mw/course-actors-common/pom.xml +++ b/course-mw/course-actors-common/pom.xml @@ -12,10 +12,6 @@ UTF-8 UTF-8 - 2.12 - 2.5.22 - 1.6.1 - 0.8.8 @@ -89,19 +85,12 @@ com.fasterxml.jackson.core jackson-core - 2.10.1 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.10.1 - - - - org.mockito - mockito-core - ${mockito.core.version} - test + ${jackson.version} org.powermock diff --git a/course-mw/course-actors/pom.xml b/course-mw/course-actors/pom.xml index 92966c72d..005b9a986 100644 --- a/course-mw/course-actors/pom.xml +++ b/course-mw/course-actors/pom.xml @@ -11,12 +11,6 @@ course-actors Course - - UTF-8 - 2.12 - 2.5.22 - 0.8.8 - ch.qos.logback @@ -39,12 +33,6 @@ ${typesafe.akka.version} test - - org.mockito - mockito-core - ${mockito.core.version} - test - org.powermock powermock-api-mockito2 diff --git a/course-mw/enrolment-actor/pom.xml b/course-mw/enrolment-actor/pom.xml index cb400d70b..d2dd047be 100644 --- a/course-mw/enrolment-actor/pom.xml +++ b/course-mw/enrolment-actor/pom.xml @@ -7,6 +7,7 @@ 2.12 2.12.11 2.5.22 + 2.10.5 1.4.1 @@ -14,7 +15,7 @@ com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} org.scala-lang diff --git a/course-mw/pom.xml b/course-mw/pom.xml index f5994149c..40b18cc77 100644 --- a/course-mw/pom.xml +++ b/course-mw/pom.xml @@ -8,9 +8,16 @@ pom Sunbird LMS MW + UTF-8 + 2.12 + 2.12.11 + 2.5.22 1.0.0-beta5 - 2.22.0 + 2.10.5 2.0.9 + 0.8.8 + 1.4.1 + 1.6.1 sunbird-util diff --git a/course-mw/sunbird-util/cache-utils/pom.xml b/course-mw/sunbird-util/cache-utils/pom.xml index fee608e14..b856727d8 100644 --- a/course-mw/sunbird-util/cache-utils/pom.xml +++ b/course-mw/sunbird-util/cache-utils/pom.xml @@ -11,12 +11,6 @@ 0.0.1-SNAPSHOT jar Cache Utils - - UTF-8 - 2.12 - 2.12.11 - 1.4.1 - org.scala-lang diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index a346da9f5..06d5274fb 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -11,10 +11,6 @@ 0.0.1-SNAPSHOT jar Sunbird Cache Utils - - UTF-8 - 0.8.8 - org.redisson diff --git a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml index f5205646b..3380a7bd0 100644 --- a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml @@ -12,10 +12,8 @@ Sunbird Cassandra Utils - UTF-8 UTF-8 3.7.0 - 0.8.8 @@ -60,7 +58,7 @@ com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} org.sunbird @@ -73,12 +71,6 @@ 3.11.2.0 test - - org.mockito - mockito-core - ${mockito.core.version} - test - org.powermock powermock-api-mockito2 diff --git a/course-mw/sunbird-util/sunbird-es-utils/pom.xml b/course-mw/sunbird-util/sunbird-es-utils/pom.xml index c1d912e1f..44096a478 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-es-utils/pom.xml @@ -11,9 +11,7 @@ Sunbird ElasticSearch Utils - UTF-8 UTF-8 - 0.8.8 diff --git a/course-mw/sunbird-util/sunbird-notification/pom.xml b/course-mw/sunbird-util/sunbird-notification/pom.xml index 9b936e88f..0d89c6cdb 100644 --- a/course-mw/sunbird-util/sunbird-notification/pom.xml +++ b/course-mw/sunbird-util/sunbird-notification/pom.xml @@ -12,11 +12,6 @@ 1.0-SNAPSHOT jar - - UTF-8 - 0.8.8 - - src/main/java src/test/java @@ -97,12 +92,6 @@ 4.13.1 test - - org.mockito - mockito-core - ${mockito.core.version} - test - org.powermock powermock-api-mockito2 @@ -118,7 +107,7 @@ com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml index 0c3bfb43c..91d32e9de 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml @@ -12,6 +12,7 @@ UTF-8 1.6.1 2.5.22 + 2.10.5 0.8.8 @@ -48,12 +49,12 @@ com.fasterxml.jackson.core jackson-core - 2.10.1 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml index 34d24fca4..bda1eac2f 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml @@ -15,6 +15,7 @@ 2.12.11 UTF-8 2.5.22 + 2.10.5 @@ -38,12 +39,12 @@ com.fasterxml.jackson.core jackson-core - 2.10.1 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} org.apache.commons diff --git a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml index ece8c53da..fed8a5bd2 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml @@ -19,7 +19,7 @@ com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} org.sunbird diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 931010fb4..e88c8e39c 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -13,11 +13,11 @@ UTF-8 2.12 2.5.22 - 2.22.0 + 2.10.5 2.0.9 0.8.8 org.sunbird - cloud-store-sdk + cloud-store-sdk_2.12 1.4.6 @@ -120,17 +120,17 @@ com.fasterxml.jackson.core jackson-core - 2.10.1 + ${jackson.version} com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} com.fasterxml.jackson.core jackson-annotations - 2.10.1 + ${jackson.version} @@ -171,13 +171,6 @@ httpmime 4.5.2 - - - org.mockito - mockito-core - ${mockito.core.version} - test - org.powermock powermock-api-mockito2 @@ -239,7 +232,7 @@ com.fasterxml.jackson.module jackson-module-scala_${scala.major.version} - 2.10.1 + ${jackson.version} org.glassfish.jersey.core diff --git a/service/pom.xml b/service/pom.xml index a4f7c7caa..b74b05164 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -33,7 +33,7 @@ 2.12 2.12.11 2.5.22 - 2.22.0 + 2.10.5 2.0.9 0.8.8 @@ -44,7 +44,7 @@ com.fasterxml.jackson.core jackson-databind - 2.10.1 + ${jackson.version} com.typesafe.play @@ -106,11 +106,6 @@ sunbird-commons 1.0-SNAPSHOT - com.typesafe config @@ -186,12 +181,6 @@ ${typesafe.akka.version} test - - org.mockito - mockito-core - ${mockito.core.version} - test - org.powermock powermock-api-mockito2 From 36c34bd991dbf4b4c6a43e9670be361588a032d4 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Feb 2024 20:34:41 +0530 Subject: [PATCH 04/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- .../sunbird-platform-core/auth-verifier/pom.xml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml index fed8a5bd2..2e3895b1b 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml @@ -13,7 +13,6 @@ UTF-8 UTF-8 - 0.8.8 @@ -26,12 +25,6 @@ common-util 0.0.1-SNAPSHOT - - org.mockito - mockito-core - ${mockito.core.version} - test - org.powermock powermock-api-mockito2 From 6110854a0577ce4cbe18bfdaf80278fcab504d9b Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Feb 2024 20:53:31 +0530 Subject: [PATCH 05/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 06d5274fb..a61333a8a 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -16,6 +16,12 @@ org.redisson redisson 3.2.0 + + + net.bytebuddy + byte-buddy + + ch.qos.logback From adfadbdb85714f000ae723c9b0ccc4937c4e96bf Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 22 Feb 2024 21:18:15 +0530 Subject: [PATCH 06/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- service/pom.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/service/pom.xml b/service/pom.xml index b74b05164..591fc0492 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -154,6 +154,10 @@ com.google.guava guava + + net.bytebuddy + byte-buddy + From 63c64824aef980ff7d91191074e87b72b22acae7 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Fri, 23 Feb 2024 12:10:36 +0530 Subject: [PATCH 07/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 8 +------- service/pom.xml | 5 +++++ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index a61333a8a..e6eabaff9 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -15,13 +15,7 @@ org.redisson redisson - 3.2.0 - - - net.bytebuddy - byte-buddy - - + 3.15.5 ch.qos.logback diff --git a/service/pom.xml b/service/pom.xml index 591fc0492..37a4c6545 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -213,6 +213,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder From 31ab025df8bbc180e0fbb2c03a47f845d52141c6 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Fri, 23 Feb 2024 12:36:07 +0530 Subject: [PATCH 08/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- course-mw/course-actors/pom.xml | 2 +- .../sunbird-util/sunbird-platform-core/common-util/pom.xml | 2 +- service/conf/logback-test.xml | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 service/conf/logback-test.xml diff --git a/course-mw/course-actors/pom.xml b/course-mw/course-actors/pom.xml index 005b9a986..085641f04 100644 --- a/course-mw/course-actors/pom.xml +++ b/course-mw/course-actors/pom.xml @@ -48,7 +48,7 @@ org.javassist javassist - 3.24.1-GA + 3.30.2-GA diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index e88c8e39c..7d8e0d577 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -186,7 +186,7 @@ org.javassist javassist - 3.24.1-GA + 3.30.2-GA diff --git a/service/conf/logback-test.xml b/service/conf/logback-test.xml new file mode 100644 index 000000000..adfa02c68 --- /dev/null +++ b/service/conf/logback-test.xml @@ -0,0 +1 @@ + \ No newline at end of file From bab1259131e8650a0081177842fadfb4207a24e7 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Fri, 23 Feb 2024 13:15:11 +0530 Subject: [PATCH 09/30] Issue #LR-676 chore: Updated the learning-service to content service --- course-mw/enrolment-actor/pom.xml | 2 +- course-mw/pom.xml | 2 +- course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml | 2 +- course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml | 2 +- .../sunbird-util/sunbird-platform-core/common-util/pom.xml | 2 +- service/pom.xml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/course-mw/enrolment-actor/pom.xml b/course-mw/enrolment-actor/pom.xml index d2dd047be..ec10e5927 100644 --- a/course-mw/enrolment-actor/pom.xml +++ b/course-mw/enrolment-actor/pom.xml @@ -7,7 +7,7 @@ 2.12 2.12.11 2.5.22 - 2.10.5 + 2.13.5 1.4.1 diff --git a/course-mw/pom.xml b/course-mw/pom.xml index 40b18cc77..607da703e 100644 --- a/course-mw/pom.xml +++ b/course-mw/pom.xml @@ -13,7 +13,7 @@ 2.12.11 2.5.22 1.0.0-beta5 - 2.10.5 + 2.13.5 2.0.9 0.8.8 1.4.1 diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml index 91d32e9de..ff669882c 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml @@ -12,7 +12,7 @@ UTF-8 1.6.1 2.5.22 - 2.10.5 + 2.13.5 0.8.8 diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml index bda1eac2f..27f980f2c 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml @@ -15,7 +15,7 @@ 2.12.11 UTF-8 2.5.22 - 2.10.5 + 2.13.5 diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 7d8e0d577..ac5eee8db 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -13,7 +13,7 @@ UTF-8 2.12 2.5.22 - 2.10.5 + 2.13.5 2.0.9 0.8.8 org.sunbird diff --git a/service/pom.xml b/service/pom.xml index 37a4c6545..bf0429d36 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -33,7 +33,7 @@ 2.12 2.12.11 2.5.22 - 2.10.5 + 2.13.5 2.0.9 0.8.8 From c6877bbcb30fb7824f41e8348fc049a4b07b055f Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 17:05:19 +0530 Subject: [PATCH 10/30] Issue #LR-740 chore: Upgraded the scala major version from 2.11 to 2.12 --- .../sunbird-platform-core/common-util/pom.xml | 6 - .../common/models/util/ProjectUtil.java | 20 +- .../models/util/mail/GMailAuthenticator.java | 29 - .../common/models/util/mail/SendMail.java | 298 --------- .../common/models/util/mail/package-info.java | 3 - .../org/sunbird/services/sso/SSOManager.java | 133 ---- .../services/sso/SSOServiceFactory.java | 22 - .../sso/impl/KeyCloakRsaKeyFetcher.java | 133 ---- .../sso/impl/KeyCloakServiceImpl.java | 616 ------------------ .../services/sso/impl/package-info.java | 3 - .../sunbird/services/sso/package-info.java | 3 - .../common/models/util/BaseHttpTest.java | 3 +- .../sunbird/common/models/util/EmailTest.java | 50 -- .../sso/impl/KeyCloakRsaKeyFetcherTest.java | 92 --- .../sso/impl/KeyCloakServiceImplTest.java | 356 ---------- service/app/util/AuthenticationHelper.java | 15 +- service/pom.xml | 2 +- service/test/util/RequestInterceptorTest.java | 24 +- 18 files changed, 26 insertions(+), 1782 deletions(-) delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/GMailAuthenticator.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/SendMail.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/package-info.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOManager.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOServiceFactory.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcher.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakServiceImpl.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/package-info.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/package-info.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/EmailTest.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcherTest.java delete mode 100644 course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakServiceImplTest.java diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index ac5eee8db..99bd496b2 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -152,12 +152,6 @@ 8.10.2 - - org.apache.tika - tika-core - 1.16 - - org.apache.httpcomponents diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/ProjectUtil.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/ProjectUtil.java index deb954875..748c33507 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/ProjectUtil.java +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/ProjectUtil.java @@ -4,6 +4,16 @@ import com.google.i18n.phonenumbers.NumberParseException; import com.google.i18n.phonenumbers.PhoneNumberUtil; import com.google.i18n.phonenumbers.Phonenumber; +import org.apache.commons.lang.StringUtils; +import org.apache.commons.validator.UrlValidator; +import org.apache.velocity.Template; +import org.apache.velocity.VelocityContext; +import org.apache.velocity.app.VelocityEngine; +import org.sunbird.common.exception.ProjectCommonException; +import org.sunbird.common.models.util.url.EsConfigUtil; +import org.sunbird.common.request.Request; +import org.sunbird.common.responsecode.ResponseCode; + import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; @@ -15,16 +25,6 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.lang.StringUtils; -import org.apache.commons.validator.UrlValidator; -import org.apache.hadoop.util.Time; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.VelocityEngine; -import org.sunbird.common.exception.ProjectCommonException; -import org.sunbird.common.models.util.url.EsConfigUtil; -import org.sunbird.common.request.Request; -import org.sunbird.common.responsecode.ResponseCode; /** * This class will contains all the common utility methods. diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/GMailAuthenticator.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/GMailAuthenticator.java deleted file mode 100644 index cb65dbb88..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/GMailAuthenticator.java +++ /dev/null @@ -1,29 +0,0 @@ -/** */ -package org.sunbird.common.models.util.mail; - -import javax.mail.Authenticator; -import javax.mail.PasswordAuthentication; - -/** @author Manzarul.Haque */ -public class GMailAuthenticator extends Authenticator { - private String user; - private String pw; - - /** - * this method is used to authenticate gmail user name and password. - * - * @param username - * @param password - */ - public GMailAuthenticator(String username, String password) { - super(); - this.user = username; - this.pw = password; - } - - /** */ - @Override - public PasswordAuthentication getPasswordAuthentication() { - return new PasswordAuthentication(this.user, this.pw); - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/SendMail.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/SendMail.java deleted file mode 100644 index 70eb39ffd..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/SendMail.java +++ /dev/null @@ -1,298 +0,0 @@ -package org.sunbird.common.models.util.mail; - -import java.io.StringWriter; -import java.util.Properties; -import javax.activation.DataHandler; -import javax.activation.DataSource; -import javax.activation.FileDataSource; -import javax.mail.BodyPart; -import javax.mail.Message; -import javax.mail.Message.RecipientType; -import javax.mail.MessagingException; -import javax.mail.Multipart; -import javax.mail.Session; -import javax.mail.Transport; -import javax.mail.internet.InternetAddress; -import javax.mail.internet.MimeBodyPart; -import javax.mail.internet.MimeMessage; -import javax.mail.internet.MimeMultipart; -import org.apache.commons.lang3.StringUtils; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; -import org.apache.velocity.app.VelocityEngine; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; -import org.sunbird.common.models.util.PropertiesCache; - -/** - * this api is used to sending mail. - * - * @author Manzarul.Haque - */ -public class SendMail { - - private static Properties props = null; - private static String host; - private static String port; - private static String userName; - private static String password; - private static String fromEmail; - - static { - // collecting setup value from ENV - host = System.getenv(JsonKey.EMAIL_SERVER_HOST); - port = System.getenv(JsonKey.EMAIL_SERVER_PORT); - userName = System.getenv(JsonKey.EMAIL_SERVER_USERNAME); - password = System.getenv(JsonKey.EMAIL_SERVER_PASSWORD); - fromEmail = System.getenv(JsonKey.EMAIL_SERVER_FROM); - if (StringUtils.isBlank(host) - || StringUtils.isBlank(port) - || StringUtils.isBlank(userName) - || StringUtils.isBlank(password) - || StringUtils.isBlank(fromEmail)) { - ProjectLogger.log( - "Email setting value is not provided by Env variable==" - + host - + " " - + port - + " " - + fromEmail, - LoggerEnum.INFO.name()); - initialiseFromProperty(); - } - props = System.getProperties(); - props.put("mail.smtp.host", host); - props.put("mail.smtp.socketFactory.port", port); - /* - * props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); - */ - props.put("mail.smtp.auth", "true"); - props.put("mail.smtp.port", port); - } - - /** This method will initialize values from property files. */ - public static void initialiseFromProperty() { - host = PropertiesCache.getInstance().getProperty(JsonKey.EMAIL_SERVER_HOST); - port = PropertiesCache.getInstance().getProperty(JsonKey.EMAIL_SERVER_PORT); - userName = PropertiesCache.getInstance().getProperty(JsonKey.EMAIL_SERVER_USERNAME); - password = PropertiesCache.getInstance().getProperty(JsonKey.EMAIL_SERVER_PASSWORD); - fromEmail = PropertiesCache.getInstance().getProperty(JsonKey.EMAIL_SERVER_FROM); - } - - /** - * Send email using given template name. - * - * @param emailList List of recipient emails - * @param context Context for Velocity template - * @param templateName Name of email template - * @param subject Subject of email - */ - public static boolean sendMail( - String[] emailList, String subject, VelocityContext context, String templateName) { - VelocityEngine engine = new VelocityEngine(); - Properties p = new Properties(); - p.setProperty("resource.loader", "class"); - p.setProperty( - "class.resource.loader.class", - "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); - StringWriter writer = null; - try { - engine.init(p); - Template template = engine.getTemplate(templateName); - writer = new StringWriter(); - template.merge(context, writer); - } catch (Exception e) { - ProjectLogger.log( - "SendMail:sendMail : Exception occurred with message = " + e.getMessage(), e); - } - - return sendEmail(emailList, subject, context, writer); - } - - /** - * Send email using given template body. - * - * @param emailList List of recipient emails - * @param context Context for Velocity template - * @param templateBody Email template body - * @param subject Subject of email - */ - public static boolean sendMailWithBody( - String[] emailList, String subject, VelocityContext context, String templateBody) { - StringWriter writer = null; - try { - Velocity.init(); - writer = new StringWriter(); - Velocity.evaluate(context, writer, "SimpleVelocity", templateBody); - } catch (Exception e) { - ProjectLogger.log( - "SendMail:sendMailWithBody : Exception occurred with message =" + e.getMessage(), e); - } - return sendEmail(emailList, subject, context, writer); - } - - /** - * Send email (with Cc) using given template name. - * - * @param emailList List of recipient emails - * @param context Context for Velocity template - * @param templateName Name of email template - * @param subject Subject of email - * @param ccEmailList List of Cc emails - */ - public static void sendMail( - String[] emailList, - String subject, - VelocityContext context, - String templateName, - String[] ccEmailList) { - ProjectLogger.log("Mail Template name - " + templateName, LoggerEnum.INFO.name()); - Transport transport = null; - try { - Session session = Session.getInstance(props, new GMailAuthenticator(userName, password)); - MimeMessage message = new MimeMessage(session); - message.setFrom(new InternetAddress(fromEmail)); - int size = emailList.length; - int i = 0; - while (size > 0) { - message.addRecipient(Message.RecipientType.TO, new InternetAddress(emailList[i])); - i++; - size--; - } - size = ccEmailList.length; - i = 0; - while (size > 0) { - message.addRecipient(Message.RecipientType.CC, new InternetAddress(ccEmailList[i])); - i++; - size--; - } - message.setSubject(subject); - VelocityEngine engine = new VelocityEngine(); - Properties p = new Properties(); - p.setProperty("resource.loader", "class"); - p.setProperty( - "class.resource.loader.class", - "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); - engine.init(p); - Template template = engine.getTemplate(templateName); - StringWriter writer = new StringWriter(); - template.merge(context, writer); - message.setContent(writer.toString(), "text/html; charset=utf-8"); - transport = session.getTransport("smtp"); - transport.connect(host, userName, password); - transport.sendMessage(message, message.getAllRecipients()); - transport.close(); - } catch (Exception e) { - ProjectLogger.log(e.toString(), e); - } finally { - if (transport != null) { - try { - transport.close(); - } catch (MessagingException e) { - ProjectLogger.log(e.toString(), e); - } - } - } - } - - /** - * Send email (with attachment) and given body. - * - * @param emailList List of recipient emails - * @param emailBody Text of email body - * @param subject Subject of email - * @param filePath Path of attachment file - */ - public static void sendAttachment( - String[] emailList, String emailBody, String subject, String filePath) { - Transport transport = null; - try { - Session session = Session.getInstance(props, new GMailAuthenticator(userName, password)); - MimeMessage message = new MimeMessage(session); - message.setFrom(new InternetAddress(fromEmail)); - int size = emailList.length; - int i = 0; - while (size > 0) { - message.addRecipient(Message.RecipientType.TO, new InternetAddress(emailList[i])); - i++; - size--; - } - message.setSubject(subject); - BodyPart messageBodyPart = new MimeBodyPart(); - messageBodyPart.setContent(emailBody, "text/html; charset=utf-8"); - // messageBodyPart.setText(mail); - // Create a multipar message - Multipart multipart = new MimeMultipart(); - multipart.addBodyPart(messageBodyPart); - DataSource source = new FileDataSource(filePath); - messageBodyPart = null; - messageBodyPart = new MimeBodyPart(); - messageBodyPart.setDataHandler(new DataHandler(source)); - messageBodyPart.setFileName(filePath); - multipart.addBodyPart(messageBodyPart); - message.setSubject(subject); - message.setContent(multipart); - transport = session.getTransport("smtp"); - transport.connect(host, userName, password); - transport.sendMessage(message, message.getAllRecipients()); - transport.close(); - } catch (Exception e) { - ProjectLogger.log(e.toString(), e); - } finally { - if (transport != null) { - try { - transport.close(); - } catch (MessagingException e) { - ProjectLogger.log(e.toString(), e); - } - } - } - } - - private static boolean sendEmail( - String[] emailList, String subject, VelocityContext context, StringWriter writer) { - Transport transport = null; - boolean sentStatus = true; - try { - if (context != null) { - context.put(JsonKey.FROM_EMAIL, fromEmail); - } - Session session = Session.getInstance(props, new GMailAuthenticator(userName, password)); - MimeMessage message = new MimeMessage(session); - message.setFrom(new InternetAddress(fromEmail)); - RecipientType recipientType = null; - if (emailList.length > 1) { - recipientType = Message.RecipientType.BCC; - } else { - recipientType = Message.RecipientType.TO; - } - for (String email : emailList) { - message.addRecipient(recipientType, new InternetAddress(email)); - } - if (recipientType == Message.RecipientType.BCC) - message.addRecipient(Message.RecipientType.TO, new InternetAddress(fromEmail)); - message.setSubject(subject); - message.setContent(writer.toString(), "text/html; charset=utf-8"); - transport = session.getTransport("smtp"); - transport.connect(host, userName, password); - transport.sendMessage(message, message.getAllRecipients()); - transport.close(); - } catch (Exception e) { - - sentStatus = false; - ProjectLogger.log( - "SendMail:sendMail: Exception occurred with message = " + e.getMessage(), e); - } finally { - if (transport != null) { - try { - transport.close(); - } catch (MessagingException e) { - ProjectLogger.log(e.toString(), e); - } - } - } - return sentStatus; - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/package-info.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/package-info.java deleted file mode 100644 index 812922d93..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/mail/package-info.java +++ /dev/null @@ -1,3 +0,0 @@ -/** */ -/** @author Manzarul */ -package org.sunbird.common.models.util.mail; diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOManager.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOManager.java deleted file mode 100644 index 9b0b45318..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOManager.java +++ /dev/null @@ -1,133 +0,0 @@ -/** */ -package org.sunbird.services.sso; - -import java.util.Map; - -/** @author Manzarul This interface will handle all call related to single sign out. */ -public interface SSOManager { - - /** - * This method will verify user access token and provide userId if token is valid. in case of - * invalid access token it will throw ProjectCommon exception with 401. - * - * @param token String JWT access token - * @return String - */ - String verifyToken(String token, boolean checkActive); - - String verifyToken(String token); - - /** Update password in SSO server (keycloak). */ - boolean updatePassword(String userId, String password); - - /** - * Method to update user account in keycloak on basis of userId. - * - * @param request - * @return - */ - String updateUser(Map request); - - /** - * Method to remove user from keycloak account on basis of userId . - * - * @param request - * @return - */ - String removeUser(Map request); - - /** - * This method will check email is verified by user or not. - * - * @param userId String - * @return boolean - */ - boolean isEmailVerified(String userId); - - /** - * Method to deactivate user from keycloak , it is like soft delete . - * - * @param request - * @return - */ - String deactivateUser(Map request); - - /** - * Method to activate user from keycloak , it is like soft delete . - * - * @param request - * @return - */ - String activateUser(Map request); - - /** - * This method will read user last login time from key claok. - * - * @param userId String - * @return String (as epoch value or null) - */ - String getLastLoginTime(String userId); - - /** - * This method will add user current login time to keycloak. - * - * @param userId String - * @return boolean - */ - boolean addUserLoginTime(String userId); - - /** - * this method will set emailVerified flag of keycloak as false. - * - * @param userId - */ - String setEmailVerifiedAsFalse(String userId); - - /** - * This method will set email verified flag on keycloak. - * - * @param userId String - * @param flag boolean (true/false) - */ - void setEmailVerifiedUpdatedFlag(String userId, String flag); - - /** - * This method will provide the user already set attribute under keycloak. - * - * @param userId String - * @return String - */ - String getEmailVerifiedUpdatedFlag(String userId); - - /** - * This method will do the data sync from cassandra db to keyclaok. - * - * @param request Map - * @return String - */ - String syncUserData(Map request); - - /** - * This method will do the user password update. - * - * @param userId String - * @param password String - * @return boolean true/false - */ - boolean doPasswordUpdate(String userId, String password); - - String setEmailVerifiedTrue(String userId); - - void setRequiredAction(String userId, String requiredAction); - - String getUsernameById(String userId); - /** - * This method will verify user access token and provide userId if token is valid. in case of - * invalid access token it will throw ProjectCommon exception with 401. - * - * @param token String JWT access token - * @param url token will be validated against this url - * @return String - */ - String verifyToken(String token, String url, boolean checkActive); -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOServiceFactory.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOServiceFactory.java deleted file mode 100644 index dfc12406d..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/SSOServiceFactory.java +++ /dev/null @@ -1,22 +0,0 @@ -package org.sunbird.services.sso; - -import org.sunbird.services.sso.impl.KeyCloakServiceImpl; - -/** @author Amit Kumar */ -public class SSOServiceFactory { - private static SSOManager ssoManager = null; - - private SSOServiceFactory() {} - - /** - * On call of this method , it will provide a new KeyCloakServiceImpl instance on each call. - * - * @return SSOManager - */ - public static SSOManager getInstance() { - if (null == ssoManager) { - ssoManager = new KeyCloakServiceImpl(); - } - return ssoManager; - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcher.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcher.java deleted file mode 100644 index 49cfc3f50..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcher.java +++ /dev/null @@ -1,133 +0,0 @@ -package org.sunbird.services.sso.impl; - -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import java.io.IOException; -import java.math.BigInteger; -import java.security.KeyFactory; -import java.security.PublicKey; -import java.security.spec.RSAPublicKeySpec; -import java.util.Base64; -import java.util.Base64.Decoder; -import java.util.HashMap; -import java.util.Map; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.client.HttpClient; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.HttpClientBuilder; -import org.apache.http.util.EntityUtils; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; -import org.sunbird.common.models.util.PropertiesCache; - -/** Class to fetch SSO public key from Keycloak server using 'certs' HTTP API call. */ -public class KeyCloakRsaKeyFetcher { - private static final String MODULUS = "modulusBase64"; - private static final String EXPONENT = "exponentBase64"; - - /** - * This method will accept keycloak base URL and realm name. Based on provided values it will - * fetch public key from keycloak. - * - * @param url A string value having keycloak base URL - * @param realm Keycloak realm name - * @return Public key used to verify user access token. - */ - public PublicKey getPublicKeyFromKeyCloak(String url, String realm) { - try { - Map valueMap = null; - Decoder urlDecoder = Base64.getUrlDecoder(); - KeyFactory keyFactory = KeyFactory.getInstance("RSA"); - String publicKeyString = requestKeyFromKeycloak(url, realm); - if (publicKeyString != null) { - valueMap = getValuesFromJson(publicKeyString); - if (valueMap != null) { - BigInteger modulus = new BigInteger(1, urlDecoder.decode(valueMap.get(MODULUS))); - BigInteger publicExponent = new BigInteger(1, urlDecoder.decode(valueMap.get(EXPONENT))); - PublicKey key = keyFactory.generatePublic(new RSAPublicKeySpec(modulus, publicExponent)); - saveToCache(key); - return key; - } - } - } catch (Exception e) { - ProjectLogger.log( - "KeyCloakRsaKeyFetcher:getPublicKeyFromKeyCloak: Exception occurred with message = " - + e.getMessage(), - LoggerEnum.ERROR); - } - return null; - } - - /** - * This method will save the public key string value to cache - * - * @param key Public key to save in cache - */ - private void saveToCache(PublicKey key) { - byte[] encodedPublicKey = key.getEncoded(); - String publicKey = Base64.getEncoder().encodeToString(encodedPublicKey); - PropertiesCache cache = PropertiesCache.getInstance(); - cache.saveConfigProperty(JsonKey.SSO_PUBLIC_KEY, publicKey); - } - - /** - * This method will connect to keycloak server using API call for getting public key. - * - * @param url A string value having keycloak base URL - * @param realm Keycloak realm name - * @return Public key JSON response string - */ - private String requestKeyFromKeycloak(String url, String realm) { - HttpClient client = HttpClientBuilder.create().build(); - HttpGet request = new HttpGet(url + "realms/" + realm + "/protocol/openid-connect/certs"); - - try { - HttpResponse response = client.execute(request); - HttpEntity entity = response.getEntity(); - - if (entity != null) { - return EntityUtils.toString(entity); - } else { - ProjectLogger.log( - "KeyCloakRsaKeyFetcher:requestKeyFromKeycloak: Not able to fetch SSO public key from keycloak server", - LoggerEnum.ERROR); - } - } catch (IOException e) { - ProjectLogger.log( - "KeyCloakRsaKeyFetcher:requestKeyFromKeycloak: Exception occurred with message = " - + e.getMessage(), - LoggerEnum.ERROR); - } - return null; - } - - /** - * This method will return a map containing values extracted from public key JSON string. - * - * @param response Public key JSON response string - */ - private Map getValuesFromJson(String response) { - ObjectMapper mapper = new ObjectMapper(); - Map values = new HashMap<>(); - try { - JsonNode res = mapper.readTree(response); - JsonNode keys = res.get("keys"); - if (keys != null) { - - JsonNode value = keys.get(0); - values.put(MODULUS, value.get("n").asText()); - values.put(EXPONENT, value.get("e").asText()); - } - } catch (Exception e) { - ProjectLogger.log( - "KeyCloakRsaKeyFetcher:getValuesFromJson: Exception occurred with message = " - + e.getMessage(), - LoggerEnum.ERROR); - return null; - } - - return values; - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakServiceImpl.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakServiceImpl.java deleted file mode 100644 index ec0d40e7a..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/KeyCloakServiceImpl.java +++ /dev/null @@ -1,616 +0,0 @@ -package org.sunbird.services.sso.impl; - -import static java.util.Arrays.asList; -import static org.sunbird.common.models.util.ProjectUtil.isNotNull; -import static org.sunbird.common.models.util.ProjectUtil.isNull; - -import java.security.KeyFactory; -import java.security.PublicKey; -import java.security.spec.X509EncodedKeySpec; -import java.util.ArrayList; -import java.util.Base64; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.collections.MapUtils; -import org.apache.commons.lang3.StringUtils; -import org.keycloak.RSATokenVerifier; -import org.keycloak.admin.client.Keycloak; -import org.keycloak.admin.client.resource.UserResource; -import org.keycloak.representations.AccessToken; -import org.keycloak.representations.idm.CredentialRepresentation; -import org.keycloak.representations.idm.UserRepresentation; -import org.sunbird.common.exception.ProjectCommonException; -import org.sunbird.common.models.util.*; -import org.sunbird.common.responsecode.ResponseCode; -import org.sunbird.common.util.KeycloakRequiredActionLinkUtil; -import org.sunbird.services.sso.SSOManager; - -/** - * Single sign out service implementation with Key Cloak. - * - * @author Manzarul - */ -public class KeyCloakServiceImpl implements SSOManager { - - private Keycloak keycloak = KeyCloakConnectionProvider.getConnection(); - private static final String URL = - KeyCloakConnectionProvider.SSO_URL - + "realms/" - + KeyCloakConnectionProvider.SSO_REALM - + "/protocol/openid-connect/token"; - - private static PublicKey SSO_PUBLIC_KEY = null; - private static LoggerUtil logger = new LoggerUtil(Slug.class); - - public PublicKey getPublicKey() { - if (null == SSO_PUBLIC_KEY) { - logger.info(null,"KeyCloakService - Empty Key. So, generating public key from Env."); - SSO_PUBLIC_KEY = toPublicKey(System.getenv(JsonKey.SSO_PUBLIC_KEY)); - } - return SSO_PUBLIC_KEY; - } - - @Override - public String verifyToken(String accessToken) { - return verifyToken(accessToken, null, true); - } - - @Override - public String verifyToken(String accessToken, boolean checkActive) { - return verifyToken(accessToken, null, checkActive); - } - - /** - * This method will generate Public key form Environment Configuration. - * - * @param publicKeyString String - * @return PublicKey - */ - private PublicKey toPublicKey(String publicKeyString) { - try { - byte[] publicBytes = Base64.getDecoder().decode(publicKeyString); - X509EncodedKeySpec keySpec = new X509EncodedKeySpec(publicBytes); - KeyFactory keyFactory = KeyFactory.getInstance("RSA"); - return keyFactory.generatePublic(keySpec); - } catch (Exception e) { - return null; - } - } - - @Override - public boolean updatePassword(String userId, String password) { - try { - String fedUserId = getFederatedUserId(userId); - UserResource ur = keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - CredentialRepresentation cr = new CredentialRepresentation(); - cr.setType(CredentialRepresentation.PASSWORD); - cr.setValue(password); - ur.resetPassword(cr); - return true; - } catch (Exception e) { - logger.error(null, - "KeyCloakServiceImpl:updatePassword: Exception occurred with error message = " + e, e); - } - return false; - } - - @Override - public String updateUser(Map request) { - String userId = (String) request.get(JsonKey.USER_ID); - String fedUserId = getFederatedUserId(userId); - UserRepresentation ur = null; - UserResource resource = null; - boolean needTobeUpdate = false; - try { - resource = keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - ur = resource.toRepresentation(); - } catch (Exception e) { - ProjectUtil.createAndThrowInvalidUserDataException(); - } - - // set the UserRepresantation with the map value... - if (isNotNull(request.get(JsonKey.FIRST_NAME))) { - needTobeUpdate = true; - ur.setFirstName((String) request.get(JsonKey.FIRST_NAME)); - } - if (isNotNull(request.get(JsonKey.LAST_NAME))) { - needTobeUpdate = true; - ur.setLastName((String) request.get(JsonKey.LAST_NAME)); - } - if (isNotNull(request.get(JsonKey.EMAIL))) { - needTobeUpdate = true; - ur.setEmail((String) request.get(JsonKey.EMAIL)); - ur.setEmailVerified(false); - - Map> map = ur.getAttributes(); - List list = new ArrayList<>(); - list.add("false"); - if (map == null) { - map = new HashMap<>(); - } - map.put(JsonKey.EMAIL_VERIFIED_UPDATED, list); - ur.setAttributes(map); - } - if (!StringUtils.isBlank((String) request.get(JsonKey.PHONE))) { - needTobeUpdate = true; - Map> map = ur.getAttributes(); - List list = new ArrayList<>(); - list.add((String) request.get(JsonKey.PHONE)); - if (map == null) { - map = new HashMap<>(); - } - map.put(JsonKey.PHONE, list); - ur.setAttributes(map); - } - - if (!StringUtils.isBlank((String) request.get(JsonKey.COUNTRY_CODE))) { - needTobeUpdate = true; - Map> map = ur.getAttributes(); - if (map == null) { - map = new HashMap<>(); - } - List list = new ArrayList<>(); - list.add(PropertiesCache.getInstance().getProperty("sunbird_default_country_code")); - if (!StringUtils.isBlank((String) request.get(JsonKey.COUNTRY_CODE))) { - list.add(0, (String) request.get(JsonKey.COUNTRY_CODE)); - } - map.put(JsonKey.COUNTRY_CODE, list); - ur.setAttributes(map); - } - - try { - // if user sending any basic profile data - // then no need to make api call to keycloak to update profile. - if (needTobeUpdate) { - resource.update(ur); - } - } catch (Exception ex) { - ProjectUtil.createAndThrowInvalidUserDataException(); - } - return JsonKey.SUCCESS; - } - - @Override - public String syncUserData(Map request) { - String userId = (String) request.get(JsonKey.USER_ID); - String fedUserId = getFederatedUserId(userId); - UserRepresentation ur = null; - UserResource resource = null; - boolean needTobeUpdate = false; - try { - resource = keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - ur = resource.toRepresentation(); - } catch (Exception e) { - ProjectUtil.createAndThrowInvalidUserDataException(); - } - - // set the UserRepresantation with the map value... - if (isNotNull(request.get(JsonKey.FIRST_NAME))) { - needTobeUpdate = true; - ur.setFirstName((String) request.get(JsonKey.FIRST_NAME)); - } - if (isNotNull(request.get(JsonKey.LAST_NAME))) { - needTobeUpdate = true; - ur.setLastName((String) request.get(JsonKey.LAST_NAME)); - } - - if (isNotNull(request.get(JsonKey.EMAIL))) { - needTobeUpdate = true; - ur.setEmail((String) request.get(JsonKey.EMAIL)); - } - logger.info(null, - "check user email is verified or not ,resource.toRepresentation().isEmailVerified() :" - + resource.toRepresentation().isEmailVerified() - + " for userId :" - + userId); - if (!resource.toRepresentation().isEmailVerified()) { - needTobeUpdate = true; - Map> map = ur.getAttributes(); - List list = new ArrayList<>(); - list.add("false"); - if (map == null) { - map = new HashMap<>(); - } - map.put(JsonKey.EMAIL_VERIFIED_UPDATED, list); - ur.setAttributes(map); - } else { - needTobeUpdate = true; - Map> map = ur.getAttributes(); - List list = new ArrayList<>(); - list.add("true"); - if (map == null) { - map = new HashMap<>(); - } - map.put(JsonKey.EMAIL_VERIFIED_UPDATED, list); - ur.setAttributes(map); - } - - if (isNotNull(request.get(JsonKey.LOGIN_ID))) { - needTobeUpdate = true; - ur.setUsername((String) request.get(JsonKey.LOGIN_ID)); - } - if (!StringUtils.isBlank((String) request.get(JsonKey.PHONE))) { - needTobeUpdate = true; - Map> map = ur.getAttributes(); - List list = new ArrayList<>(); - list.add((String) request.get(JsonKey.PHONE)); - if (map == null) { - map = new HashMap<>(); - } - map.put(JsonKey.PHONE, list); - ur.setAttributes(map); - } - Map> map = ur.getAttributes(); - if (map == null) { - map = new HashMap<>(); - } - List list = new ArrayList<>(); - list.add(PropertiesCache.getInstance().getProperty("sunbird_default_country_code")); - map.put(JsonKey.COUNTRY_CODE, list); - if (!StringUtils.isBlank((String) request.get(JsonKey.COUNTRY_CODE))) { - needTobeUpdate = true; - list.add(0, (String) request.get(JsonKey.COUNTRY_CODE)); - map.put(JsonKey.COUNTRY_CODE, list); - } - ur.setAttributes(map); - try { - // if user sending any basic profile data - // then no need to make api call to keycloak to update profile. - if (needTobeUpdate) { - resource.update(ur); - } - } catch (Exception ex) { - ProjectUtil.createAndThrowInvalidUserDataException(); - } - return JsonKey.SUCCESS; - } - - /** - * Method to remove the user on basis of user id. - * - * @param request Map - * @return boolean true if success otherwise false . - */ - @Override - public String removeUser(Map request) { - Keycloak keycloak = KeyCloakConnectionProvider.getConnection(); - String userId = (String) request.get(JsonKey.USER_ID); - try { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - if (isNotNull(resource)) { - resource.remove(); - } - } catch (Exception ex) { - ProjectUtil.createAndThrowInvalidUserDataException(); - } - return JsonKey.SUCCESS; - } - - /** - * Method to deactivate the user on basis of user id. - * - * @param request Map - * @return boolean true if success otherwise false . - */ - @Override - public String deactivateUser(Map request) { - String userId = (String) request.get(JsonKey.USER_ID); - makeUserActiveOrInactive(userId, false); - return JsonKey.SUCCESS; - } - - /** - * Method to activate the user on basis of user id. - * - * @param request Map - * @return boolean true if success otherwise false . - */ - @Override - public String activateUser(Map request) { - String userId = (String) request.get(JsonKey.USER_ID); - makeUserActiveOrInactive(userId, true); - return JsonKey.SUCCESS; - } - - /** - * This method will take userid and boolean status to update user status - * - * @param userId String - * @param status boolean - * @throws ProjectCommonException - */ - private void makeUserActiveOrInactive(String userId, boolean status) { - try { - String fedUserId = getFederatedUserId(userId); - logger.info(null, - "KeyCloakServiceImpl:makeUserActiveOrInactive: fedration id formed: " + fedUserId); - validateUserId(fedUserId); - Keycloak keycloak = KeyCloakConnectionProvider.getConnection(); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation ur = resource.toRepresentation(); - ur.setEnabled(status); - if (isNotNull(resource)) { - resource.update(ur); - } - } catch (Exception e) { - logger.error(null, - "KeyCloakServiceImpl:makeUserActiveOrInactive:error occurred while blocking user: " + e, e); - ProjectUtil.createAndThrowInvalidUserDataException(); - } - } - - /** - * This method will check userId value, if value is null or empty then it will throw - * ProjectCommonException - * - * @param userId String - * @throws ProjectCommonException - */ - private void validateUserId(String userId) { - if (StringUtils.isBlank(userId)) { - ProjectUtil.createAndThrowInvalidUserDataException(); - } - } - - @Override - public boolean isEmailVerified(String userId) { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - if (isNull(resource)) { - return false; - } - return resource.toRepresentation().isEmailVerified(); - } - - @Override - public void setEmailVerifiedUpdatedFlag(String userId, String flag) { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation user = resource.toRepresentation(); - Map> map = user.getAttributes(); - List list = new ArrayList<>(); - list.add(flag); - if (map == null) { - map = new HashMap<>(); - } - map.put(JsonKey.EMAIL_VERIFIED_UPDATED, list); - user.setAttributes(map); - resource.update(user); - } - - @Override - public String getEmailVerifiedUpdatedFlag(String userId) { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation user = resource.toRepresentation(); - Map> map = user.getAttributes(); - List list = null; - if (MapUtils.isNotEmpty(map)) { - list = map.get(JsonKey.EMAIL_VERIFIED_UPDATED); - } - if (CollectionUtils.isNotEmpty(list)) { - return list.get(0); - } else { - return ""; - } - } - - /** - * This method will do the user password update. - * - * @param userId String - * @param password String - * @return boolean true/false - */ - @Override - public boolean doPasswordUpdate(String userId, String password) { - boolean response = false; - try { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - CredentialRepresentation newCredential = new CredentialRepresentation(); - newCredential.setValue(password); - newCredential.setType(CredentialRepresentation.PASSWORD); - newCredential.setTemporary(true); - resource.resetPassword(newCredential); - response = true; - } catch (Exception ex) { - logger.error(null,ex.getMessage(), ex); - } - return response; - } - - @Override - public String getLastLoginTime(String userId) { - String lastLoginTime = null; - try { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation ur = resource.toRepresentation(); - Map> map = ur.getAttributes(); - if (map == null) { - map = new HashMap<>(); - } - List list = map.get(JsonKey.LAST_LOGIN_TIME); - if (list != null && !list.isEmpty()) { - lastLoginTime = list.get(0); - } - } catch (Exception e) { - logger.error(null,e.getMessage(), e); - } - return lastLoginTime; - } - - @Override - public boolean addUserLoginTime(String userId) { - boolean response = true; - try { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation ur = resource.toRepresentation(); - Map> map = ur.getAttributes(); - List list = new ArrayList<>(); - if (map == null) { - map = new HashMap<>(); - } - List currentLogTime = map.get(JsonKey.CURRENT_LOGIN_TIME); - if (currentLogTime == null || currentLogTime.isEmpty()) { - currentLogTime = new ArrayList<>(); - currentLogTime.add(Long.toString(System.currentTimeMillis())); - } else { - list.add(currentLogTime.get(0)); - currentLogTime.clear(); - currentLogTime.add(0, Long.toString(System.currentTimeMillis())); - } - map.put(JsonKey.CURRENT_LOGIN_TIME, currentLogTime); - map.put(JsonKey.LAST_LOGIN_TIME, list); - ur.setAttributes(map); - resource.update(ur); - } catch (Exception e) { - logger.error(null,e.getMessage(), e); - response = false; - } - return response; - } - - private String getFederatedUserId(String userId) { - return String.join( - ":", - "f", - ProjectUtil.getConfigValue(JsonKey.SUNBIRD_KEYCLOAK_USER_FEDERATION_PROVIDER_ID), - userId); - } - - @Override - public String setEmailVerifiedTrue(String userId) { - updateEmailVerifyStatus(userId, true); - return JsonKey.SUCCESS; - } - - @Override - public String setEmailVerifiedAsFalse(String userId) { - updateEmailVerifyStatus(userId, false); - return JsonKey.SUCCESS; - } - - /** - * This method will update user email verified status - * - * @param userId String - * @param status boolean - * @throws ProjectCommonException - */ - private void updateEmailVerifyStatus(String userId, boolean status) { - try { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation ur = resource.toRepresentation(); - ur.setEmailVerified(status); - if (isNotNull(resource)) { - resource.update(ur); - } - } catch (Exception e) { - logger.error(null,e.getMessage(), e); - ProjectUtil.createAndThrowInvalidUserDataException(); - } - } - - @Override - public void setRequiredAction(String userId, String requiredAction) { - String fedUserId = getFederatedUserId(userId); - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - - UserRepresentation userRepresentation = resource.toRepresentation(); - userRepresentation.setRequiredActions(asList(requiredAction)); - if (KeycloakRequiredActionLinkUtil.VERIFY_EMAIL.equalsIgnoreCase(requiredAction)) { - userRepresentation.setEmailVerified(false); - } - resource.update(userRepresentation); - } - - @Override - public String getUsernameById(String userId) { - String fedUserId = getFederatedUserId(userId); - try { - UserResource resource = - keycloak.realm(KeyCloakConnectionProvider.SSO_REALM).users().get(fedUserId); - UserRepresentation ur = resource.toRepresentation(); - return ur.getUsername(); - } catch (Exception e) { - logger.error(null, - "KeyCloakServiceImpl:getUsernameById: User not found for userId = " - + userId - + " error message = " - + e.getMessage(), - e); - } - logger.info(null, - "KeyCloakServiceImpl:getUsernameById: User not found for userId = " + userId); - return ""; - } - - @Override - public String verifyToken(String accessToken, String url, boolean checkActive) { - - try { - PublicKey publicKey = getPublicKey(); - if (publicKey != null) { - String ssoUrl = (url != null ? url : KeyCloakConnectionProvider.SSO_URL); - AccessToken token = - RSATokenVerifier.verifyToken( - accessToken, - publicKey, - ssoUrl + "realms/" + KeyCloakConnectionProvider.SSO_REALM, - checkActive, - true); - logger.info(null, - token.getId() - + " " - + token.issuedFor - + " " - + token.getProfile() - + " " - + token.getSubject() - + " Active: " - + token.isActive() - + " isExpired: " - + token.isExpired() - + " " - + token.issuedNow().getExpiration()); - String tokenSubject = token.getSubject(); - if (StringUtils.isNotBlank(tokenSubject)) { - int pos = tokenSubject.lastIndexOf(":"); - return tokenSubject.substring(pos + 1); - } - return token.getSubject(); - } else { - logger.error(null, - "KeyCloakServiceImpl:verifyToken: SSO_PUBLIC_KEY is NULL.", null); - throw new ProjectCommonException( - ResponseCode.keyCloakDefaultError.getErrorCode(), - ResponseCode.keyCloakDefaultError.getErrorMessage(), - ResponseCode.keyCloakDefaultError.getResponseCode()); - } - } catch (Exception e) { - logger.error(null, - "KeyCloakServiceImpl:verifyToken: Exception occurred with message = " + e.getMessage(), e); - throw new ProjectCommonException( - ResponseCode.unAuthorized.getErrorCode(), - ResponseCode.unAuthorized.getErrorMessage(), - ResponseCode.UNAUTHORIZED.getResponseCode()); - } - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/package-info.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/package-info.java deleted file mode 100644 index af2698a92..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/impl/package-info.java +++ /dev/null @@ -1,3 +0,0 @@ -/** */ -/** @author Manzarul */ -package org.sunbird.services.sso.impl; diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/package-info.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/package-info.java deleted file mode 100644 index 47a89ebb8..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/services/sso/package-info.java +++ /dev/null @@ -1,3 +0,0 @@ -/** */ -/** @author Manzarul */ -package org.sunbird.services.sso; diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/BaseHttpTest.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/BaseHttpTest.java index 1e2cc54db..c6b6744f6 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/BaseHttpTest.java +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/BaseHttpTest.java @@ -23,7 +23,6 @@ import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; import org.sunbird.common.util.KeycloakRequiredActionLinkUtil; -import org.sunbird.services.sso.impl.KeyCloakServiceImpl; @RunWith(PowerMockRunner.class) @PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", "sun.security.ssl.*", "javax.net.ssl.*" , "javax.crypto.*"}) @@ -34,7 +33,7 @@ HttpUtil.class, HttpClients.class, KeyCloakConnectionProvider.class, - KeyCloakServiceImpl.class, KeycloakRequiredActionLinkUtil.class, Unirest.class + KeycloakRequiredActionLinkUtil.class, Unirest.class }) public abstract class BaseHttpTest { diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/EmailTest.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/EmailTest.java deleted file mode 100644 index e3ac07c6b..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/common/models/util/EmailTest.java +++ /dev/null @@ -1,50 +0,0 @@ -/** */ -package org.sunbird.common.models.util; - -import org.junit.AfterClass; -import org.junit.Assert; -import org.junit.BeforeClass; -import org.junit.Test; -import org.jvnet.mock_javamail.Mailbox; -import org.sunbird.common.models.util.mail.GMailAuthenticator; -import org.sunbird.common.models.util.mail.SendMail; - -import javax.mail.PasswordAuthentication; - -/** @author Manzarul */ -public class EmailTest { - - private static GMailAuthenticator authenticator = null; - - @BeforeClass - public static void setUp() { - authenticator = new GMailAuthenticator("test123", "test"); - // clear Mock JavaMail box - Mailbox.clearAll(); - } - - @Test - public void createGmailAuthInstance() { - GMailAuthenticator authenticator = new GMailAuthenticator("test123", "test"); - Assert.assertNotEquals(null, authenticator); - } - - @Test - public void passwordAuthTest() { - PasswordAuthentication authentication = authenticator.getPasswordAuthentication(); - Assert.assertEquals("test", authentication.getPassword()); - } - - - @Test - public void initialiseFromPropertyTest() { - SendMail.initialiseFromProperty(); - Assert.assertTrue(true); - } - - @AfterClass - public static void tearDown() { - authenticator = null; - Mailbox.clearAll(); - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcherTest.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcherTest.java deleted file mode 100644 index 3baa68b5d..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakRsaKeyFetcherTest.java +++ /dev/null @@ -1,92 +0,0 @@ -package org.sunbird.services.sso.impl; - -import static org.powermock.api.mockito.PowerMockito.when; - -import java.security.PublicKey; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClientBuilder; -import org.apache.http.util.EntityUtils; -import org.junit.Assert; -import org.junit.Before; -import org.junit.FixMethodOrder; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.MethodSorters; -import org.mockito.Mockito; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PowerMockIgnore; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; -import org.sunbird.common.models.util.KeyCloakConnectionProvider; - -@FixMethodOrder(MethodSorters.NAME_ASCENDING) -// ** @author kirti. Junit test cases *//* - -@RunWith(PowerMockRunner.class) -@PrepareForTest({ - HttpClientBuilder.class, - CloseableHttpClient.class, - HttpGet.class, - CloseableHttpResponse.class, - HttpResponse.class, - HttpEntity.class, - EntityUtils.class, -}) -@PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*"}) -public class KeyCloakRsaKeyFetcherTest { - - public static final String FALSE_REALM = "false-realm"; - private static final HttpClientBuilder httpClientBuilder = - PowerMockito.mock(HttpClientBuilder.class); - private static CloseableHttpClient client = null; - private static CloseableHttpResponse response; - private static HttpEntity httpEntity; - - @Before - public void setUp() throws Exception { - - client = PowerMockito.mock(CloseableHttpClient.class); - PowerMockito.mockStatic(HttpClientBuilder.class); - when(HttpClientBuilder.create()).thenReturn(httpClientBuilder); - when(httpClientBuilder.build()).thenReturn(client); - httpEntity = PowerMockito.mock(HttpEntity.class); - PowerMockito.mockStatic(EntityUtils.class); - } - - @Test - public void testGetPublicKeyFromKeyCloakSuccess() throws Exception { - - response = PowerMockito.mock(CloseableHttpResponse.class); - when(client.execute(Mockito.any())).thenReturn(response); - when(response.getEntity()).thenReturn(httpEntity); - - String jsonString = - "{\"keys\":[{\"kid\":\"YOw4KbDjM0_HIdGkf_QhRfKc9qHc4W_8Bni91nKFyck\",\"kty\":\"RSA\",\"alg\":\"RS256\",\"use\":\"sig\",\"n\":\"" - + "5OwCfx4UZTUfUDSBjOg65HuE4ReOg9GhZyoDJNqbWFrsY3dz7C12lmM3rewBHoY0F5_KW0A7rniS9LcqDg2RODvV8pRtJZ_Ge-jsnPMBY5nDJeEW35PH9ewaBhbY3Dj0bZQda2KdHGwiQ" - + "zItMT4vw0uITKsFq9o1bcYj0QvPq10AE_wOx3T5xsysuTTkcvQ6evbbs6P5yz_SHhQFRTk7_ZhMwhBeTolvg9wF4yl4qwr220A1ORsLAwwydpmfMHU9RD97nzHDlhXTBAOhDoA3Z3wA8KG6V" - + "i3LxqTLNRVS4hgq310fHzWfCX7shFQxygijW9zit-X1WVXaS1NxazuLJw\",\"e\":\"AQAB\"}]}"; - - when(EntityUtils.toString(httpEntity)).thenReturn(jsonString); - - PublicKey key = - new KeyCloakRsaKeyFetcher() - .getPublicKeyFromKeyCloak( - KeyCloakConnectionProvider.SSO_URL, KeyCloakConnectionProvider.SSO_REALM); - - Assert.assertNotNull(key); - } - - @Test - public void testGetPublicKeyFromKeyCloakFailure() throws Exception { - - PublicKey key = - new KeyCloakRsaKeyFetcher() - .getPublicKeyFromKeyCloak(KeyCloakConnectionProvider.SSO_URL, FALSE_REALM); - - Assert.assertEquals(key, null); - } -} diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakServiceImplTest.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakServiceImplTest.java deleted file mode 100644 index 1ee8bfc4a..000000000 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/test/java/org/sunbird/services/sso/impl/KeyCloakServiceImplTest.java +++ /dev/null @@ -1,356 +0,0 @@ -package org.sunbird.services.sso.impl; - -import static org.powermock.api.mockito.PowerMockito.*; - -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; -import java.util.UUID; -import javax.ws.rs.core.Response; -import org.junit.Assert; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.keycloak.admin.client.Keycloak; -import org.keycloak.admin.client.resource.RealmResource; -import org.keycloak.admin.client.resource.UserResource; -import org.keycloak.admin.client.resource.UsersResource; -import org.keycloak.representations.idm.UserRepresentation; -import org.mockito.Mockito; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PowerMockIgnore; -import org.powermock.modules.junit4.PowerMockRunner; -import org.sunbird.common.exception.ProjectCommonException; -import org.sunbird.common.models.util.BaseHttpTest; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.KeyCloakConnectionProvider; -import org.sunbird.common.models.util.ProjectUtil; -import org.sunbird.common.responsecode.ResponseCode; -import org.sunbird.services.sso.SSOManager; -import org.sunbird.services.sso.SSOServiceFactory; - -@RunWith(PowerMockRunner.class) -@PowerMockIgnore({ "javax.management.*", "javax.net.ssl.*", "javax.security.*", "com.microsoft.azure.storage.*", - "jdk.internal.reflect.*", "sun.security.ssl.*", "javax.crypto.*", "com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*"}) -public class KeyCloakServiceImplTest extends BaseHttpTest { - - SSOManager keyCloakService = SSOServiceFactory.getInstance(); - - static Map userId = new HashMap<>(); - static String userName = UUID.randomUUID().toString().replaceAll("-", ""); - static Class t = null; - static Map USER_SUCCESS = new HashMap<>(); - static Map USER_SAME_EMAIL = new HashMap<>(); - static UsersResource usersRes = mock(UsersResource.class); - - @BeforeClass - public static void init() { - userId.put(JsonKey.USER_ID, "95e4942d-cbe8-477d-aebd-ad8e6de4bfc8"); - USER_SUCCESS.put(JsonKey.USERNAME, userName); - USER_SUCCESS.put(JsonKey.PASSWORD, "password"); - USER_SUCCESS.put(JsonKey.FIRST_NAME, "A"); - USER_SUCCESS.put(JsonKey.LAST_NAME, "B"); - USER_SUCCESS.put(JsonKey.PHONE, "9870060000"); - USER_SUCCESS.put(JsonKey.EMAIL, userName.substring(0, 10)); - USER_SAME_EMAIL.put(JsonKey.USERNAME, userName); - USER_SAME_EMAIL.put(JsonKey.PASSWORD, "password"); - USER_SAME_EMAIL.put(JsonKey.FIRST_NAME, "A"); - USER_SAME_EMAIL.put(JsonKey.LAST_NAME, "B"); - USER_SAME_EMAIL.put(JsonKey.PHONE, "9870060000"); - USER_SAME_EMAIL.put(JsonKey.EMAIL, userName.substring(0, 10)); - try { - t = Class.forName("org.sunbird.services.sso.SSOServiceFactory"); - } catch (ClassNotFoundException e) { - } - Keycloak kcp = mock(Keycloak.class); - RealmResource realmRes = mock(RealmResource.class); - UserResource userRes = mock(UserResource.class); - UserRepresentation userRep = mock(UserRepresentation.class); - Response response = mock(Response.class); - PowerMockito.mockStatic(KeyCloakConnectionProvider.class); - try { - - doReturn(kcp).when(KeyCloakConnectionProvider.class, "getConnection"); - doReturn(realmRes).when(kcp).realm(Mockito.any()); - doReturn(usersRes).when(realmRes).users(); - doReturn(response) - .doThrow( - new ProjectCommonException( - ResponseCode.emailANDUserNameAlreadyExistError.getErrorCode(), - ResponseCode.emailANDUserNameAlreadyExistError.getErrorMessage(), - ResponseCode.CLIENT_ERROR.getResponseCode())) - .doReturn(response) - .when(usersRes) - .create(Mockito.any(UserRepresentation.class)); - doReturn(201).when(response).getStatus(); - doReturn("userdata").when(response).getHeaderString(Mockito.eq("Location")); - - doReturn(userRes).when(usersRes).get(Mockito.anyString()); - doReturn(userRep).when(userRes).toRepresentation(); - doNothing().when(userRes).update(Mockito.any(UserRepresentation.class)); - - doNothing().when(userRes).remove(); - - Map map = new HashMap<>(); - map.put(JsonKey.LAST_LOGIN_TIME, Arrays.asList(String.valueOf(System.currentTimeMillis()))); - doReturn(map).when(userRep).getAttributes(); - when(userRep.getUsername()).thenReturn("userName"); - } catch (Exception e) { - e.printStackTrace(); - Assert.fail( - "Failed in initialization of mock rules, underlying error: " + e.getLocalizedMessage()); - } - } - - @Test - public void testNewInstanceSucccess() { - Exception exp = null; - try { - Constructor constructor = t.getDeclaredConstructor(); - constructor.setAccessible(true); - SSOServiceFactory application = constructor.newInstance(); - Assert.assertNotNull(application); - } catch (Exception e) { - exp = e; - } - Assert.assertNull(exp); - } - - @Test - public void testGetUsernameById() { - String result = keyCloakService.getUsernameById("1234-567-890"); - Assert.assertNotNull(result); - } - - @Test - public void testUserUpdateTestSuccessWithAllData() { - Map request = new HashMap(); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - request.put(JsonKey.FIRST_NAME, userName); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USERNAME, userName); - request.put(JsonKey.PROVIDER, "ntp"); - String result = keyCloakService.updateUser(request); - Assert.assertNotNull(result); - } - - @Test - public void testUpdateUserSuccessWithoutProvider() { - Map request = new HashMap(); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - request.put(JsonKey.FIRST_NAME, userName); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.COUNTRY_CODE, "+91"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USERNAME, userName); - String result = keyCloakService.updateUser(request); - Assert.assertNotNull(result); - } - - @Test - public void testUpdateUserSuccessWithoutProviderAndCountryCode() { - Map request = new HashMap(); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - request.put(JsonKey.FIRST_NAME, userName); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USERNAME, userName); - String result = keyCloakService.updateUser(request); - Assert.assertNotNull(result); - } - - @Test - public void testUpdateUserSuccessWithoutAnyField() { - - Map request = new HashMap(); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - String result = keyCloakService.updateUser(request); - Assert.assertNotNull(result); - } - - @Test(expected = ProjectCommonException.class) - public void testDeactivateUserSuccess() { - - Map request = new HashMap(); - request.put(JsonKey.USER_ID, "123"); - request.put(JsonKey.FIRST_NAME, userName); - keyCloakService.deactivateUser(request); - } - - @Test(expected = ProjectCommonException.class) - public void testRemoveUserSuccess() { - - Map request = new HashMap(); - request.put(JsonKey.USER_ID, "123"); - keyCloakService.removeUser(request); - } - - @Test(expected = ProjectCommonException.class) - public void testVerifyTokenSuccess() { - keyCloakService.verifyToken( - "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI5emhhVnZDbl81OEtheHpldHBzYXNZQ2lEallkemJIX3U2LV93SDk4SEc0In0.eyJqdGkiOiI5ZmQzNzgzYy01YjZmLTQ3OWQtYmMzYy0yZWEzOGUzZmRmYzgiLCJleHAiOjE1MDUxMTQyNDYsIm5iZiI6MCwiaWF0IjoxNTA1MTEzNjQ2LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvbWFzdGVyIiwiYXVkIjoic2VjdXJpdHktYWRtaW4tY29uc29sZSIsInN1YiI6ImIzYTZkMTY4LWJjZmQtNDE2MS1hYzVmLTljZjYyODIyNzlmMyIsInR5cCI6IkJlYXJlciIsImF6cCI6InNlY3VyaXR5LWFkbWluLWNvbnNvbGUiLCJub25jZSI6ImMxOGVlMDM2LTAyMWItNGVlZC04NWVhLTc0MjMyYzg2ZmI4ZSIsImF1dGhfdGltZSI6MTUwNTExMzY0Niwic2Vzc2lvbl9zdGF0ZSI6ImRiZTU2NDlmLTY4MDktNDA3NS05Njk5LTVhYjIyNWMwZTkyMiIsImFjciI6IjEiLCJhbGxvd2VkLW9yaWdpbnMiOltdLCJyZXNvdXJjZV9hY2Nlc3MiOnt9LCJuYW1lIjoiTWFuemFydWwgaGFxdWUiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJ0ZXN0MTIzNDU2NyIsImdpdmVuX25hbWUiOiJNYW56YXJ1bCBoYXF1ZSIsImVtYWlsIjoidGVzdDEyM0B0LmNvbSJ9.Xdjqe16MSkiR94g-Uj_pVZ2L3gnIdKpkJ6aB82W_w_c3yEmx1mXYBdkxe4zMz3ks4OX_PWwSFEbJECHcnujUwF6Ula0xtXTfuESB9hFyiWHtVAhuh5UlCCwPnsihv5EqK6u-Qzo0aa6qZOiQK3Zo7FLpnPUDxn4yHyo3mRZUiWf76KTl8PhSMoXoWxcR2vGW0b-cPixILTZPV0xXUZoozCui70QnvTgOJDWqr7y80EWDkS4Ptn-QM3q2nJlw63mZreOG3XTdraOlcKIP5vFK992dyyHlYGqWVzigortS9Ah4cprFVuLlX8mu1cQvqHBtW-0Dq_JlcTMaztEnqvJ6XA"); - } - - @Test - public void testAddUserLoginTimeSuccess() { - boolean response = keyCloakService.addUserLoginTime(userId.get(JsonKey.USER_ID)); - Assert.assertEquals(true, response); - } - - @Test - public void testGetLastLoginTimeSuccess() { - String lastLoginTime = keyCloakService.getLastLoginTime(userId.get(JsonKey.USER_ID)); - Assert.assertNull(lastLoginTime); - } - - @Ignore - public void testActiveUserSuccess() { - Map reqMap = new HashMap<>(); - reqMap.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - String response = keyCloakService.activateUser(reqMap); - Assert.assertEquals(JsonKey.SUCCESS, response); - } - - @Test - public void testActivateUserFailureWithEmptyUserId() { - Map reqMap = new HashMap<>(); - reqMap.put(JsonKey.USER_ID, ""); - try { - keyCloakService.activateUser(reqMap); - } catch (ProjectCommonException e) { - Assert.assertEquals(ResponseCode.invalidUsrData.getErrorCode(), e.getCode()); - Assert.assertEquals(ResponseCode.invalidUsrData.getErrorMessage(), e.getMessage()); - Assert.assertEquals(ResponseCode.CLIENT_ERROR.getResponseCode(), e.getResponseCode()); - } - } - - @Test - public void testIsEmailVerifiedSuccess() { - boolean response = keyCloakService.isEmailVerified(userId.get(JsonKey.USER_ID)); - Assert.assertEquals(false, response); - } - - @Test - public void testSetEmailVerifiedSuccessWithVerifiedFalse() { - keyCloakService.setEmailVerifiedAsFalse(userId.get(JsonKey.USER_ID)); - boolean response = keyCloakService.isEmailVerified(userId.get(JsonKey.USER_ID)); - Assert.assertNotEquals(true, response); - } - - @Test - public void testSetEmailVerifiedSuccessWithVerifiedUpdateFalse() { - keyCloakService.setEmailVerifiedUpdatedFlag(userId.get(JsonKey.USER_ID), "false"); - String response = keyCloakService.getEmailVerifiedUpdatedFlag(userId.get(JsonKey.USER_ID)); - Assert.assertEquals(false + "", response); - } - - @Test - public void testSetEmailVerifiedTrueSuccessWithVerifiedTrue() { - keyCloakService.setEmailVerifiedUpdatedFlag(userId.get(JsonKey.USER_ID), "true"); - String response = keyCloakService.getEmailVerifiedUpdatedFlag(userId.get(JsonKey.USER_ID)); - Assert.assertEquals(true + "", response); - } - - @Test - public void testSetEmailVerifiedSuccessWithVerifiedTrue() { - String response = keyCloakService.setEmailVerifiedTrue(userId.get(JsonKey.USER_ID)); - Assert.assertEquals(JsonKey.SUCCESS, response); - } - - @Test - public void testSyncUserDataSuccess() { - Map request = new HashMap(); - request.put(JsonKey.USERNAME, userName); - request.put(JsonKey.PROVIDER, "ntp"); - request.put(JsonKey.PASSWORD, "password"); - request.put(JsonKey.FIRST_NAME, "A"); - request.put(JsonKey.LAST_NAME, "B"); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.COUNTRY_CODE, "+91"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - String response = keyCloakService.syncUserData(request); - Assert.assertEquals(JsonKey.SUCCESS, response); - } - - @Test - public void testSyncUserDataSuccessWithoutCountryCode() { - Map request = new HashMap(); - request.put(JsonKey.USERNAME, userName); - request.put(JsonKey.PROVIDER, "ntp"); - request.put(JsonKey.PASSWORD, "password"); - request.put(JsonKey.FIRST_NAME, "A"); - request.put(JsonKey.LAST_NAME, "B"); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - String response = keyCloakService.syncUserData(request); - Assert.assertEquals(JsonKey.SUCCESS, response); - } - - @Test - public void testSyncUserDataSuccessWithoutProvider() { - Map request = new HashMap(); - request.put(JsonKey.USERNAME, userName); - request.put(JsonKey.PASSWORD, "password"); - request.put(JsonKey.FIRST_NAME, "A"); - request.put(JsonKey.LAST_NAME, "B"); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USER_ID, userId.get(JsonKey.USER_ID)); - String response = keyCloakService.syncUserData(request); - Assert.assertEquals(JsonKey.SUCCESS, response); - } - - @Test - public void testSyncUserDataSuccessWithInvalidUser() { - Map request = new HashMap(); - request.put(JsonKey.USERNAME, userName); - request.put(JsonKey.PASSWORD, "password"); - request.put(JsonKey.FIRST_NAME, "A"); - request.put(JsonKey.LAST_NAME, "B"); - request.put(JsonKey.PHONE, "9870060000"); - request.put(JsonKey.EMAIL, userName.substring(0, 10)); - request.put(JsonKey.USER_ID, "xey123-23sss-cbdsgdgdg"); - try { - keyCloakService.syncUserData(request); - } catch (ProjectCommonException e) { - Assert.assertEquals(ResponseCode.invalidUsrData.getErrorCode(), e.getCode()); - Assert.assertEquals(ResponseCode.CLIENT_ERROR.getResponseCode(), e.getResponseCode()); - } - } - - @Test - public void testDoPasswordUpdateSuccess() { - boolean response = keyCloakService.doPasswordUpdate(userId.get(JsonKey.USER_ID), "password"); - Assert.assertEquals(true, response); - } - - @Test - public void testGetFederatedUserId() - throws ClassNotFoundException, InstantiationException, IllegalAccessException, - NoSuchMethodException, SecurityException, IllegalArgumentException, - InvocationTargetException { - KeyCloakServiceImpl.class.getDeclaredMethods(); - Method m = KeyCloakServiceImpl.class.getDeclaredMethod("getFederatedUserId", String.class); - m.setAccessible(true); - SSOManager keyCloakService = SSOServiceFactory.getInstance(); - String fedUserId = (String) m.invoke(keyCloakService, "userId"); - Assert.assertEquals( - "f:" - + ProjectUtil.getConfigValue(JsonKey.SUNBIRD_KEYCLOAK_USER_FEDERATION_PROVIDER_ID) - + ":userId", - fedUserId); - } - - @Test - public void testUpdatePassword() throws Exception { - boolean updated = keyCloakService.updatePassword(userId.get(JsonKey.USER_ID), "password"); - Assert.assertTrue(updated); - } -} diff --git a/service/app/util/AuthenticationHelper.java b/service/app/util/AuthenticationHelper.java index f440e718d..48c8f5b17 100644 --- a/service/app/util/AuthenticationHelper.java +++ b/service/app/util/AuthenticationHelper.java @@ -1,24 +1,17 @@ package util; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - import org.sunbird.auth.verifier.Base64Util; import org.sunbird.cassandra.CassandraOperation; -import org.sunbird.common.exception.ProjectCommonException; import org.sunbird.common.models.response.Response; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectLogger; -import org.sunbird.common.models.util.PropertiesCache; -import org.sunbird.common.models.util.datasecurity.EncryptionService; -import org.sunbird.common.responsecode.ResponseCode; import org.sunbird.helper.ServiceFactory; import org.sunbird.learner.util.Util; import org.sunbird.learner.util.Util.DbInfo; -import org.sunbird.services.sso.SSOManager; -import org.sunbird.services.sso.SSOServiceFactory; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * This class will handle all the method related to authentication. For example verifying user diff --git a/service/pom.xml b/service/pom.xml index bf0429d36..d81a55fe3 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -103,7 +103,7 @@ org.sunbird - sunbird-commons + auth-verifier 1.0-SNAPSHOT diff --git a/service/test/util/RequestInterceptorTest.java b/service/test/util/RequestInterceptorTest.java index 7c4e39a03..2651d7ca2 100644 --- a/service/test/util/RequestInterceptorTest.java +++ b/service/test/util/RequestInterceptorTest.java @@ -1,8 +1,5 @@ package util; -import java.io.File; -import java.security.cert.X509Certificate; -import java.util.*; import modules.StartModule; import org.junit.Assert; import org.junit.Before; @@ -19,8 +16,6 @@ import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.PropertiesCache; import org.sunbird.helper.ServiceFactory; -import org.sunbird.services.sso.SSOManager; -import org.sunbird.services.sso.SSOServiceFactory; import play.Application; import play.Mode; import play.api.http.MediaRange; @@ -33,15 +28,19 @@ import play.mvc.Http.Flash; import play.test.Helpers; +import java.io.File; +import java.security.cert.X509Certificate; +import java.util.*; + @RunWith(PowerMockRunner.class) -@PrepareForTest({SSOServiceFactory.class, ServiceFactory.class, PropertiesCache.class}) +@PrepareForTest({ServiceFactory.class, PropertiesCache.class}) @PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", "sun.security.ssl.*", "javax.net.ssl.*", "javax.crypto.*", "com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*"}) public class RequestInterceptorTest { public Application application; - private SSOManager ssoManager; + private CassandraOperationImpl cassandraOperation; private PropertiesCache properties; @@ -54,9 +53,6 @@ public void before() { .disable(StartModule.class) .build(); Helpers.start(application); - ssoManager = PowerMockito.mock(SSOManager.class); - PowerMockito.mockStatic(SSOServiceFactory.class); - PowerMockito.when(SSOServiceFactory.getInstance()).thenReturn(ssoManager); cassandraOperation = PowerMockito.mock(CassandraOperationImpl.class); PowerMockito.mockStatic(ServiceFactory.class); PowerMockito.when(ServiceFactory.getInstance()).thenReturn(cassandraOperation); @@ -66,7 +62,7 @@ public void before() { } @Test - @PrepareForTest({SSOServiceFactory.class, ServiceFactory.class, PropertiesCache.class, AccessTokenValidator.class}) + @PrepareForTest({ServiceFactory.class, PropertiesCache.class, AccessTokenValidator.class}) public void testVerifyRequestDataWithUserAccessTokenWithPrivateRequestPath() { PowerMockito.when(properties.getProperty(JsonKey.SSO_PUBLIC_KEY)).thenReturn("somePublicKey"); PowerMockito.when(properties.getProperty(JsonKey.IS_SSO_ENABLED)).thenReturn("false"); @@ -80,7 +76,7 @@ public void testVerifyRequestDataWithUserAccessTokenWithPrivateRequestPath() { } @Test - @PrepareForTest({SSOServiceFactory.class, ServiceFactory.class, PropertiesCache.class, AccessTokenValidator.class}) + @PrepareForTest({ServiceFactory.class, PropertiesCache.class, AccessTokenValidator.class}) public void testVerifyRequestDataWithUserAccessTokenWithPublicRequestPath() { PowerMockito.when(properties.getProperty(JsonKey.SSO_PUBLIC_KEY)).thenReturn("somePublicKey"); PowerMockito.when(properties.getProperty(JsonKey.IS_SSO_ENABLED)).thenReturn("false"); @@ -94,7 +90,7 @@ public void testVerifyRequestDataWithUserAccessTokenWithPublicRequestPath() { } @Test - @PrepareForTest({SSOServiceFactory.class, ServiceFactory.class, PropertiesCache.class}) + @PrepareForTest({ServiceFactory.class, PropertiesCache.class}) public void testVerifyRequestDataWithAuthClientTokenWithPublicRequestPath() { PowerMockito.when(properties.getProperty(JsonKey.SSO_PUBLIC_KEY)).thenReturn("somePublicKey"); PowerMockito.when(properties.getProperty(JsonKey.IS_SSO_ENABLED)).thenReturn("false"); @@ -106,7 +102,7 @@ public void testVerifyRequestDataWithAuthClientTokenWithPublicRequestPath() { } @Test - @PrepareForTest({SSOServiceFactory.class, ServiceFactory.class, PropertiesCache.class}) + @PrepareForTest({ServiceFactory.class, PropertiesCache.class}) public void testVerifyRequestDataWithoutUserAccessToken() { PowerMockito.when(properties.getProperty(JsonKey.SSO_PUBLIC_KEY)).thenReturn("somePublicKey"); PowerMockito.when(properties.getProperty(JsonKey.IS_SSO_ENABLED)).thenReturn("false"); From df5d72e672d5436966889ea3b855b898ed5f817b Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 17:41:07 +0530 Subject: [PATCH 11/30] Issue #LR-740 chore: Removed unused dependency --- service/pom.xml | 7 ------- .../pagemanagement/PageControllerTest.java | 15 +++++++++++---- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/service/pom.xml b/service/pom.xml index d81a55fe3..7b2dbb64d 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -172,13 +172,6 @@ ${scala.version} - - - org.apache.httpcomponents - httpclient - 4.5.13 - - com.typesafe.akka akka-testkit_${scala.major.version} diff --git a/service/test/controllers/pagemanagement/PageControllerTest.java b/service/test/controllers/pagemanagement/PageControllerTest.java index 967e6b680..6deeb2c9d 100644 --- a/service/test/controllers/pagemanagement/PageControllerTest.java +++ b/service/test/controllers/pagemanagement/PageControllerTest.java @@ -1,9 +1,9 @@ package controllers.pagemanagement; +import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import controllers.BaseApplicationTest; -import actors.DummyActor; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -24,9 +24,16 @@ /** Created by arvind on 4/12/17. */ @RunWith(PowerMockRunner.class) -@PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", - "sun.security.ssl.*", "javax.net.ssl.*", "javax.crypto.*", - "com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*"}) +@PowerMockIgnore({ + "javax.management.*", + "javax.net.ssl.*", + "javax.security.*", + "jdk.internal.reflect.*", + "javax.crypto.*", + "javax.script.*", + "javax.xml.*", + "com.sun.org.apache.xerces.*", + "org.xml.*"}) public class PageControllerTest extends BaseApplicationTest { String PAGE_ID="pageID"; From cabadc64adb63ab9719e851cfb31bad606a3f2e7 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 17:56:44 +0530 Subject: [PATCH 12/30] Issue #LR-740 chore: Optimized the import --- service/app/controllers/BaseController.java | 5 +---- .../app/controllers/LearnerController.java | 2 -- .../BaseBulkUploadController.java | 20 ++++++++--------- .../BulkUploadController.java | 9 ++++---- .../controllers/cache/CacheController.java | 7 +++--- .../certificate/CertificateController.java | 8 +++---- .../CertificateRequestValidator.java | 10 ++++----- .../validator/Validator.java | 2 -- .../CourseEnrollmentController.java | 3 --- .../CourseEnrollmentRequestValidator.java | 2 +- .../CourseBatchController.java | 19 ++++++++-------- .../coursemanagement/CourseController.java | 2 -- .../CourseBatchRequestValidator.java | 15 ++++++------- .../exhaustjob/ExhaustJobController.java | 17 ++++---------- .../controllers/group/GroupAggController.java | 2 -- .../healthmanager/HealthController.java | 22 +++++++++---------- .../pagemanagement/PageController.java | 17 +++++++------- .../QRCodeDownloadController.java | 9 ++++---- .../controllers/search/SearchController.java | 13 +++++------ service/app/filters/AccessLogFilter.java | 13 +++++------ service/app/filters/CustomGzipFilter.java | 4 ++-- service/app/filters/LoggingFilter.java | 12 +++++----- service/app/filters/ResponseFilter.scala | 4 ++-- service/app/mapper/RequestMapper.java | 2 -- service/app/modules/ApplicationStart.java | 10 ++++----- service/app/modules/ErrorHandler.java | 12 +++++----- service/app/modules/OnRequestHandler.java | 1 - service/app/util/ACTOR_NAMES.java | 4 ++-- service/app/util/Common.java | 2 +- service/app/util/RequestInterceptor.java | 10 ++++----- service/test/actors/DummyErrorActor.java | 1 - .../controllers/ApplicationStartTest.java | 2 +- .../test/controllers/BaseApplicationTest.java | 8 +++---- .../controllers/LearnerControllerTest.java | 12 +++++----- .../QRCodeDownloadControllerTest.java | 2 +- .../BulkUploadControllerTest.java | 2 +- .../cache/CacheControllerErrorTest.java | 2 +- .../cache/CacheControllerTest.java | 4 +--- .../CertificateControllerTest.java | 13 +++++------ .../CourseEnrollmentControllerTest.java | 3 +-- .../CourseEnrollmentControllerTest2.java | 1 - .../CourseBatchControllerTest.java | 2 +- .../healthmanager/HealthControllerTest.java | 1 - .../search/SearchControllerTest.java | 14 +++++++----- service/test/mapper/RequestMapperTest.java | 7 +++--- service/test/modules/ModuleTest.java | 4 ++-- service/test/util/TestUtil.java | 3 ++- 47 files changed, 152 insertions(+), 187 deletions(-) diff --git a/service/app/controllers/BaseController.java b/service/app/controllers/BaseController.java index 6ee881a91..19e924d43 100644 --- a/service/app/controllers/BaseController.java +++ b/service/app/controllers/BaseController.java @@ -15,10 +15,8 @@ import org.sunbird.common.models.response.ResponseParams; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; -import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.models.util.LoggerUtil; +import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.request.HeaderParam; import org.sunbird.common.request.RequestContext; import org.sunbird.common.responsecode.ResponseCode; @@ -42,7 +40,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.UUID; import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; import java.util.concurrent.TimeUnit; diff --git a/service/app/controllers/LearnerController.java b/service/app/controllers/LearnerController.java index 16ac85376..0ce554695 100644 --- a/service/app/controllers/LearnerController.java +++ b/service/app/controllers/LearnerController.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.databind.JsonNode; import org.apache.commons.lang3.StringUtils; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.LearnerStateRequestValidator; import org.sunbird.common.request.Request; import org.sunbird.keys.SunbirdKey; diff --git a/service/app/controllers/bulkapimanagement/BaseBulkUploadController.java b/service/app/controllers/bulkapimanagement/BaseBulkUploadController.java index f02c06ef3..1d6879568 100644 --- a/service/app/controllers/bulkapimanagement/BaseBulkUploadController.java +++ b/service/app/controllers/bulkapimanagement/BaseBulkUploadController.java @@ -2,20 +2,10 @@ import com.fasterxml.jackson.databind.JsonNode; import controllers.BaseController; -import java.io.ByteArrayInputStream; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.charset.StandardCharsets; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.sunbird.common.exception.ProjectCommonException; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.responsecode.ResponseCode; import play.libs.Files; @@ -24,6 +14,16 @@ import play.mvc.Http.MultipartFormData.FilePart; import util.Attrs; +import java.io.ByteArrayInputStream; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; + /** * Class to provide common functionality to ulk upload controllers. * diff --git a/service/app/controllers/bulkapimanagement/BulkUploadController.java b/service/app/controllers/bulkapimanagement/BulkUploadController.java index a7955b3e6..394668a86 100644 --- a/service/app/controllers/bulkapimanagement/BulkUploadController.java +++ b/service/app/controllers/bulkapimanagement/BulkUploadController.java @@ -1,10 +1,6 @@ package controllers.bulkapimanagement; import akka.actor.ActorRef; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.request.BaseRequestValidator; @@ -12,6 +8,11 @@ import play.mvc.Http; import play.mvc.Result; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CompletionStage; + public class BulkUploadController extends BaseBulkUploadController { BaseRequestValidator baseRequestValidator = new BaseRequestValidator(); diff --git a/service/app/controllers/cache/CacheController.java b/service/app/controllers/cache/CacheController.java index 966dce0f8..812c4261f 100644 --- a/service/app/controllers/cache/CacheController.java +++ b/service/app/controllers/cache/CacheController.java @@ -2,14 +2,15 @@ import akka.actor.ActorRef; import controllers.BaseController; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; import play.mvc.Http; import play.mvc.Result; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.concurrent.CompletionStage; + public class CacheController extends BaseController { @Inject diff --git a/service/app/controllers/certificate/CertificateController.java b/service/app/controllers/certificate/CertificateController.java index bb7576787..1f70df344 100644 --- a/service/app/controllers/certificate/CertificateController.java +++ b/service/app/controllers/certificate/CertificateController.java @@ -2,16 +2,16 @@ import akka.actor.ActorRef; import controllers.BaseController; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; - import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.request.Request; import org.sunbird.learner.actor.operations.CourseActorOperations; import play.mvc.Http; import play.mvc.Result; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.concurrent.CompletionStage; + public class CertificateController extends BaseController { public static final String REISSUE = "reIssue"; diff --git a/service/app/controllers/certificate/CertificateRequestValidator.java b/service/app/controllers/certificate/CertificateRequestValidator.java index 307437588..307720524 100644 --- a/service/app/controllers/certificate/CertificateRequestValidator.java +++ b/service/app/controllers/certificate/CertificateRequestValidator.java @@ -1,11 +1,5 @@ package controllers.certificate; -import java.text.MessageFormat; -import java.util.List; -import java.util.Map; -import java.util.Objects; - -import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; import org.sunbird.common.exception.ProjectCommonException; @@ -15,6 +9,10 @@ import org.sunbird.common.responsecode.ResponseCode; import org.sunbird.learner.constants.CourseJsonKey; +import java.text.MessageFormat; +import java.util.List; +import java.util.Map; + public class CertificateRequestValidator extends BaseRequestValidator { public void validateIssueCertificateRequest(Request certRequestDto) { diff --git a/service/app/controllers/collectionsummaryaggregate/validator/Validator.java b/service/app/controllers/collectionsummaryaggregate/validator/Validator.java index 7c0e8ad0c..075b2ad45 100644 --- a/service/app/controllers/collectionsummaryaggregate/validator/Validator.java +++ b/service/app/controllers/collectionsummaryaggregate/validator/Validator.java @@ -1,12 +1,10 @@ package controllers.collectionsummaryaggregate.validator; -import org.apache.log4j.MDC; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.request.BaseRequestValidator; import org.sunbird.common.request.Request; import org.sunbird.common.responsecode.ResponseCode; -import java.util.List; import java.util.Map; public class Validator extends BaseRequestValidator { diff --git a/service/app/controllers/courseenrollment/CourseEnrollmentController.java b/service/app/controllers/courseenrollment/CourseEnrollmentController.java index 917c800fd..aad82e92f 100644 --- a/service/app/controllers/courseenrollment/CourseEnrollmentController.java +++ b/service/app/controllers/courseenrollment/CourseEnrollmentController.java @@ -3,7 +3,6 @@ import akka.actor.ActorRef; import controllers.BaseController; import controllers.courseenrollment.validator.CourseEnrollmentRequestValidator; -import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.request.Request; @@ -12,11 +11,9 @@ import javax.inject.Inject; import javax.inject.Named; -import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; -import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.CompletionStage; diff --git a/service/app/controllers/courseenrollment/validator/CourseEnrollmentRequestValidator.java b/service/app/controllers/courseenrollment/validator/CourseEnrollmentRequestValidator.java index 333d9c89d..a7229e5ba 100644 --- a/service/app/controllers/courseenrollment/validator/CourseEnrollmentRequestValidator.java +++ b/service/app/controllers/courseenrollment/validator/CourseEnrollmentRequestValidator.java @@ -1,6 +1,6 @@ package controllers.courseenrollment.validator; -import org.sunbird.common.models.util.*; +import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.request.BaseRequestValidator; import org.sunbird.common.request.Request; import org.sunbird.common.responsecode.ResponseCode; diff --git a/service/app/controllers/coursemanagement/CourseBatchController.java b/service/app/controllers/coursemanagement/CourseBatchController.java index 63a1c9ef2..691bc61b6 100644 --- a/service/app/controllers/coursemanagement/CourseBatchController.java +++ b/service/app/controllers/coursemanagement/CourseBatchController.java @@ -5,24 +5,23 @@ import com.fasterxml.jackson.databind.JsonNode; import controllers.BaseController; import controllers.coursemanagement.validator.CourseBatchRequestValidator; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.models.util.ProjectUtil.EsType; import org.sunbird.common.request.Request; import play.mvc.Http; import play.mvc.Result; import util.Attrs; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CompletionStage; + public class CourseBatchController extends BaseController { @Inject diff --git a/service/app/controllers/coursemanagement/CourseController.java b/service/app/controllers/coursemanagement/CourseController.java index 07d2dfdec..539666945 100644 --- a/service/app/controllers/coursemanagement/CourseController.java +++ b/service/app/controllers/coursemanagement/CourseController.java @@ -4,8 +4,6 @@ import controllers.BaseController; import controllers.coursemanagement.validator.CourseCreateRequestValidator; import org.sunbird.common.models.util.ActorOperations; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.Request; import play.mvc.Http; import play.mvc.Result; diff --git a/service/app/controllers/coursemanagement/validator/CourseBatchRequestValidator.java b/service/app/controllers/coursemanagement/validator/CourseBatchRequestValidator.java index b6217de42..79850842a 100644 --- a/service/app/controllers/coursemanagement/validator/CourseBatchRequestValidator.java +++ b/service/app/controllers/coursemanagement/validator/CourseBatchRequestValidator.java @@ -1,22 +1,21 @@ package controllers.coursemanagement.validator; -import java.text.MessageFormat; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.List; -import java.util.Map; - import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; import org.sunbird.common.exception.ProjectCommonException; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.request.BaseRequestValidator; import org.sunbird.common.request.Request; import org.sunbird.common.responsecode.ResponseCode; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.Map; + public class CourseBatchRequestValidator extends BaseRequestValidator { private static final int ERROR_CODE = ResponseCode.CLIENT_ERROR.getResponseCode(); diff --git a/service/app/controllers/exhaustjob/ExhaustJobController.java b/service/app/controllers/exhaustjob/ExhaustJobController.java index 227696405..b69451e24 100644 --- a/service/app/controllers/exhaustjob/ExhaustJobController.java +++ b/service/app/controllers/exhaustjob/ExhaustJobController.java @@ -2,26 +2,17 @@ package controllers.exhaustjob; import akka.actor.ActorRef; -import com.fasterxml.jackson.databind.JsonNode; import controllers.BaseController; import controllers.exhaustjob.validator.ExhaustJobRequestValidator; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; -import org.sunbird.common.models.util.ProjectUtil.EsType; import org.sunbird.common.request.Request; import play.mvc.Http; import play.mvc.Result; -import util.Attrs; + +import javax.inject.Inject; +import javax.inject.Named; +import java.util.concurrent.CompletionStage; public class ExhaustJobController extends BaseController { diff --git a/service/app/controllers/group/GroupAggController.java b/service/app/controllers/group/GroupAggController.java index 651146839..e159b1af9 100644 --- a/service/app/controllers/group/GroupAggController.java +++ b/service/app/controllers/group/GroupAggController.java @@ -3,8 +3,6 @@ import akka.actor.ActorRef; import controllers.BaseController; import org.sunbird.common.models.util.ActorOperations; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.Request; import org.sunbird.common.request.RequestValidator; import play.mvc.Http; diff --git a/service/app/controllers/healthmanager/HealthController.java b/service/app/controllers/healthmanager/HealthController.java index 64da8f2a0..05aa409cc 100644 --- a/service/app/controllers/healthmanager/HealthController.java +++ b/service/app/controllers/healthmanager/HealthController.java @@ -3,23 +3,23 @@ import akka.actor.ActorRef; import controllers.BaseController; +import org.sunbird.common.models.response.Response; +import org.sunbird.common.models.util.ActorOperations; +import org.sunbird.common.models.util.JsonKey; +import org.sunbird.common.models.util.ProjectUtil; +import org.sunbird.common.request.Request; +import play.mvc.Http; +import play.mvc.Result; +import util.Attrs; + +import javax.inject.Inject; +import javax.inject.Named; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.sunbird.common.models.response.Response; -import org.sunbird.common.models.util.*; -import org.sunbird.common.request.Request; -import play.mvc.Http; -import play.mvc.Result; -import util.Attrs; /** @author Manzarul */ public class HealthController extends BaseController { diff --git a/service/app/controllers/pagemanagement/PageController.java b/service/app/controllers/pagemanagement/PageController.java index 1735f9146..4ea86e299 100644 --- a/service/app/controllers/pagemanagement/PageController.java +++ b/service/app/controllers/pagemanagement/PageController.java @@ -4,18 +4,9 @@ import akka.actor.ActorRef; import com.fasterxml.jackson.databind.JsonNode; import controllers.BaseController; -import java.util.HashMap; -import java.util.Map; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CompletionStage; -import java.util.stream.Collectors; -import javax.inject.Inject; -import javax.inject.Named; import org.apache.commons.lang3.StringUtils; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.Request; import org.sunbird.common.request.RequestValidator; import play.mvc.Http; @@ -23,6 +14,14 @@ import util.Attrs; import util.Common; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CompletionStage; +import java.util.stream.Collectors; + /** * This controller will handle all the request related to page api's. * diff --git a/service/app/controllers/qrcodedownload/QRCodeDownloadController.java b/service/app/controllers/qrcodedownload/QRCodeDownloadController.java index f6a7ebd86..1d9e5c154 100644 --- a/service/app/controllers/qrcodedownload/QRCodeDownloadController.java +++ b/service/app/controllers/qrcodedownload/QRCodeDownloadController.java @@ -3,16 +3,15 @@ import akka.actor.ActorRef; import controllers.BaseController; import controllers.qrcodedownload.validator.QRCodeDownloadRequestValidator; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; import org.sunbird.common.models.util.ActorOperations; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.Request; import play.mvc.Http; import play.mvc.Result; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.concurrent.CompletionStage; + public class QRCodeDownloadController extends BaseController { @Inject diff --git a/service/app/controllers/search/SearchController.java b/service/app/controllers/search/SearchController.java index e9a71115c..75c2405ac 100644 --- a/service/app/controllers/search/SearchController.java +++ b/service/app/controllers/search/SearchController.java @@ -4,21 +4,20 @@ import akka.actor.ActorRef; import com.fasterxml.jackson.databind.JsonNode; import controllers.BaseController; -import java.util.HashMap; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Named; import org.sunbird.common.models.util.ActorOperations; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.Request; import org.sunbird.common.request.RequestValidator; import play.mvc.Http; import play.mvc.Result; import util.Attrs; +import javax.inject.Inject; +import javax.inject.Named; +import java.util.HashMap; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CompletionStage; + /** * This controller will handle all the request related user and organization search. * diff --git a/service/app/filters/AccessLogFilter.java b/service/app/filters/AccessLogFilter.java index 6c91dff9f..b3f22517d 100644 --- a/service/app/filters/AccessLogFilter.java +++ b/service/app/filters/AccessLogFilter.java @@ -3,16 +3,9 @@ import akka.util.ByteString; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; -import java.util.HashMap; -import java.util.Map; -import java.util.WeakHashMap; -import java.util.concurrent.Executor; -import javax.inject.Inject; - import org.apache.commons.lang3.StringUtils; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.telemetry.util.TelemetryEvents; import org.sunbird.telemetry.util.TelemetryWriter; import play.libs.streams.Accumulator; @@ -21,6 +14,12 @@ import play.mvc.Result; import util.Attrs; +import javax.inject.Inject; +import java.util.HashMap; +import java.util.Map; +import java.util.WeakHashMap; +import java.util.concurrent.Executor; + public class AccessLogFilter extends EssentialFilter { private final Executor executor; diff --git a/service/app/filters/CustomGzipFilter.java b/service/app/filters/CustomGzipFilter.java index 5b06848aa..ce9145f75 100644 --- a/service/app/filters/CustomGzipFilter.java +++ b/service/app/filters/CustomGzipFilter.java @@ -5,12 +5,12 @@ import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.request.HeaderParam; +import play.filters.gzip.GzipFilter; +import play.filters.gzip.GzipFilterConfig; import play.mvc.EssentialAction; import play.mvc.EssentialFilter; import play.mvc.Http; import play.mvc.Result; -import play.filters.gzip.GzipFilter; -import play.filters.gzip.GzipFilterConfig; import javax.inject.Inject; import java.util.function.BiFunction; diff --git a/service/app/filters/LoggingFilter.java b/service/app/filters/LoggingFilter.java index cef381a72..554087fdc 100644 --- a/service/app/filters/LoggingFilter.java +++ b/service/app/filters/LoggingFilter.java @@ -1,12 +1,14 @@ package filters; -import java.util.concurrent.CompletionStage; -import java.util.function.Function; -import javax.inject.Inject; - import akka.stream.Materializer; import play.Logger; -import play.mvc.*; +import play.mvc.Filter; +import play.mvc.Http; +import play.mvc.Result; + +import javax.inject.Inject; +import java.util.concurrent.CompletionStage; +import java.util.function.Function; public class LoggingFilter extends Filter { diff --git a/service/app/filters/ResponseFilter.scala b/service/app/filters/ResponseFilter.scala index e3100bd7a..6beab3c27 100644 --- a/service/app/filters/ResponseFilter.scala +++ b/service/app/filters/ResponseFilter.scala @@ -5,10 +5,10 @@ import akka.util.ByteString import org.apache.commons.lang.StringUtils import org.sunbird.common.models.util.JsonKey import org.sunbird.common.models.util.JsonKey.{CLOUD_STORAGE_CNAME_URL, CLOUD_STORE_BASE_PATH, CONTENT_CLOUD_STORAGE_CONTAINER} -import play.api.http.HttpEntity.Strict -import play.api.mvc.{Filter, RequestHeader, Result} import org.sunbird.common.models.util.ProjectUtil.getConfigValue import play.api.Logger.logger +import play.api.http.HttpEntity.Strict +import play.api.mvc.{Filter, RequestHeader, Result} import javax.inject.Inject import scala.concurrent.{ExecutionContext, Future} diff --git a/service/app/mapper/RequestMapper.java b/service/app/mapper/RequestMapper.java index 0d656413d..05fc19f13 100644 --- a/service/app/mapper/RequestMapper.java +++ b/service/app/mapper/RequestMapper.java @@ -2,9 +2,7 @@ package mapper; import com.fasterxml.jackson.databind.JsonNode; -import org.sunbird.common.models.util.LoggerEnum; import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.responsecode.ResponseCode; import play.libs.Json; diff --git a/service/app/modules/ApplicationStart.java b/service/app/modules/ApplicationStart.java index 73e4ab242..d98f564bd 100644 --- a/service/app/modules/ApplicationStart.java +++ b/service/app/modules/ApplicationStart.java @@ -1,19 +1,19 @@ package modules; -import java.util.concurrent.CompletableFuture; -import javax.inject.Inject; -import javax.inject.Singleton; - import org.sunbird.auth.verifier.KeyManager; import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.common.models.util.LoggerUtil; +import org.sunbird.common.models.util.ProjectUtil; import org.sunbird.learner.util.ContentSearchMock; import org.sunbird.learner.util.SchedulerManager; import org.sunbird.learner.util.Util; import play.api.Environment; import play.api.inject.ApplicationLifecycle; +import javax.inject.Inject; +import javax.inject.Singleton; +import java.util.concurrent.CompletableFuture; + /** * This class will be called after on application startup. only one instance of this class will be * created. StartModule class has responsibility to eager load this class. diff --git a/service/app/modules/ErrorHandler.java b/service/app/modules/ErrorHandler.java index 36f4a9dac..84bd8cc3d 100644 --- a/service/app/modules/ErrorHandler.java +++ b/service/app/modules/ErrorHandler.java @@ -2,15 +2,9 @@ import com.typesafe.config.Config; import controllers.BaseController; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.CompletionStage; -import javax.inject.Inject; -import javax.inject.Provider; -import javax.inject.Singleton; import org.sunbird.common.exception.ProjectCommonException; import org.sunbird.common.models.response.Response; import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.responsecode.ResponseCode; import play.Environment; import play.api.OptionalSourceMapper; @@ -21,6 +15,12 @@ import play.mvc.Result; import play.mvc.Results; +import javax.inject.Inject; +import javax.inject.Provider; +import javax.inject.Singleton; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.CompletionStage; + @Singleton public class ErrorHandler extends DefaultHttpErrorHandler { public LoggerUtil logger = new LoggerUtil(this.getClass()); diff --git a/service/app/modules/OnRequestHandler.java b/service/app/modules/OnRequestHandler.java index 3b963086c..48b24ae1e 100644 --- a/service/app/modules/OnRequestHandler.java +++ b/service/app/modules/OnRequestHandler.java @@ -3,7 +3,6 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.typesafe.config.ConfigFactory; - import controllers.BaseController; import org.apache.commons.lang3.StringUtils; import org.sunbird.auth.verifier.AccessTokenValidator; diff --git a/service/app/util/ACTOR_NAMES.java b/service/app/util/ACTOR_NAMES.java index e7baf5571..3e34e47eb 100644 --- a/service/app/util/ACTOR_NAMES.java +++ b/service/app/util/ACTOR_NAMES.java @@ -1,8 +1,9 @@ package util; +import org.sunbird.actor.exhaustjob.ExhaustJobActor; import org.sunbird.aggregate.CollectionSummaryAggregate; -import org.sunbird.enrolments.CourseEnrolmentActor; import org.sunbird.enrolments.ContentConsumptionActor; +import org.sunbird.enrolments.CourseEnrolmentActor; import org.sunbird.group.GroupAggregatesActor; import org.sunbird.learner.actors.BackgroundJobManager; import org.sunbird.learner.actors.PageManagementActor; @@ -18,7 +19,6 @@ import org.sunbird.learner.actors.qrcodedownload.QRCodeDownloadManagementActor; import org.sunbird.learner.actors.search.SearchHandlerActor; import org.sunbird.learner.actors.syncjobmanager.EsSyncActor; -import org.sunbird.actor.exhaustjob.ExhaustJobActor; public enum ACTOR_NAMES { COURSE_BATCH_MANAGEMENT_ACTOR(CourseBatchManagementActor.class, "course-batch-management-actor"), diff --git a/service/app/util/Common.java b/service/app/util/Common.java index 8c41dbbde..753902d7b 100644 --- a/service/app/util/Common.java +++ b/service/app/util/Common.java @@ -1,8 +1,8 @@ package util; -import java.util.Map; import java.util.HashMap; import java.util.List; +import java.util.Map; public class Common { diff --git a/service/app/util/RequestInterceptor.java b/service/app/util/RequestInterceptor.java index 0069d18ce..8e72f563b 100644 --- a/service/app/util/RequestInterceptor.java +++ b/service/app/util/RequestInterceptor.java @@ -1,17 +1,17 @@ package util; -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; -import java.util.concurrent.ConcurrentHashMap; import org.apache.commons.lang3.StringUtils; import org.sunbird.auth.verifier.AccessTokenValidator; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectLogger; import org.sunbird.common.request.HeaderParam; import play.mvc.Http; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.ConcurrentHashMap; + /** * Request interceptor responsible to authenticated HTTP requests * diff --git a/service/test/actors/DummyErrorActor.java b/service/test/actors/DummyErrorActor.java index dbfc9be14..9776f1f09 100644 --- a/service/test/actors/DummyErrorActor.java +++ b/service/test/actors/DummyErrorActor.java @@ -3,7 +3,6 @@ import akka.actor.ActorRef; import akka.actor.UntypedAbstractActor; import org.sunbird.common.exception.ProjectCommonException; -import org.sunbird.common.models.response.Response; public class DummyErrorActor extends UntypedAbstractActor { diff --git a/service/test/controllers/ApplicationStartTest.java b/service/test/controllers/ApplicationStartTest.java index ebba25b9c..3976f6c54 100644 --- a/service/test/controllers/ApplicationStartTest.java +++ b/service/test/controllers/ApplicationStartTest.java @@ -1,10 +1,10 @@ package controllers; import org.junit.Test; +import org.mockito.Mockito; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.LoggerUtil; import org.sunbird.common.request.RequestContext; -import org.mockito.Mockito; import static modules.ApplicationStart.mockServiceSetup; diff --git a/service/test/controllers/BaseApplicationTest.java b/service/test/controllers/BaseApplicationTest.java index ed9d72f5e..a55389280 100644 --- a/service/test/controllers/BaseApplicationTest.java +++ b/service/test/controllers/BaseApplicationTest.java @@ -1,9 +1,5 @@ package controllers; -import play.inject.Bindings; - -import java.io.File; -import java.util.List; import modules.StartModule; import org.junit.runner.RunWith; import org.mockito.Mockito; @@ -13,11 +9,15 @@ import org.powermock.modules.junit4.PowerMockRunner; import play.Application; import play.Mode; +import play.inject.Bindings; import play.inject.guice.GuiceApplicationBuilder; import play.test.Helpers; import util.ACTOR_NAMES; import util.RequestInterceptor; +import java.io.File; +import java.util.List; + @RunWith(PowerMockRunner.class) @PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", "sun.security.ssl.*", "javax.net.ssl.*", "javax.crypto.*", diff --git a/service/test/controllers/LearnerControllerTest.java b/service/test/controllers/LearnerControllerTest.java index d50a543d4..498eeb4c5 100644 --- a/service/test/controllers/LearnerControllerTest.java +++ b/service/test/controllers/LearnerControllerTest.java @@ -1,14 +1,8 @@ package controllers; -import static util.TestUtil.mapToJson; - import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.typesafe.config.ConfigFactory; - -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.*; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -25,6 +19,12 @@ import util.ACTOR_NAMES; import util.RequestInterceptor; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.*; + +import static util.TestUtil.mapToJson; + /** @author arvind */ @RunWith(PowerMockRunner.class) @PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", diff --git a/service/test/controllers/QRcodedownload/QRCodeDownloadControllerTest.java b/service/test/controllers/QRcodedownload/QRCodeDownloadControllerTest.java index 9e027e2a8..d32002f2e 100644 --- a/service/test/controllers/QRcodedownload/QRCodeDownloadControllerTest.java +++ b/service/test/controllers/QRcodedownload/QRCodeDownloadControllerTest.java @@ -1,8 +1,8 @@ package controllers.QRcodedownload; +import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import controllers.BaseApplicationTest; -import actors.DummyActor; import org.junit.Assert; import org.junit.Before; import org.junit.Test; diff --git a/service/test/controllers/bulkapimanagement/BulkUploadControllerTest.java b/service/test/controllers/bulkapimanagement/BulkUploadControllerTest.java index c825b612b..2192b4acb 100644 --- a/service/test/controllers/bulkapimanagement/BulkUploadControllerTest.java +++ b/service/test/controllers/bulkapimanagement/BulkUploadControllerTest.java @@ -1,9 +1,9 @@ package controllers.bulkapimanagement; +import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import controllers.BaseApplicationTest; -import actors.DummyActor; import org.junit.Assert; import org.junit.Before; import org.junit.Test; diff --git a/service/test/controllers/cache/CacheControllerErrorTest.java b/service/test/controllers/cache/CacheControllerErrorTest.java index 6b26a4869..10ea95f3b 100644 --- a/service/test/controllers/cache/CacheControllerErrorTest.java +++ b/service/test/controllers/cache/CacheControllerErrorTest.java @@ -1,7 +1,7 @@ package controllers.cache; -import controllers.BaseApplicationTest; import actors.DummyErrorActor; +import controllers.BaseApplicationTest; import org.junit.Assert; import org.junit.Before; import org.junit.Ignore; diff --git a/service/test/controllers/cache/CacheControllerTest.java b/service/test/controllers/cache/CacheControllerTest.java index 2116c496c..d7c16e999 100644 --- a/service/test/controllers/cache/CacheControllerTest.java +++ b/service/test/controllers/cache/CacheControllerTest.java @@ -1,6 +1,7 @@ package controllers.cache; import actors.DummyActor; +import com.typesafe.config.ConfigFactory; import controllers.BaseApplicationTest; import modules.OnRequestHandler; import org.junit.Assert; @@ -15,9 +16,6 @@ import org.powermock.modules.junit4.PowerMockRunner; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.request.HeaderParam; - -import com.typesafe.config.ConfigFactory; - import play.mvc.Http; import play.mvc.Result; import play.test.Helpers; diff --git a/service/test/controllers/certificate/CertificateControllerTest.java b/service/test/controllers/certificate/CertificateControllerTest.java index 02d48b8b5..21866417d 100644 --- a/service/test/controllers/certificate/CertificateControllerTest.java +++ b/service/test/controllers/certificate/CertificateControllerTest.java @@ -1,18 +1,11 @@ package controllers.certificate; import actors.DummyActor; -import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import controllers.BaseApplicationTest; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; import org.junit.Assert; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.powermock.core.classloader.annotations.PowerMockIgnore; @@ -26,6 +19,12 @@ import play.test.Helpers; import util.ACTOR_NAMES; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; + @RunWith(PowerMockRunner.class) @PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", "sun.security.ssl.*", "javax.net.ssl.*", "javax.crypto.*", diff --git a/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest.java b/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest.java index 58e1fbcc4..640efecf2 100644 --- a/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest.java +++ b/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest.java @@ -1,10 +1,9 @@ package controllers.courseenrollment; +import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.typesafe.config.ConfigFactory; - import controllers.BaseApplicationTest; -import actors.DummyActor; import org.junit.Assert; import org.junit.Before; import org.junit.Test; diff --git a/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest2.java b/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest2.java index eb8bef01a..23a81c53b 100644 --- a/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest2.java +++ b/service/test/controllers/courseenrollment/CourseEnrollmentControllerTest2.java @@ -3,7 +3,6 @@ import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.typesafe.config.ConfigFactory; - import controllers.BaseApplicationTest; import org.junit.Assert; import org.junit.Before; diff --git a/service/test/controllers/coursemanagement/CourseBatchControllerTest.java b/service/test/controllers/coursemanagement/CourseBatchControllerTest.java index 60fa0bc06..058a84568 100644 --- a/service/test/controllers/coursemanagement/CourseBatchControllerTest.java +++ b/service/test/controllers/coursemanagement/CourseBatchControllerTest.java @@ -1,9 +1,9 @@ package controllers.coursemanagement; +import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import controllers.BaseApplicationTest; -import actors.DummyActor; import org.apache.commons.lang.time.DateUtils; import org.junit.Assert; import org.junit.Before; diff --git a/service/test/controllers/healthmanager/HealthControllerTest.java b/service/test/controllers/healthmanager/HealthControllerTest.java index 23b685328..8504aabf8 100644 --- a/service/test/controllers/healthmanager/HealthControllerTest.java +++ b/service/test/controllers/healthmanager/HealthControllerTest.java @@ -2,7 +2,6 @@ import actors.DummyActor; import controllers.BaseApplicationTest; -import actors.DummyHealthActor; import org.junit.*; import org.junit.runner.RunWith; import org.junit.runners.MethodSorters; diff --git a/service/test/controllers/search/SearchControllerTest.java b/service/test/controllers/search/SearchControllerTest.java index 8b0f2a6a6..d3e1a7e9f 100644 --- a/service/test/controllers/search/SearchControllerTest.java +++ b/service/test/controllers/search/SearchControllerTest.java @@ -1,14 +1,12 @@ package controllers.search; +import actors.DummyActor; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import controllers.BaseApplicationTest; -import actors.DummyActor; - -import java.io.IOException; -import java.util.*; - -import org.junit.*; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; import org.junit.runner.RunWith; import org.powermock.core.classloader.annotations.PowerMockIgnore; import org.powermock.core.classloader.annotations.SuppressStaticInitializationFor; @@ -21,6 +19,10 @@ import play.test.Helpers; import util.ACTOR_NAMES; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + /** Created by arvind on 6/12/17. */ @RunWith(PowerMockRunner.class) @SuppressStaticInitializationFor({"util.AuthenticationHelper"}) diff --git a/service/test/mapper/RequestMapperTest.java b/service/test/mapper/RequestMapperTest.java index 41b37523a..4b3239bda 100644 --- a/service/test/mapper/RequestMapperTest.java +++ b/service/test/mapper/RequestMapperTest.java @@ -2,10 +2,6 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; - -import java.util.HashMap; -import java.util.Map; - import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; @@ -19,6 +15,9 @@ import org.sunbird.common.responsecode.ResponseCode; import play.libs.Json; +import java.util.HashMap; +import java.util.Map; + @RunWith(PowerMockRunner.class) @PrepareForTest({Json.class}) @PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", diff --git a/service/test/modules/ModuleTest.java b/service/test/modules/ModuleTest.java index 8c10e9d16..d63ccce8e 100644 --- a/service/test/modules/ModuleTest.java +++ b/service/test/modules/ModuleTest.java @@ -1,10 +1,8 @@ package modules; -import java.io.File; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.Mockito; import org.powermock.api.mockito.PowerMockito; import org.powermock.core.classloader.annotations.PowerMockIgnore; import org.powermock.core.classloader.annotations.PrepareForTest; @@ -16,6 +14,8 @@ import play.inject.guice.GuiceApplicationBuilder; import play.test.Helpers; +import java.io.File; + @RunWith(PowerMockRunner.class) // @SuppressStaticInitializationFor("org.sunbird.learner.util.Util") @PrepareForTest({Util.class, SchedulerManager.class}) diff --git a/service/test/util/TestUtil.java b/service/test/util/TestUtil.java index 709b1053c..730a4484e 100644 --- a/service/test/util/TestUtil.java +++ b/service/test/util/TestUtil.java @@ -1,9 +1,10 @@ package util; import com.fasterxml.jackson.databind.ObjectMapper; +import org.sunbird.common.models.util.ProjectLogger; + import java.io.IOException; import java.util.Map; -import org.sunbird.common.models.util.ProjectLogger; /** Created by arvind on 19/4/18. */ public class TestUtil { From 38a44a5cbc41f1033ba81b875979af69f2f9b55d Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 18:16:57 +0530 Subject: [PATCH 13/30] Issue #LR-740 chore: Updated the circleci image --- .circleci/config.yml | 2 +- course-mw/course-actors-common/pom.xml | 2 +- service/pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 93b855950..3824db674 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ executorType: machine jobs: build: docker: - - image: circleci/openjdk:14-jdk-buster-node-browsers-legacy + - image: ubuntu-2004:202201-02 - image: circleci/redis:latest steps: - checkout diff --git a/course-mw/course-actors-common/pom.xml b/course-mw/course-actors-common/pom.xml index 0400146e4..00fc45aa6 100644 --- a/course-mw/course-actors-common/pom.xml +++ b/course-mw/course-actors-common/pom.xml @@ -17,7 +17,7 @@ net.logstash.logback logstash-logback-encoder - 6.6 + 6.3 ch.qos.logback diff --git a/service/pom.xml b/service/pom.xml index 7b2dbb64d..180d6ba27 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -214,7 +214,7 @@ net.logstash.logback logstash-logback-encoder - 6.6 + 6.3 org.slf4j From 769ea84d0bfeb928f15eef7b4de91665f9b229e6 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 18:19:21 +0530 Subject: [PATCH 14/30] Issue #LR-740 chore: Updated the circleci image --- .circleci/config.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 3824db674..e40eaac09 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,8 +2,9 @@ version: 2.1 executorType: machine jobs: build: - docker: + machine: - image: ubuntu-2004:202201-02 + docker: - image: circleci/redis:latest steps: - checkout From 8c03f6c6dc8aed55ba422dd564ffd0ef27bbc812 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 18:21:41 +0530 Subject: [PATCH 15/30] Issue #LR-740 chore: Updated the circleci image --- .circleci/config.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e40eaac09..a4fb38ce1 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -4,8 +4,6 @@ jobs: build: machine: - image: ubuntu-2004:202201-02 - docker: - - image: circleci/redis:latest steps: - checkout - restore_cache: From 741dc7ea84c8faaf423f7e6d792589f86bd3818d Mon Sep 17 00:00:00 2001 From: anilgupta Date: Tue, 27 Feb 2024 18:22:19 +0530 Subject: [PATCH 16/30] Issue #LR-740 chore: Updated the circleci image --- .circleci/config.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a4fb38ce1..5b87eac39 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,9 +1,8 @@ version: 2.1 -executorType: machine jobs: build: machine: - - image: ubuntu-2004:202201-02 + image: ubuntu-2004:202201-02 steps: - checkout - restore_cache: From 6e70363a587bf8686d4ba706abcad37275b49eba Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 11:16:32 +0530 Subject: [PATCH 17/30] Issue #LR-740 chore: Updated the logback-core --- course-mw/course-actors-common/pom.xml | 5 +++++ course-mw/course-actors/pom.xml | 5 +++++ course-mw/sunbird-util/cache-utils/pom.xml | 5 +++++ course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 5 +++++ course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml | 5 +++++ course-mw/sunbird-util/sunbird-es-utils/pom.xml | 5 +++++ .../sunbird-util/sunbird-platform-core/actor-core/pom.xml | 5 +++++ .../sunbird-util/sunbird-platform-core/actor-util/pom.xml | 5 +++++ .../sunbird-util/sunbird-platform-core/auth-verifier/pom.xml | 5 +++++ .../sunbird-util/sunbird-platform-core/common-util/pom.xml | 5 +++++ 10 files changed, 50 insertions(+) diff --git a/course-mw/course-actors-common/pom.xml b/course-mw/course-actors-common/pom.xml index 00fc45aa6..7f45010a6 100644 --- a/course-mw/course-actors-common/pom.xml +++ b/course-mw/course-actors-common/pom.xml @@ -24,6 +24,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + joda-time joda-time diff --git a/course-mw/course-actors/pom.xml b/course-mw/course-actors/pom.xml index 085641f04..cdcb92562 100644 --- a/course-mw/course-actors/pom.xml +++ b/course-mw/course-actors/pom.xml @@ -17,6 +17,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/cache-utils/pom.xml b/course-mw/sunbird-util/cache-utils/pom.xml index b856727d8..1d1f4a320 100644 --- a/course-mw/sunbird-util/cache-utils/pom.xml +++ b/course-mw/sunbird-util/cache-utils/pom.xml @@ -44,6 +44,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index e6eabaff9..62280dd35 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -22,6 +22,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml index 3380a7bd0..855482d89 100644 --- a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml @@ -50,6 +50,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-es-utils/pom.xml b/course-mw/sunbird-util/sunbird-es-utils/pom.xml index 44096a478..269a6e94c 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-es-utils/pom.xml @@ -37,6 +37,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml index ff669882c..74b0689bb 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml @@ -21,6 +21,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml index 27f980f2c..4ed4c04e2 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml @@ -72,6 +72,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml index 2e3895b1b..f03e60eeb 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml @@ -42,6 +42,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 99bd496b2..8c089204c 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -43,6 +43,11 @@ logback-classic 1.2.3 + + ch.qos.logback + logback-core + 1.2.3 + net.logstash.logback logstash-logback-encoder From 7c54dcc3fe2116875b67b651132f71a89af44738 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 11:54:45 +0530 Subject: [PATCH 18/30] Issue #LR-740 chore: Updated the logback-core --- Dockerfile.Build | 2 +- .../sunbird-platform-core/common-util/pom.xml | 24 +++++++++++++++---- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/Dockerfile.Build b/Dockerfile.Build index 9157387c5..a4bb24789 100644 --- a/Dockerfile.Build +++ b/Dockerfile.Build @@ -10,6 +10,6 @@ ENV M2_HOME /opt/apache-maven-3.3.9 ENV PATH ${M2_HOME}/bin:${PATH} COPY learner /opt/learner/ WORKDIR /opt/learner/services -RUN mvn clean install -DskipTests -DCLOUD_STORE_GROUP_ID=org.sunbird -DCLOUD_STORE_ARTIFACT_ID=cloud-store-sdk_2.12 -DCLOUD_STORE_VERSION=1.4.6 +RUN mvn clean install -DskipTests -DCLOUD_STORE_GROUP_ID=org.sunbird -DCLOUD_STORE_ARTIFACT_ID=cloud-store-sdk_2.12 -DCLOUD_STORE_VERSION=1.4.7 WORKDIR /opt/learner/services/learning-service CMD ["mvn", "play2:dist"] \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 8c089204c..cf65db6f6 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -12,13 +12,14 @@ UTF-8 2.12 + 2.12.11 2.5.22 2.13.5 2.0.9 0.8.8 org.sunbird cloud-store-sdk_2.12 - 1.4.6 + 1.4.7 @@ -32,6 +33,12 @@ com.typesafe.akka akka-actor_${scala.major.version} ${typesafe.akka.version} + + + org.scala-lang + scala-library + + com.typesafe.akka @@ -218,10 +225,6 @@ com.sun.jersey jersey-server - - com.fasterxml.jackson.module - jackson-module-scala_${scala.major.version} - slf4j-log4j12 org.slf4j @@ -232,6 +235,17 @@ com.fasterxml.jackson.module jackson-module-scala_${scala.major.version} ${jackson.version} + + + org.scala-lang + scala-library + + + + + org.scala-lang + scala-library + ${scala.version} org.glassfish.jersey.core From 9df5af23f2973e9c686cfef7314fca6b08891e91 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 13:08:46 +0530 Subject: [PATCH 19/30] Issue #LR-740 chore: Updated the logback-core --- course-mw/course-actors-common/pom.xml | 2 +- course-mw/course-actors/pom.xml | 2 +- course-mw/sunbird-util/cache-utils/pom.xml | 2 +- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 2 +- .../sunbird-util/sunbird-cassandra-utils/pom.xml | 2 +- course-mw/sunbird-util/sunbird-es-utils/pom.xml | 2 +- .../sunbird-platform-core/actor-core/pom.xml | 2 +- .../sunbird-platform-core/actor-util/pom.xml | 2 +- .../sunbird-platform-core/auth-verifier/pom.xml | 2 +- .../sunbird-platform-core/common-util/pom.xml | 2 +- service/pom.xml | 12 ++++++------ 11 files changed, 16 insertions(+), 16 deletions(-) diff --git a/course-mw/course-actors-common/pom.xml b/course-mw/course-actors-common/pom.xml index 7f45010a6..c4c2fd1a1 100644 --- a/course-mw/course-actors-common/pom.xml +++ b/course-mw/course-actors-common/pom.xml @@ -17,7 +17,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 ch.qos.logback diff --git a/course-mw/course-actors/pom.xml b/course-mw/course-actors/pom.xml index cdcb92562..b21c65b36 100644 --- a/course-mw/course-actors/pom.xml +++ b/course-mw/course-actors/pom.xml @@ -25,7 +25,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 org.sunbird diff --git a/course-mw/sunbird-util/cache-utils/pom.xml b/course-mw/sunbird-util/cache-utils/pom.xml index 1d1f4a320..58f163a98 100644 --- a/course-mw/sunbird-util/cache-utils/pom.xml +++ b/course-mw/sunbird-util/cache-utils/pom.xml @@ -52,7 +52,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 62280dd35..8264dd8b8 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -30,7 +30,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 org.sunbird diff --git a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml index 855482d89..7d1a6f75c 100644 --- a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml @@ -58,7 +58,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 com.fasterxml.jackson.core diff --git a/course-mw/sunbird-util/sunbird-es-utils/pom.xml b/course-mw/sunbird-util/sunbird-es-utils/pom.xml index 269a6e94c..cd4dc7f80 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-es-utils/pom.xml @@ -45,7 +45,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 org.sunbird diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml index 74b0689bb..e794b00bf 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-core/pom.xml @@ -29,7 +29,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 org.sunbird diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml index 4ed4c04e2..cca04dc36 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/pom.xml @@ -80,7 +80,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 diff --git a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml index f03e60eeb..38720de13 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/auth-verifier/pom.xml @@ -50,7 +50,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index cf65db6f6..ba6f84369 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -58,7 +58,7 @@ net.logstash.logback logstash-logback-encoder - 6.3 + 6.6 diff --git a/service/pom.xml b/service/pom.xml index 180d6ba27..9206e87c5 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -214,13 +214,13 @@ net.logstash.logback logstash-logback-encoder - 6.3 - - - org.slf4j - slf4j-api - 1.7.25 + 6.6 + + + + + ${basedir}/app From 2308201a1be00c2004fa36ef1288814abc299296 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 13:55:26 +0530 Subject: [PATCH 20/30] Issue #LR-740 chore: Updated the logback-core --- course-mw/sunbird-util/sunbird-notification/pom.xml | 2 +- .../sunbird-platform-core/common-util/pom.xml | 10 +++++++++- service/pom.xml | 10 +++++----- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/course-mw/sunbird-util/sunbird-notification/pom.xml b/course-mw/sunbird-util/sunbird-notification/pom.xml index 0d89c6cdb..87b767f1f 100644 --- a/course-mw/sunbird-util/sunbird-notification/pom.xml +++ b/course-mw/sunbird-util/sunbird-notification/pom.xml @@ -84,7 +84,7 @@ org.apache.httpcomponents httpclient - 4.5.13 + 4.5.14 junit diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index ba6f84369..626b2a3e6 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -168,7 +168,7 @@ org.apache.httpcomponents httpclient - 4.5.13 + 4.5.14 @@ -229,6 +229,14 @@ slf4j-log4j12 org.slf4j + + org.slf4j + slf4j-api + + + org.slf4j + slf4j-reload4j + diff --git a/service/pom.xml b/service/pom.xml index 9206e87c5..7b2dbb64d 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -216,11 +216,11 @@ logstash-logback-encoder 6.6 - - - - - + + org.slf4j + slf4j-api + 1.7.25 + ${basedir}/app From b331c53764feec934fdbad71b0c14f253e38f6b4 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 18:10:03 +0530 Subject: [PATCH 21/30] Issue #LR-740 chore: Updated the logback-core --- service/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/service/pom.xml b/service/pom.xml index 7b2dbb64d..b61ea15a0 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -103,7 +103,7 @@ org.sunbird - auth-verifier + sunbird-commons 1.0-SNAPSHOT From a931d8780ea9cfe140e269deed1d15a5292ed398 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 20:20:06 +0530 Subject: [PATCH 22/30] Issue #LR-740 chore: Added netty-common --- service/pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/service/pom.xml b/service/pom.xml index b61ea15a0..b9f705cd9 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -79,6 +79,11 @@ ${play2.version} runtime + + io.netty + netty-common + 4.1.77.Final + org.sunbird From 12d5aca08973e8d6207088daaf334309a704ed45 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 20:38:52 +0530 Subject: [PATCH 23/30] Issue #LR-740 chore: updated the redisson version --- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 8264dd8b8..9ff40d8d9 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -15,7 +15,7 @@ org.redisson redisson - 3.15.5 + 3.2.0 ch.qos.logback From 8f2c974a7a4859ef120fed9c40efa409686f3fe4 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Thu, 29 Feb 2024 21:02:14 +0530 Subject: [PATCH 24/30] Issue #LR-740 chore: updated the redisson version --- service/pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/service/pom.xml b/service/pom.xml index b9f705cd9..ced781345 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -79,11 +79,11 @@ ${play2.version} runtime - - io.netty - netty-common - 4.1.77.Final - + + + + + org.sunbird From 6e6186633d0c5b065ea96a53bf1ae5906be8093e Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 20 Mar 2024 12:02:07 +0530 Subject: [PATCH 25/30] Issue #LR-740 chore: Excluded the net buddy. --- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 9ff40d8d9..8392dacbd 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -16,6 +16,12 @@ org.redisson redisson 3.2.0 + + + net.bytebuddy + byte-buddy + + ch.qos.logback From 2d337df35707fb6efd59b40de0978b40b9786ddc Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 20 Mar 2024 12:51:22 +0530 Subject: [PATCH 26/30] Issue #LR-740 chore: Reverted the netty-common changes --- service/pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/service/pom.xml b/service/pom.xml index ced781345..b9f705cd9 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -79,11 +79,11 @@ ${play2.version} runtime - - - - - + + io.netty + netty-common + 4.1.77.Final + org.sunbird From 79ec955087602523f280efd20d3ed6a498338c64 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 20 Mar 2024 14:01:35 +0530 Subject: [PATCH 27/30] Issue #LR-740 chore: Downgraded the snakeyaml from 2.0 to 1.33 --- .../sunbird-util/sunbird-cassandra-utils/pom.xml | 1 - .../sunbird-platform-core/common-util/pom.xml | 11 +++++++++++ service/pom.xml | 4 ---- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml index 7d1a6f75c..fc95a6fd6 100644 --- a/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cassandra-utils/pom.xml @@ -6,7 +6,6 @@ org.sunbird 1.0-SNAPSHOT - org.sunbird sunbird-cassandra-utils 1.0-SNAPSHOT Sunbird Cassandra Utils diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 626b2a3e6..93661e87a 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -237,8 +237,19 @@ org.slf4j slf4j-reload4j + + org.yaml + snakeyaml + + + + org.yaml + snakeyaml + 1.33 + test + com.fasterxml.jackson.module jackson-module-scala_${scala.major.version} diff --git a/service/pom.xml b/service/pom.xml index b9f705cd9..9a5318d14 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -159,10 +159,6 @@ com.google.guava guava - - net.bytebuddy - byte-buddy - From 4274a916d4687dba7ec3603841879deffd31cb2a Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 20 Mar 2024 16:13:04 +0530 Subject: [PATCH 28/30] Issue #LR-740 chore: Fixed the netty issue --- .../sunbird-platform-core/common-util/pom.xml | 8 ++++++-- service/pom.xml | 10 +++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml index 93661e87a..1f98bbc92 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/pom.xml @@ -230,8 +230,12 @@ org.slf4j - org.slf4j - slf4j-api + io.netty + * + + + ch.qos.reload4j + reload4j org.slf4j diff --git a/service/pom.xml b/service/pom.xml index 9a5318d14..98ea6db0c 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -79,11 +79,11 @@ ${play2.version} runtime - - io.netty - netty-common - 4.1.77.Final - + + + + + org.sunbird From 16dd4170b9a5e4e9d54a5d075318917b45d2da64 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 20 Mar 2024 16:43:25 +0530 Subject: [PATCH 29/30] Issue #LR-740 chore: Fixed the netty issue --- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 4 ++++ service/pom.xml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 8392dacbd..9d8ea1b9a 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -21,6 +21,10 @@ net.bytebuddy byte-buddy + + io.netty + * + diff --git a/service/pom.xml b/service/pom.xml index 98ea6db0c..ebd919cc7 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -159,6 +159,10 @@ com.google.guava guava + + byte-buddy + net.bytebuddy + From 2b6bbb6bc163ff2d9ede2996e035470374a1cb64 Mon Sep 17 00:00:00 2001 From: anilgupta Date: Wed, 20 Mar 2024 16:59:34 +0530 Subject: [PATCH 30/30] Issue #LR-740 chore: Fixed the netty issue --- course-mw/sunbird-util/sunbird-cache-utils/pom.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml index 9d8ea1b9a..8392dacbd 100644 --- a/course-mw/sunbird-util/sunbird-cache-utils/pom.xml +++ b/course-mw/sunbird-util/sunbird-cache-utils/pom.xml @@ -21,10 +21,6 @@ net.bytebuddy byte-buddy - - io.netty - * -