(refs #1346)Update to use blocking-slick for Scala 2.12 support

This commit is contained in:
Naoki Takezoe
2016-12-14 12:36:27 +09:00
parent 5698692b26
commit 1d03e83d95
16 changed files with 51 additions and 52 deletions

View File

@@ -37,6 +37,7 @@ libraryDependencies ++= Seq(
"org.apache.tika" % "tika-core" % "1.13", "org.apache.tika" % "tika-core" % "1.13",
//"com.typesafe.slick" %% "slick" % "3.2.0-M1", //"com.typesafe.slick" %% "slick" % "3.2.0-M1",
"com.github.takezoe" %% "blocking-slick" % "0.0.3-SNAPSHOT", "com.github.takezoe" %% "blocking-slick" % "0.0.3-SNAPSHOT",
"joda-time" % "joda-time" % "2.9.6",
"com.novell.ldap" % "jldap" % "2009-10-07", "com.novell.ldap" % "jldap" % "2009-10-07",
"com.h2database" % "h2" % "1.4.192", "com.h2database" % "h2" % "1.4.192",
"mysql" % "mysql-connector-java" % "5.1.39", "mysql" % "mysql-connector-java" % "5.1.39",
@@ -46,7 +47,7 @@ libraryDependencies ++= Seq(
"com.typesafe" % "config" % "1.3.0", "com.typesafe" % "config" % "1.3.0",
"com.typesafe.akka" %% "akka-actor" % "2.4.12", "com.typesafe.akka" %% "akka-actor" % "2.4.12",
"fr.brouillard.oss.security.xhub" % "xhub4j-core" % "1.0.0", "fr.brouillard.oss.security.xhub" % "xhub4j-core" % "1.0.0",
"com.enragedginger" % "akka-quartz-scheduler_2.11" % "1.5.0-akka-2.4.x" exclude("c3p0","c3p0"), // TODO Scala 2.12 "com.enragedginger" %% "akka-quartz-scheduler" % "1.6.0-akka-2.4.x" exclude("c3p0","c3p0"),
"org.eclipse.jetty" % "jetty-webapp" % JettyVersion % "provided", "org.eclipse.jetty" % "jetty-webapp" % JettyVersion % "provided",
"javax.servlet" % "javax.servlet-api" % "3.1.0" % "provided", "javax.servlet" % "javax.servlet-api" % "3.1.0" % "provided",
"junit" % "junit" % "4.12" % "test", "junit" % "junit" % "4.12" % "test",
@@ -56,7 +57,7 @@ libraryDependencies ++= Seq(
) )
// Compiler settings // Compiler settings
scalacOptions := Seq("-deprecation", "-language:postfixOps", "-Ybackend:GenBCode", "-Ydelambdafy:method", "-target:jvm-1.8") scalacOptions := Seq("-deprecation", "-language:postfixOps", "-Ydelambdafy:method", "-target:jvm-1.8")
javacOptions in compile ++= Seq("-target", "8", "-source", "8") javacOptions in compile ++= Seq("-target", "8", "-source", "8")
javaOptions in Jetty += "-Dlogback.configurationFile=/logback-dev.xml" javaOptions in Jetty += "-Dlogback.configurationFile=/logback-dev.xml"

View File

@@ -1,6 +1,6 @@
scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature") scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature")
addSbtPlugin("com.typesafe.sbt" % "sbt-twirl" % "1.1.1") addSbtPlugin("com.typesafe.sbt" % "sbt-twirl" % "1.3.0")
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3") addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3")
addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "2.1.1") addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "2.1.1")
addSbtPlugin("fi.gekkio.sbtplugins" % "sbt-jrebel-plugin" % "0.10.0") addSbtPlugin("fi.gekkio.sbtplugins" % "sbt-jrebel-plugin" % "0.10.0")

View File

