¿¹Á¦
public abstract class SecurityManagerAccess {

public SecurityManagerAccess() {
currentSecurityManager = System.getSecurityManager();
}

protected SecurityManager getSecurityManager() {
return currentSecurityManager;
}

protected boolean canCreateLoader() {
if (getSecurityManager() != null) {
try {
currentSecurityManager.checkCreateClassLoader();
} catch (SecurityException e) {
return false;
}
}
return true;
}


public List load(List list) {
if (canCreateLoader()) {
list.add(createLoader());
return list;
} else {
return list;
}
}

protected abstract ClassLoader createLoader();

private SecurityManager currentSecurityManager = null;
}
¼Ö·ç¼Ç
º¸¾È °ü¸®ÀÚ¸¦ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À.
public abstract class SecurityManagerAccess {

public SecurityManagerAccess() {
}


public List load(List list) {
list.add(createLoader());
return list;
}

protected abstract ClassLoader createLoader();
}