pubblico astratto classe PrivilegedBlockLimit {
pubblico PrivilegedBlockLimit(URL[] urls) {
questo .urls = urls;
}
pubblico annullare readResource() {
AccessController.doPrivileged(new PrivilegedAction() {
pubblico Oggetto eseguire() {
System.loadLibrary("resourcelibrary");
per (indice int = 0; indice < urls.length; indice++) {
stato int = getStatusAfterLoad(urls[indice]);
if (stato == STATUS_ERR) {
lanciare nuova UnsupportedOperationException();
} else {
processStatus(status,urls[indice]);
}
}
restituire null;
}
});
}
protetto astratto int getStatusAfterLoad(URL url);
protetto astratto annullare processStatus(int status, URL url) tiri UnsupportedOperationException;
privato URL[] urls = nullo;
protetto statico finale int STATUS_ERR = -1;
}
}
|
|