[
https://issues.apache.org/jira/browse/FLUME-1207?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13276697#comment-13276697
]
Joey Echeverria commented on FLUME-1207:
----------------------------------------
I implemented a hack to put the equivalent functionality in. What I ended up
doing was subclassing the sink I needed decorated and overriding the
getChannel() method. I had it return a channel that largely delegates to the
original channel, but intercepts calls to take events. In order to maintain the
correctness, I couldn't modify events in place in case the transaction got
copied, so I ended up creating a new event on every call. This could have
performance implications. The other idea I had was to add a header along the
lines of "decorators.complete" that could have a coma delimited list of
decorators that have processed the event. That way, I could avoid re-processing
events that were processed and then returned to the channel.
> Add sink-side decorators
> ------------------------
>
> Key: FLUME-1207
> URL: https://issues.apache.org/jira/browse/FLUME-1207
> Project: Flume
> Issue Type: New Feature
> Reporter: Joey Echeverria
> Priority: Minor
>
> FLUME-1157 added support for interceptors (source-side decorators) which
> enables a number of the use cases that decorators were used for in Flume 0.xx.
> It would be nice to have a sink-side equivalent so that the same source can
> feed multiple channels/sinks with some getting decorated event, and others
> getting the original.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira