more fixes

This commit is contained in:
Mark Harrah 2010-06-10 22:47:04 -04:00
parent 1ee470282d
commit d73762e203
5 changed files with 11 additions and 10 deletions

View File

@ -8,7 +8,7 @@ import java.net.{URI, URL, URLClassLoader}
/** This is a starting point for defining a custom ClassLoader. Override 'doLoadClass' to define
* loading a class that has not yet been loaded.*/
abstract class LoaderBase(urls: Seq[URL], parent: ClassLoader) extends URLClassLoader(urls.toArray, parent) with NotNull
abstract class LoaderBase(urls: Seq[URL], parent: ClassLoader) extends URLClassLoader(urls.toArray, parent)
{
require(parent != null) // included because a null parent is legitimate in Java
@throws(classOf[ClassNotFoundException])

View File

@ -1,10 +1,11 @@
/* sbt -- Simple Build Tool
* Copyright 2009 Mark Harrah
*/
package xsbt.api
package xsbt
package api
import java.io.File
import xsbt.FileUtilities
import sbt.IO.read
import Function.tupled
import java.util.regex.Pattern
@ -30,7 +31,7 @@ class DatatypeParser extends NotNull
}
open ++ closed
}
def parseLines(file: File): Seq[Line] = getLines(FileUtilities.read(file)).toList.zipWithIndex.map(tupled(parseLine))
def parseLines(file: File): Seq[Line] = getLines(read(file)).toList.zipWithIndex.map(tupled(parseLine))
def getLines(content: String): Seq[String] = content split "(?m)$(?s:.)(?!$)*(^|\\Z)"
def parseLine(line: String, lineNumber: Int): Line =
matchPattern(WhitespacePattern -> processWhitespaceLine _, EnumPattern -> processEnumLine _,

View File

@ -5,7 +5,7 @@ package xsbt
package api
import java.io.File
import xsbt.FileUtilities
import sbt.IO.write
import Generator._
@ -25,10 +25,10 @@ abstract class GeneratorBase(val basePkgName: String, val baseDirectory: File) e
def writeSource(name: String, pkgName: String, content: String)
{
import Paths._
val file =baseDirectory / packagePath(pkgName) / (name+ ".java")
import sbt.Paths._
val file = baseDirectory / packagePath(pkgName) / (name+ ".java")
file.getParentFile.mkdirs()
FileUtilities.write(file, "package " + pkgName + ";\n\n" + content)
write(file, "package " + pkgName + ";\n\n" + content)
}
private def packagePath(pkgName: String) = pkgName.replace('.', File.separatorChar)
}

View File

@ -54,7 +54,7 @@ class BufferedLogger(delegate: AbstractLogger) extends AbstractLogger
delegate.setLevel(newLevel)
}
def getLevel = delegate.getLevel
def traceEnabled = delegate.traceEnabled
def getTrace = delegate.getTrace
def setTrace(level: Int)
{
buffer += new SetTrace(level)

View File

@ -22,7 +22,7 @@ class LoggerWriter(delegate: AbstractLogger, level: Level.Value, nl: String) ext
}
override def write(content: Array[Char], offset: Int, length: Int): Unit =
synchronized {
buffer.append(content, offset, length)
buffer.appendAll(content, offset, length)
process()
}