473 |
|
/** |
474 |
|
* A callable that runs given task and returns given result |
475 |
|
*/ |
476 |
< |
static final class RunnableAdapter<T> implements Callable<T> { |
476 |
> |
private static final class RunnableAdapter<T> implements Callable<T> { |
477 |
|
final Runnable task; |
478 |
|
final T result; |
479 |
|
RunnableAdapter(Runnable task, T result) { |
489 |
|
/** |
490 |
|
* A callable that runs under established access control settings |
491 |
|
*/ |
492 |
< |
static final class PrivilegedCallable<T> implements Callable<T> { |
493 |
< |
private final Callable<T> task; |
494 |
< |
private final AccessControlContext acc; |
492 |
> |
private static final class PrivilegedCallable<T> implements Callable<T> { |
493 |
> |
final Callable<T> task; |
494 |
> |
final AccessControlContext acc; |
495 |
|
|
496 |
|
PrivilegedCallable(Callable<T> task) { |
497 |
|
this.task = task; |
516 |
|
* A callable that runs under established access control settings and |
517 |
|
* current ClassLoader |
518 |
|
*/ |
519 |
< |
static final class PrivilegedCallableUsingCurrentClassLoader<T> implements Callable<T> { |
520 |
< |
private final Callable<T> task; |
521 |
< |
private final AccessControlContext acc; |
522 |
< |
private final ClassLoader ccl; |
519 |
> |
private static final class PrivilegedCallableUsingCurrentClassLoader<T> |
520 |
> |
implements Callable<T> { |
521 |
> |
final Callable<T> task; |
522 |
> |
final AccessControlContext acc; |
523 |
> |
final ClassLoader ccl; |
524 |
|
|
525 |
|
PrivilegedCallableUsingCurrentClassLoader(Callable<T> task) { |
526 |
|
SecurityManager sm = System.getSecurityManager(); |
567 |
|
/** |
568 |
|
* The default thread factory |
569 |
|
*/ |
570 |
< |
static class DefaultThreadFactory implements ThreadFactory { |
570 |
> |
private static class DefaultThreadFactory implements ThreadFactory { |
571 |
|
private static final AtomicInteger poolNumber = new AtomicInteger(1); |
572 |
|
private final ThreadGroup group; |
573 |
|
private final AtomicInteger threadNumber = new AtomicInteger(1); |
597 |
|
/** |
598 |
|
* Thread factory capturing access control context and class loader |
599 |
|
*/ |
600 |
< |
static class PrivilegedThreadFactory extends DefaultThreadFactory { |
601 |
< |
private final AccessControlContext acc; |
602 |
< |
private final ClassLoader ccl; |
600 |
> |
private static class PrivilegedThreadFactory extends DefaultThreadFactory { |
601 |
> |
final AccessControlContext acc; |
602 |
> |
final ClassLoader ccl; |
603 |
|
|
604 |
|
PrivilegedThreadFactory() { |
605 |
|
super(); |
636 |
|
* A wrapper class that exposes only the ExecutorService methods |
637 |
|
* of an ExecutorService implementation. |
638 |
|
*/ |
639 |
< |
static class DelegatedExecutorService extends AbstractExecutorService { |
639 |
> |
private static class DelegatedExecutorService |
640 |
> |
extends AbstractExecutorService { |
641 |
|
private final ExecutorService e; |
642 |
|
DelegatedExecutorService(ExecutorService executor) { e = executor; } |
643 |
|
public void execute(Runnable command) { e.execute(command); } |
678 |
|
} |
679 |
|
} |
680 |
|
|
681 |
< |
static class FinalizableDelegatedExecutorService |
682 |
< |
extends DelegatedExecutorService { |
681 |
> |
private static class FinalizableDelegatedExecutorService |
682 |
> |
extends DelegatedExecutorService { |
683 |
|
FinalizableDelegatedExecutorService(ExecutorService executor) { |
684 |
|
super(executor); |
685 |
|
} |
692 |
|
* A wrapper class that exposes only the ScheduledExecutorService |
693 |
|
* methods of a ScheduledExecutorService implementation. |
694 |
|
*/ |
695 |
< |
static class DelegatedScheduledExecutorService |
695 |
> |
private static class DelegatedScheduledExecutorService |
696 |
|
extends DelegatedExecutorService |
697 |
|
implements ScheduledExecutorService { |
698 |
|
private final ScheduledExecutorService e; |