Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pre-Scala 2.13: Fix JavaConversions warnings with scala-collection-compat #526

Merged
merged 1 commit into from
Sep 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion app/model/jobs/JobRunner.scala
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,12 @@ import scala.util.control.NonFatal
import java.net.InetAddress
import java.util.concurrent.TimeUnit
import scala.util.Random
import scala.jdk.CollectionConverters._

@Singleton
class JobRunner @Inject() (lifecycle: ApplicationLifecycle)(implicit ec: ExecutionContext) extends Logging {
// Scheduler boiler plate
val serviceManager = new ServiceManager(List(new JobRunnerScheduler(this)))
val serviceManager = new ServiceManager(List(new JobRunnerScheduler(this)).asJava)
lifecycle.addStopHook{ () => Future.successful(stop) }
serviceManager.startAsync()

Expand Down
3 changes: 2 additions & 1 deletion app/modules/clustersync/ClusterSynchronisation.scala
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,12 @@ import play.api.inject.ApplicationLifecycle

import scala.concurrent.Future
import scala.util.control.NonFatal
import scala.jdk.CollectionConverters._

@Singleton
class ClusterSynchronisation @Inject() (lifecycle: ApplicationLifecycle) extends Logging {

val serviceManager = new ServiceManager(List(new NodeStatusHeartbeater(this)))
val serviceManager = new ServiceManager(List(new NodeStatusHeartbeater(this)).asJava)

val reservation: AtomicReference[Option[NodeStatus]] = new AtomicReference[Option[NodeStatus]](None)
val tagCacheSynchroniser: AtomicReference[Option[KinesisConsumer]] = new AtomicReference[Option[KinesisConsumer]](None)
Expand Down
4 changes: 2 additions & 2 deletions app/modules/clustersync/NodeStatusRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import helpers.JodaDateTimeFormat._
import play.api.Logging
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


case class HeartbeatException(message: String) extends RuntimeException(message)
Expand Down Expand Up @@ -114,7 +114,7 @@ object NodeStatusRepository extends Logging {
}
}

def getCurrentState = Dynamo.clusterStatusTable.scan().map(NodeStatus.fromItem).toList
def getCurrentState = Dynamo.clusterStatusTable.scan().asScala.map(NodeStatus.fromItem).toList

}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import repositories.SponsorshipRepository

import scala.concurrent.{ExecutionContext, Future}
import scala.util.control.NonFatal
import scala.jdk.CollectionConverters._

