blob: 1c1b818fb36c02ed90504d8ef9cf30ca76716188 (
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
|
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.system;
/**
* Utility class used to force the loading of other classes.
**/
public class ForceLoad {
/**
* Force the loading of the given classes. If any of the named
* classes can not be loaded, an error will be thrown.
*
* @param packageName the name of the package for which
* we want to forceload classes.
* @param classNames array of names of classes (without package prefix)
* to force load.
**/
public static void forceLoad(String packageName, String[] classNames, ClassLoader loader)
throws ForceLoadError
{
String fullClassName = "";
try {
for (String className : classNames) {
fullClassName = packageName + "." + className;
Class.forName(fullClassName, true, loader);
}
} catch (Exception e) {
throw new ForceLoadError(fullClassName, e);
}
}
}
|