You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Subhobrata Dey (JIRA)" <ji...@apache.org> on 2016/04/15 04:05:25 UTC
[jira] [Created] (CAMEL-9869) Create Apache Flink Component
Subhobrata Dey created CAMEL-9869:
-------------------------------------
Summary: Create Apache Flink Component
Key: CAMEL-9869
URL: https://issues.apache.org/jira/browse/CAMEL-9869
Project: Camel
Issue Type: New Feature
Reporter: Subhobrata Dey
Fix For: 2.18.0
Hello,
I have created an Apache Flink component for Camel which makes it easier to use Flink for analytics. One can use DataSet callbacks with Spring beans/OSGI services.
Using Spring's application context, it can be accessed like
{noformat}
@Bean
public DataSetCallback<Long> countLinesContaining() {
return new DataSetCallback<Long>() {
public Long onDataSet(DataSet dataSet, Object... objects) {
try {
dataSet.print();
return new Long(0);
} catch (Exception e) {
return new Long(-1);
}
}
};
}
@Bean
public DataSet myDataSet() {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
DataSet<String> text = env.fromElements(
"Who's there?",
"I think I hear them. Stand ho! Who's there?");
return text;
}
{noformat}
The results can be accessed like
{noformat}
Long count = template.requestBody("flink:dataSet?dataSet=#myDataSet&dataSetCallback=#countLinesContaining", pattern, Long.class);
{noformat}
Please review & accept my contribution.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)