@@ -1,9 +1,8 @@
package gitbucket.core.service package gitbucket.core.service
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.{Account, AccessToken} import gitbucket.core.model.{Account, AccessToken}
import gitbucket.core.util.StringUtil import gitbucket.core.util.StringUtil
@@ -21,7 +20,7 @@ trait AccessTokenService {
def tokenToHash(token: String): String = StringUtil.sha1(token) def tokenToHash(token: String): String = StringUtil.sha1(token)
/** /**
* @retuen (TokenId, Token) * @return (TokenId, Token)
*/ */
def generateAccessToken(userName: String, note: String)(implicit s: Session): (Int, String) = { def generateAccessToken(userName: String, note: String)(implicit s: Session): (Int, String) = {
var token: String = null var token: String = null
@@ -43,8 +42,8 @@ trait AccessTokenService {
def getAccountByAccessToken(token: String)(implicit s: Session): Option[Account] = def getAccountByAccessToken(token: String)(implicit s: Session): Option[Account] =
Accounts Accounts
.join(AccessTokens) .join(AccessTokens)
.filter{ case (ac, t) => (ac.userName === t.userName) && (t.tokenHash === tokenToHash(token).bind) && (ac.removed === false.bind) } .filter { case (ac, t) => (ac.userName === t.userName) && (t.tokenHash === tokenToHash(token).bind) && (ac.removed === false.bind) }
.map{ case (ac, t) => ac } .map { case (ac, t) => ac }
.firstOption .firstOption
def getAccessTokens(userName: String)(implicit s: Session): List[AccessToken] = def getAccessTokens(userName: String)(implicit s: Session): List[AccessToken] =

View File

@@ -3,12 +3,12 @@ package gitbucket.core.service
import org.slf4j.LoggerFactory import org.slf4j.LoggerFactory
import gitbucket.core.model.{GroupMember, Account} import gitbucket.core.model.{GroupMember, Account}
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import gitbucket.core.model.Profile.profile._
import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType
import gitbucket.core.util.{StringUtil, LDAPUtil} import gitbucket.core.util.{StringUtil, LDAPUtil}
import StringUtil._ import StringUtil._
import gitbucket.core.service.SystemSettingsService.SystemSettings import gitbucket.core.service.SystemSettingsService.SystemSettings
import profile._
import profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType
trait AccountService { trait AccountService {

View File

@@ -1,10 +1,10 @@
package gitbucket.core.service package gitbucket.core.service
import gitbucket.core.model.Activity import gitbucket.core.model.Activity
import gitbucket.core.model.Profile._
import gitbucket.core.util.JGitUtil import gitbucket.core.util.JGitUtil
import profile._ import gitbucket.core.model.Profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile._
import gitbucket.core.model.Profile.profile.blockingApi._
trait ActivityService { trait ActivityService {

View File

@@ -1,8 +1,8 @@
package gitbucket.core.service package gitbucket.core.service
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType import gitbucket.core.model.Profile.dateColumnType
import gitbucket.core.model.{CommitState, CommitStatus, Account} import gitbucket.core.model.{CommitState, CommitStatus, Account}
@@ -50,4 +50,4 @@ trait CommitStatusService {
protected def byCommitStatues(userName: String, repositoryName: String, sha: String)(implicit s: Session) = protected def byCommitStatues(userName: String, repositoryName: String, sha: String)(implicit s: Session) =
CommitStatuses.filter(t => t.byCommit(userName, repositoryName, sha)).sortBy(_.updatedDate desc) CommitStatuses.filter(t => t.byCommit(userName, repositoryName, sha)).sortBy(_.updatedDate desc)
} }

View File

@@ -2,8 +2,8 @@ package gitbucket.core.service
import gitbucket.core.model.CommitComment import gitbucket.core.model.CommitComment
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType import gitbucket.core.model.Profile.dateColumnType
trait CommitsService { trait CommitsService {

View File

@@ -5,8 +5,8 @@ import gitbucket.core.util.StringUtil._
import gitbucket.core.util.Implicits._ import gitbucket.core.util.Implicits._
import gitbucket.core.model._ import gitbucket.core.model._
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType import gitbucket.core.model.Profile.dateColumnType

View File

@@ -2,8 +2,8 @@ package gitbucket.core.service
import gitbucket.core.model.Label import gitbucket.core.model.Label
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
trait LabelsService { trait LabelsService {

View File

@@ -2,8 +2,8 @@ package gitbucket.core.service
import gitbucket.core.model.Milestone import gitbucket.core.model.Milestone
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType import gitbucket.core.model.Profile.dateColumnType
trait MilestonesService { trait MilestonesService {

View File

@@ -1,10 +1,10 @@
package gitbucket.core.service package gitbucket.core.service
import gitbucket.core.model.{ProtectedBranch, ProtectedBranchContext, CommitState} import gitbucket.core.model.{ProtectedBranch, ProtectedBranchContext, CommitState}
import gitbucket.core.model.Profile._
import gitbucket.core.plugin.ReceiveHook import gitbucket.core.plugin.ReceiveHook
import profile._ import gitbucket.core.model.Profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile._
import gitbucket.core.model.Profile.profile.blockingApi._
import org.eclipse.jgit.transport.{ReceivePack, ReceiveCommand} import org.eclipse.jgit.transport.{ReceivePack, ReceiveCommand}

View File

@@ -1,11 +1,10 @@
package gitbucket.core.service package gitbucket.core.service
import gitbucket.core.model.{Account, Issue, PullRequest, WebHook, CommitStatus, CommitState} import gitbucket.core.model.{Issue, PullRequest, CommitStatus, CommitState}
import gitbucket.core.model.Profile._
import gitbucket.core.util.JGitUtil import gitbucket.core.util.JGitUtil
import profile._ import gitbucket.core.model.Profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile._
import gitbucket.core.model.Profile.profile.blockingApi._
trait PullRequestService { self: IssuesService => trait PullRequestService { self: IssuesService =>
import PullRequestService._ import PullRequestService._

View File

@@ -4,8 +4,8 @@ import gitbucket.core.controller.Context
import gitbucket.core.util.JGitUtil import gitbucket.core.util.JGitUtil
import gitbucket.core.model.{Collaborator, Repository, RepositoryOptions, Account, Permission} import gitbucket.core.model.{Collaborator, Repository, RepositoryOptions, Account, Permission}
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
import gitbucket.core.model.Profile.dateColumnType import gitbucket.core.model.Profile.dateColumnType
trait RepositoryService { self: AccountService => trait RepositoryService { self: AccountService =>

View File

@@ -2,8 +2,8 @@ package gitbucket.core.service
import gitbucket.core.model.SshKey import gitbucket.core.model.SshKey
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import profile._ import gitbucket.core.model.Profile.profile._
import profile.blockingApi._ import gitbucket.core.model.Profile.profile.blockingApi._
trait SshKeyService { trait SshKeyService {

View File

@@ -5,9 +5,9 @@ import fr.brouillard.oss.security.xhub.XHub.{XHubDigest, XHubConverter}
import gitbucket.core.api._ import gitbucket.core.api._
import gitbucket.core.model.{WebHook, Account, Issue, PullRequest, IssueComment, WebHookEvent, CommitComment} import gitbucket.core.model.{WebHook, Account, Issue, PullRequest, IssueComment, WebHookEvent, CommitComment}
import gitbucket.core.model.Profile._ import gitbucket.core.model.Profile._
import gitbucket.core.model.Profile.profile._
import gitbucket.core.model.Profile.profile.blockingApi._
import org.apache.http.client.utils.URLEncodedUtils import org.apache.http.client.utils.URLEncodedUtils
import profile._
import profile.blockingApi._
import gitbucket.core.util.JGitUtil.CommitInfo import gitbucket.core.util.JGitUtil.CommitInfo
import gitbucket.core.util.RepositoryName import gitbucket.core.util.RepositoryName
import gitbucket.core.service.RepositoryService.RepositoryInfo import gitbucket.core.service.RepositoryService.RepositoryInfo

View File

@@ -101,18 +101,18 @@ object StringUtil {
.findAllIn(message).matchData.map(_.group(1)).toSeq.distinct .findAllIn(message).matchData.map(_.group(1)).toSeq.distinct
/** // /**
* Encode search string for LIKE condition. // * Encode search string for LIKE condition.
* This method has been copied from Slick's SqlUtilsComponent. // * This method has been copied from Slick's SqlUtilsComponent.
*/ // */
def likeEncode(s: String) = { // def likeEncode(s: String) = {
val b = new StringBuilder // val b = new StringBuilder
for(c <- s) c match { // for(c <- s) c match {
case '%' | '_' | '^' => b append '^' append c // case '%' | '_' | '^' => b append '^' append c
case _ => b append c // case _ => b append c
} // }
b.toString // b.toString
} // }
} }