@Singleton
class SponsorshipLifecycleJobs @Inject() (
Expand All @@ -25,7 +26,7 @@ class SponsorshipLifecycleJobs @Inject() (
logger.info("Starting sponsorship lifecycle jobs")
lazy val scheduledJobs = List(new SponsorshipLauncher, new SponsorshipExpirer)

lazy val serviceManager = new ServiceManager(scheduledJobs)
lazy val serviceManager = new ServiceManager(scheduledJobs.asJava)

serviceManager.startAsync()

Expand Down
3 changes: 2 additions & 1 deletion app/repositories/AppAuditRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import model.AppAudit
import org.joda.time.{Duration, ReadableDuration, DateTime}
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._

object AppAuditRepository {
def upsertAppAudit(appAudit: AppAudit): Unit = {
Expand All @@ -17,6 +17,7 @@ object AppAuditRepository {
val from = new DateTime().minus(timePeriod).getMillis
Dynamo.appAuditTable.getIndex("operation-date-index")
.query("operation", operation, new RangeKeyCondition("date").ge(from))
.asScala
.map(AppAudit.fromItem).toList
}
}
4 changes: 2 additions & 2 deletions app/repositories/ExternalReferencesTypeRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import model.ExternalReferenceType
import play.api.libs.json.JsValue
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object ExternalReferencesTypeRepository {
Expand All @@ -23,6 +23,6 @@ object ExternalReferencesTypeRepository {
}
}

def loadAllReferenceTypes = Dynamo.referencesTypeTable.scan().map(ExternalReferenceType.fromItem)
def loadAllReferenceTypes = Dynamo.referencesTypeTable.scan().asScala.map(ExternalReferenceType.fromItem)

}
6 changes: 3 additions & 3 deletions app/repositories/JobRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import play.api.libs.json.JsValue
import scala.util.control.NonFatal
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object JobRepository {
Expand Down Expand Up @@ -99,10 +99,10 @@ object JobRepository {
}

def loadAllJobs = {
Dynamo.jobTable.scan().map(Job.fromItem(_)).toList
Dynamo.jobTable.scan().asScala.map(Job.fromItem(_)).toList
}

def findJobsForTag(tagId: Long): List[Job] = {
Dynamo.jobTable.scan(new ScanFilter("tagIds").contains(tagId)).map(Job.fromItem).toList
Dynamo.jobTable.scan(new ScanFilter("tagIds").contains(tagId)).asScala.map(Job.fromItem).toList
}
}
5 changes: 3 additions & 2 deletions app/repositories/PillarAuditRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import helpers.JodaDateTimeFormat._
import org.joda.time.{DateTime, Duration, ReadableDuration}
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object PillarAuditRepository {
Expand All @@ -17,13 +17,14 @@ object PillarAuditRepository {
}

def getAuditTrailForPillar(pillarId: Long): List[PillarAudit] = {
Dynamo.pillarAuditTable.query("pillarId", pillarId).map(PillarAudit.fromItem).toList
Dynamo.pillarAuditTable.query("pillarId", pillarId).asScala.map(PillarAudit.fromItem).toList
}

def getRecentAuditOfPillarOperation(operation: String, timePeriod: ReadableDuration = Duration.standardDays(7)): List[PillarAudit] = {
val from = new DateTime().minus(timePeriod).getMillis
Dynamo.pillarAuditTable.getIndex("operation-date-index")
.query("operation", operation, new RangeKeyCondition("date").ge(from))
.asScala
.map(PillarAudit.fromItem).toList
}
}
6 changes: 3 additions & 3 deletions app/repositories/PillarRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import model.Pillar
import play.api.Logging
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._
import scala.util.{Failure, Success, Try}


Expand Down Expand Up @@ -33,7 +33,7 @@ object PillarRepository extends Logging {
}
}

def loadAllPillars: Iterable[Pillar] = Dynamo.pillarTable.scan().map(Pillar.fromItem)
def loadAllPillars: Iterable[Pillar] = Dynamo.pillarTable.scan().asScala.map(Pillar.fromItem)

def count = Dynamo.pillarTable.scan().count(_ => true)
def count = Dynamo.pillarTable.scan().asScala.count(_ => true)
}
5 changes: 3 additions & 2 deletions app/repositories/SectionAuditRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import org.joda.time.{DateTime, Duration, ReadableDuration}
import play.api.Logging
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object SectionAuditRepository {
Expand All @@ -18,13 +18,14 @@ object SectionAuditRepository {
}

def getAuditTrailForSection(sectionId: Long): List[SectionAudit] = {
Dynamo.sectionAuditTable.query("sectionId", sectionId).map(SectionAudit.fromItem).toList
Dynamo.sectionAuditTable.query("sectionId", sectionId).asScala.map(SectionAudit.fromItem).toList
}

def getRecentAuditOfSectionOperation(operation: String, timePeriod: ReadableDuration = Duration.standardDays(7)): List[SectionAudit] = {
val from = new DateTime().minus(timePeriod).getMillis
Dynamo.sectionAuditTable.getIndex("operation-date-index")
.query("operation", operation, new RangeKeyCondition("date").ge(from))
.asScala
.map(SectionAudit.fromItem).toList
}
}
6 changes: 3 additions & 3 deletions app/repositories/SectionRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import com.amazonaws.services.dynamodbv2.document.Item
import model.Section
import play.api.libs.json.JsValue
import services.Dynamo
import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._
import java.util.concurrent.atomic.AtomicReference


Expand All @@ -22,9 +22,9 @@ object SectionRepository {
}
}

