Commit Graph

13 Commits

Author SHA1 Message Date
Stephane Nicoll 0ec9de9137 Add support for value provider
Improve the "hints" section of the metadata so that each hint can provide
the reference to a value provider.

A value provider defines how a tool can discover the potential values of
a property based on the context. The provider is identifed by a name and
may have an arbitrary number of parameters.

Closes gh-3303
2015-06-25 14:58:10 +02:00
Phillip Webb 778e3eb091 Polish 2015-06-24 16:15:12 -07:00
Stephane Nicoll bc9321734f Add support for property hint
Create a new section in the meta-data called "hints" where users can
provide hints about a given property. The most basic use case for now
is to provide a list of values that a property can have. Each value may
have a description.

This sample JSON provides a basic example for a property called `foo.mode`
that exposes 3 values: "auto", "basic" and "advanced".

```
 "hints": [
    {
      "id": "foo.mode",
      "values": [
        {
          "value": "auto",
          "description": "Some smart description."
        },
        {
          "name": "basic"
        },
        {
          "name": "advanced"
        }
      ]
    }
]
```

This information can be read by tools (such as IDE) and offer an
auto-completion with the list of values.

Closes gh-2054
2015-06-24 18:53:11 +02:00
Stephane Nicoll 117d6b0da3 Fix typo 2015-06-24 11:12:42 +02:00
Phillip Webb d5a82aaed8 Document "annotation processing with Gradle"
Provide details of how to configure Gradle, including the work-around
require to parse any additional metadata files.

Fixes gh-2316
2015-02-24 20:26:54 -08:00
Stephane Nicoll 20c8e54c5f Revert dea1ca9855
Actually collection types are not harmonized to their interface
counterpart; this was implemented in the first proposal but wasn't
applied in the final review.

See gh-2206
2014-12-20 10:31:11 +01:00
Stephane Nicoll 77427f53cc Support of Lombok annotated ConfigurationProperties
Previously, no configuration properties were discovered on a class using
lombok instead of regular getters/setters.

This commit adds a support for some of the lombok annotations,
specifically that is @Data, @Getter and @Setter. Provides the same
semantic as what lombok is generating.

Closes gh-2114
2014-12-16 10:41:07 +01:00
Stephane Nicoll 509201907c Polish default value for arrays
See gh-1996
2014-12-03 17:32:00 +01:00
Stephane Nicoll f821fdfffa Fix typo 2014-12-03 17:21:56 +01:00
Stephane Nicoll dea1ca9855 Update description of property type 2014-11-24 10:38:13 +01:00
Phillip Webb 182ce21542 Clarify configuration meta-data details
Update the configuration meta-data appendix to clarify a few things.
2014-11-20 10:07:02 -08:00
Stephane Nicoll ab6878ab66 Add documentation for the deprecated field 2014-11-20 18:37:34 +01:00
Phillip Webb 9d01d4fa84 Document configuration meta-data
Add an appendix to the reference documentation describing the format
of configuration meta-data and how the annotation processor can be used.

Closes gh-1001
2014-11-02 21:49:42 -08:00