aboutsummaryrefslogblamecommitdiff
path: root/stage1/URLClassLoader.scala
blob: fbe7ac89913f176461508a0a7ab8a56c43b2b12a (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12











                                                                    





                                                      

                                                             
                                         

               
                                               


              
package cbt

import java.net._

case class URLClassLoader(classPath: ClassPath, parent: ClassLoader)
  extends java.net.URLClassLoader(
    classPath.strings.map(
      path => new URL("file:"++path)
    ).toArray,
    parent
  ){
  override def toString = (
    scala.Console.BLUE
      ++ super.toString
      ++ scala.Console.RESET
      ++ "(\n"
      ++ (
        getURLs.map(_.toString).sorted.mkString(",\n")
      ++ (
        if(getParent() != ClassLoader.getSystemClassLoader())
            ",\n" ++ getParent().toString
        else ""
      )
      ).split("\n").map("  "++_).mkString("\n")
      ++ "\n)"
  )
}