-
Notifications
You must be signed in to change notification settings - Fork 566
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DOCS: 4.x Pico doc introductions #6572
Conversation
@trentjeff Hi Jeff - leaving this as a draft PR until we have a chance to go through the basics and then we need to rename the Nima directory to SE (and remove the existing SE directory). Holding off on doing that while we are working on the other docs. |
@@ -101,16 +175,26 @@ The Pico API provides types that are generally useful at compile time to assign | |||
|
|||
== Configuration | |||
|
|||
Pico Config builder |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pico Configuration should be instead referred to as "Pico Config-Driven Services"
docs/nima/pico/pico_intro.adoc
Outdated
@@ -101,16 +175,26 @@ The Pico API provides types that are generally useful at compile time to assign | |||
|
|||
== Configuration | |||
|
|||
Pico Config builder | |||
Configuration can be achieved through a Pico add-on that is based on Helidon's configuration subsystem, and adds support for something called _config-driven services_ using the `@ConfiguredBy` annotation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is not really "Configuration can be achieved".
Config-driven services is more about the second part of the sentence - where the presence of configuration in the Helidon Config subsystem will be injected directly into a service declared to be configured by that configuration type.
|
||
//optional | ||
* `@ConfigBean Builder` is used to aggregate configuration attributes to this higher-level, application-centric configuration beans. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
right, this refers us back to the ConfigBean builder section - ideally with a link.
docs/nima/pico/pico_intro.adoc
Outdated
|
||
== Additional Information | ||
* The Pico Framework needs to be started with the supporting configdriven modules in order for configuration to drive service activation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
config-driven
|
||
|
||
|
||
|
||
== Examples |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When config-driven is used, then a different annotation processor should be used.
The basic pico service APT processor should use this one:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>io.helidon.pico</groupId>
<artifactId>helidon-pico-processor</artifactId>
<version>${helidon.version}</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
whereas the Config-Driven one should use this (this one also covers the basic scenarios as well so you don't need both):
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>io.helidon.pico.configdriven</groupId>
<artifactId>helidon-pico-configdriven-processor</artifactId>
<version>${helidon.version}</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
WIP - need to create PR to stash changes for now.