apache / apache/accumulo-fluo

Add application to API

Open
#548 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
200
Forks
73
PR merge metrics
No merged PRs in 30d

Description

While working on common craw app @mikewalch was complaing about the following :
- Apps have to be configured in IT code for test
- Apps have to be configured in fluo.props for production

We disccussed this issue for a while and came up with the concept of adding an application to the API as a possible solution. Below are some notes from our discussion.

Application could be something like the following :

``` java
interface Application {
void init(bytes[] appConfigFileContents);
List getObservers();
}
```

An application like the common craw example would extend Application. The Fluo props file could have a pointer to the common crawl application class (replacing all of the observer configuration). Would no longer need to specify all of the observers in the config.

We also discussed that `fluo init` should take two files conceptually

```
fluo init
```

Maybe the app config file would be read and stored in zookeeper when init runs, if needed. Want to avoid the app config file having to stay the same or stay in the same place. Also the app config file could be in any format, thats why we decided to pass byte array to Application.init(). Then if the application wants to use yml or xml it can.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.