spring-attic / app-starters-release

Spring Cloud Stream App Starters and its Release Train
Apache License 2.0
8 stars 14 forks source link

Refactor and polish App READMEs #99

Closed sabbyanandan closed 7 years ago

sabbyanandan commented 7 years ago

As a developer, I'd like to refactor application READMEs for clarity and to include the following specifics.

1) Supported Input/Output Content-Type at each application - see live example: Cassandra Sink

2) Add Build section

== Build
$ ./mvnw clean install -PgenerateApps
$ cd apps

You can find the corresponding binder based projects here. You can then cd into one of the folders and
build it:

$ ./mvnw clean package

3) Add a java -jar sample where applicable; example:

java -jar jdbc.jar --jdbc.columns=name,age --jdbc.tableName=customers

Notes:

Targeted Apps:

markfisher commented 7 years ago

Can we also change the metadata generator so that it provides simple names, such as "string, boolean, comma-delimited strings" instead of <java.lang.String>, <java.lang.Boolean>, <java.util.List<java.lang.String>>?

markfisher commented 7 years ago

Is it possible to trigger a build failure when the doc is missing rather than having this as the final result? : <documentation missing>

sobychacko commented 7 years ago

All README's are updated with Input/Output content-type and payload. Build instructions and examples are also updated.

ericbottard commented 7 years ago

Can we also change the metadata generator so that it provides simple names, such as "string, boolean, comma-delimited strings" instead of , , <java.util.List>?

Can definitely do the first two. A bit more reluctant about the third because, while also true for the first issue, it depends on what converters are present at runtime and it may not always be true that it accepts a comma delimited string (not plural, btw).

So what about changing: java.lang.X -> just x java.util.List<X> -> list<X> java.util.Map<X, Y> -> map<X, Y> java.util.Set<X> -> set<X>

ericbottard commented 7 years ago

Is it possible to trigger a build failure when the doc is missing rather than having this as the final result? : <documentation missing>

Definitely possible, but I don't thing this is a good idea, because we can't actually cure this in most cases. This is a case where the doc is not "seen", be it because of inheritance, of sources not available at annotation processing time, etc. So I'm not sure we'll be able to fix all of those, even with drastic starter design changes