Support for DataChannel filters
-------------------------------
Key: CAY-1508
URL: https://issues.apache.org/jira/browse/CAY-1508
Project: Cayenne
Issue Type: Task
Components: Core Library
Affects Versions: 3.1M1
Reporter: Andrus Adamchik
Assignee: Andrus Adamchik
Fix For: 3.1M1
Support for DataChannel filters with API similar to ServletFilters, only
adapted for Cayenne (i.e. it will be mirroring DataChannel onQuery and onSync
methods) :
public interface DataChannelFilter {
void init(DataChannel channel);
QueryResponse onQuery(
ObjectContext originatingContext,
Query query,
DataChannelFilterChain filterChain);
GraphDiff onSync(
ObjectContext originatingContext,
GraphDiff changes,
int syncType,
DataChannelFilterChain filterChain);
}
One difference with ServletFilter is the absence of "destroy" method in
DataChannelFilter. Destroy is achieved via @BeforeScopeEnd annotation per
filter.
TODO: One possible consequence of this feature is that channel decorators will
provide no advantage as a design pattern, and relationships between
ObjectContext and its parent DataChannel may not require such a high-level of
abstraction (a leaky abstraction for that matter). E.g. we may get rid of
DataDomainQuery, returning parent domain the old way via API calls.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.