2017 JCP Configuration API JSR · 2017-09-01 · # ConfigJSR Eclipse Foundation • Feed applicaons...

9
. #ConfigJSR Eclipse Foundation Configuration API JSR Eclipse MicroProfile Community Presented by David Blevins, Tomitribe

Transcript of 2017 JCP Configuration API JSR · 2017-09-01 · # ConfigJSR Eclipse Foundation • Feed applicaons...

.

#ConfigJSR Eclipse Foundation

Configuration API JSREclipse MicroProfile Community Presented by David Blevins, Tomitribe

.

#ConfigJSR Eclipse Foundation

• Feed applica+ons with java.u+l.Property data (Configura+on)

• Mix of Internal and External proper+es (ConfigSources)

• Dependency Injec+on or Lookup (@ConfigProperty & Config)

• Run+me-change of configura+on

• Conversion to any Java data type (Converter)

Focus Areas

.

#ConfigJSR Eclipse Foundation

Simple Example - Referencing Properties

.

#ConfigJSR Eclipse Foundation

Simple Example - Programmatic Lookup

.

#ConfigJSR Eclipse Foundation

Simple Example - Supplying Properties

.

#ConfigJSR Eclipse Foundation

• META-INF/microprofile-config.proper+es (priority 100) • System Proper+es (priority 400) • Environment variables (priority 300) • custom proper+es files (user-chosen priority)

Built-In ConfigSources

.

#ConfigJSR Eclipse Foundation

• Proper+es files in the applica+on • Java System proper+es • Java environment variables • YAML, XML or similar files coerced to proper+es format • Database or NoSQL storage • REST calls to external systems • Kubernetes environment variables • Docker proper+es • Containerized environments that support environment variables

Third-Party ConfigSources

.

#ConfigJSR Eclipse Foundation

• DeltaSpike Config (h\p://deltaspike.apache.org/documenta+on/configura+on.html)

• Extracted parts of DeltaSpike Config (h\ps://github.com/struberg/javaConfig/)

• Apache Tamaya (h\p://tamaya.incubator.apache.org/)

• Tomitribe Sabot (h\ps://tomitribe.io/p/sabot)

• Apache Geronimo Config (h\ps://svn.apache.org/repos/asf/geronimo/components/config/trunk)

• WebSphere Liberty 2017 Betas (h\ps://developer.ibm.com/wasdev/)

Influence and History

.

#ConfigJSR Eclipse Foundation