def loadAllSections = Dynamo.sectionTable.scan().map(Section.fromItem)
def loadAllSections = Dynamo.sectionTable.scan().asScala.map(Section.fromItem)

def count = Dynamo.sectionTable.scan().count(_ => true)
def count = Dynamo.sectionTable.scan().asScala.count(_ => true)

}

Expand Down
18 changes: 9 additions & 9 deletions app/repositories/SponsorshipRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import model.Sponsorship
import org.joda.time.DateTime
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object SponsorshipRepository {
Expand All @@ -26,14 +26,14 @@ object SponsorshipRepository {
}
}

def loadAllSponsorships = Dynamo.sponsorshipTable.scan().map(Sponsorship.fromItem)
def loadAllSponsorships = Dynamo.sponsorshipTable.scan().asScala.map(Sponsorship.fromItem)

def searchSponsorships(criteria: SponsorshipSearchCriteria) = {
val filters = criteria.asFilters
if (filters.isEmpty) {
Dynamo.sponsorshipTable.scan().map(Sponsorship.fromItem).toList
Dynamo.sponsorshipTable.scan().asScala.map(Sponsorship.fromItem).toList
} else {
Dynamo.sponsorshipTable.scan(filters: _*).map(Sponsorship.fromItem).toList
Dynamo.sponsorshipTable.scan(filters: _*).asScala.map(Sponsorship.fromItem).toList
}
}

Expand All @@ -43,25 +43,25 @@ object SponsorshipRepository {
new ScanFilter("validFrom").lt(now),
new ScanFilter("validTo").gt(now),
new ScanFilter("status").ne("active")
).map(Sponsorship.fromItem).toList
).asScala.map(Sponsorship.fromItem).toList

val withoutEnd = Dynamo.sponsorshipTable.scan(
new ScanFilter("validFrom").lt(now),
new ScanFilter("validTo").notExist(),
new ScanFilter("status").ne("active")
).map(Sponsorship.fromItem).toList
).asScala.map(Sponsorship.fromItem).toList

val withoutStartAndNotEnded = Dynamo.sponsorshipTable.scan(
new ScanFilter("validFrom").notExist(),
new ScanFilter("validTo").gt(now),
new ScanFilter("status").ne("active")
).map(Sponsorship.fromItem).toList
).asScala.map(Sponsorship.fromItem).toList

val alwaysActive = Dynamo.sponsorshipTable.scan(
new ScanFilter("validFrom").notExist(),
new ScanFilter("validTo").notExist(),
new ScanFilter("status").ne("active")
).map(Sponsorship.fromItem).toList
).asScala.map(Sponsorship.fromItem).toList

withEnd ::: withoutEnd ::: withoutStartAndNotEnded ::: alwaysActive
}
Expand All @@ -72,7 +72,7 @@ object SponsorshipRepository {
Dynamo.sponsorshipTable.scan(
new ScanFilter("validTo").lt(now),
new ScanFilter("status").eq("active")
).map(Sponsorship.fromItem).toList
).asScala.map(Sponsorship.fromItem).toList
}

}
Expand Down
8 changes: 5 additions & 3 deletions app/repositories/TagAuditRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import org.joda.time.{DateTime, Duration, ReadableDuration}
import play.api.Logging
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._

