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


                 
                                             
                                   
 




                                                                           
                                          

                          
                
   




                                                                                                                   

       
 
package cbt

import java.net._
import java.util.concurrent.ConcurrentHashMap
import collection.JavaConversions._

case class ClassLoaderCache(
  logger: Logger,
  private[cbt] permanentKeys: ConcurrentHashMap[String,AnyRef],
  private[cbt] permanentClassLoaders: ConcurrentHashMap[AnyRef,ClassLoader]
){
  val persistent = new KeyLockedLazyCache(
    permanentKeys,
    permanentClassLoaders,
    Some(logger)
  )
  override def toString = (
    s"ClassLoaderCache("
    ++
    persistent.keys.keySet.toVector.map(_.toString.split(":").mkString("\n")).sorted.mkString("\n\n","\n\n","\n\n")
    ++
    ")"
  )
}