All Classes and Interfaces

Class
Description
Generic abstract REST controller exposing a full suite of CRUD endpoints.
Generic abstract base for CRUD operations, with hooks for custom business logic, bulk operations, upsert, and partial updates (patch).
Base utilities for generating CrudCraft file headers.
Base class for predicate generators providing common utilities.
Thrown when an authenticated user attempts an action they are not permitted to perform.
Restricts access to users with the ADMIN role.
Generates predicates for the AFTER operator.
Reads an entity's annotations and builds a ModelDescriptor using part extractors.
AuditableExtension is an embeddable class that provides auditing capabilities for entities, tracking creation and update timestamps.
Only authenticated users may access endpoints.
400 Bad Request - client sent invalid data or request.
Generates predicates for the BEFORE operator.
Generates predicates for the BETWEEN operator.
 
 
 
Represents partial or complete failures in bulk operations.
 
 
 
Utility class that hydrates collection attributes for projection DTOs.
Result returned by the CollectionHydrator.RowFetcher containing the fetched rows and the Java types of the joined associations.
Functional interface used to fetch collection data for a given entity type.
Generates predicates for the CONTAINS_ALL operator.
Generates predicates for the CONTAINS_KEY operator.
Generates predicates for the CONTAINS operator.
Generates predicates for the CONTAINS_VALUE operator.
Registry of the default CRUD endpoint specifications used by CrudCraft.
Generates REST controllers directly from templates without relying on an abstract base class.
A component that contributes part of a controller method during generation.
Context object passed to individual method components during generation.
Coordinates the individual components that form a controller method.
Utility methods for applying security annotations to generated controllers.
 
 
Builds JPA Criteria queries that project entity data directly into DTOs.
Autoconfiguration for CrudCraft, enabling the exception handler and search properties.
Annotation to mark a class as a CrudCrafted entity.
Central @RestControllerAdvice for translating exceptions into HTTP responses.
Base class for all CrudCraft generation exceptions.
Annotation processor for CrudCraft.
Base class for all CrudCraft runtime exceptions.
Entry point for the demo application showcasing various CrudCraft features.
Configuration properties for CrudCraft search operations.
Enumeration of CRUD (Create, Read, Update, Delete) endpoints.
Interface for defining policies that resolve CRUD endpoints.
Determines the Spring Security expression to apply for a specific CRUD endpoint.
Defines the basic CRUD API surface, including pagination, search, partial updates (patch), upsert, and bulk operations.
Enum representing various CRUD endpoint templates.
409 Conflict - database integrity violation (foreign key, non-null, etc.).
 
Seeds the in-memory database with sample data for demonstration purposes.
Denies access to all endpoints.
Annotation to mark endpoints that are disabled.
Annotation to mark a field for inclusion in Data Transfer Objects (DTOs).
Generates Request, Response and Ref DTOs honoring @Dto, @Request, @EnumString, @AuditTrail, embedded classes and JPA-relaties.
Represents the options for a field regarding Data Transfer Objects (DTOs).
Singleton extractor for DtoOptions.
Configuration for the different DTO flavours.
409 Conflict - resource already exists or uniqueness constraint violation.
Utility that post-processes generated sources to deal with editable stubs.
Options related to endpoint generation for a model.
Singleton extractor for EndpointOptions.
Describes how to generate a single controller endpoint.
Provides an EndpointSpec for a specific CrudEndpoint.
Common ClassName constants used by endpoint generators.
Generates predicates for the ENDS_WITH operator.
Maps between JPA entities and Data Transfer Objects (DTOs).
Represents options for an enum field in a model.
Singleton extractor for enum field options.
Annotation to mark a field as an enum represented by a string.
Generates predicates for the EQUALS operator.
Standard JSON structure for error responses.
 
 
Utility methods for exporting DTO lists to various formats.
Represents a field in a model, encapsulating various field properties.
Interface for extracting parts of a field from a VariableElement.
Registry for field part extractors.
Declares role-based read and write access for a field.
Utility methods for enforcing field-level security on DTOs.
Abstraction for creating a Javadoc file header.
Utilities for dealing with Filer instances.
Exception thrown when there is an error writing a file during code generation.
Abstraction over different filtering mechanisms.
Singleton extractor for ModelFlags.
403 Forbidden - authenticated user lacks permissions.
 
Base contract for all writer components that turn a ModelDescriptor into one or more JavaFiles.
 
 
 
Generates predicates for the GTE operator.
Generates predicates for the GT operator.
Envelope pairing an identifier with a DTO payload for batch operations.
Represents the core identity of a field in a model.
Singleton extractor for the Identity field part.
Extracts ModelIdentity from a model class.
Generates predicates for the IN operator.
Generates predicates for the IS_EMPTY operator.
Helper methods around JavaPoet.
JPA-based implementation of ProjectionExecutor using Criteria API.
Provider for the JPA based ProjectionExecutor.
Executes queries using a JpaSpecificationExecutor.
Generates predicates for the LTE operator.
Generates predicates for the LT operator.
Header for editable logic layer stubs such as controllers and services.
Header for non-editable logic layer files.
Thrown when mapping between DTO and entity fails.
Generates a MapStruct mapper interface for the given model descriptor, inclusief automatisch invullen van 'uses = { ...Mapper.class }' voor alle @ManyToOne, @OneToMany, @ManyToMany, etc. relaties.
CriteriaProjectionBuilder that relies on pre-generated ProjectionMetadata instead of reflection.
Metadata for a model composed of distinct descriptor parts.
Header for editable model classes such as DTOs.
Represents boolean flags that describe model characteristics.
Represents core identity of a model, including its name, package and fields.
Interface for extracting parts of a model from a TypeElement.
Registry for model part extractors.
Security-related configuration for a model.
Singleton extractor for ModelSecurity.
Header for generated model classes that should remain untouched.
Generates a predicate for the "not empty" search operator.
Generates predicates for the NOT_EQUALS operator.
501 Not Implemented - stubbed method not yet supported.
Generates predicates for the NOT_IN operator.
Handles ONE_TO_MANY and MANY_TO_MANY relationships.
Handles ONE_TO_ONE relationships.
405 Method Not Allowed - operation not supported.
Describes how an operator contributes fields and accessors to the request DTO.
Utility class that provides static methods to retrieve operator specifications based on the SearchOperator enum.
A row-level security handler that restricts access to entities based on an ownerId field.
Uniform container for paginated REST responses.
Adds parameters to the method based on the endpoint specification.
 
