org.apache.tools.ant.util.optional

## Class NoExitSecurityManager

- java.lang.Object
- - java.lang.SecurityManager
  - - org.apache.tools.ant.util.optional.NoExitSecurityManager

    public class NoExitSecurityManager
    extends java.lang.SecurityManager

This is intended as a replacement for the default system manager. The goal is to intercept System.exit calls and make it throw an exception instead so that a System.exit in a task does not fully terminate Ant.

See Also:
  `ExitException`

### Field Summary

### Fields inherited from class java.lang.SecurityManager

`inCheck`

### Constructor Summary

Constructors
Constructor and Description
`NoExitSecurityManager()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `checkExit(int status)` Override SecurityManager#checkExit.
`void` `checkPermission(java.security.Permission perm)` Override SecurityManager#checkPermission.

### Methods inherited from class java.lang.SecurityManager

`checkAccept, checkAccess, checkAccess, checkAwtEventQueueAccess, checkConnect, checkConnect, checkCreateClassLoader, checkDelete, checkExec, checkLink, checkListen, checkMemberAccess, checkMulticast, checkMulticast, checkPackageAccess, checkPackageDefinition, checkPermission, checkPrintJobAccess, checkPropertiesAccess, checkPropertyAccess, checkRead, checkRead, checkRead, checkSecurityAccess, checkSetFactory, checkSystemClipboardAccess, checkTopLevelWindow, checkWrite, checkWrite, classDepth, classLoaderDepth, currentClassLoader, currentLoadedClass, getClassContext, getInCheck, getSecurityContext, getThreadGroup, inClass, inClassLoader`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### NoExitSecurityManager

    public NoExitSecurityManager()

### Method Detail

#### checkExit

    public void checkExit(int status)

Override SecurityManager#checkExit. This throws an ExitException(status) exception.

Overrides:
  `checkExit` in class `java.lang.SecurityManager`
Parameters:
  `status` - the exit status

#### checkPermission

    public void checkPermission(java.security.Permission perm)

Override SecurityManager#checkPermission. This does nothing.

Overrides:
  `checkPermission` in class `java.lang.SecurityManager`
Parameters:
  `perm` - the requested permission.