blob: 6a0f28afe51d62ddc376e7477f5340891cd5ddcb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
/*
package cbt
import java.net._
import scala.util.Try
import scala.collection.immutable.Seq
class MultiClassLoader(parents: Seq[ClassLoader]) extends ClassLoader {
override def loadClass(name: String) = {
//System.err.println("LOADING CLASS "++name);
val c = parents.toStream.map{
parent =>
Try{
parent.loadClass(name)
}.map(Option[Class[_]](_)).recover{
case _:ClassNotFoundException => None
}.get
}.find(_.isDefined).flatten
c.getOrElse( ClassLoader.getSystemClassLoader.loadClass(name) )
}
override def toString = (
scala.Console.BLUE
++ super.toString
++ scala.Console.RESET
++ "("
++ (
if(parents.nonEmpty)(
"\n" ++ parents.map(_.toString).sorted.mkString(",\n").split("\n").map(" "++_).mkString("\n") ++ "\n"
) else ""
) ++")"
)
}
*/
|