You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jl...@apache.org on 2018/12/17 06:10:59 UTC
[01/21] tomee git commit: Create mp-metrics-metered example pom.xml
file
Repository: tomee
Updated Branches:
refs/heads/master 64ed4189e -> 337176e1e
Create mp-metrics-metered example pom.xml file
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/4d75a993
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/4d75a993
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/4d75a993
Branch: refs/heads/master
Commit: 4d75a99314ec595e37534fee9cf66d02564ac2d4
Parents: f032a7f
Author: Ferdi <gi...@ferdi.id>
Authored: Fri Nov 23 11:12:50 2018 +0800
Committer: Ferdi <gi...@ferdi.id>
Committed: Fri Nov 23 11:12:50 2018 +0800
----------------------------------------------------------------------
examples/mp-metrics-metered/pom.xml | 70 ++++++++++++++++++++++++++++++++
examples/pom.xml | 1 +
2 files changed, 71 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/4d75a993/examples/mp-metrics-metered/pom.xml
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-metered/pom.xml b/examples/mp-metrics-metered/pom.xml
new file mode 100644
index 0000000..d389b96
--- /dev/null
+++ b/examples/mp-metrics-metered/pom.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <artifactId>examples</artifactId>
+ <groupId>org.apache.tomee</groupId>
+ <version>8.0.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>mp-metrics-metered</artifactId>
+ <packaging>war</packaging>
+
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.tomee</groupId>
+ <artifactId>javaee-api</artifactId>
+ <version>8.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.microprofile.metrics</groupId>
+ <artifactId>microprofile-metrics-api</artifactId>
+ <version>1.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tomee</groupId>
+ <artifactId>openejb-cxf-rs</artifactId>
+ <version>${tomee.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.arquillian.junit</groupId>
+ <artifactId>arquillian-junit-container</artifactId>
+ <version>1.0.3.Final</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tomee</groupId>
+ <artifactId>arquillian-tomee-remote</artifactId>
+ <version>${tomee.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tomee</groupId>
+ <artifactId>apache-tomee</artifactId>
+ <version>${tomee.version}</version>
+ <type>zip</type>
+ <classifier>microprofile</classifier>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.tomee.maven</groupId>
+ <artifactId>tomee-maven-plugin</artifactId>
+ <version>8.0.0-SNAPSHOT</version>
+ <configuration>
+ <tomeeClassifier>microprofile</tomeeClassifier>
+ <context>${artifactId}</context>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/tomee/blob/4d75a993/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 92518e3..741acc3 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -172,6 +172,7 @@ BROKEN, see TOMEE-2140
<module>moviefun-rest</module>
<module>resources-jmx-example</module>
<module>mp-metrics-counted</module>
+ <module>mp-metrics-metered</module>
</modules>
<dependencies>
[02/21] tomee git commit: Create WeatherService class with @Metered
annotation
Posted by jl...@apache.org.
Create WeatherService class with @Metered annotation
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/b71a3123
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/b71a3123
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/b71a3123
Branch: refs/heads/master
Commit: b71a312376222f7c50edf81ab3d8413ccd5c5eb3
Parents: 4d75a99
Author: Ferdi <gi...@ferdi.id>
Authored: Fri Nov 23 11:13:17 2018 +0800
Committer: Ferdi <gi...@ferdi.id>
Committed: Fri Nov 23 11:13:17 2018 +0800
----------------------------------------------------------------------
.../java/org/superbiz/rest/WeatherService.java | 33 ++++++++++++++++++++
1 file changed, 33 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/b71a3123/examples/mp-metrics-metered/src/main/java/org/superbiz/rest/WeatherService.java
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-metered/src/main/java/org/superbiz/rest/WeatherService.java b/examples/mp-metrics-metered/src/main/java/org/superbiz/rest/WeatherService.java
new file mode 100644
index 0000000..59fadb9
--- /dev/null
+++ b/examples/mp-metrics-metered/src/main/java/org/superbiz/rest/WeatherService.java
@@ -0,0 +1,33 @@
+package org.superbiz.rest;
+
+import org.eclipse.microprofile.metrics.MetricUnits;
+import org.eclipse.microprofile.metrics.annotation.Metered;
+import javax.enterprise.context.ApplicationScoped;
+import javax.ws.rs.Consumes;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+@Path("/weather")
+@Produces(MediaType.APPLICATION_JSON)
+@Consumes(MediaType.APPLICATION_JSON)
+@ApplicationScoped
+public class WeatherService {
+ @Path("/day/status")
+
+ @Metered(name = "dailyStatus", unit = MetricUnits.MINUTES, description = "Metrics to daily weather status method", absolute = true)
+ @GET
+ @Produces(MediaType.TEXT_PLAIN)
+ public String dayStatus() {
+ return "Hi, today is a sunny day!";
+ }
+
+ @Path("/week/status")
+ @Metered(name = "weeklyStatus", unit = MetricUnits.MINUTES, description = "Metrics to weekly weather status method", absolute = true)
+ @GET
+ @Produces(MediaType.TEXT_PLAIN)
+ public String weekStatus() {
+ return "Hi, week will be mostly sunny!";
+ }
+}
[10/21] tomee git commit: mend
Posted by jl...@apache.org.
mend
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/9e147576
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/9e147576
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/9e147576
Branch: refs/heads/master
Commit: 9e147576528ccda84578dc83177e46c1849574e9
Parents: 3fa3b3d
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 13:37:54 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 13:37:54 2018 -0500
----------------------------------------------------------------------
examples/access-timeout/README.adoc | 4 +---
examples/mp-config-example/README.adoc | 3 +--
2 files changed, 2 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/9e147576/examples/access-timeout/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout/README.adoc b/examples/access-timeout/README.adoc
index 6d83ff9..9c7a5e9 100644
--- a/examples/access-timeout/README.adoc
+++ b/examples/access-timeout/README.adoc
@@ -1,10 +1,8 @@
-@AccessTimeout Annotation
-=========================
+= @AccessTimeout Annotation
:index-group: EJB
:jbake-type: page
:jbake-status: published
-
Before taking a look at `@AccessTimeout`, it might help to see when a caller might have to "wait"
== Waiting
http://git-wip-us.apache.org/repos/asf/tomee/blob/9e147576/examples/mp-config-example/README.adoc
----------------------------------------------------------------------
diff --git a/examples/mp-config-example/README.adoc b/examples/mp-config-example/README.adoc
index ad237a3..2a5d569 100644
--- a/examples/mp-config-example/README.adoc
+++ b/examples/mp-config-example/README.adoc
@@ -1,5 +1,4 @@
-Microprofile Config
-===================
+= Microprofile Config
:index-group: Unrevised
:jbake-type: page
:jbake-status: published
[09/21] tomee git commit: mend
Posted by jl...@apache.org.
mend
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/3fa3b3d9
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/3fa3b3d9
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/3fa3b3d9
Branch: refs/heads/master
Commit: 3fa3b3d947e5c13671461ebde594104019661cc4
Parents: 64b7bde
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 13:37:15 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 13:37:15 2018 -0500
----------------------------------------------------------------------
examples/mp-config-example/README.adoc | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/3fa3b3d9/examples/mp-config-example/README.adoc
----------------------------------------------------------------------
diff --git a/examples/mp-config-example/README.adoc b/examples/mp-config-example/README.adoc
index 5344774..ad237a3 100644
--- a/examples/mp-config-example/README.adoc
+++ b/examples/mp-config-example/README.adoc
@@ -1,7 +1,8 @@
-= Microprofile Config
-:index-group=Unrevised
-:jbake-type=page
-:jbake-status=published
+Microprofile Config
+===================
+:index-group: Unrevised
+:jbake-type: page
+:jbake-status: published
This is an example on how to use microprofile config in TomEE.
[04/21] tomee git commit: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/tomee
Posted by jl...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tomee
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/41f59b07
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/41f59b07
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/41f59b07
Branch: refs/heads/master
Commit: 41f59b07516bf3e2458512de651cf5dcba9c383d
Parents: dcb8f5b 64ed418
Author: Jean-Louis Monteiro <je...@gmail.com>
Authored: Fri Dec 14 22:54:28 2018 +0100
Committer: Jean-Louis Monteiro <je...@gmail.com>
Committed: Fri Dec 14 22:54:28 2018 +0100
----------------------------------------------------------------------
examples/mp-metrics-histogram/README.md | 182 +++++++++++++++++++
examples/mp-metrics-histogram/pom.xml | 109 +++++++++++
.../org/superbiz/histogram/WeatherService.java | 66 +++++++
.../src/main/webapp/WEB-INF/web.xml | 25 +++
.../superbiz/histogram/WeatherServiceTest.java | 167 +++++++++++++++++
.../src/test/resources/arquillian.xml | 30 +++
examples/mp-opentracing-traced/pom.xml | 88 +++++++++
.../src/test/resources/arquillian.xml | 30 +++
examples/pom.xml | 25 ++-
9 files changed, 709 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/41f59b07/examples/pom.xml
----------------------------------------------------------------------
diff --cc examples/pom.xml
index 55da481,46bd727..0007646
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@@ -102,7 -102,9 +102,12 @@@ BROKEN, see TOMEE-214
<module>mbean-auto-registration</module>
<module>movies-complete-meta</module>
<module>movies-complete</module>
++ <module>mp-config-example</module>
++ <module>mp-faulttolerance-retry</module>
+ <module>mp-metrics-counted</module>
+ <module>mp-metrics-histogram</module>
+ <module>mp-metrics-timed</module>
+ <module>mp-rest-jwt</module>
<module>mtom</module>
<module>multi-jpa-provider-testing</module>
<module>multiple-arquillian-adapters</module>
@@@ -171,7 -174,11 +176,9 @@@
<module>moviefun</module>
<module>moviefun-rest</module>
<module>resources-jmx-example</module>
- <module>mp-metrics-counted</module>
+ <module>websocket-tls-basic-auth</module>
+ <module>concurrency-utils</module>
+ <module>mvc-cxf</module>
- <module>mp-faulttolerance-retry</module>
- <module>mp-config-example</module>
</modules>
<dependencies>
[13/21] tomee git commit: Testing fix for small tags
Posted by jl...@apache.org.
Testing fix for small tags
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/ca5b624f
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/ca5b624f
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/ca5b624f
Branch: refs/heads/master
Commit: ca5b624f2ef8a50f972d32771b95299c68c4015f
Parents: b41f269
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:30:39 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:30:39 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/ca5b624f/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index d6035ab..99ab2e8 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -24,7 +24,7 @@ then be centralized in the `api` package and changes to timeout values will be l
An interesting side-effect of this approach is that if the `api` package where the meta-annotation definitions exist is kept in a separate jar as well, then one can effectively
change the configuration of an entire application by simply replacing the `api` jar.
-=== @Metatype <small>The "root" Meta-Annotation</small>
+=== @Metatype [.small]The "root" Meta-Annotation
As with all meta-annotation usage, you first need to create your own "root" meta-annotation. This is as easy as creating an annotation
named `Metatype` that is annotated with itself and has `ElementType.ANNOTATION_TYPE` as its target.
[21/21] tomee git commit: This closes #281. Thanks rmcguinness.
Posted by jl...@apache.org.
This closes #281. Thanks rmcguinness.
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/337176e1
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/337176e1
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/337176e1
Branch: refs/heads/master
Commit: 337176e1e754f7424ce4d6bbb22df83858c2cfd1
Parents: 41f59b0 45f01bf
Author: Jean-Louis Monteiro <je...@gmail.com>
Authored: Mon Dec 17 07:10:41 2018 +0100
Committer: Jean-Louis Monteiro <je...@gmail.com>
Committed: Mon Dec 17 07:10:41 2018 +0100
----------------------------------------------------------------------
.gitignore | 1 +
examples/access-timeout-meta/README.adoc | 281 ++++++++++++++++++++++++++
examples/access-timeout-meta/README.md | 253 -----------------------
examples/access-timeout/README.adoc | 216 ++++++++++++++++++++
examples/access-timeout/README.md | 199 ------------------
examples/github-stylesheet.css | 4 +
examples/mp-config-example/README.adoc | 67 ++++++
examples/mp-config-example/README.md | 50 -----
8 files changed, 569 insertions(+), 502 deletions(-)
----------------------------------------------------------------------
[08/21] tomee git commit: Fixing adoc page attributes
Posted by jl...@apache.org.
Fixing adoc page attributes
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/64b7bdeb
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/64b7bdeb
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/64b7bdeb
Branch: refs/heads/master
Commit: 64b7bdeb6aa12302c61ec07bc14d820ee935eb05
Parents: 3412c44
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 13:36:07 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 13:36:07 2018 -0500
----------------------------------------------------------------------
examples/access-timeout/README.adoc | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/64b7bdeb/examples/access-timeout/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout/README.adoc b/examples/access-timeout/README.adoc
index ca9af28..6d83ff9 100644
--- a/examples/access-timeout/README.adoc
+++ b/examples/access-timeout/README.adoc
@@ -1,8 +1,9 @@
-= @AccessTimeout Annotation
-:index-group=EJB
-:jbake-type=page
-:jbake-status=published
-:title=@AccessTimeout annotation
+@AccessTimeout Annotation
+=========================
+:index-group: EJB
+:jbake-type: page
+:jbake-status: published
+
Before taking a look at `@AccessTimeout`, it might help to see when a caller might have to "wait"
[06/21] tomee git commit: fixed indentation of codeblocks to be
consistent in GitHub rendering
Posted by jl...@apache.org.
fixed indentation of codeblocks to be consistent in GitHub rendering
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/6521daf4
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/6521daf4
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/6521daf4
Branch: refs/heads/master
Commit: 6521daf417a1e5bec90686408082fd8c5bc10d1e
Parents: e1696f1
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 13:29:08 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 13:29:08 2018 -0500
----------------------------------------------------------------------
examples/access-timeout/README.adoc | 191 ++++++++++++++--------------
examples/mp-config-example/README.adoc | 28 ++--
2 files changed, 109 insertions(+), 110 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/6521daf4/examples/access-timeout/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout/README.adoc b/examples/access-timeout/README.adoc
index 2dad583..e653584 100644
--- a/examples/access-timeout/README.adoc
+++ b/examples/access-timeout/README.adoc
@@ -74,145 +74,144 @@ Here we have a simple @Singleton bean that has three synchronous methods and one
[source,java,numbered]
----
- @Singleton
- @Lock(WRITE)
- public class BusyBee {
-
- @Asynchronous
- public Future stayBusy(CountDownLatch ready) {
- ready.countDown();
-
- try {
- new CountDownLatch(1).await();
- } catch (InterruptedException e) {
- Thread.interrupted();
- }
-
- return null;
+@Singleton
+@Lock(WRITE)
+public class BusyBee {
+
+ @Asynchronous
+ public Future stayBusy(CountDownLatch ready) {
+ ready.countDown();
+
+ try {
+ new CountDownLatch(1).await();
+ } catch (InterruptedException e) {
+ Thread.interrupted();
}
- @AccessTimeout(0)
- public void doItNow() {
- // do something
- }
+ return null;
+ }
- @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
- public void doItSoon() {
- // do something
- }
+ @AccessTimeout(0)
+ public void doItNow() {
+ // do something
+ }
- @AccessTimeout(-1)
- public void justDoIt() {
- // do something
- }
+ @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
+ public void doItSoon() {
+ // do something
+ }
+ @AccessTimeout(-1)
+ public void justDoIt() {
+ // do something
}
+}
----
The `@Asynchronous` method is not a critical part of `@AccessTimeout`, but serves as a simple way to "lock" the bean for testing purposes. It allows us to easily test the concurrent behavior of the bean.
[source,java,numbered]
----
- public class BusyBeeTest extends TestCase {
-
- public void test() throws Exception {
+public class BusyBeeTest extends TestCase {
- final Context context = EJBContainer.createEJBContainer().getContext();
+ public void test() throws Exception {
- final CountDownLatch ready = new CountDownLatch(1);
+ final Context context = EJBContainer.createEJBContainer().getContext();
- final BusyBee busyBee = (BusyBee) context.lookup("java:global/access-timeout/BusyBee");
+ final CountDownLatch ready = new CountDownLatch(1);
- // This asynchronous method will never exit
- busyBee.stayBusy(ready);
+ final BusyBee busyBee = (BusyBee) context.lookup("java:global/access-timeout/BusyBee");
- // Are you working yet little bee?
- ready.await();
+ // This asynchronous method will never exit
+ busyBee.stayBusy(ready);
+ // Are you working yet little bee?
+ ready.await();
- // OK, Bee is busy
+ // OK, Bee is busy
- { // Timeout Immediately
- final long start = System.nanoTime();
- try {
- busyBee.doItNow();
+ { // Timeout Immediately
+ final long start = System.nanoTime();
- fail("The bee should be busy");
- } catch (Exception e) {
- // the bee is still too busy as expected
- }
+ try {
+ busyBee.doItNow();
- assertEquals(0, seconds(start));
+ fail("The bee should be busy");
+ } catch (Exception e) {
+ // the bee is still too busy as expected
}
- { // Timeout in 5 seconds
- final long start = System.nanoTime();
+ assertEquals(0, seconds(start));
+ }
- try {
- busyBee.doItSoon();
+ { // Timeout in 5 seconds
+ final long start = System.nanoTime();
- fail("The bee should be busy");
- } catch (Exception e) {
- // the bee is still too busy as expected
- }
+ try {
+ busyBee.doItSoon();
- assertEquals(5, seconds(start));
+ fail("The bee should be busy");
+ } catch (Exception e) {
+ // the bee is still too busy as expected
}
- // This will wait forever, give it a try if you have that long
- //busyBee.justDoIt();
+ assertEquals(5, seconds(start));
}
- private long seconds(long start) {
- return TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - start);
- }
+ // This will wait forever, give it a try if you have that long
+ //busyBee.justDoIt();
+ }
+
+ private long seconds(long start) {
+ return TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - start);
}
+}
----
== Running
[source,bash]
----
- mvn clean test
+mvn clean test
----
=== Output
[source,bash]
----
- -------------------------------------------------------
- T E S T S
- -------------------------------------------------------
- Running org.superbiz.accesstimeout.BusyBeeTest
- Apache OpenEJB 4.0.0-beta-1 build: 20111002-04:06
- http://tomee.apache.org/
- INFO - openejb.home = /Users/dblevins/examples/access-timeout
- INFO - openejb.base = /Users/dblevins/examples/access-timeout
- INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
- INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
- INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
- INFO - Found EjbModule in classpath: /Users/dblevins/examples/access-timeout/target/classes
- INFO - Beginning load: /Users/dblevins/examples/access-timeout/target/classes
- INFO - Configuring enterprise application: /Users/dblevins/examples/access-timeout
- INFO - Configuring Service(id=Default Singleton Container, type=Container, provider-id=Default Singleton Container)
- INFO - Auto-creating a container for bean BusyBee: Container(type=SINGLETON, id=Default Singleton Container)
- INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
- INFO - Auto-creating a container for bean org.superbiz.accesstimeout.BusyBeeTest: Container(type=MANAGED, id=Default Managed Container)
- INFO - Enterprise application "/Users/dblevins/examples/access-timeout" loaded.
- INFO - Assembling app: /Users/dblevins/examples/access-timeout
- INFO - Jndi(name="java:global/access-timeout/BusyBee!org.superbiz.accesstimeout.BusyBee")
- INFO - Jndi(name="java:global/access-timeout/BusyBee")
- INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest!org.superbiz.accesstimeout.BusyBeeTest")
- INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest")
- INFO - Created Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
- INFO - Created Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
- INFO - Started Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
- INFO - Started Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
- INFO - Deployed Application(path=/Users/dblevins/examples/access-timeout)
- Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.071 sec
-
- Results :
-
- Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
+-------------------------------------------------------
+ T E S T S
+-------------------------------------------------------
+Running org.superbiz.accesstimeout.BusyBeeTest
+Apache OpenEJB 4.0.0-beta-1 build: 20111002-04:06
+http://tomee.apache.org/
+INFO - openejb.home = /Users/dblevins/examples/access-timeout
+INFO - openejb.base = /Users/dblevins/examples/access-timeout
+INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
+INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
+INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
+INFO - Found EjbModule in classpath: /Users/dblevins/examples/access-timeout/target/classes
+INFO - Beginning load: /Users/dblevins/examples/access-timeout/target/classes
+INFO - Configuring enterprise application: /Users/dblevins/examples/access-timeout
+INFO - Configuring Service(id=Default Singleton Container, type=Container, provider-id=Default Singleton Container)
+INFO - Auto-creating a container for bean BusyBee: Container(type=SINGLETON, id=Default Singleton Container)
+INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
+INFO - Auto-creating a container for bean org.superbiz.accesstimeout.BusyBeeTest: Container(type=MANAGED, id=Default Managed Container)
+INFO - Enterprise application "/Users/dblevins/examples/access-timeout" loaded.
+INFO - Assembling app: /Users/dblevins/examples/access-timeout
+INFO - Jndi(name="java:global/access-timeout/BusyBee!org.superbiz.accesstimeout.BusyBee")
+INFO - Jndi(name="java:global/access-timeout/BusyBee")
+INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest!org.superbiz.accesstimeout.BusyBeeTest")
+INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest")
+INFO - Created Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
+INFO - Created Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
+INFO - Started Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
+INFO - Started Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
+INFO - Deployed Application(path=/Users/dblevins/examples/access-timeout)
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.071 sec
+
+Results :
+
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
----
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/tomee/blob/6521daf4/examples/mp-config-example/README.adoc
----------------------------------------------------------------------
diff --git a/examples/mp-config-example/README.adoc b/examples/mp-config-example/README.adoc
index 501a746..0d254f2 100644
--- a/examples/mp-config-example/README.adoc
+++ b/examples/mp-config-example/README.adoc
@@ -38,30 +38,30 @@ Each individual property can be injected directly
[source,java,numbered]
----
- @Inject
- @ConfigProperty(name = "java.runtime.version")
- private String javaVersion;
+@Inject
+@ConfigProperty(name = "java.runtime.version")
+private String javaVersion;
----
You can also set a default value for it, case the config does not match the property in the context it will use the default value
[source,java,numbered]
----
- @Inject
- @ConfigProperty(name = "defaultProperty", defaultValue = "ALOHA")
- private String defaultProperty;
+@Inject
+@ConfigProperty(name = "defaultProperty", defaultValue = "ALOHA")
+private String defaultProperty;
----
The config object can also be injected. Then use the getValue() method to retrieve the individual property.
[source,java,numbered]
----
- @Inject
- private Config config;
-
- @GET
- @Path("javaVersion")
- public String getJavaVersionPropertyFromSystemProperties() {
- return config.getValue("java.runtime.version", String.class);
- }
+@Inject
+private Config config;
+
+@GET
+@Path("javaVersion")
+public String getJavaVersionPropertyFromSystemProperties() {
+ return config.getValue("java.runtime.version", String.class);
+}
----
\ No newline at end of file
[15/21] tomee git commit: Updated HTML Tags to MetaTags
Posted by jl...@apache.org.
Updated HTML Tags to MetaTags
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/1803338d
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/1803338d
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/1803338d
Branch: refs/heads/master
Commit: 1803338de070a2d9d03cb22134d62ea425696268
Parents: 1d0c603
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:36:57 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:36:57 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/1803338d/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index 56494e6..5a30432 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -131,7 +131,7 @@ Once you create a few meta-annotations and the fun becomes common-place, questoi
You have to really start thinking about how you want to approach your usage of meta-annotation and really put your designer hat on. The fundamental question is
**configuration vs operation** and the answer is subjective; how much flexibility do you want to design into your applications and where?
-## Configuration names <small>describing the configuration</small>
+## Configuration names [.small]#describing the configuration#
The simplest approach is to name your meta-annotations after the **configuration** they encapsulate. We've been following that format so far with `@AwaitNever` and `@AwaitForever`
to clearly reflect the contents of each meta-annotation (`@AccessTimeout(-1)` and `@AccessTimeout(0)` respectively).
@@ -139,7 +139,7 @@ to clearly reflect the contents of each meta-annotation (`@AccessTimeout(-1)` an
The **cons** of this approach is that should you want to change the configuration of the application by only changing the meta-annotations -- this is one of the potential benefits
of meta-annotations -- but this may change the meaning of the annotation. Certainly, the `@AwaitNever` meta-annotation can have no other value than `0` if it is to live up to its name.
-## Operation names <small>describing the code</small>
+## Operation names [.small]describing the code#
The alternate approach is to name your meta-annotations after the **operations** they apply to. In short, to describe the code itself and not the configuration. So, names like
`@OrderCheckTimeout` or `@TwitterUpdateTimeout`. These names are configuration-change-proof. They would not change if the configuration changes and in fact they can facilitate
@@ -148,7 +148,7 @@ finder-grained control over the configuration of an application.
The **cons** of this approach is that requires far more deliberation and consideration, not to mention more annotations. Your skills as an architect, designer and ability to think as
a administrator will be challenged. You must be good at wearing your dev-opts hat.
-## Pragmatism <small>best of both worlds</small>
+## Pragmatism [.small]#best of both worlds#
Fortunately, meta-annotations are recursive. You can do a little of both.
[18/21] tomee git commit: Testing Stylesheet again
Posted by jl...@apache.org.
Testing Stylesheet again
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/65f2874e
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/65f2874e
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/65f2874e
Branch: refs/heads/master
Commit: 65f2874e6e0303639557766a2ad8ccba7f1256d2
Parents: 876be57
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:50:55 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:50:55 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/65f2874e/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index ab9e5dd..039c3b7 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -7,9 +7,9 @@ ifdef::env-github[]
:note-caption: :information_source:
:important-caption: :heavy_exclamation_mark:
:caution-caption: :fire:
-:warning-caption: :warning:
-:stylesheet: ../github-stylesheet.css
endif::[]
+@import(../github-stylesheet.css)
+
== Introduction
[14/21] tomee git commit: Testing css
Posted by jl...@apache.org.
Testing css
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/1d0c603d
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/1d0c603d
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/1d0c603d
Branch: refs/heads/master
Commit: 1d0c603d82a80c5818c3f660a8844c11ff6d9b26
Parents: ca5b624
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:34:18 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:34:18 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/1d0c603d/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index 99ab2e8..56494e6 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -2,6 +2,13 @@
:index-group: Meta-Annotations
:jbake-type: page
:jbake-status: status=published
+ifdef::env-github[]
+:tip-caption: :bulb:
+:note-caption: :information_source:
+:important-caption: :heavy_exclamation_mark:
+:caution-caption: :fire:
+:warning-caption: :warning:
+endif::[]
== Introduction
@@ -24,7 +31,7 @@ then be centralized in the `api` package and changes to timeout values will be l
An interesting side-effect of this approach is that if the `api` package where the meta-annotation definitions exist is kept in a separate jar as well, then one can effectively
change the configuration of an entire application by simply replacing the `api` jar.
-=== @Metatype [.small]The "root" Meta-Annotation
+=== @Metatype [.small]#The "root" Meta-Annotation#
As with all meta-annotation usage, you first need to create your own "root" meta-annotation. This is as easy as creating an annotation
named `Metatype` that is annotated with itself and has `ElementType.ANNOTATION_TYPE` as its target.
[03/21] tomee git commit: This closes apache/tomee#215
Posted by jl...@apache.org.
This closes apache/tomee#215
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/dcb8f5b9
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/dcb8f5b9
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/dcb8f5b9
Branch: refs/heads/master
Commit: dcb8f5b9b943f4a2f7a34ad2476204ba85249df6
Parents: cad956d b71a312
Author: Jean-Louis Monteiro <je...@gmail.com>
Authored: Fri Dec 14 22:39:31 2018 +0100
Committer: Jean-Louis Monteiro <je...@gmail.com>
Committed: Fri Dec 14 22:39:31 2018 +0100
----------------------------------------------------------------------
examples/mp-metrics-metered/pom.xml | 70 ++++++++++++++++++++
.../java/org/superbiz/rest/WeatherService.java | 33 +++++++++
examples/pom.xml | 24 ++++---
3 files changed, 116 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/dcb8f5b9/examples/pom.xml
----------------------------------------------------------------------
diff --cc examples/pom.xml
index fd0f663,741acc3..55da481
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@@ -102,6 -102,6 +102,7 @@@ BROKEN, see TOMEE-214
<module>mbean-auto-registration</module>
<module>movies-complete-meta</module>
<module>movies-complete</module>
++ <module>mp-rest-jwt</module>
<module>mtom</module>
<module>multi-jpa-provider-testing</module>
<module>multiple-arquillian-adapters</module>
@@@ -119,7 -119,7 +120,6 @@@
<module>rest-applicationcomposer</module>
<module>rest-cdi</module>
<module>rest-jaas</module>
- <module>mp-rest-jwt</module>
- <module>rest-mp-jwt</module>
<module>rest-on-ejb</module>
<module>rest-example</module>
<module>rest-example-with-application</module>
@@@ -172,12 -172,7 +172,6 @@@
<module>moviefun-rest</module>
<module>resources-jmx-example</module>
<module>mp-metrics-counted</module>
- <module>mp-metrics-timed</module>
- <module>websocket-tls-basic-auth</module>
- <module>concurrency-utils</module>
- <module>mvc-cxf</module>
- <module>mp-faulttolerance-retry</module>
- <module>mp-config-example</module>
- <module>mp-metrics-metered</module>
</modules>
<dependencies>
[17/21] tomee git commit: Testing Stylesheet Rules
Posted by jl...@apache.org.
Testing Stylesheet Rules
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/876be57a
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/876be57a
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/876be57a
Branch: refs/heads/master
Commit: 876be57a205ec9d20be6fa674c742e6dcbdc6a6d
Parents: 0a7826c
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:45:39 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:45:39 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 1 +
examples/github-stylesheet.css | 3 +++
2 files changed, 4 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/876be57a/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index 4c3ddfe..ab9e5dd 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -8,6 +8,7 @@ ifdef::env-github[]
:important-caption: :heavy_exclamation_mark:
:caution-caption: :fire:
:warning-caption: :warning:
+:stylesheet: ../github-stylesheet.css
endif::[]
== Introduction
http://git-wip-us.apache.org/repos/asf/tomee/blob/876be57a/examples/github-stylesheet.css
----------------------------------------------------------------------
diff --git a/examples/github-stylesheet.css b/examples/github-stylesheet.css
new file mode 100644
index 0000000..11ac929
--- /dev/null
+++ b/examples/github-stylesheet.css
@@ -0,0 +1,3 @@
+small {
+ font-size: .8em;
+}
\ No newline at end of file
[16/21] tomee git commit: Fixed typo
Posted by jl...@apache.org.
Fixed typo
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/0a7826c8
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/0a7826c8
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/0a7826c8
Branch: refs/heads/master
Commit: 0a7826c897c964f7c5a3650f40409b1084aa8a6d
Parents: 1803338
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:37:59 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:37:59 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/0a7826c8/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index 5a30432..4c3ddfe 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -139,7 +139,7 @@ to clearly reflect the contents of each meta-annotation (`@AccessTimeout(-1)` an
The **cons** of this approach is that should you want to change the configuration of the application by only changing the meta-annotations -- this is one of the potential benefits
of meta-annotations -- but this may change the meaning of the annotation. Certainly, the `@AwaitNever` meta-annotation can have no other value than `0` if it is to live up to its name.
-## Operation names [.small]describing the code#
+## Operation names [.small]#describing the code#
The alternate approach is to name your meta-annotations after the **operations** they apply to. In short, to describe the code itself and not the configuration. So, names like
`@OrderCheckTimeout` or `@TwitterUpdateTimeout`. These names are configuration-change-proof. They would not change if the configuration changes and in fact they can facilitate
[07/21] tomee git commit: mend
Posted by jl...@apache.org.
mend
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/3412c449
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/3412c449
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/3412c449
Branch: refs/heads/master
Commit: 3412c4499b860563c3670f372bdb86d6f26355c9
Parents: 6521daf
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 13:30:37 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 13:30:37 2018 -0500
----------------------------------------------------------------------
examples/access-timeout/README.adoc | 14 +++++++-------
examples/mp-config-example/README.adoc | 2 +-
2 files changed, 8 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/3412c449/examples/access-timeout/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout/README.adoc b/examples/access-timeout/README.adoc
index e653584..ca9af28 100644
--- a/examples/access-timeout/README.adoc
+++ b/examples/access-timeout/README.adoc
@@ -38,13 +38,13 @@ The `@AccessTimeout` is simply a convenience wrapper around the `long` and `Time
[source,java,numbered]
----
- import java.util.concurrent.TimeUnit;
- @Target({METHOD, TYPE})
- @Retention(RUNTIME)
- public @interface AccessTimeout {
- long value();
- TimeUnit unit() default TimeUnit.MILLISECONDS;
- }
+import java.util.concurrent.TimeUnit;
+@Target({METHOD, TYPE})
+@Retention(RUNTIME)
+public @interface AccessTimeout {
+ long value();
+ TimeUnit unit() default TimeUnit.MILLISECONDS;
+}
----
== Usage
http://git-wip-us.apache.org/repos/asf/tomee/blob/3412c449/examples/mp-config-example/README.adoc
----------------------------------------------------------------------
diff --git a/examples/mp-config-example/README.adoc b/examples/mp-config-example/README.adoc
index 0d254f2..5344774 100644
--- a/examples/mp-config-example/README.adoc
+++ b/examples/mp-config-example/README.adoc
@@ -9,7 +9,7 @@ This is an example on how to use microprofile config in TomEE.
[source,bash]
----
- mvn clean install tomee:run
+mvn clean install tomee:run
----
== API
[12/21] tomee git commit: Updated admonition
Posted by jl...@apache.org.
Updated admonition
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/b41f269c
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/b41f269c
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/b41f269c
Branch: refs/heads/master
Commit: b41f269c7800295eeb3169665c496b0e1ddbac8b
Parents: 18f1d82
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:28:28 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:28:28 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/b41f269c/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index f76b590..d6035ab 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -12,7 +12,7 @@ The value of the parameters supplied to `@AccessTimeout` have a dramatic affect
where `-1` and `0` have signifcantly different meanings. One means "wait forever", the other means "never wait". Only a lucky few can remember which is which on a daily basis.
For the rest of us it is a constant source of bugs.
-[red underline] Meta-Annotations to the rescue!
+TIP: Meta-Annotations to the rescue!
== *_Creating the Meta-Annotations_*
[05/21] tomee git commit: Updated GitIgnore to exclude visual studio
code files. Refactored AccessTimeout and mp-config-example README files to
Asciidoc files. Updated consistency of heading types. Introduced NOTE:
admonition where the MD block quote was
Posted by jl...@apache.org.
Updated GitIgnore to exclude visual studio code files.
Refactored AccessTimeout and mp-config-example README files to Asciidoc files.
Updated consistency of heading types.
Introduced NOTE: admonition where the MD block quote was being used.
Lastly cleaned up excess text.
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/e1696f19
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/e1696f19
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/e1696f19
Branch: refs/heads/master
Commit: e1696f199bf78186cc8557f0feaf1822dbfc1fb8
Parents: cad956d
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 13:22:11 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 13:22:11 2018 -0500
----------------------------------------------------------------------
.gitignore | 1 +
examples/access-timeout/README.adoc | 218 ++++++++++++++++++++++++++++
examples/access-timeout/README.md | 199 -------------------------
examples/mp-config-example/README.adoc | 67 +++++++++
examples/mp-config-example/README.md | 50 -------
5 files changed, 286 insertions(+), 249 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/e1696f19/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index daf84c4..433cf36 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,6 +6,7 @@ target
*.ipr
*.iml
*.log
+*.vscode
*~
quick.bat
/tomee/tomee-plume-webapp/overlays/
http://git-wip-us.apache.org/repos/asf/tomee/blob/e1696f19/examples/access-timeout/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout/README.adoc b/examples/access-timeout/README.adoc
new file mode 100644
index 0000000..2dad583
--- /dev/null
+++ b/examples/access-timeout/README.adoc
@@ -0,0 +1,218 @@
+= @AccessTimeout Annotation
+:index-group=EJB
+:jbake-type=page
+:jbake-status=published
+:title=@AccessTimeout annotation
+
+Before taking a look at `@AccessTimeout`, it might help to see when a caller might have to "wait"
+
+== Waiting
+
+=== Stateful Bean
+
+[note]
+
+NOTE: By default, clients are allowed to make concurrent calls to a stateful session object and the container is required to serialize such concurrent requests. The container never permits multi-threaded access to the stateful session bean instance. For this reason, Read/Write method locking metadata, as well as the bean-managed concurrency mode, are not applicable to stateful session beans and must not be used.
+
+This means that when a method `foo()` of a stateful bean instance is being executed and a second request comes in for that method or another method, EJB container would serialize the second request. It would not let the method be executed concurrently but wait until the first request is processed.
+
+The client would wait also when `@Stateful` bean is in a transaction and the client is invoking it from outside that transaction.
+
+=== Stateless Bean
+
+If there are 20 instances of a bean in the pool and all of them are busy. When the next request comes in, the processing *might wait* for a bean to be available in the pool. (Note: Pooling sematics, if any, are not covered by the spec. The vendor's pooling semantics might or might not involve a wait condition)
+
+=== Singleton Bean
+
+The container enforces a single-threaded access by default to singleton beans. That's the equivalent of annotating with `@Lock(Write)`. So when a `@Lock(Write)` method is executing, all other `@Lock(READ)` and `@Lock(WRITE)` method invocations would have to wait.
+
+=== Summary
+
+ - `@Singleton` - an `@Lock(WRITE)` method is being invoked and container-managed concurrency is being used. All methods are `@Lock(WRITE)` by default.
+ - `@Stateful` - any method of the instance is being invoked and a second invocation occurs. OR the `@Stateful` bean is in a transaction and the caller is invoking it from outside that transaction.
+ - `@Stateless` - no instances are available in the pool. As noted, however, pooling sematics, if any, are not covered by the spec. If the vendor's pooling semantics do involve a wait condition, the @AccessTimeout should apply.
+
+= @AccessTimeout
+
+The `@AccessTimeout` is simply a convenience wrapper around the `long` and `TimeUnit` tuples commonly used in the `java.util.concurrent` API.
+
+[source,java,numbered]
+----
+ import java.util.concurrent.TimeUnit;
+ @Target({METHOD, TYPE})
+ @Retention(RUNTIME)
+ public @interface AccessTimeout {
+ long value();
+ TimeUnit unit() default TimeUnit.MILLISECONDS;
+ }
+----
+
+== Usage
+
+A method or class can be annotated with `@AccessTimeout` to specify the maximum time a call might wait for access to the bean should a wait condition occur.
+
+The semantics of the value element are as follows:
+
+ - A `value` > 0 indicates a timeout value in the units specified by the `unit` element.
+ - A `value` of 0 means concurrent access is not permitted.
+ - A `value` of -1 indicates that the client request will block indefinitely until forward progress can proceed.
+
+Just as simple as that !
+
+NOTE: What exception would the client receive, with a timeout ?
+Quoting from the spec, "if a client-invoked business method is in progress on an instance when another client-invoked call, from the same or different client, arrives at the same instance of a stateful session bean, if the second client is a client of the bean's business interface or no-interface view, the concurrent invocation must result in the second client receiving a javax.ejb.ConcurrentAccessException[15]. If the EJB 2.1 client view is used, the container must throw a java.rmi.RemoteException if the second client is a remote client, or a javax.ejb.EJBException if the second client is a local client"
+
+=== No standard default
+
+Note that the `value` attribute has no default. This was intentional and intended to communicate that if `@AccessTimeout` is not explicitly used, the behavior you get is vendor-specific.
+
+Some vendors will wait for a preconfigured time and throw `javax.ejb.ConcurrentAccessException`, some vendors will throw it immediately.
+
+== Example
+
+Here we have a simple @Singleton bean that has three synchronous methods and one `@Asynchronous` method. The bean itself is annotated `@Lock(WRITE)` so that only one thread may access the `@Singleton` at a time. This is the default behavior of an `@Singleton` bean, so explicit usage of `@Lock(WRITE)` is not needed but is rather nice for clarity as the single-threaded nature of the bean is important to the example.
+
+[source,java,numbered]
+----
+ @Singleton
+ @Lock(WRITE)
+ public class BusyBee {
+
+ @Asynchronous
+ public Future stayBusy(CountDownLatch ready) {
+ ready.countDown();
+
+ try {
+ new CountDownLatch(1).await();
+ } catch (InterruptedException e) {
+ Thread.interrupted();
+ }
+
+ return null;
+ }
+
+ @AccessTimeout(0)
+ public void doItNow() {
+ // do something
+ }
+
+ @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
+ public void doItSoon() {
+ // do something
+ }
+
+ @AccessTimeout(-1)
+ public void justDoIt() {
+ // do something
+ }
+
+ }
+----
+
+The `@Asynchronous` method is not a critical part of `@AccessTimeout`, but serves as a simple way to "lock" the bean for testing purposes. It allows us to easily test the concurrent behavior of the bean.
+
+[source,java,numbered]
+----
+ public class BusyBeeTest extends TestCase {
+
+ public void test() throws Exception {
+
+ final Context context = EJBContainer.createEJBContainer().getContext();
+
+ final CountDownLatch ready = new CountDownLatch(1);
+
+ final BusyBee busyBee = (BusyBee) context.lookup("java:global/access-timeout/BusyBee");
+
+ // This asynchronous method will never exit
+ busyBee.stayBusy(ready);
+
+ // Are you working yet little bee?
+ ready.await();
+
+
+ // OK, Bee is busy
+
+
+ { // Timeout Immediately
+ final long start = System.nanoTime();
+
+ try {
+ busyBee.doItNow();
+
+ fail("The bee should be busy");
+ } catch (Exception e) {
+ // the bee is still too busy as expected
+ }
+
+ assertEquals(0, seconds(start));
+ }
+
+ { // Timeout in 5 seconds
+ final long start = System.nanoTime();
+
+ try {
+ busyBee.doItSoon();
+
+ fail("The bee should be busy");
+ } catch (Exception e) {
+ // the bee is still too busy as expected
+ }
+
+ assertEquals(5, seconds(start));
+ }
+
+ // This will wait forever, give it a try if you have that long
+ //busyBee.justDoIt();
+ }
+
+ private long seconds(long start) {
+ return TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - start);
+ }
+ }
+----
+
+== Running
+
+[source,bash]
+----
+ mvn clean test
+----
+
+=== Output
+[source,bash]
+----
+ -------------------------------------------------------
+ T E S T S
+ -------------------------------------------------------
+ Running org.superbiz.accesstimeout.BusyBeeTest
+ Apache OpenEJB 4.0.0-beta-1 build: 20111002-04:06
+ http://tomee.apache.org/
+ INFO - openejb.home = /Users/dblevins/examples/access-timeout
+ INFO - openejb.base = /Users/dblevins/examples/access-timeout
+ INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
+ INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
+ INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
+ INFO - Found EjbModule in classpath: /Users/dblevins/examples/access-timeout/target/classes
+ INFO - Beginning load: /Users/dblevins/examples/access-timeout/target/classes
+ INFO - Configuring enterprise application: /Users/dblevins/examples/access-timeout
+ INFO - Configuring Service(id=Default Singleton Container, type=Container, provider-id=Default Singleton Container)
+ INFO - Auto-creating a container for bean BusyBee: Container(type=SINGLETON, id=Default Singleton Container)
+ INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
+ INFO - Auto-creating a container for bean org.superbiz.accesstimeout.BusyBeeTest: Container(type=MANAGED, id=Default Managed Container)
+ INFO - Enterprise application "/Users/dblevins/examples/access-timeout" loaded.
+ INFO - Assembling app: /Users/dblevins/examples/access-timeout
+ INFO - Jndi(name="java:global/access-timeout/BusyBee!org.superbiz.accesstimeout.BusyBee")
+ INFO - Jndi(name="java:global/access-timeout/BusyBee")
+ INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest!org.superbiz.accesstimeout.BusyBeeTest")
+ INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest")
+ INFO - Created Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
+ INFO - Created Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
+ INFO - Started Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
+ INFO - Started Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
+ INFO - Deployed Application(path=/Users/dblevins/examples/access-timeout)
+ Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.071 sec
+
+ Results :
+
+ Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
+----
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/tomee/blob/e1696f19/examples/access-timeout/README.md
----------------------------------------------------------------------
diff --git a/examples/access-timeout/README.md b/examples/access-timeout/README.md
deleted file mode 100644
index 9658d21..0000000
--- a/examples/access-timeout/README.md
+++ /dev/null
@@ -1,199 +0,0 @@
-index-group=EJB
-type=page
-status=published
-title=@AccessTimeout annotation
-~~~~~~
-
-Before taking a look at `@AccessTimeout`, it might help to see when a caller might have to "wait"
-
-## Waiting
-
-###Stateful Bean
->By default, clients are allowed to make concurrent calls to a stateful session object and the container is required to serialize such concurrent requests. Note that the container never permits multi-threaded access to the actual stateful session bean instance. For this reason, Read/Write method locking metadata, as well as the bean-managed concurrency mode, are not applicable to stateful session beans and must not be used.
-
-This means that when a method `foo()` of a stateful bean instance is being executed and a second request comes in for that method or another method, EJB container would serialize the second request. It would not let the method be executed concurrently but wait until the first request is processed.
-
-The client would wait also when `@Stateful` bean is in a transaction and the client is invoking it from outside that transaction.
-
-###Stateless Bean
-
-Say there are 20 instances of a bean in the pool and all of them are busy. Now when the next request comes in, the processing *might wait* for a bean to be available in the pool. (Note: Pooling sematics, if any, are not covered by the spec. The vendor's pooling semantics might or might not involve a wait condition)
-
-###Singleton Bean
-
-The container enforces a single-threaded access by default to singleton beans. That's the equivalent of annotating with `@Lock(Write)`. So when a `@Lock(Write)` method is executing, all other `@Lock(READ)` and `@Lock(WRITE)` method invocations would have to wait.
-
-### Summary
-
- - `@Singleton` - an `@Lock(WRITE)` method is being invoked and container-managed concurrency is being used. All methods are `@Lock(WRITE)` by default.
- - `@Stateful` - any method of the instance is being invoked and a second invocation occurs. OR the `@Stateful` bean is in a transaction and the caller is invoking it from outside that transaction.
- - `@Stateless` - no instances are available in the pool. As noted, however, pooling sematics, if any, are not covered by the spec. If the vendor's pooling semantics do involve a wait condition, the @AccessTimeout should apply.
-
-# @AccessTimeout
-
-The `@AccessTimeout` is simply a convenience wrapper around the `long` and `TimeUnit` tuples commonly used in the `java.util.concurrent` API.
-
- import java.util.concurrent.TimeUnit;
- @Target({METHOD, TYPE})
- @Retention(RUNTIME)
- public @interface AccessTimeout {
- long value();
- TimeUnit unit() default TimeUnit.MILLISECONDS;
- }
-
-## Usage
-
-A method or class can be annotated with @AccessTimeout to specify the maximum time a call might wait for access to the bean should a wait condition occur.
-
-The semantics of the value element are as follows:
-
- - A `value` > 0 indicates a timeout value in the units specified by the `unit` element.
- - A `value` of 0 means concurrent access is not permitted.
- - A `value` of -1 indicates that the client request will block indefinitely until forward progress can proceed.
-
-Just as simple as that !
-
-###What exception would the client receive, with a timeout ?
-Quoting from the spec, "if a client-invoked business method is in progress on an instance when another client-invoked call, from the same or different client, arrives at the same instance of a stateful session bean, if the second client is a client of the bean�s business interface or no-interface view, the concurrent invocation must result in the second client receiving a javax.ejb.ConcurrentAccessException[15]. If the EJB 2.1 client view is used, the container must throw a java.rmi.RemoteException if the second client is a remote client, or a javax.ejb.EJBException if the second client is a local client"
-
-### No standard default
-
-Note that the `value` attribute has no default. This was intentional and intended to communicate that if `@AccessTimeout` is not explicitly used, the behavior you get is vendor-specific.
-
-Some vendors will wait for a preconfigured time and throw `javax.ejb.ConcurrentAccessException`, some vendors will throw it immediately.
-
-# Example
-
-Here we have a simple @Singleton bean that has three synchronous methods and one `@Asynchronous` method. The bean itself is annotated `@Lock(WRITE)` so that only one thread may access the `@Singleton` at a time. This is the default behavior of an `@Singleton` bean, so explicit usage of `@Lock(WRITE)` is not needed but is rather nice for clarity as the single-threaded nature of the bean is important to the example.
-
- @Singleton
- @Lock(WRITE)
- public class BusyBee {
-
- @Asynchronous
- public Future stayBusy(CountDownLatch ready) {
- ready.countDown();
-
- try {
- new CountDownLatch(1).await();
- } catch (InterruptedException e) {
- Thread.interrupted();
- }
-
- return null;
- }
-
- @AccessTimeout(0)
- public void doItNow() {
- // do something
- }
-
- @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
- public void doItSoon() {
- // do something
- }
-
- @AccessTimeout(-1)
- public void justDoIt() {
- // do something
- }
-
- }
-
-The `@Asynchronous` method is not a critical part of `@AccessTimeout`, but serves as a simple way to "lock" the bean for testing purposes. It allows us to easily test the concurrent behavior of the bean.
-
- public class BusyBeeTest extends TestCase {
-
- public void test() throws Exception {
-
- final Context context = EJBContainer.createEJBContainer().getContext();
-
- final CountDownLatch ready = new CountDownLatch(1);
-
- final BusyBee busyBee = (BusyBee) context.lookup("java:global/access-timeout/BusyBee");
-
- // This asynchronous method will never exit
- busyBee.stayBusy(ready);
-
- // Are you working yet little bee?
- ready.await();
-
-
- // OK, Bee is busy
-
-
- { // Timeout Immediately
- final long start = System.nanoTime();
-
- try {
- busyBee.doItNow();
-
- fail("The bee should be busy");
- } catch (Exception e) {
- // the bee is still too busy as expected
- }
-
- assertEquals(0, seconds(start));
- }
-
- { // Timeout in 5 seconds
- final long start = System.nanoTime();
-
- try {
- busyBee.doItSoon();
-
- fail("The bee should be busy");
- } catch (Exception e) {
- // the bee is still too busy as expected
- }
-
- assertEquals(5, seconds(start));
- }
-
- // This will wait forever, give it a try if you have that long
- //busyBee.justDoIt();
- }
-
- private long seconds(long start) {
- return TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - start);
- }
- }
-
-
-# Running
-
-
- -------------------------------------------------------
- T E S T S
- -------------------------------------------------------
- Running org.superbiz.accesstimeout.BusyBeeTest
- Apache OpenEJB 4.0.0-beta-1 build: 20111002-04:06
- http://tomee.apache.org/
- INFO - openejb.home = /Users/dblevins/examples/access-timeout
- INFO - openejb.base = /Users/dblevins/examples/access-timeout
- INFO - Using 'javax.ejb.embeddable.EJBContainer=true'
- INFO - Configuring Service(id=Default Security Service, type=SecurityService, provider-id=Default Security Service)
- INFO - Configuring Service(id=Default Transaction Manager, type=TransactionManager, provider-id=Default Transaction Manager)
- INFO - Found EjbModule in classpath: /Users/dblevins/examples/access-timeout/target/classes
- INFO - Beginning load: /Users/dblevins/examples/access-timeout/target/classes
- INFO - Configuring enterprise application: /Users/dblevins/examples/access-timeout
- INFO - Configuring Service(id=Default Singleton Container, type=Container, provider-id=Default Singleton Container)
- INFO - Auto-creating a container for bean BusyBee: Container(type=SINGLETON, id=Default Singleton Container)
- INFO - Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
- INFO - Auto-creating a container for bean org.superbiz.accesstimeout.BusyBeeTest: Container(type=MANAGED, id=Default Managed Container)
- INFO - Enterprise application "/Users/dblevins/examples/access-timeout" loaded.
- INFO - Assembling app: /Users/dblevins/examples/access-timeout
- INFO - Jndi(name="java:global/access-timeout/BusyBee!org.superbiz.accesstimeout.BusyBee")
- INFO - Jndi(name="java:global/access-timeout/BusyBee")
- INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest!org.superbiz.accesstimeout.BusyBeeTest")
- INFO - Jndi(name="java:global/EjbModule748454644/org.superbiz.accesstimeout.BusyBeeTest")
- INFO - Created Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
- INFO - Created Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
- INFO - Started Ejb(deployment-id=org.superbiz.accesstimeout.BusyBeeTest, ejb-name=org.superbiz.accesstimeout.BusyBeeTest, container=Default Managed Container)
- INFO - Started Ejb(deployment-id=BusyBee, ejb-name=BusyBee, container=Default Singleton Container)
- INFO - Deployed Application(path=/Users/dblevins/examples/access-timeout)
- Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.071 sec
-
- Results :
-
- Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
http://git-wip-us.apache.org/repos/asf/tomee/blob/e1696f19/examples/mp-config-example/README.adoc
----------------------------------------------------------------------
diff --git a/examples/mp-config-example/README.adoc b/examples/mp-config-example/README.adoc
new file mode 100644
index 0000000..501a746
--- /dev/null
+++ b/examples/mp-config-example/README.adoc
@@ -0,0 +1,67 @@
+= Microprofile Config
+:index-group=Unrevised
+:jbake-type=page
+:jbake-status=published
+
+This is an example on how to use microprofile config in TomEE.
+
+== Run the application:
+
+[source,bash]
+----
+ mvn clean install tomee:run
+----
+
+== API
+
+Within the application there is an three way to inject values using config
+
+1 . For the ConfigProperty with default value call:
+----
+GET http://localhost:8080/mp-config-example/sample/defaultProperty
+----
+
+2 . For the get property inject with ConfigProperty call:
+----
+GET http://localhost:8080/mp-config-example/sample/injectedJavaVersion
+----
+
+3 . For the get property from Config with getValue call:
+----
+GET http://localhost:8080/mp-config-example/sample/javaVersion
+----
+
+== Config Feature
+
+MicroProfile Config is a solution to externalise configuration from microservices.
+Each individual property can be injected directly
+
+[source,java,numbered]
+----
+ @Inject
+ @ConfigProperty(name = "java.runtime.version")
+ private String javaVersion;
+----
+
+You can also set a default value for it, case the config does not match the property in the context it will use the default value
+
+[source,java,numbered]
+----
+ @Inject
+ @ConfigProperty(name = "defaultProperty", defaultValue = "ALOHA")
+ private String defaultProperty;
+----
+
+The config object can also be injected. Then use the getValue() method to retrieve the individual property.
+
+[source,java,numbered]
+----
+ @Inject
+ private Config config;
+
+ @GET
+ @Path("javaVersion")
+ public String getJavaVersionPropertyFromSystemProperties() {
+ return config.getValue("java.runtime.version", String.class);
+ }
+----
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/tomee/blob/e1696f19/examples/mp-config-example/README.md
----------------------------------------------------------------------
diff --git a/examples/mp-config-example/README.md b/examples/mp-config-example/README.md
deleted file mode 100644
index 2a0a2f6..0000000
--- a/examples/mp-config-example/README.md
+++ /dev/null
@@ -1,50 +0,0 @@
-index-group=Unrevised
-type=page
-status=published
-~~~~~~
-# Microprofile Config
-This is an example on how to use microprofile config in TomEE.
-
-##### Run the application:
-
- mvn clean install tomee:run
-
-Within the application there is an three way to inject values using config
-
-##### For the ConfigProperty with default value call:
-
- GET http://localhost:8080/mp-config-example/sample/defaultProperty
-
-##### For the get property inject with ConfigProperty call:
-
- GET http://localhost:8080/mp-config-example/sample/injectedJavaVersion
-
-##### For the get property from Config with getValue call:
-
- GET http://localhost:8080/mp-config-example/sample/javaVersion
-
-##### Config Feature
-
-MicroProfile Config is a solution to externalise configuration from microservices.
-Each individual property can be injected directly
-
- @Inject
- @ConfigProperty(name = "java.runtime.version")
- private String javaVersion;
-
-You can also set a default value for it, case the config does not match the property in the context it will use the default value
-
- @Inject
- @ConfigProperty(name = "defaultProperty", defaultValue = "ALOHA")
- private String defaultProperty;
-
-The config object can also be injected. Then use the getValue() method to retrieve the individual property.
-
- @Inject
- private Config config;
-
- @GET
- @Path("javaVersion")
- public String getJavaVersionPropertyFromSystemProperties() {
- return config.getValue("java.runtime.version", String.class);
- }
\ No newline at end of file
[11/21] tomee git commit: Converted from markdown to ASCIIDOC
Posted by jl...@apache.org.
Converted from markdown to ASCIIDOC
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/18f1d82d
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/18f1d82d
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/18f1d82d
Branch: refs/heads/master
Commit: 18f1d82dd40462333b2f82ff4bd914d1e38e3497
Parents: 9e14757
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:25:42 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:25:42 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 274 ++++++++++++++++++++++++++
examples/access-timeout-meta/README.md | 253 ------------------------
2 files changed, 274 insertions(+), 253 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/18f1d82d/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
new file mode 100644
index 0000000..f76b590
--- /dev/null
+++ b/examples/access-timeout-meta/README.adoc
@@ -0,0 +1,274 @@
+= @AccessTimeout the Meta-Annotation Way
+:index-group: Meta-Annotations
+:jbake-type: page
+:jbake-status: status=published
+
+== Introduction
+
+Any annotation that takes parameters can benefit from meta-annotations. Here we see how `@AccessTimeout` can be far more understandable and manageable through meta-annotations.
+We'll use the [access-timeout](../access-timeout/README.html) example as our use-case.
+
+The value of the parameters supplied to `@AccessTimeout` have a dramatic affect on what that annotation actually does. Moreover, `@AccessTimeout` has one of those designs
+where `-1` and `0` have signifcantly different meanings. One means "wait forever", the other means "never wait". Only a lucky few can remember which is which on a daily basis.
+For the rest of us it is a constant source of bugs.
+
+[red underline] Meta-Annotations to the rescue!
+
+== *_Creating the Meta-Annotations_*
+
+As a matter of best-practices, we will put our meta-annotations in a package called `api`, for this example that gives us `org.superbiz.accesstimeout.api`. The package `org.superbiz.api` would work just as well.
+
+The basic idea is to have a package where "approved' annotations are used and to prohibit usage of the non-meta versions of the annotations. All the real configuration will
+then be centralized in the `api` package and changes to timeout values will be localized to that package and automatically be reflected throuhout the application.
+
+An interesting side-effect of this approach is that if the `api` package where the meta-annotation definitions exist is kept in a separate jar as well, then one can effectively
+change the configuration of an entire application by simply replacing the `api` jar.
+
+=== @Metatype <small>The "root" Meta-Annotation</small>
+
+As with all meta-annotation usage, you first need to create your own "root" meta-annotation. This is as easy as creating an annotation
+named `Metatype` that is annotated with itself and has `ElementType.ANNOTATION_TYPE` as its target.
+
+[source,java,numbered]
+----
+package org.superbiz.accesstimeout.api;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Metatype
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.ANNOTATION_TYPE)
+public @interface Metatype {
+}
+----
+
+=== @AwaitNever
+
+When the `@AccessTimeout` annotation has the value of `0` that has the implication that one should never wait to access the bean. If the bean is busy, the caller will immediately
+receive an `ConcurrentAccessException`. This is hard to remember and definitely not self-documenting for those that never knew the details.
+
+To create a meta-annotation version of `@AccessTimeout(0)` we simply need to think of a good annotation name, create that annotation, and annotate it with both `@AccessTimeout`
+and `@Metatype`
+
+[source,java,numbered]
+----
+package org.superbiz.accesstimeout.api;
+
+import javax.ejb.AccessTimeout;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Metatype
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.METHOD)
+
+@AccessTimeout(0)
+public @interface AwaitNever {
+}
+----
+
+=== @AwaitForever
+
+Just as `0` carries the special meaning of "never wait", a value of `-1` means "wait forever."
+
+As long as we're being picky, which we can be with meta-annotations,
+Technically "wait forever" is not the best description. The actual methods of the `javax.util.concurrent` APIs use "await" rather than "wait". One (wait) perphaps implies a
+command to wait, which this is not, and the other (await) perhaps better implies that waiting is possible but not a certainty. So we will use "await" in our annotation names.
+
+We make our own `@AwaitForever` and annotate it with `@AccessTimeout(0)` and `@Metatype`
+
+[source,java,numbered]
+----
+package org.superbiz.accesstimeout.api;
+
+import javax.ejb.AccessTimeout;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Metatype
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.METHOD)
+
+@AccessTimeout(-1)
+public @interface AwaitForever {
+}
+----
+
+=== @AwaitBriefly
+
+Non `-1` and `0` values to `@AccessTimeout` actually involve the full breadth of the annotation. Here is where you get to specify the maximum number minutes, seconds,
+milliseconds, etc. where one might await access to the bean instance.
+
+[source,java,numbered]
+----
+@Metatype
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.METHOD, ElementType.TYPE})
+
+@AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
+public @interface AwaitBriefly {
+}
+----
+
+== Configuration vs Operation
+
+Once you create a few meta-annotations and the fun becomes common-place, questoins start to raise in your mind on how to best get the benefits of meta-annotations.
+
+You have to really start thinking about how you want to approach your usage of meta-annotation and really put your designer hat on. The fundamental question is
+**configuration vs operation** and the answer is subjective; how much flexibility do you want to design into your applications and where?
+
+## Configuration names <small>describing the configuration</small>
+
+The simplest approach is to name your meta-annotations after the **configuration** they encapsulate. We've been following that format so far with `@AwaitNever` and `@AwaitForever`
+to clearly reflect the contents of each meta-annotation (`@AccessTimeout(-1)` and `@AccessTimeout(0)` respectively).
+
+The **cons** of this approach is that should you want to change the configuration of the application by only changing the meta-annotations -- this is one of the potential benefits
+of meta-annotations -- but this may change the meaning of the annotation. Certainly, the `@AwaitNever` meta-annotation can have no other value than `0` if it is to live up to its name.
+
+## Operation names <small>describing the code</small>
+
+The alternate approach is to name your meta-annotations after the **operations** they apply to. In short, to describe the code itself and not the configuration. So, names like
+`@OrderCheckTimeout` or `@TwitterUpdateTimeout`. These names are configuration-change-proof. They would not change if the configuration changes and in fact they can facilitate
+finder-grained control over the configuration of an application.
+
+The **cons** of this approach is that requires far more deliberation and consideration, not to mention more annotations. Your skills as an architect, designer and ability to think as
+a administrator will be challenged. You must be good at wearing your dev-opts hat.
+
+## Pragmatism <small>best of both worlds</small>
+
+Fortunately, meta-annotations are recursive. You can do a little of both.
+
+[source,java,numbered]
+----
+@Metatype
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.METHOD)
+
+@AwaitBriefly
+public @interface TwitterUpdateTimeout {
+}
+----
+
+Of course you still need to be very deliberate on how your annotations are used. When using a "configuration" named meta-annotation in code it can help to say to yourself,
+"I do not want to reconfigure this later." If that doesn't feel quite right, put the extra effort into creating an operation named annotation and use in that code.
+
+# Applying the Meta-Annotations
+
+Putting it all together, here's how we might apply our meta-annotations to the [access-timeout](../access-timeout/README.html) example.
+
+=== Before
+
+[source,java,numbered]
+----
+package org.superbiz.accesstimeout;
+
+import javax.ejb.AccessTimeout;
+import javax.ejb.Asynchronous;
+import javax.ejb.Lock;
+import javax.ejb.Singleton;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+
+import static javax.ejb.LockType.WRITE;
+
+/**
+ * @version $Revision$ $Date$
+ */
+@Singleton
+@Lock(WRITE)
+public class BusyBee {
+
+ @Asynchronous
+ public Future stayBusy(CountDownLatch ready) {
+ ready.countDown();
+
+ try {
+ new CountDownLatch(1).await();
+ } catch (InterruptedException e) {
+ Thread.interrupted();
+ }
+
+ return null;
+ }
+
+ @AccessTimeout(0)
+ public void doItNow() {
+ // do something
+ }
+
+ @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
+ public void doItSoon() {
+ // do something
+ }
+
+ @AccessTimeout(-1)
+ public void justDoIt() {
+ // do something
+ }
+
+}
+----
+
+=== After
+
+[source,java,numbered]
+----
+package org.superbiz.accesstimeout;
+
+import org.superbiz.accesstimeout.api.AwaitBriefly;
+import org.superbiz.accesstimeout.api.AwaitForever;
+import org.superbiz.accesstimeout.api.AwaitNever;
+
+import javax.ejb.Asynchronous;
+import javax.ejb.Lock;
+import javax.ejb.Singleton;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.Future;
+
+import static javax.ejb.LockType.WRITE;
+
+/**
+ * @version $Revision$ $Date$
+ */
+@Singleton
+@Lock(WRITE)
+public class BusyBee {
+
+ @Asynchronous
+ public Future stayBusy(CountDownLatch ready) {
+ ready.countDown();
+
+ try {
+ new CountDownLatch(1).await();
+ } catch (InterruptedException e) {
+ Thread.interrupted();
+ }
+
+ return null;
+ }
+
+ @AwaitNever
+ public void doItNow() {
+ // do something
+ }
+
+ @AwaitBriefly
+ public void doItSoon() {
+ // do something
+ }
+
+ @AwaitForever
+ public void justDoIt() {
+ // do something
+ }
+
+}
+----
http://git-wip-us.apache.org/repos/asf/tomee/blob/18f1d82d/examples/access-timeout-meta/README.md
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.md b/examples/access-timeout-meta/README.md
deleted file mode 100644
index 86e7445..0000000
--- a/examples/access-timeout-meta/README.md
+++ /dev/null
@@ -1,253 +0,0 @@
-index-group=Meta-Annotations
-type=page
-status=published
-title=@AccessTimeout the Meta-Annotation Way
-~~~~~~
-
-Any annotation that takes parameters can benefit from meta-annotations. Here we see how `@AccessTimeout` can be far more understandable and manageable through meta-annotations.
-We'll use the [access-timeout](../access-timeout/README.html) example as our use-case.
-
-The value of the parameters supplied to `@AccessTimeout` have a dramatic affect on what that annotation actually does. Moreover, `@AccessTimeout` has one of those designs
-where `-1` and `0` have signifcantly different meanings. One means "wait forever", the other means "never wait". Only a lucky few can remember which is which on a daily basis.
-For the rest of us it is a constant source of bugs.
-
-Meta-Annotations to the rescue!
-
-# Creating the Meta-Annotations
-
-As a matter of best-practices, we will put our meta-annotations in a package called `api`, for this example that gives us `org.superbiz.accesstimeout.api`. The package `org.superbiz.api` would work just as well.
-
-The basic idea is to have a package where "approved' annotations are used and to prohibit usage of the non-meta versions of the annotations. All the real configuration will
-then be centralized in the `api` package and changes to timeout values will be localized to that package and automatically be reflected throuhout the application.
-
-An interesting side-effect of this approach is that if the `api` package where the meta-annotation definitions exist is kept in a separate jar as well, then one can effectively
-change the configuration of an entire application by simply replacing the `api` jar.
-
-## @Metatype <small>The "root" Meta-Annotation</small>
-
-As with all meta-annotation usage, you first need to create your own "root" meta-annotation. This is as easy as creating an annotation
-named `Metatype` that is annotated with itself and has `ElementType.ANNOTATION_TYPE` as its target.
-
-
- package org.superbiz.accesstimeout.api;
-
- import java.lang.annotation.ElementType;
- import java.lang.annotation.Retention;
- import java.lang.annotation.RetentionPolicy;
- import java.lang.annotation.Target;
-
- @Metatype
- @Retention(RetentionPolicy.RUNTIME)
- @Target(ElementType.ANNOTATION_TYPE)
- public @interface Metatype {
- }
-
-## @AwaitNever
-
-When the `@AccessTimeout` annotation has the value of `0` that has the implication that one should never wait to access the bean. If the bean is busy, the caller will immediately
-receive an `ConcurrentAccessException`. This is hard to remember and definitely not self-documenting for those that never knew the details.
-
-To create a meta-annotation version of `@AccessTimeout(0)` we simply need to think of a good annotation name, create that annotation, and annotate it with both `@AccessTimeout`
-and `@Metatype`
-
- package org.superbiz.accesstimeout.api;
-
- import javax.ejb.AccessTimeout;
- import java.lang.annotation.ElementType;
- import java.lang.annotation.Retention;
- import java.lang.annotation.RetentionPolicy;
- import java.lang.annotation.Target;
-
- @Metatype
- @Retention(RetentionPolicy.RUNTIME)
- @Target(ElementType.METHOD)
-
- @AccessTimeout(0)
- public @interface AwaitNever {
- }
-
-## @AwaitForever
-
-Just as `0` carries the special meaning of "never wait", a value of `-1` means "wait forever."
-
-As long as we're being picky, which we can be with meta-annotations,
-Technically "wait forever" is not the best description. The actual methods of the `javax.util.concurrent` APIs use "await" rather than "wait". One (wait) perphaps implies a
-command to wait, which this is not, and the other (await) perhaps better implies that waiting is possible but not a certainty. So we will use "await" in our annotation names.
-
-We make our own `@AwaitForever` and annotate it with `@AccessTimeout(0)` and `@Metatype`
-
- package org.superbiz.accesstimeout.api;
-
- import javax.ejb.AccessTimeout;
- import java.lang.annotation.ElementType;
- import java.lang.annotation.Retention;
- import java.lang.annotation.RetentionPolicy;
- import java.lang.annotation.Target;
-
- @Metatype
- @Retention(RetentionPolicy.RUNTIME)
- @Target(ElementType.METHOD)
-
- @AccessTimeout(-1)
- public @interface AwaitForever {
- }
-
-## @AwaitBriefly
-
-Non `-1` and `0` values to `@AccessTimeout` actually involve the full breadth of the annotation. Here is where you get to specify the maximum number minutes, seconds,
-milliseconds, etc. where one might await access to the bean instance.
-
- @Metatype
- @Retention(RetentionPolicy.RUNTIME)
- @Target({ElementType.METHOD, ElementType.TYPE})
-
- @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
- public @interface AwaitBriefly {
- }
-
-# Configuration vs Operation
-
-Once you create a few meta-annotations and the fun becomes common-place, questoins start to raise in your mind on how to best get the benefits of meta-annotations.
-
-You have to really start thinking about how you want to approach your usage of meta-annotation and really put your designer hat on. The fundamental question is
-**configuration vs operation** and the answer is subjective; how much flexibility do you want to design into your applications and where?
-
-## Configuration names <small>describing the configuration</small>
-
-The simplest approach is to name your meta-annotations after the **configuration** they encapsulate. We've been following that format so far with `@AwaitNever` and `@AwaitForever`
-to clearly reflect the contents of each meta-annotation (`@AccessTimeout(-1)` and `@AccessTimeout(0)` respectively).
-
-The **cons** of this approach is that should you want to change the configuration of the application by only changing the meta-annotations -- this is one of the potential benefits
-of meta-annotations -- but this may change the meaning of the annotation. Certainly, the `@AwaitNever` meta-annotation can have no other value than `0` if it is to live up to its name.
-
-## Operation names <small>describing the code</small>
-
-The alternate approach is to name your meta-annotations after the **operations** they apply to. In short, to describe the code itself and not the configuration. So, names like
-`@OrderCheckTimeout` or `@TwitterUpdateTimeout`. These names are configuration-change-proof. They would not change if the configuration changes and in fact they can facilitate
-finder-grained control over the configuration of an application.
-
-The **cons** of this approach is that requires far more deliberation and consideration, not to mention more annotations. Your skills as an architect, designer and ability to think as
-a administrator will be challenged. You must be good at wearing your dev-opts hat.
-
-## Pragmatism <small>best of both worlds</small>
-
-Fortunately, meta-annotations are recursive. You can do a little of both.
-
- @Metatype
- @Retention(RetentionPolicy.RUNTIME)
- @Target(ElementType.METHOD)
-
- @AwaitBriefly
- public @interface TwitterUpdateTimeout {
- }
-
-Of course you still need to be very deliberate on how your annotations are used. When using a "configuration" named meta-annotation in code it can help to say to yourself,
-"I do not want to reconfigure this later." If that doesn't feel quite right, put the extra effort into creating an operation named annotation and use in that code.
-
-# Applying the Meta-Annotations
-
-Putting it all together, here's how we might apply our meta-annotations to the [access-timeout](../access-timeout/README.html) example.
-
-## Before
-
- package org.superbiz.accesstimeout;
-
- import javax.ejb.AccessTimeout;
- import javax.ejb.Asynchronous;
- import javax.ejb.Lock;
- import javax.ejb.Singleton;
- import java.util.concurrent.CountDownLatch;
- import java.util.concurrent.Future;
- import java.util.concurrent.TimeUnit;
-
- import static javax.ejb.LockType.WRITE;
-
- /**
- * @version $Revision$ $Date$
- */
- @Singleton
- @Lock(WRITE)
- public class BusyBee {
-
- @Asynchronous
- public Future stayBusy(CountDownLatch ready) {
- ready.countDown();
-
- try {
- new CountDownLatch(1).await();
- } catch (InterruptedException e) {
- Thread.interrupted();
- }
-
- return null;
- }
-
- @AccessTimeout(0)
- public void doItNow() {
- // do something
- }
-
- @AccessTimeout(value = 5, unit = TimeUnit.SECONDS)
- public void doItSoon() {
- // do something
- }
-
- @AccessTimeout(-1)
- public void justDoIt() {
- // do something
- }
-
- }
-
-## After
-
- package org.superbiz.accesstimeout;
-
- import org.superbiz.accesstimeout.api.AwaitBriefly;
- import org.superbiz.accesstimeout.api.AwaitForever;
- import org.superbiz.accesstimeout.api.AwaitNever;
-
- import javax.ejb.Asynchronous;
- import javax.ejb.Lock;
- import javax.ejb.Singleton;
- import java.util.concurrent.CountDownLatch;
- import java.util.concurrent.Future;
-
- import static javax.ejb.LockType.WRITE;
-
- /**
- * @version $Revision$ $Date$
- */
- @Singleton
- @Lock(WRITE)
- public class BusyBee {
-
- @Asynchronous
- public Future stayBusy(CountDownLatch ready) {
- ready.countDown();
-
- try {
- new CountDownLatch(1).await();
- } catch (InterruptedException e) {
- Thread.interrupted();
- }
-
- return null;
- }
-
- @AwaitNever
- public void doItNow() {
- // do something
- }
-
- @AwaitBriefly
- public void doItSoon() {
- // do something
- }
-
- @AwaitForever
- public void justDoIt() {
- // do something
- }
-
- }
[19/21] tomee git commit: Testing Stylesheet
Posted by jl...@apache.org.
Testing Stylesheet
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/593328d1
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/593328d1
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/593328d1
Branch: refs/heads/master
Commit: 593328d18522c54e3b674699ffc587ff455c25b8
Parents: 65f2874
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:53:29 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:53:29 2018 -0500
----------------------------------------------------------------------
examples/access-timeout-meta/README.adoc | 3 +--
examples/github-stylesheet.css | 3 ++-
2 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/593328d1/examples/access-timeout-meta/README.adoc
----------------------------------------------------------------------
diff --git a/examples/access-timeout-meta/README.adoc b/examples/access-timeout-meta/README.adoc
index 039c3b7..a794e2a 100644
--- a/examples/access-timeout-meta/README.adoc
+++ b/examples/access-timeout-meta/README.adoc
@@ -7,9 +7,8 @@ ifdef::env-github[]
:note-caption: :information_source:
:important-caption: :heavy_exclamation_mark:
:caution-caption: :fire:
+:stylesheet: ../github-stylesheet.css
endif::[]
-@import(../github-stylesheet.css)
-
== Introduction
http://git-wip-us.apache.org/repos/asf/tomee/blob/593328d1/examples/github-stylesheet.css
----------------------------------------------------------------------
diff --git a/examples/github-stylesheet.css b/examples/github-stylesheet.css
index 11ac929..a7f5ef0 100644
--- a/examples/github-stylesheet.css
+++ b/examples/github-stylesheet.css
@@ -1,3 +1,4 @@
-small {
+.small {
+ font-color: pink;
font-size: .8em;
}
\ No newline at end of file
[20/21] tomee git commit: Testing Stylesheet
Posted by jl...@apache.org.
Testing Stylesheet
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/45f01bf2
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/45f01bf2
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/45f01bf2
Branch: refs/heads/master
Commit: 45f01bf28f89779d03382e2b9b3d56af549c6429
Parents: 593328d
Author: Ryan McGuinness <ry...@homedepot.com>
Authored: Sun Dec 16 19:54:43 2018 -0500
Committer: Ryan McGuinness <ry...@homedepot.com>
Committed: Sun Dec 16 19:54:43 2018 -0500
----------------------------------------------------------------------
examples/github-stylesheet.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/45f01bf2/examples/github-stylesheet.css
----------------------------------------------------------------------
diff --git a/examples/github-stylesheet.css b/examples/github-stylesheet.css
index a7f5ef0..d7936a6 100644
--- a/examples/github-stylesheet.css
+++ b/examples/github-stylesheet.css
@@ -1,4 +1,4 @@
.small {
- font-color: pink;
+ color: pink;
font-size: .8em;
}
\ No newline at end of file