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
  • Constructor Summary

    Constructors 
    Constructor Description
    NoExitSecurityManager()  
  • Method Summary

    Modifier and Type Method Description
    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, checkConnect, checkConnect, checkCreateClassLoader, checkDelete, checkExec, checkLink, checkListen, checkMulticast, checkMulticast, checkPackageAccess, checkPackageDefinition, checkPermission, checkPrintJobAccess, checkPropertiesAccess, checkPropertyAccess, checkRead, checkRead, checkRead, checkSecurityAccess, checkSetFactory, checkWrite, checkWrite, getClassContext, getSecurityContext, getThreadGroup

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • 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.