Add several changes related to testing:
- Add a new plugin that can be used to terminate client connections at specific
points in plugin processing when an appropriate control is included in the
request.
- Add a new plugin that can be used to count the number of times that various
types of plugins are invoked. Update the startServer and shutdownServer
methods in TestCaseUtils to ensure that the startup and shutdown plugins are
invoked at the right times.
- Add test cases for the DirectoryException and InitializationException
classes.
- Create an OperationTestCase superclass that can be used for testing generic
methods in the Operation class. Create an AbandonOperationTestClass subclass
that tests the core Abandon operation.