CrudContainer (Vaadin): The Crud container is similar to the JPAContainer but uses a Crud interface instead of a JPA interface.
This container makes it easy to implement a layer of business logic and still have the freedom to use any databackend you like - eg. JPA.
A ‘Crud’ is a class that can Create, Read, Update and Delete entities. Any implementation of the Crud interface can choose how much of the Crud interface it wants to implement and the CrudContainer will use as much of the interface it can.
Some Crud’s may support filtering(via the Crud.Filter interface) letting the CrudContainer accept Filter and Sorter objects. The Filter and Sorter can then be used directly by a Crud implementation to filter its data or be translated to the data backend by the builtin translators(JPA and Lucene currently).