Support Questions
Find answers, ask questions, and share your expertise

HDF support for multiple languages.

Explorer

As of HDF 1.0, we can write custom processor for HDF using Java, is there plan to support other programming languages.

1 ACCEPTED SOLUTION

Super Guru

I see at least two use cases:

  1. I know <non-Java language here> but I want to write a processor for NiFi.
  2. There is no (current) processor or workflow that takes care of my needs, so I’d like to write code to fill in the blanks( basically the body of an onTrigger() call )

Hot-reload is common to both. Adding new languages on-the-fly is not (IMHO). For "Invocable" script engines (like Jython) that allow you to compile an implementor of Processor, would be nice to call into those scripts and treat them like first-class Processors. For other scripts / script engines, it would be cool to treat the script body as the onTrigger() API call -- to be executed when scheduled and when a FlowFile is available.

View solution in original post

4 REPLIES 4

Yes, work is underway to support multiple scripting languages through a standard JVM scripting APIs. Hot-reloading is in scope as well. Currently the jiras are being organized, as multiple approaches and ideas got filed, stay tuned.

Super Guru

I see at least two use cases:

  1. I know <non-Java language here> but I want to write a processor for NiFi.
  2. There is no (current) processor or workflow that takes care of my needs, so I’d like to write code to fill in the blanks( basically the body of an onTrigger() call )

Hot-reload is common to both. Adding new languages on-the-fly is not (IMHO). For "Invocable" script engines (like Jython) that allow you to compile an implementor of Processor, would be nice to call into those scripts and treat them like first-class Processors. For other scripts / script engines, it would be cool to treat the script body as the onTrigger() API call -- to be executed when scheduled and when a FlowFile is available.

Also of note, some community members have been able to write processors in Scala as well:

https://github.com/jahhulbert-ccri/geomesa-nifi/blob/master/nifi-geomesa-nifi-processors/src/main/sc...

Take a Tour of the Community
Don't have an account?
Your experience may be limited. Sign in to explore more.