object TagAuditRepository {
def upsertTagAudit(tagAudit: TagAudit): Unit = {
Expand All @@ -16,23 +16,25 @@ object TagAuditRepository {
}

def getAuditTrailForTag(tagId: Long): List[TagAudit] = {
Dynamo.tagAuditTable.query("tagId", tagId).map(TagAudit.fromItem).toList
Dynamo.tagAuditTable.query("tagId", tagId).asScala.map(TagAudit.fromItem).toList
}

def getRecentAuditOfTagOperation(operation: String, timePeriod: ReadableDuration = Duration.standardDays(31)): List[TagAudit] = {
val from = new DateTime().minus(timePeriod).getMillis
Dynamo.tagAuditTable.getIndex("operation-date-index")
.query("operation", operation, new RangeKeyCondition("date").ge(from))
.asScala
.map(TagAudit.fromItem).toList
}

def getAuditsOfTagOperationsSince(operation: String, since: Long): List[TagAudit] = {
Dynamo.tagAuditTable.getIndex("operation-date-index")
.query("operation", operation, new RangeKeyCondition("date").ge(since))
.asScala
.map(TagAudit.fromItem).toList
}

def loadAllAudits: List[TagAudit] = Dynamo.tagAuditTable.scan().map(TagAudit.fromItem).toList
def loadAllAudits: List[TagAudit] = Dynamo.tagAuditTable.scan().asScala.map(TagAudit.fromItem).toList

val lastModifiedTags: Long => List[TagAudit] = since => loadAllAudits
.filter(x => x.operation == "updated" && x.date.getMillis > since)
Expand Down
6 changes: 3 additions & 3 deletions app/repositories/TagRepository.scala
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import play.api.Logging
import play.api.libs.json.JsValue
import services.Dynamo

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object TagRepository extends Logging {
Expand All @@ -31,12 +31,12 @@ object TagRepository extends Logging {
}

def scanSearch(criteria: TagSearchCriteria) = {
Dynamo.tagTable.scan(criteria.asFilters: _*).map { item =>
Dynamo.tagTable.scan(criteria.asFilters: _*).asScala.map { item =>
item.getString("internalName")
}
}

def loadAllTags = Dynamo.tagTable.scan().map(Tag.fromItem)
def loadAllTags = Dynamo.tagTable.scan().asScala.map(Tag.fromItem)

def allTagIter = Dynamo.tagTable.scan()
}
Expand Down
6 changes: 3 additions & 3 deletions app/services/Config.scala
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import java.util.Properties
import com.amazonaws.services.s3.model.GetObjectRequest
import services.Config._

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._


object Config extends AwsInstanceTags {
Expand Down Expand Up @@ -46,7 +46,7 @@ sealed trait Config {
lazy val stack = readTag("Stack") getOrElse "flexible"
lazy val stage = readTag("Stage") getOrElse "DEV"
lazy val app = readTag("App") getOrElse "tag-manager"
lazy val region = remoteConfiguration.getOrDefault("aws.region", "eu-west-1")
lazy val region = remoteConfiguration.getOrElse("aws.region", "eu-west-1")
}

private def loadConfiguration = {
Expand All @@ -68,7 +68,7 @@ sealed trait Config {
loadPropertiesFromS3(s"${aws.app}/global.properties", props)
loadPropertiesFromS3(s"${aws.app}/${aws.stage}.properties", props)

props.toMap
props.asScala.toMap
}

lazy val permissionsStage: String = readTag("Stage") match {
Expand Down
4 changes: 2 additions & 2 deletions app/services/KinesisConsumer.scala
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import org.apache.thrift.protocol.{TCompactProtocol, TProtocol}
import org.apache.thrift.transport.TIOStreamTransport
import play.api.Logging

import scala.collection.JavaConversions._
import scala.jdk.CollectionConverters._
import scala.concurrent.ExecutionContext.Implicits.global
import scala.concurrent.Future
import scala.language.implicitConversions
Expand Down Expand Up @@ -64,7 +64,7 @@ class KinesisProcessorConsumer(appName: String, processor: KinesisStreamRecordPr

override def processRecords(processRecordsInput: ProcessRecordsInput): Unit = {

processRecordsInput.getRecords foreach { record =>
processRecordsInput.getRecords.asScala foreach { record =>
processor.process(record)
}

Expand Down
1 change: 1 addition & 0 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ lazy val dependencies = Seq(
"com.typesafe.play" %% "play-json-joda" % "2.8.1",
"org.apache.commons" % "commons-lang3" % "3.11",
"com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.13.2",
"org.scala-lang.modules" %% "scala-collection-compat" % "2.12.0"
)

dependencyOverrides += "org.bouncycastle" % "bcprov-jdk15on" % "1.67"
Expand Down
Loading