Hi Heron Folks,

I wanted to run something by the dev list, for the initial scala port of the 
streamlets API I am targeting building scala interfaces using the java to scala 
tool and having the interfaces invoke the java implementations, now the way the 
packaging is setup all the java implementations currently live inside 
/Users/saikat.kanjilal/code/heron/heron/api/src/java/com/twitter/heron/streamlet/impl,
 in Intellij I have made the scala directory an additional source directory and 
am planning on adding the bazel rules file to create a scala library.


Now my question is this, should we move the java implementation package to a 
central location so that the implementations can easily be accessed by both the 
java and scala interfaces, I really don't want to have 2 copies of the 
implementation files, and it seems awkward to leave the java implementations 
living where they currently do.


Here's a possible idea I was thinking about:


top level directory:  /api/src/java/com/twitter/heron/streamlet

java interface directory: /api/src/java/com/twitter/heron/streamlet/java

scala interface directory: /api/src/java/com/twitter/heron/streamlet/scala

implementation directory: /api/src/java/com/twitter/heron/streamlet/impl


With the above strategy I can tell Intellij to make the streamlet subdirectory 
be the src, not sure this actually matters when building a bazel related 
project.


Would love to have some input on this.

Thanks in advance.

Reply via email to