@@ -103,7 +103,7 @@ object Plugin {
103
103
* mitigate the cost of dynamic classloading as it has been
104
104
* measured in https://github.com/scala/scala-dev/issues/458.
105
105
*/
106
- private def loaderFor (locations : Seq [Path ], disableCache : Boolean ): ScalaClassLoader = {
106
+ def loaderFor (locations : Seq [Path ], disableCache : Boolean ): ScalaClassLoader = {
107
107
def newLoader = () => {
108
108
val compilerLoader = classOf [Plugin ].getClassLoader
109
109
val urls = locations map (_.toURL)
@@ -155,7 +155,7 @@ object Plugin {
155
155
paths : List [List [Path ]],
156
156
dirs : List [Path ],
157
157
ignoring : List [String ],
158
- disableClassLoaderCache : Boolean ): List [Try [AnyClass ]] =
158
+ findPluginClassloader : ( Seq [ Path ] => ClassLoader ) ): List [Try [AnyClass ]] =
159
159
{
160
160
// List[(jar, Try(descriptor))] in dir
161
161
def scan (d : Directory ) =
@@ -166,7 +166,7 @@ object Plugin {
166
166
// scan plugin dirs for jars containing plugins, ignoring dirs with none and other jars
167
167
val fromDirs : PDResults = dirs filter (_.isDirectory) flatMap { d =>
168
168
scan(d.toDirectory) collect {
169
- case (j, Success (pd)) => Success ((pd, loaderFor (Seq (j), disableClassLoaderCache )))
169
+ case (j, Success (pd)) => Success ((pd, findPluginClassloader (Seq (j))))
170
170
}
171
171
}
172
172
@@ -183,7 +183,7 @@ object Plugin {
183
183
loop(ps)
184
184
}
185
185
val fromPaths : PDResults = paths map (p => (p, findDescriptor(p))) map {
186
- case (p, Success (pd)) => Success ((pd, loaderFor(p, disableClassLoaderCache )))
186
+ case (p, Success (pd)) => Success ((pd, findPluginClassloader(p )))
187
187
case (_, Failure (e)) => Failure (e)
188
188
}
189
189
0 commit comments