diff options
author | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-12 18:56:20 -0500 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-13 15:05:23 -0500 |
commit | 293a1816e32a3f62fd5effa950386a02ca130c18 (patch) | |
tree | c5720481edbaa89cac6dcd6b9eee6fe54b359f02 | |
parent | de12007cc8907d98f183e65f50f2f9b4700894c3 (diff) | |
download | cbt-293a1816e32a3f62fd5effa950386a02ca130c18.tar.gz cbt-293a1816e32a3f62fd5effa950386a02ca130c18.tar.bz2 cbt-293a1816e32a3f62fd5effa950386a02ca130c18.zip |
reduce usage of .copy as preparation to replace it with newBuild
-rw-r--r-- | plugins/sonatype-release/src/SonatypeRelease.scala | 2 | ||||
-rw-r--r-- | stage2/BasicBuild.scala | 12 | ||||
-rw-r--r-- | stage2/Lib.scala | 5 | ||||
-rw-r--r-- | stage2/Publish.scala | 2 |
4 files changed, 10 insertions, 11 deletions
diff --git a/plugins/sonatype-release/src/SonatypeRelease.scala b/plugins/sonatype-release/src/SonatypeRelease.scala index cb32417..32303ad 100644 --- a/plugins/sonatype-release/src/SonatypeRelease.scala +++ b/plugins/sonatype-release/src/SonatypeRelease.scala @@ -46,6 +46,4 @@ trait SonatypeRelease extends Publish { private def sonatypeLib = new SonatypeLib(sonatypeServiceURI, sonatypeSnapshotsURI, sonatypeCredentials, profileName)(lib) - - override def copy(context: Context) = super.copy(context).asInstanceOf[SonatypeRelease] } diff --git a/stage2/BasicBuild.scala b/stage2/BasicBuild.scala index d8d1b8b..d4aa49d 100644 --- a/stage2/BasicBuild.scala +++ b/stage2/BasicBuild.scala @@ -31,8 +31,16 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge final def crossScalaVersionsArray: Array[String] = crossScalaVersions.to def projectName = "default" - // TODO: this should probably provide a nice error message if class has constructor signature - def copy(context: Context): BuildInterface = lib.copy(this.getClass, context).asInstanceOf[BuildInterface] + // TODO: get rid of this in favor of newBuild. + // currently blocked on DynamicOverride being not parts + // of core but being part of plugin essentials while + // callNullary in lib needing .copy . + def copy(context: Context): BuildInterface = + this.getClass + .getConstructor(classOf[Context]) + .newInstance(context) + .asInstanceOf[BuildInterface] + def zincVersion = constants.zincVersion def dependencies: Seq[Dependency] = diff --git a/stage2/Lib.scala b/stage2/Lib.scala index 3f6242f..9da468d 100644 --- a/stage2/Lib.scala +++ b/stage2/Lib.scala @@ -21,11 +21,6 @@ final class Lib(logger: Logger) extends Stage1Lib(logger) with Scaffold{ val buildClassName = "Build" val buildBuildClassName = "BuildBuild" - def copy(cls: Class[_], context: Context) = - cls - .getConstructor(classOf[Context]) - .newInstance(context) - /** Loads Build for given Context */ def loadDynamic(context: Context, default: Context => BuildInterface = new BasicBuild(_)): BuildInterface = { context.logger.composition( context.logger.showInvocation("Build.loadDynamic",context) ) diff --git a/stage2/Publish.scala b/stage2/Publish.scala index c4c6a48..e137dd1 100644 --- a/stage2/Publish.scala +++ b/stage2/Publish.scala @@ -41,6 +41,4 @@ trait Publish extends PackageJars{ lib.publishLocal( sourceFiles, `package` :+ pom, context.paths.mavenCache, releaseFolder ) def isSnapshot: Boolean = version.endsWith("-SNAPSHOT") - - override def copy(context: Context) = super.copy(context).asInstanceOf[Publish] } |