But it's adapting the JSR SkipWriteListener interface to the Spring Batch SkipListener interface, which is called with a single item. I guess it depends on whether or not you want to support using Spring Batch listeners in JSR jobs and vice versa.