Allows all users to access every endpoint.
Utility class providing very simple English pluralization and singularization.
412 Precondition Failed - e.g. conditional request headers not met.
Interface for generating predicates based on search fields.
Registry for predicate generators that maps search operators to their corresponding predicate generator implementations.
Spring Boot auto configuration for projection support.
Executes projection queries and returns DTO results.
Allows registration of ProjectionExecutor implementations.
Specifies an alternative projection path for a DTO field.
Resolves mapping information for DTO fields at runtime.
Describes a single field mapping for a DTO constructor parameter.
Maps DTO classes to entity paths at runtime using reflection.
Describes how a DTO maps to entity attributes.
Attribute binding between DTO constructor arguments and entity paths.
Annotation processor that scans DTO classes and emits ProjectionMetadata implementations along with a registry to expose them.
Registry that exposes compile-time generated projection metadata.
Configuration properties for projection engine selection.
Enum representing the available projection engines.
Encapsulates filtering and paging information for a projection query.
Holds projected DTOs and total count metadata.
Represents a property specification for a searchable field in a model.
 
 
Executes queries using a QuerydslPredicateExecutor.
Builds QueryDSL queries that project entity data directly into DTOs.
QueryDSL-based implementation of ProjectionExecutor.
Provider for the Querydsl based ProjectionExecutor.
Strategy abstraction for executing queries using either QueryDSL or JPA Specifications.
Specification for a range operator in search requests.
Generates a predicate for checking if a field's value falls within a specified range in a search request.
Read endpoints are public; write endpoints require ADMIN role.
Generates a predicate for checking if a string field matches a regular expression specified in a search request.
Represents a relationship between entities in a model.
409 Conflict - relationship constraint violation.
Singleton extractor for extracting relationships from fields annotated with JPA annotations.
Strategy for adding relationship fix and clear logic.
Generates a compile-time "RelationshipMeta" class with static fix(entity) and clear(entity) methods that re-establish or clear bidirectional links in memory via cached java.lang.reflect.Field references.
Enum representing the type of relationship between entities in a data model.
Utility class for fixing or clearing bidirectional relationships in entities.
Generates a Spring Data JPA repository interface for the given model.
Annotation to mark a field for inclusion in request objects.
Simple servlet filter that logs how long each HTTP request takes.
404 Not Found - requested resource does not exist.
Sets the return type and populates the method body according to the endpoint specification.
Allows configuring roles per CRUD endpoint.
Adds the mapping annotation to the method based on the endpoint specification.
Delegates projection execution to the first ProjectionExecutorProvider that supports the given ProjectionQuery.
Marks an entity with a RowSecurityHandler that filters accessible rows.
Provides a row-level security filter for entities of type T.
Marks a field as searchable and optionally restricts the allowed operators.
Utility class for generating getter and setter methods for fields in search request DTOs.
Header for files in the Search package that may be customised.
 
Holds field metadata together with the operator used for generating predicates.
Collects searchable fields from a model descriptor and its child models up to a specified depth, creating a list of SearchField objects.
Generates a SearchRequest DTO and Specification implementation for each CrudCraft entity that has @Searchable fields.
Enum representing various search operators that can be used in query specifications.
Search configuration for a field.
Extracts SearchOptions for a field.
Utility for converting between dotted paths and DTO properties.
Marker interface for generated search request objects that can produce a QueryDSL Predicate for searching, while still supporting a JPA Specification.
Header for files in the Search package that should not be edited.
Field level security configuration.
Applies security annotations if a security policy is present.
Extracts Security configuration from a field.
Generates a service stub for the given model descriptor, with hooks to fix and clear bidirectional links.
Simple in-memory registry for projection metadata.
Generates a predicate for checking if the size of a collection field is equal to a specified value in a search request.
Generates a predicate for checking if the size of a collection field is greater than a specified value in a search request.
Generates a predicate for checking if the size of a collection field is less than a specified value in a search request.
Handles size operators in search requests, such as greater than, less than, and size equality.
SoftDeleteExtension is an embeddable class that provides soft delete functionality for entities, allowing them to be marked as deleted without being physically removed from the database.
Generates a predicate for checking if a string field starts with a given value.
Utility for transforming strings into a specific casing style.
Specialized generator for editable/non-editable stubs.
Helper for deriving common package, class and header information for stub generators.
Simple record holding stub metadata.
Utility helpers for common annotation templates used by writers.
429 Too Many Requests - rate limiting exceeded.
Utility class for handling type-related operations in the code generation process.
401 Unauthorized - user must authenticate.
 
 
Bean validation annotations present on a field.
Extracts bean validation annotations from a field.
Handles value operators in search requests, such as equality and inequality.
Shared context for writer components.
Allows modification endpoints but denies read access.
Behavior when write access is denied for a field.
Central registry for writer components.