Going Further with CDI
Presentation material about advanced features and use cases of CDI, the Contexts and Dependency Injection standard for the Java platform.
About
This presentation introduces the CDI type and metadata SPI. It then focuses on the concept of portable extensions and covers the complete bean manager lifecycle, depicted in the diagram below. Lastly, it illustrates the use of these concepts through practical examples like the Camel CDI and Metrics CDI extensions.
History
Build
Environment
Instructions
-
Initialise and check out the
asciidoctor-backends
anddzslides
submodules:$ git submodule update --init
-
Install the required gems:
$ bundle install
-
Generate the HTML presentation:
$ asciidoctor -r asciidoctor-diagram -T asciidoctor-backends/slim -a data-uri -a linkcss! slides.adoc
-
Generate the PDF presentation:
-
Install DeckTape
-
Export the HTML presentation:
$ decktape dzslides slides.html slides.pdf
-
LiveReload
With Guard and LiveReload, you can modify the content of the presentation and have the files automatically generated and reloaded into your Web browser.
-
Install the LiveReload plugin for your Web browser (Chrome, Firefox and Safari are supported)
-
Launch Guard:
$ bundle exec guard
-
Browse to the generated file you want to refresh and activate the LiveReload plugin (don’t forget to configure the plugin to accept refreshing local files)
Docker
Alternatively to installing Ruby and Graphviz, you can use the asciidoctor/docker-asciidoctor
Docker image available on Docker Hub:
-
Run an interactive container with the
documents
volume bind-mounted to the working directory:$ docker run --rm -it -v `pwd`:/documents/ asciidoctor/docker-asciidoctor
-
Generate the HTML presentation:
[root@... documents]# asciidoctor -r asciidoctor-diagram -T asciidoctor-backends/slim -a data-uri -a linkcss! slides.adoc
License
The content of this project is licensed under the Creative Commons Attribution 4.0 license, and the underlying source code used for the examples is licensed under the MIT license.