In this chapter, you learned how to write custom operations that provide the main way to extend Cascading and to perform much of the work that needs to be done. This chapter provided plentiful code examples, decomposed them into steps, and showed you how to write custom operations: filters, functions, aggregators, and buffers. Furthermore, you learned to do more sophisticated processing inside of operations, such as using Tuple
and TupleEntry
logic, as well as using Context
objects to store state. You also learned from the included code how to use these operations in Cascading pipes, and how to create Cascading test projects to accomplish specific tasks.
In the next chapter, you will learn techniques to package your custom code that will aid in creating reusable modules and will also help in reducing testing and debugging cycles.